Create Customer

POST /api/customers

Create Customer

POST /api/customers

Creates a new customer and assigns an organization-defined package via packageType.

Authentication

This endpoint requires authentication.

BASE_URL="https://uptimeify.io"
TOKEN="wsm_<your-api-token>"

Request Body

{
  "name": "Customer Name",
  "email": "customer@example.com",
  "packageType": "business", // use the configured packageType or displayName for the organization
  "organizationId": 1, // optional (required only for global admins)
  "status": "active", // optional, Default: active
  "customFields": { ... } // optional
}

Notes:

  • packageType can contain the configured package key or the package display name of the organization. Known aliases such as aquisition_test are normalized automatically.
  • If no configured package matches, the request is rejected with 400 Bad Request.
  • For non-global-admin users, organizationId is derived from your session/token and must not be overridden.
  • For global admins, organizationId must be provided explicitly.

Response

{
  "success": true,
  "customer": {
    "id": 64,
    "publicId": "6d74c32b-a97c-49b9-be3e-2b5e24bed826",
    "organizationId": 2,
    "name": "Example Customer",
    "email": "example@test.com",
    "notificationPhoneNumber": null,
    "notificationEmail": null,
    "packageId": 7,
    "packageType": "essential",
    "status": "active",
    "allowedCheckCountryCodes": null,
    "cancellationDate": null,
    "cancelledAt": null,
    "customFields": {
      "region": "EU",
      "planOwner": "Operations"
    },
    "monthlyReportsEnabled": true,
    "notificationChannels": null,
    "notificationTargets": null,
    "notificationRules": null,
    "smsUsageCurrentMonth": 0,
    "createdAt": "2026-04-04T12:27:13.415Z",
    "updatedAt": "2026-04-04T12:27:13.415Z"
  }
}