Saasco logoSaasco logo
Saasco logoSaasco logo

Introduction

Quick StartWhat is Saasco?

Analytics

CRM

Email Marketing

Knowledge

Support

Projects

getList DomainsgetGet DomaingetGet Domain By NamepostCreate DomainpostUpdate DomaindelDelete DomainpostActivate Email SendingpostActivate Email ReceivingdelDisable Email SendingdelDisable Email ReceivingpostEnable ShortlinkdelDisable ShortlinkpostEnable Link TrackinggetGet Email Receiving ConfiggetGet Sender ReputationgetGet Sender Reputation By Domain NamepostRefresh Sender ReputationgetGet Domain Warmup StatuspostComplete Domain WarmuppostVerify Email DNSpostVerify Email Receiving DNSpostVerify Shortlink
Domains

List Domains

Lists the project's domains. Filter by sending status, shortlink state, or readyToSend (ACTIVE and tracking verified — use that when picking a from-domain).

GET
/projects/{projectId}/domains

Authorization

Authorization
AuthorizationBearer <token>

In: header

Path Parameters

projectIdrequiredstring

ID of the project to list domains from.

Query Parameters

emailStatusstring

Restrict the result to this sending status: INACTIVE, PENDING, ACTIVE, or ERROR.

Value in: "INACTIVE" | "PENDING" | "ACTIVE" | "ERROR"
readyToSendboolean

When true, only domains that are ACTIVE and have verified link tracking. Use this when picking a from-domain to send from. Leave it off to include domains still waiting on DNS.

shortlinkEnabledboolean

Restrict the result to domains with shortlinks on or off.

vercelConfiguredboolean

Restrict the result to domains that have been added to Vercel for shortlinks.

vercelVerificationStatusstring

Restrict the result to this shortlink DNS status: PENDING, VALID, or INVALID.

Value in: "PENDING" | "VALID" | "INVALID"

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://www.saasco.com/api/v2/projects/string/domains"
[
  {
    "id": "string",
    "createdAt": "string",
    "updatedAt": "string",
    "emailStatus": "INACTIVE",
    "emailProvider": "string",
    "emailProviderDomainId": "string",
    "emailReceivingStatus": "INACTIVE",
    "emailReceivingProviderId": "string",
    "trackingSubdomain": "string",
    "trackingVerificationStatus": "PENDING",
    "shortlinkEnabled": true,
    "vercelConfigured": true,
    "vercelVerificationStatus": "PENDING",
    "vercelVerificationError": "string",
    "vercelVerificationDNS": [
      {
        "domain": "string",
        "reason": "string",
        "type": "string",
        "value": "string"
      }
    ],
    "emailVerificationRequestedAt": "string",
    "receivingVerificationRequestedAt": "string",
    "shortlinkVerificationRequestedAt": "string",
    "senderReputationComputedAt": "string",
    "warmupStatus": "PENDING",
    "warmupStartedAt": "string",
    "warmupWindowStartedAt": "string",
    "projectId": "string",
    "name": "string",
    "senderReputation": 50,
    "warmupDay": 0,
    "warmupSentCount": 0
  }
]
{
  "code": "BAD_REQUEST",
  "message": "Invalid input data",
  "issues": []
}
{
  "code": "UNAUTHORIZED",
  "message": "Authorization not provided",
  "issues": []
}
{
  "code": "FORBIDDEN",
  "message": "Insufficient access",
  "issues": []
}
{
  "code": "NOT_FOUND",
  "message": "Not found",
  "issues": []
}
{
  "code": "INTERNAL_SERVER_ERROR",
  "message": "Internal server error",
  "issues": []
}

Delete Project

Permanently deletes a project and everything cascading from it. Any queued usage is settled against the balance first, and the delete is refused with 403 if that leaves the project owing money. Top up before retrying. Returns the deleted project as it was at the point of deletion. This cannot be undone.

Get Domain

Fetches a domain plus its email DNS config and whether verification jobs are still running. Returns 404 if no domain matches.