1. Order
Scaledmail
  • Scaledmail API Documentaion
  • Workspaces
    • Get Workspaces
      GET
    • Create Workspace
      POST
  • Pre Warm Inboxes
    • Pre Warm Inboxes
      GET
    • Buy Pre Warm Inboxes
      POST
  • Domain
    • Get Domains
      GET
    • Buy Domains
      POST
    • Search Domains
      POST
    • Suggest Domains
      POST
    • Update Domain Name
      POST
    • Update Domain Redirect
      POST
    • Get Purchased Domains
      GET
  • Package
    • Calculate Package
      POST
    • Get Packages
      GET
  • Order
    • Get Orders
      GET
    • Get Order Details
      GET
    • Cancel Order
      DELETE
    • Get Pending Forms
      GET
    • Submit Form
      POST
    • Create Order
      POST
    • Create Custom Order
      POST
  • Mailboxes
    • Get Mailboxes by Domain ID
      GET
  1. Order

Create Custom Order

POST
https://server.scaledmail.com/api/v1/create-custom-order

āš ļø Requires a connected payment method#

A subscription will be created automatically upon a successful request. Unlike /create-order, there is no fixed package selection required.
šŸ’” Not sure how to structure your providers?
Use the Calculate Package endpoint to preview exactly what your order will cost and how the providers/domains should be broken down — before committing to a charge.
→ Calculate Package

šŸ”‘ Query Parameters#

provider (required)#

Specifies the source of the domains:
→ "scaledmail" — Domains purchased through ScaledMail
→ "other" — Domains from external providers like Porkbun, Namecheap, or DNSimple

coupon (optional)#

A discount coupon code to apply to the subscription.

organization_id (optional)#

The organization to create the order under.

šŸ“„ Request Body Parameters#

All parameters below must be included in the JSON body.

tag (optional)#

A short label to tag this order.
Maximum: 20 characters

providers (required)#

An object containing one or more provider types, each with their own domains array. Pricing is calculated automatically from whatever you include here.
Supported provider keys: "google", "outlook", "smtp"
→ At least one provider must be included.
→ Maximum 3 provider types.
→ Maximum domains per provider: google → 100, outlook → 30, smtp → 70
→ Maximum total domains across all providers: 200
→ If any domain is already used or unavailable, the request will fail.
"providers": {
  "google": {
    "domains": [ ... ]
  },
  "outlook": {
    "domains": [ ... ]
  },
  "smtp": {
    "domains": [ ... ]
  }
}
Each domain object can include:

domain (required)#

Example: "example.com"

redirect (optional)#

A redirect URL for the domain. Cannot be empty if provided.

Profile Picture Options#

You may include:
"profile_picture": "https://link1.com"
If added at the domain level, this image will be used for all aliases created under that domain.
You may also specify a different profile_picture inside each alias to override it.
Maximum: 150 characters. Base64-encoded data is not allowed.

šŸ‘¤ Aliases Handling#

You have two ways to provide alias information.
āš ļø All domains within the same provider must use the same format. You cannot mix first_name/last_name and aliases across domains in the same provider.

1. Pass first_name and last_name#

If you include:
"first_name": "John",
"last_name": "Doe"
→ The system will automatically generate aliases for this domain.
→ Maximum 50 characters each.

2. Pass an aliases array directly#

If you already have pre-generated aliases, you can send them like this:
"aliases": [
  {
    "first_name": "John",
    "last_name": "Doe",
    "alias": "john.doe",
    "profile_picture": "https://link1.com"
  }
]
→ When the aliases array is provided, the system will not auto-generate aliases.
→ Each alias requires first_name, last_name, and alias.
→ alias must be the local part only (e.g. "john.doe") — no @ symbol, no spaces. Maximum 64 characters.
→ The number of aliases per domain must match the provider requirement:
ProviderRequired aliases per domain
google2
outlook25
smtp4

sequencer (optional)#

Attach an email sequencer to this order.
"sequencer": {
  "provider": "Instantly",
  "username": "user@instantly.ai",
  "password": "yourpassword",
  "link": "https://app.instantly.ai",
  "workspace": "my-workspace",
  "tag": "{{ID}}"
}
provider, username, password are required.
link, workspace, tag are optional but cannot be empty if provided.

hosting (conditionally required)#

Required only when provider = "other".
"hosting": {
  "provider": "Namecheap",
  "username": "your-username",
  "password": "your-password",
  "link": "https://namecheap.com"
}
provider, username, password are required.
link is optional but cannot be empty if provided.
Not required when using "scaledmail" as the provider.

Request

Authorization
Provide your bearer token in the
Authorization
header when making requests to protected resources.
Example:
Authorization: Bearer ********************
Query Params

Body Params application/json

Examples

Responses

🟢200Success
application/json
Bodyapplication/json

Request Request Example
Shell
JavaScript
Java
Swift
cURL
curl --location 'https://server.scaledmail.com/api/v1/create-custom-order?organization_id=undefined&provider=undefined&coupon=undefined' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
  "tag": "google_only",
  "providers": {
    "google": {
      "domains": [
        {
          "domain": "outreach-one.com",
          "first_name": "John",
          "last_name": "Doe"
        },
        {
          "domain": "outreach-two.com",
          "first_name": "Jane",
          "last_name": "Smith"
        }
      ]
    }
  }
}'
Response Response Example
{}
Modified atĀ 2026-04-28 13:51:16
Previous
Create Order
Next
Get Mailboxes by Domain ID
Built with