Saasco logoSaasco logo
Saasco logoSaasco logo

Introduction

OverviewGetting startedWhat is Saasco?

SDK

Quick startTrackingIdentifyConfigurationWidgetsProperties

MCP

Quick startHow it worksAuthorizationTool reference

REST API

Quick start
getList ProjectsgetGet ProjectpostUpdate ProjectdelDelete Project
Add DNS records
ProjectsSettings

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.

DELETE
/projects/{projectId}

Authorization

Authorization
AuthorizationBearer <token>

In: header

Path Parameters

projectIdrequiredstring

ID of the project to delete.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X DELETE "https://www.saasco.com/api/v2/projects/string"
{
  "id": "string",
  "createdAt": "string",
  "updatedAt": "string",
  "name": "string",
  "tagline": "string",
  "slug": "string",
  "balance": 0,
  "balanceVersion": -9007199254740991,
  "thumbnail": "string",
  "stripeCustomerId": "string",
  "testStripeCustomerId": "string",
  "autoTopUpEnabled": true,
  "meta": {
    "agentSetupStartedAt": "string",
    "sdkInstalledAt": "string",
    "onboardingCompletedAt": "string",
    "onboardingStep": "name",
    "onboardingManual": true,
    "contactListVisibleColumns": [
      {
        "id": "string",
        "order": 0
      }
    ],
    "defaultEmailCampaignSendOrder": {
      "direction": "asc",
      "propertyKey": "string"
    },
    "defaultEmailFromDomain": "string",
    "defaultEmailFromName": "string",
    "defaultEmailFromUsername": "string",
    "companyAddressLine1": "string",
    "companyAddressLine2": "string",
    "companyCity": "string",
    "companyRegion": "string",
    "companyPostalCode": "string",
    "companyCountry": "st",
    "knowledgeArticlesVisibleColumns": [
      {
        "id": "string",
        "order": 0
      }
    ],
    "timezone": "string",
    "setupGuideVisits": [
      "string"
    ],
    "setupGuideEmailDomainSkipped": true,
    "setupGuideMcpSkipped": true,
    "setupGuideSupportDomainSkipped": true,
    "setupGuideTestEmailSent": true,
    "setupGuideGoLiveConfirmed": true
  },
  "liveProjectId": "string",
  "autoTopUpAmount": 20,
  "autoTopUpThreshold": 10
}
{
  "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": []
}

Update Project

Updates a project's settings. Only the fields present in `changes` are written, so this is a partial update despite the POST. Slugs are unique across Saasco. Reusing one that belongs to another project returns 409.

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).