LettermintLettermint
  • Knowledge base
  • Community
  • Changelog
  • Support
  • Documentation
  • Sending API
  • Team API
Information
Generic
    Ping the APIget
Team
    Get team detailsgetUpdate team settingsputGet team usage statisticsgetGet team membersget
Domain
    List all domains for the teamgetCreate a new domainpostGet domain detailsgetDelete a domaindeleteVerify all DNS records for a domainpostVerify a specific DNS recordpostUpdate projects associated with a domainput
Project
    List all projects for the teamgetCreate a new projectpostGet project detailsgetUpdate project settingsputDelete a projectdeleteRotate project API tokenpostUpdate project membersputAdd a member to the projectpostRemove a member from the projectdeleteList routes for a projectgetCreate a new routepostGet route detailsgetUpdate route settingsputDelete a routedeleteVerify inbound domain for a routepost
Webhook
    List all webhooks for the teamgetCreate a new webhookpostGet webhook detailsgetUpdate webhook settingsputDelete a webhookdeleteTest a webhook by sending a sample payloadpostRegenerate webhook secretpostGet webhook deliveriesgetGet a specific webhook deliveryget
Message
    List messages for the teamgetGet message detailsgetGet message eventsgetGet message sourcegetGet message HTML contentgetGet message plain text contentget
Suppression
    List all suppressions for the teamgetAdd email(s) to suppression listpostRemove email from suppression listdelete
Stats
    Get message statisticsget
Schemas
Lettermint Team API
Lettermint Team API

Domain


List all domains for the team

GET
https://api.lettermint.co/v1
/domains

List all domains for the team › query Parameters

sort
​string

Available sorts are domain, created_at, status_changed_at. You can sort by multiple options by separating them with a comma. To sort in descending order, use - sign in front of the sort, for example: -domain.

Default: -created_at
page[size]
​integer

The number of results that will be returned per page.

Default: 30
page[cursor]
​string

The cursor to start the pagination from.

filter[status]
​DomainStatus · enum
verified
The domain is active and verified.
partially_verified
Some DNS records of the domain could not be verified.
pending_verification
The domain is new and verification is pending.
failed_verification
The domain verification failed.
Enum values:
verified
partially_verified
pending_verification
failed_verification
filter[domain]
​string

Search by domain name (partial match, case insensitive)

List all domains for the team › Headers

Authorization
​string · required

Bearer token. Format: Bearer {team_token}

List all domains for the team › Responses

200

Paginated set of DomainListData

​DomainListData[] · required
path
​string | null · required

Base path for paginator generated URLs.

per_page
​integer · min: 0 · required

Number of items shown per page.

next_cursor
​string | null · required

The "cursor" that points to the next set of items.

next_page_url
​string | null · uri · required
prev_cursor
​string | null · required

The "cursor" that points to the previous set of items.

prev_page_url
​string | null · uri · required
GET/domains
curl --request GET \ --url https://api.lettermint.co/v1/domains \ --header 'Authorization: <string>'
Example Responses
{ "data": [ { "id": "id", "domain": "domain", "status": "verified", "status_changed_at": "2024-08-25T15:00:00Z", "created_at": "2024-08-25T15:00:00Z" } ], "path": "path", "per_page": 0, "next_cursor": "next_cursor", "next_page_url": "https://www.example.com/path/to/resource", "prev_cursor": "prev_cursor", "prev_page_url": "https://www.example.com/path/to/resource" }
json
application/json

Create a new domain

POST
https://api.lettermint.co/v1
/domains

Create a new domain › Headers

Authorization
​string · required

Bearer token. Format: Bearer {team_token}

Create a new domain › Request Body

StoreDomainData
domain
​string · maxLength: 255 · pattern: ^(?!:\/\/)(?=.{1,255… · required

Create a new domain › Responses

DomainData

DomainData
id
​string · required
domain
​string · required
status_changed_at
​string | null · date-time · required
created_at
​string · date-time · required
​DomainDnsRecordData[]
​object[]
POST/domains
curl --request POST \ --url https://api.lettermint.co/v1/domains \ --header 'Authorization: <string>' \ --header 'Content-Type: application/json' \ --data ' { "domain": "domain" } '
Example Request Body
{ "domain": "domain" }
json
Example Responses
{ "id": "id", "domain": "domain", "status_changed_at": "2024-08-25T15:00:00Z", "dns_records": [ { "id": "id", "type": "TXT", "hostname": "hostname", "fqdn": "fqdn", "content": "content", "status": "active", "verified_at": "verified_at", "last_checked_at": "2024-08-25T15:00:00Z" } ], "projects": [ { "id": "id", "name": "name" } ], "created_at": "2024-08-25T15:00:00Z" }
json
application/json

Get domain details

GET
https://api.lettermint.co/v1
/domains/{domainId}

Get domain details › path Parameters

domainId
​string · required

Get domain details › query Parameters

include
​string

Available includes are dnsRecords, dnsRecordsCount, dnsRecordsExists. You can include multiple options by separating them with a comma.

Get domain details › Headers

Authorization
​string · required

Bearer token. Format: Bearer {team_token}

Get domain details › Responses

200

DomainData

DomainData
id
​string · required
domain
​string · required
status_changed_at
​string | null · date-time · required
created_at
​string · date-time · required
​DomainDnsRecordData[]
​object[]
GET/domains/{domainId}
curl --request GET \ --url https://api.lettermint.co/v1/domains/:domainId \ --header 'Authorization: <string>'
Example Responses
{ "id": "id", "domain": "domain", "status_changed_at": "2024-08-25T15:00:00Z", "dns_records": [ { "id": "id", "type": "TXT", "hostname": "hostname", "fqdn": "fqdn", "content": "content", "status": "active", "verified_at": "verified_at", "last_checked_at": "2024-08-25T15:00:00Z" } ], "projects": [ { "id": "id", "name": "name" } ], "created_at": "2024-08-25T15:00:00Z" }
json
application/json

Delete a domain

DELETE
https://api.lettermint.co/v1
/domains/{domainId}

Delete a domain › path Parameters

domainId
​string · required

Delete a domain › Headers

Authorization
​string · required

Bearer token. Format: Bearer {team_token}

Delete a domain › Responses

200
message
​string · const · required
Const value: Domain deleted successfully.
DELETE/domains/{domainId}
curl --request DELETE \ --url https://api.lettermint.co/v1/domains/:domainId \ --header 'Authorization: <string>'
Example Responses
{ "message": "Domain deleted successfully." }
json
application/json

Verify all DNS records for a domain

POST
https://api.lettermint.co/v1
/domains/{domainId}/dns-records/verify

Verify all DNS records for a domain › path Parameters

domainId
​string · required

Verify all DNS records for a domain › Headers

Authorization
​string · required

Bearer token. Format: Bearer {team_token}

Verify all DNS records for a domain › Responses

message
​string · required
POST/domains/{domainId}/dns-records/verify
curl --request POST \ --url https://api.lettermint.co/v1/domains/:domainId/dns-records/verify \ --header 'Authorization: <string>'
Example Responses
{ "message": "message" }
json
application/json

Verify a specific DNS record

POST
https://api.lettermint.co/v1
/domains/{domainId}/dns-records/{recordId}/verify

Verify a specific DNS record › path Parameters

domainId
​string · required
recordId
​string · required

Verify a specific DNS record › Headers

Authorization
​string · required

Bearer token. Format: Bearer {team_token}

Verify a specific DNS record › Responses

message
​string · const · required
Const value: DNS record verified successfully.
POST/domains/{domainId}/dns-records/{recordId}/verify
curl --request POST \ --url https://api.lettermint.co/v1/domains/:domainId/dns-records/:recordId/verify \ --header 'Authorization: <string>'
Example Responses
{ "message": "DNS record verified successfully." }
json
application/json

Update projects associated with a domain

PUT
https://api.lettermint.co/v1
/domains/{domainId}/projects

Update projects associated with a domain › path Parameters

domainId
​string · required

Update projects associated with a domain › Headers

Authorization
​string · required

Bearer token. Format: Bearer {team_token}

Update projects associated with a domain › Request Body

UpdateDomainProjectsData
project_ids
​string[] · minItems: 1 · required

Update projects associated with a domain › Responses

​DomainData · required
message
​string · const · required
Const value: Domain projects updated successfully.
PUT/domains/{domainId}/projects
curl --request PUT \ --url https://api.lettermint.co/v1/domains/:domainId/projects \ --header 'Authorization: <string>' \ --header 'Content-Type: application/json' \ --data ' { "project_ids": [ "00000000-0000-0000-0000-000000000000" ] } '
Example Request Body
{ "project_ids": [ "00000000-0000-0000-0000-000000000000" ] }
json
Example Responses
{ "data": { "id": "id", "domain": "domain", "status_changed_at": "2024-08-25T15:00:00Z", "dns_records": [ { "id": "id", "type": "TXT", "hostname": "hostname", "fqdn": "fqdn", "content": "content", "status": "active", "verified_at": "verified_at", "last_checked_at": "2024-08-25T15:00:00Z" } ], "projects": [ { "id": "id", "name": "name" } ], "created_at": "2024-08-25T15:00:00Z" }, "message": "Domain projects updated successfully." }
json
application/json

TeamProject