Skip to content
DocumentationAPI reference Build something worth sending.

Reference

API reference

Browse project API endpoints, request parameters and response schemas generated from SendPanda's checked-in OpenAPI contract.

Base URL https://api.sendpanda.email/v1

Authenticate with Authorization: Bearer YOUR_API_KEY. Keys select a project; management operations require a management key. Mailbox grants and account safeguards still apply.

Open the interactive API explorer ↗Live OpenAPI JSON ↗

This reference is generated from the contract shipped with this application. Expand an endpoint to inspect its schema. Parameters are shown where the contract defines them; additional account, domain, consent and permission checks are explained in the relevant guides.

domains

GET/v1/domains+
OpenAPI schema
{
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/domains+
OpenAPI schema
{
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "pattern": "^(?=.{1,253}$)([a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\\.)+[a-z]{2,63}$"
            }
          },
          "required": [
            "name"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
GET/v1/domains/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
DELETE/v1/domains/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
GET/v1/domains/{id}/dns-provider+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/domains/{id}/verify+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/domains/{id}/restart-verification+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "replace_dkim_record": {
              "type": "boolean",
              "enum": [
                true
              ]
            }
          },
          "required": [
            "replace_dkim_record"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}

api keys

GET/v1/api-keys+
OpenAPI schema
{
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/api-keys+
OpenAPI schema
{
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "minLength": 1,
              "maxLength": 100
            },
            "scope": {
              "default": "send",
              "type": "string",
              "enum": [
                "send",
                "full"
              ]
            }
          },
          "required": [
            "name"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
DELETE/v1/api-keys/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}

emails

POST/v1/emails+
OpenAPI schema
{
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "from": {
              "type": "string",
              "maxLength": 320
            },
            "to": {
              "minItems": 1,
              "maxItems": 50,
              "type": "array",
              "items": {
                "type": "string",
                "format": "email",
                "pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
              }
            },
            "cc": {
              "maxItems": 50,
              "type": "array",
              "items": {
                "type": "string",
                "format": "email",
                "pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
              }
            },
            "bcc": {
              "maxItems": 50,
              "type": "array",
              "items": {
                "type": "string",
                "format": "email",
                "pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
              }
            },
            "subject": {
              "type": "string",
              "minLength": 1,
              "maxLength": 998
            },
            "html": {
              "type": "string",
              "maxLength": 250000
            },
            "text": {
              "type": "string",
              "maxLength": 250000
            },
            "reply_to": {
              "type": "string",
              "maxLength": 320
            },
            "tags": {
              "default": [],
              "maxItems": 10,
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string",
                    "pattern": "^[a-zA-Z0-9_-]{1,64}$"
                  },
                  "value": {
                    "type": "string",
                    "pattern": "^[a-zA-Z0-9_-]{1,128}$"
                  }
                },
                "required": [
                  "name",
                  "value"
                ],
                "additionalProperties": false
              }
            },
            "metadata": {
              "default": {},
              "type": "object",
              "additionalProperties": {
                "type": "string",
                "maxLength": 512
              }
            },
            "template_id": {
              "type": "string",
              "maxLength": 64
            },
            "variables": {
              "type": "object",
              "additionalProperties": {
                "anyOf": [
                  {
                    "type": "string",
                    "maxLength": 10000
                  },
                  {
                    "type": "number"
                  },
                  {
                    "type": "boolean"
                  }
                ]
              }
            }
          },
          "required": [
            "from",
            "to"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "202": {
      "description": "Default Response",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "status": {
                "type": "string",
                "enum": [
                  "queued",
                  "processing",
                  "submitted",
                  "delivered",
                  "deferred",
                  "bounced",
                  "complained",
                  "failed",
                  "cancelled"
                ]
              }
            },
            "required": [
              "id",
              "status"
            ],
            "additionalProperties": false
          }
        }
      }
    }
  }
}
GET/v1/emails+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string"
      },
      "in": "query",
      "name": "status",
      "required": false
    },
    {
      "schema": {
        "type": "string",
        "maxLength": 320
      },
      "in": "query",
      "name": "recipient",
      "required": false
    },
    {
      "schema": {
        "type": "string",
        "maxLength": 200
      },
      "in": "query",
      "name": "q",
      "required": false
    },
    {
      "schema": {
        "type": "string"
      },
      "in": "query",
      "name": "domain",
      "required": false
    },
    {
      "schema": {
        "type": "string",
        "format": "date-time",
        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
      },
      "in": "query",
      "name": "after",
      "required": false
    },
    {
      "schema": {
        "type": "string",
        "format": "date-time",
        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
      },
      "in": "query",
      "name": "before",
      "required": false
    },
    {
      "schema": {
        "type": "string"
      },
      "in": "query",
      "name": "tag",
      "required": false
    },
    {
      "schema": {
        "type": "string",
        "maxLength": 512
      },
      "in": "query",
      "name": "cursor",
      "required": false
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
GET/v1/emails/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
GET/v1/emails/status-counts+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "format": "date-time",
        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
      },
      "in": "query",
      "name": "after",
      "required": false
    },
    {
      "schema": {
        "type": "string"
      },
      "in": "query",
      "name": "domain",
      "required": false
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
GET/v1/emails/{id}/content+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/emails/{id}/cancel+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}

onboarding

GET/v1/onboarding+
OpenAPI schema
{
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}

usage

GET/v1/usage+
OpenAPI schema
{
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}

analytics

GET/v1/analytics+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "default": 30,
        "type": "integer",
        "minimum": -9007199254740991,
        "maximum": 9007199254740991
      },
      "in": "query",
      "name": "days",
      "required": false
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}

webhooks

GET/v1/webhooks+
OpenAPI schema
{
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/webhooks+
OpenAPI schema
{
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "url": {
              "type": "string",
              "format": "uri"
            },
            "events": {
              "minItems": 1,
              "maxItems": 6,
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "email.submitted",
                  "email.delivered",
                  "email.bounced",
                  "email.complained",
                  "email.failed",
                  "email.received"
                ]
              }
            }
          },
          "required": [
            "url",
            "events"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
PATCH/v1/webhooks/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "events": {
              "minItems": 1,
              "maxItems": 6,
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "email.submitted",
                  "email.delivered",
                  "email.bounced",
                  "email.complained",
                  "email.failed",
                  "email.received"
                ]
              }
            },
            "enabled": {
              "type": "boolean"
            }
          },
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
DELETE/v1/webhooks/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/webhooks/{id}/rotate+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
GET/v1/webhooks/{id}/deliveries+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}

webhook deliveries

POST/v1/webhook-deliveries/{id}/replay+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}

suppressions

GET/v1/suppressions+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "default": "",
        "type": "string",
        "maxLength": 320
      },
      "in": "query",
      "name": "search",
      "required": false
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/suppressions+
OpenAPI schema
{
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "address": {
              "type": "string",
              "format": "email",
              "pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
            },
            "reason": {
              "type": "string",
              "minLength": 1,
              "maxLength": 200
            }
          },
          "required": [
            "address",
            "reason"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
DELETE/v1/suppressions/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "reason": {
              "type": "string",
              "minLength": 10,
              "maxLength": 500
            }
          },
          "required": [
            "reason"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}

templates

GET/v1/templates+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "enum": [
          "true",
          "false"
        ]
      },
      "in": "query",
      "name": "include_preview",
      "required": false
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/templates+
OpenAPI schema
{
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "minLength": 1,
              "maxLength": 100
            },
            "subject": {
              "type": "string",
              "minLength": 1,
              "maxLength": 998
            },
            "html": {
              "type": "string",
              "minLength": 1,
              "maxLength": 250000
            },
            "text": {
              "type": "string",
              "maxLength": 250000
            },
            "design": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/EmailDesignInput"
                }
              ]
            }
          },
          "required": [
            "name",
            "subject"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
GET/v1/templates/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/templates/{id}/versions+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "minLength": 1,
              "maxLength": 100
            },
            "subject": {
              "type": "string",
              "minLength": 1,
              "maxLength": 998
            },
            "html": {
              "type": "string",
              "minLength": 1,
              "maxLength": 250000
            },
            "text": {
              "type": "string",
              "maxLength": 250000
            },
            "design": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/EmailDesignInput"
                }
              ]
            }
          },
          "required": [
            "name",
            "subject"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/templates/{id}/publish+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "version": {
              "type": "integer",
              "minimum": 0,
              "exclusiveMinimum": true,
              "maximum": 9007199254740991
            }
          },
          "required": [
            "version"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/templates/{id}/duplicate+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/templates/{id}/preview+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "version": {
              "type": "integer",
              "minimum": 0,
              "exclusiveMinimum": true,
              "maximum": 9007199254740991
            },
            "share_preview": {
              "default": false,
              "type": "boolean"
            },
            "variables": {
              "default": {},
              "type": "object",
              "additionalProperties": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "number"
                  },
                  {
                    "type": "boolean"
                  }
                ]
              }
            }
          },
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/templates/{id}/test+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "from": {
              "type": "string",
              "maxLength": 320
            },
            "to": {
              "type": "string",
              "maxLength": 320,
              "format": "email",
              "pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
            },
            "variables": {
              "default": {},
              "type": "object",
              "additionalProperties": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "number"
                  },
                  {
                    "type": "boolean"
                  }
                ]
              }
            }
          },
          "required": [
            "from",
            "to"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}

inbound

GET/v1/inbound+
OpenAPI schema
{
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
GET/v1/inbound/mailbox-access+
OpenAPI schema
{
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
PUT/v1/inbound/mailboxes/{id}/members+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "user_ids": {
              "maxItems": 100,
              "type": "array",
              "items": {
                "type": "string",
                "minLength": 1,
                "maxLength": 100
              }
            }
          },
          "required": [
            "user_ids"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/inbound/mailboxes+
OpenAPI schema
{
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "domain_id": {
              "type": "string",
              "minLength": 1,
              "maxLength": 100
            },
            "receiving_domain_id": {
              "type": "string",
              "minLength": 1,
              "maxLength": 100
            },
            "display_name": {
              "type": "string",
              "maxLength": 80,
              "pattern": "^[^<>\"\\\\\\r\\n]*$"
            },
            "local_part": {
              "type": "string",
              "minLength": 1,
              "maxLength": 64,
              "pattern": "^(\\*|[a-z0-9][a-z0-9._+-]*)$"
            }
          },
          "required": [
            "local_part"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/inbound/domains/{id}/verify+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/inbound/receiving-domains+
OpenAPI schema
{
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "maxLength": 253,
              "pattern": "^(?=.{1,253}$)([a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?\\.)+[a-z]{2,63}$"
            }
          },
          "required": [
            "name"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/inbound/receiving-domains/{id}/verify+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
DELETE/v1/inbound/receiving-domains/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
PATCH/v1/inbound/mailboxes/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "display_name": {
              "nullable": true,
              "type": "string",
              "maxLength": 80,
              "pattern": "^[^<>\"\\\\\\r\\n]*$"
            }
          },
          "required": [
            "display_name"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
DELETE/v1/inbound/mailboxes/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/inbound/mailboxes/{id}/forwards+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "address": {
              "type": "string",
              "maxLength": 320,
              "format": "email",
              "pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
            }
          },
          "required": [
            "address"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/inbound/forwards/{id}/resend+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
DELETE/v1/inbound/forwards/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
GET/v1/inbound/drafts+
OpenAPI schema
{
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/inbound/drafts+
OpenAPI schema
{
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "mailbox_id": {
              "type": "string",
              "minLength": 1,
              "maxLength": 80
            },
            "reply_to_message_id": {
              "nullable": true,
              "type": "string",
              "maxLength": 80
            },
            "from": {
              "type": "string",
              "maxLength": 320
            },
            "reply_to": {
              "type": "string",
              "maxLength": 320
            },
            "to": {
              "default": [],
              "maxItems": 50,
              "type": "array",
              "items": {
                "type": "string",
                "maxLength": 320
              }
            },
            "subject": {
              "default": "",
              "type": "string",
              "maxLength": 998
            },
            "html": {
              "default": "",
              "type": "string",
              "maxLength": 250000
            }
          },
          "required": [
            "mailbox_id"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
GET/v1/inbound/drafts/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
PUT/v1/inbound/drafts/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "mailbox_id": {
              "type": "string",
              "minLength": 1,
              "maxLength": 80
            },
            "reply_to_message_id": {
              "nullable": true,
              "type": "string",
              "maxLength": 80
            },
            "from": {
              "type": "string",
              "maxLength": 320
            },
            "reply_to": {
              "type": "string",
              "maxLength": 320
            },
            "to": {
              "default": [],
              "maxItems": 50,
              "type": "array",
              "items": {
                "type": "string",
                "maxLength": 320
              }
            },
            "subject": {
              "default": "",
              "type": "string",
              "maxLength": 998
            },
            "html": {
              "default": "",
              "type": "string",
              "maxLength": 250000
            }
          },
          "required": [
            "mailbox_id"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
DELETE/v1/inbound/drafts/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
GET/v1/inbound/sent+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 512
      },
      "in": "query",
      "name": "cursor",
      "required": false
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
GET/v1/inbound/sent/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
GET/v1/inbound/unread+
OpenAPI schema
{
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
GET/v1/inbound/unread-by-project+
OpenAPI schema
{
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
GET/v1/inbound/messages+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "query",
      "name": "mailbox_id",
      "required": false
    },
    {
      "schema": {
        "default": "all",
        "type": "string",
        "enum": [
          "all",
          "unread",
          "spam"
        ]
      },
      "in": "query",
      "name": "folder",
      "required": false
    },
    {
      "schema": {
        "type": "string",
        "maxLength": 200
      },
      "in": "query",
      "name": "q",
      "required": false
    },
    {
      "schema": {
        "type": "string",
        "maxLength": 512
      },
      "in": "query",
      "name": "cursor",
      "required": false
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
PATCH/v1/inbound/messages/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "status": {
              "type": "string",
              "enum": [
                "read",
                "unread"
              ]
            }
          },
          "required": [
            "status"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
GET/v1/inbound/messages/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
DELETE/v1/inbound/messages/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
GET/v1/inbound/mailboxes/{id}/messages+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 512
      },
      "in": "query",
      "name": "cursor",
      "required": false
    },
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
GET/v1/inbound/messages/{id}/attachments/{index}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    },
    {
      "schema": {
        "type": "integer",
        "minimum": 0,
        "maximum": 99
      },
      "in": "path",
      "name": "index",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}

images

GET/v1/images+
OpenAPI schema
{
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/images+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 200
      },
      "in": "query",
      "name": "filename",
      "required": false
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
DELETE/v1/images/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}

brand

GET/v1/brand+
OpenAPI schema
{
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
PUT/v1/brand+
OpenAPI schema
{
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "image_id": {
              "nullable": true,
              "type": "string",
              "maxLength": 80
            },
            "width": {
              "default": 140,
              "type": "integer",
              "minimum": 40,
              "maximum": 400
            },
            "link": {
              "default": null,
              "nullable": true,
              "type": "string",
              "maxLength": 2048
            }
          },
          "required": [
            "image_id"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}

sections

GET/v1/sections+
OpenAPI schema
{
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/sections+
OpenAPI schema
{
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "minLength": 1,
              "maxLength": 80
            },
            "blocks": {
              "minItems": 1,
              "maxItems": 20,
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/EmailSectionInput"
              }
            }
          },
          "required": [
            "name",
            "blocks"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
DELETE/v1/sections/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}

email previews

GET/v1/email-previews/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "pattern": "^preview_[a-f0-9]{32}$"
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}

email designs

GET/v1/email-designs/starter+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "default": "welcome",
        "type": "string",
        "enum": [
          "welcome",
          "newsletter",
          "shop",
          "blank"
        ]
      },
      "in": "query",
      "name": "style",
      "required": false
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/email-designs/preview+
OpenAPI schema
{
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "subject": {
              "type": "string",
              "minLength": 1,
              "maxLength": 998
            },
            "design": {
              "$ref": "#/components/schemas/EmailDesignInput"
            },
            "variables": {
              "default": {},
              "type": "object",
              "additionalProperties": {
                "anyOf": [
                  {
                    "type": "string",
                    "maxLength": 10000
                  },
                  {
                    "type": "number"
                  },
                  {
                    "type": "boolean"
                  }
                ]
              }
            }
          },
          "required": [
            "subject",
            "design"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}

marketing

GET/v1/marketing+
OpenAPI schema
{
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}

audiences

GET/v1/audiences+
OpenAPI schema
{
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/audiences+
OpenAPI schema
{
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "minLength": 1,
              "maxLength": 100
            }
          },
          "required": [
            "name"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
PATCH/v1/audiences/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "minLength": 1,
              "maxLength": 100
            }
          },
          "required": [
            "name"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
DELETE/v1/audiences/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/audiences/{id}/contacts+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "contacts": {
              "minItems": 1,
              "maxItems": 500,
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "email": {
                    "type": "string",
                    "format": "email",
                    "pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
                  },
                  "name": {
                    "default": "",
                    "type": "string",
                    "maxLength": 100
                  },
                  "tags": {
                    "default": [],
                    "maxItems": 20,
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[a-zA-Z0-9_-]{1,64}$"
                    }
                  },
                  "consent": {
                    "type": "object",
                    "properties": {
                      "at": {
                        "type": "string",
                        "format": "date-time",
                        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                      },
                      "source": {
                        "type": "string",
                        "enum": [
                          "signup",
                          "double_opt_in",
                          "customer_request"
                        ]
                      },
                      "evidence": {
                        "type": "string",
                        "minLength": 10,
                        "maxLength": 2000
                      }
                    },
                    "required": [
                      "at",
                      "source",
                      "evidence"
                    ],
                    "additionalProperties": false
                  }
                },
                "required": [
                  "email",
                  "consent"
                ],
                "additionalProperties": false
              }
            },
            "permission_confirmed": {
              "type": "boolean",
              "enum": [
                true
              ]
            }
          },
          "required": [
            "contacts",
            "permission_confirmed"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}

contacts

GET/v1/contacts+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "query",
      "name": "audience_id",
      "required": false
    },
    {
      "schema": {
        "type": "string",
        "maxLength": 100
      },
      "in": "query",
      "name": "search",
      "required": false
    },
    {
      "schema": {
        "type": "string",
        "enum": [
          "subscribed",
          "unsubscribed"
        ]
      },
      "in": "query",
      "name": "status",
      "required": false
    },
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "query",
      "name": "after",
      "required": false
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
PATCH/v1/contacts/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "maxLength": 100
            },
            "tags": {
              "maxItems": 20,
              "type": "array",
              "items": {
                "type": "string",
                "pattern": "^[a-zA-Z0-9_-]{1,64}$"
              }
            }
          },
          "required": [
            "name",
            "tags"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
DELETE/v1/contacts/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
GET/v1/contacts/{id}/consent+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/contacts/{id}/subscribe+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "consent": {
              "type": "object",
              "properties": {
                "at": {
                  "type": "string",
                  "format": "date-time",
                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                },
                "source": {
                  "type": "string",
                  "enum": [
                    "signup",
                    "double_opt_in",
                    "customer_request"
                  ]
                },
                "evidence": {
                  "type": "string",
                  "minLength": 10,
                  "maxLength": 2000
                }
              },
              "required": [
                "at",
                "source",
                "evidence"
              ],
              "additionalProperties": false
            },
            "permission_confirmed": {
              "type": "boolean",
              "enum": [
                true
              ]
            }
          },
          "required": [
            "consent",
            "permission_confirmed"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}

campaigns

GET/v1/campaigns+
OpenAPI schema
{
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/campaigns+
OpenAPI schema
{
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "minLength": 1,
              "maxLength": 100
            },
            "audience_id": {
              "type": "string",
              "maxLength": 80
            },
            "from": {
              "type": "string",
              "maxLength": 320
            },
            "subject": {
              "type": "string",
              "minLength": 1,
              "maxLength": 998
            },
            "html": {
              "type": "string",
              "maxLength": 240000
            },
            "text": {
              "type": "string",
              "maxLength": 240000
            },
            "design": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/EmailDesignInput"
                }
              ]
            },
            "template_id": {
              "type": "string",
              "maxLength": 80
            },
            "variables": {
              "default": {},
              "type": "object",
              "additionalProperties": {
                "anyOf": [
                  {
                    "type": "string",
                    "maxLength": 10000
                  },
                  {
                    "type": "number"
                  },
                  {
                    "type": "boolean"
                  }
                ]
              }
            },
            "postal_address": {
              "type": "string",
              "minLength": 10,
              "maxLength": 500
            },
            "reply_to": {
              "type": "string",
              "maxLength": 320
            },
            "segment_tag": {
              "type": "string",
              "pattern": "^[a-zA-Z0-9_-]{1,64}$"
            }
          },
          "required": [
            "name",
            "audience_id",
            "from",
            "subject",
            "postal_address"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
GET/v1/campaigns/{id}/content+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
PATCH/v1/campaigns/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "minLength": 1,
              "maxLength": 100
            },
            "audience_id": {
              "type": "string",
              "maxLength": 80
            },
            "from": {
              "type": "string",
              "maxLength": 320
            },
            "subject": {
              "type": "string",
              "minLength": 1,
              "maxLength": 998
            },
            "html": {
              "type": "string",
              "maxLength": 240000
            },
            "text": {
              "type": "string",
              "maxLength": 240000
            },
            "design": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/EmailDesignInput"
                }
              ]
            },
            "template_id": {
              "type": "string",
              "maxLength": 80
            },
            "variables": {
              "default": {},
              "type": "object",
              "additionalProperties": {
                "anyOf": [
                  {
                    "type": "string",
                    "maxLength": 10000
                  },
                  {
                    "type": "number"
                  },
                  {
                    "type": "boolean"
                  }
                ]
              }
            },
            "postal_address": {
              "type": "string",
              "minLength": 10,
              "maxLength": 500
            },
            "reply_to": {
              "type": "string",
              "maxLength": 320
            },
            "segment_tag": {
              "type": "string",
              "pattern": "^[a-zA-Z0-9_-]{1,64}$"
            }
          },
          "required": [
            "name",
            "audience_id",
            "from",
            "subject",
            "postal_address"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
GET/v1/campaigns/{id}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
GET/v1/campaigns/{id}/recipients+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "query",
      "name": "after",
      "required": false
    },
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/campaigns/{id}/preview+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "nullable": true,
          "type": "object",
          "properties": {
            "share_preview": {
              "type": "boolean"
            }
          },
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/campaigns/{id}/test+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "nullable": true,
          "type": "object",
          "properties": {
            "to": {
              "type": "string",
              "maxLength": 320,
              "format": "email",
              "pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
            }
          },
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/campaigns/{id}/schedule+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    }
  ],
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "scheduled_at": {
              "type": "string",
              "format": "date-time",
              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
            },
            "permission_confirmed": {
              "type": "boolean",
              "enum": [
                true
              ]
            }
          },
          "required": [
            "permission_confirmed"
          ],
          "additionalProperties": false
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}
POST/v1/campaigns/{id}/{action}+
OpenAPI schema
{
  "parameters": [
    {
      "schema": {
        "type": "string",
        "maxLength": 80
      },
      "in": "path",
      "name": "id",
      "required": true
    },
    {
      "schema": {
        "type": "string",
        "enum": [
          "pause",
          "resume",
          "cancel"
        ]
      },
      "in": "path",
      "name": "action",
      "required": true
    }
  ],
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}

project

GET/v1/project+
OpenAPI schema
{
  "responses": {
    "200": {
      "description": "Default Response"
    }
  }
}

Shared design schemas

Visual email request schemas use these component definitions.

JSON schema
{
  "EmailComponentInput": {
    "oneOf": [
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "heading"
            ]
          },
          "text": {
            "type": "string",
            "maxLength": 10000
          }
        },
        "required": [
          "id",
          "type",
          "text"
        ],
        "additionalProperties": false
      },
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "text"
            ]
          },
          "text": {
            "type": "string",
            "maxLength": 10000
          }
        },
        "required": [
          "id",
          "type",
          "text"
        ],
        "additionalProperties": false
      },
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "image"
            ]
          },
          "src": {
            "type": "string",
            "maxLength": 2048
          },
          "alt": {
            "type": "string",
            "maxLength": 300
          },
          "url": {
            "type": "string",
            "maxLength": 2048
          },
          "width": {
            "type": "integer",
            "minimum": 40,
            "maximum": 720
          }
        },
        "required": [
          "id",
          "type",
          "src",
          "alt",
          "url",
          "width"
        ],
        "additionalProperties": false
      },
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "logo"
            ]
          },
          "src": {
            "type": "string",
            "maxLength": 2048
          },
          "alt": {
            "type": "string",
            "maxLength": 300
          },
          "url": {
            "type": "string",
            "maxLength": 2048
          },
          "width": {
            "type": "integer",
            "minimum": 40,
            "maximum": 720
          }
        },
        "required": [
          "id",
          "type",
          "src",
          "alt",
          "url",
          "width"
        ],
        "additionalProperties": false
      },
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "button"
            ]
          },
          "text": {
            "type": "string",
            "maxLength": 200
          },
          "url": {
            "type": "string",
            "maxLength": 2048
          },
          "buttonColor": {
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "radius": {
            "type": "integer",
            "minimum": 0,
            "maximum": 32
          }
        },
        "required": [
          "id",
          "type",
          "text",
          "url",
          "buttonColor",
          "radius"
        ],
        "additionalProperties": false
      },
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "divider"
            ]
          },
          "height": {
            "type": "integer",
            "minimum": 1,
            "maximum": 8
          }
        },
        "required": [
          "id",
          "type",
          "height"
        ],
        "additionalProperties": false
      },
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "spacer"
            ]
          },
          "height": {
            "type": "integer",
            "minimum": 4,
            "maximum": 160
          }
        },
        "required": [
          "id",
          "type",
          "height"
        ],
        "additionalProperties": false
      },
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "hero"
            ]
          },
          "src": {
            "type": "string",
            "maxLength": 2048
          },
          "alt": {
            "type": "string",
            "maxLength": 300
          },
          "title": {
            "type": "string",
            "maxLength": 10000
          },
          "text": {
            "type": "string",
            "maxLength": 10000
          },
          "buttonText": {
            "type": "string",
            "maxLength": 200
          },
          "url": {
            "type": "string",
            "maxLength": 2048
          },
          "buttonColor": {
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          }
        },
        "required": [
          "id",
          "type",
          "src",
          "alt",
          "title",
          "text",
          "buttonText",
          "url",
          "buttonColor"
        ],
        "additionalProperties": false
      },
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "product"
            ]
          },
          "src": {
            "type": "string",
            "maxLength": 2048
          },
          "alt": {
            "type": "string",
            "maxLength": 300
          },
          "title": {
            "type": "string",
            "maxLength": 10000
          },
          "text": {
            "type": "string",
            "maxLength": 10000
          },
          "price": {
            "type": "string",
            "maxLength": 100
          },
          "buttonText": {
            "type": "string",
            "maxLength": 200
          },
          "url": {
            "type": "string",
            "maxLength": 2048
          },
          "buttonColor": {
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          }
        },
        "required": [
          "id",
          "type",
          "src",
          "alt",
          "title",
          "text",
          "price",
          "buttonText",
          "url",
          "buttonColor"
        ],
        "additionalProperties": false
      },
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "coupon"
            ]
          },
          "title": {
            "type": "string",
            "maxLength": 10000
          },
          "text": {
            "type": "string",
            "maxLength": 10000
          },
          "code": {
            "type": "string",
            "maxLength": 100
          },
          "url": {
            "type": "string",
            "maxLength": 2048
          },
          "buttonText": {
            "type": "string",
            "maxLength": 200
          },
          "buttonColor": {
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          }
        },
        "required": [
          "id",
          "type",
          "title",
          "text",
          "code",
          "url",
          "buttonText",
          "buttonColor"
        ],
        "additionalProperties": false
      },
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "list"
            ]
          },
          "items": {
            "minItems": 1,
            "maxItems": 12,
            "type": "array",
            "items": {
              "type": "string",
              "maxLength": 1000
            }
          }
        },
        "required": [
          "id",
          "type",
          "items"
        ],
        "additionalProperties": false
      },
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "social"
            ]
          },
          "links": {
            "minItems": 1,
            "maxItems": 6,
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "label": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 50
                },
                "url": {
                  "type": "string",
                  "maxLength": 2048
                }
              },
              "required": [
                "label",
                "url"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "id",
          "type",
          "links"
        ],
        "additionalProperties": false
      }
    ]
  },
  "EmailSectionInput": {
    "anyOf": [
      {
        "$ref": "#/components/schemas/EmailComponentInput"
      },
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "columns"
            ]
          },
          "left": {
            "maxItems": 12,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EmailComponentInput"
            }
          },
          "right": {
            "maxItems": 12,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EmailComponentInput"
            }
          }
        },
        "required": [
          "id",
          "type",
          "left",
          "right"
        ],
        "additionalProperties": false
      }
    ]
  },
  "EmailDesignInput": {
    "type": "object",
    "properties": {
      "version": {
        "type": "number",
        "enum": [
          1
        ]
      },
      "preheader": {
        "type": "string",
        "maxLength": 200
      },
      "showLogo": {
        "type": "boolean"
      },
      "theme": {
        "type": "object",
        "properties": {
          "background": {
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "surface": {
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "text": {
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "accent": {
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "font": {
            "type": "string",
            "enum": [
              "Arial",
              "Georgia",
              "Verdana",
              "Trebuchet MS"
            ]
          },
          "width": {
            "type": "integer",
            "minimum": 480,
            "maximum": 720
          },
          "radius": {
            "type": "integer",
            "minimum": 0,
            "maximum": 32
          }
        },
        "required": [
          "background",
          "surface",
          "text",
          "accent",
          "font",
          "width",
          "radius"
        ],
        "additionalProperties": false
      },
      "blocks": {
        "minItems": 1,
        "maxItems": 60,
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/EmailSectionInput"
        }
      }
    },
    "required": [
      "version",
      "preheader",
      "theme",
      "blocks"
    ],
    "additionalProperties": false
  },
  "EmailComponent": {
    "oneOf": [
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "heading"
            ]
          },
          "text": {
            "type": "string",
            "maxLength": 10000
          }
        },
        "required": [
          "id",
          "align",
          "padding",
          "background",
          "color",
          "fontSize",
          "bold",
          "italic",
          "type",
          "text"
        ],
        "additionalProperties": false
      },
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "text"
            ]
          },
          "text": {
            "type": "string",
            "maxLength": 10000
          }
        },
        "required": [
          "id",
          "align",
          "padding",
          "background",
          "color",
          "fontSize",
          "bold",
          "italic",
          "type",
          "text"
        ],
        "additionalProperties": false
      },
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "image"
            ]
          },
          "src": {
            "type": "string",
            "maxLength": 2048
          },
          "alt": {
            "type": "string",
            "maxLength": 300
          },
          "url": {
            "type": "string",
            "maxLength": 2048
          },
          "width": {
            "type": "integer",
            "minimum": 40,
            "maximum": 720
          }
        },
        "required": [
          "id",
          "align",
          "padding",
          "background",
          "color",
          "fontSize",
          "bold",
          "italic",
          "type",
          "src",
          "alt",
          "url",
          "width"
        ],
        "additionalProperties": false
      },
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "logo"
            ]
          },
          "src": {
            "type": "string",
            "maxLength": 2048
          },
          "alt": {
            "type": "string",
            "maxLength": 300
          },
          "url": {
            "type": "string",
            "maxLength": 2048
          },
          "width": {
            "type": "integer",
            "minimum": 40,
            "maximum": 720
          }
        },
        "required": [
          "id",
          "align",
          "padding",
          "background",
          "color",
          "fontSize",
          "bold",
          "italic",
          "type",
          "src",
          "alt",
          "url",
          "width"
        ],
        "additionalProperties": false
      },
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "button"
            ]
          },
          "text": {
            "type": "string",
            "maxLength": 200
          },
          "url": {
            "type": "string",
            "maxLength": 2048
          },
          "buttonColor": {
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "radius": {
            "type": "integer",
            "minimum": 0,
            "maximum": 32
          }
        },
        "required": [
          "id",
          "align",
          "padding",
          "background",
          "color",
          "fontSize",
          "bold",
          "italic",
          "type",
          "text",
          "url",
          "buttonColor",
          "radius"
        ],
        "additionalProperties": false
      },
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "divider"
            ]
          },
          "height": {
            "type": "integer",
            "minimum": 1,
            "maximum": 8
          }
        },
        "required": [
          "id",
          "align",
          "padding",
          "background",
          "color",
          "fontSize",
          "bold",
          "italic",
          "type",
          "height"
        ],
        "additionalProperties": false
      },
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "spacer"
            ]
          },
          "height": {
            "type": "integer",
            "minimum": 4,
            "maximum": 160
          }
        },
        "required": [
          "id",
          "align",
          "padding",
          "background",
          "color",
          "fontSize",
          "bold",
          "italic",
          "type",
          "height"
        ],
        "additionalProperties": false
      },
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "hero"
            ]
          },
          "src": {
            "type": "string",
            "maxLength": 2048
          },
          "alt": {
            "type": "string",
            "maxLength": 300
          },
          "title": {
            "type": "string",
            "maxLength": 10000
          },
          "text": {
            "type": "string",
            "maxLength": 10000
          },
          "buttonText": {
            "type": "string",
            "maxLength": 200
          },
          "url": {
            "type": "string",
            "maxLength": 2048
          },
          "buttonColor": {
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          }
        },
        "required": [
          "id",
          "align",
          "padding",
          "background",
          "color",
          "fontSize",
          "bold",
          "italic",
          "type",
          "src",
          "alt",
          "title",
          "text",
          "buttonText",
          "url",
          "buttonColor"
        ],
        "additionalProperties": false
      },
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "product"
            ]
          },
          "src": {
            "type": "string",
            "maxLength": 2048
          },
          "alt": {
            "type": "string",
            "maxLength": 300
          },
          "title": {
            "type": "string",
            "maxLength": 10000
          },
          "text": {
            "type": "string",
            "maxLength": 10000
          },
          "price": {
            "type": "string",
            "maxLength": 100
          },
          "buttonText": {
            "type": "string",
            "maxLength": 200
          },
          "url": {
            "type": "string",
            "maxLength": 2048
          },
          "buttonColor": {
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          }
        },
        "required": [
          "id",
          "align",
          "padding",
          "background",
          "color",
          "fontSize",
          "bold",
          "italic",
          "type",
          "src",
          "alt",
          "title",
          "text",
          "price",
          "buttonText",
          "url",
          "buttonColor"
        ],
        "additionalProperties": false
      },
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "coupon"
            ]
          },
          "title": {
            "type": "string",
            "maxLength": 10000
          },
          "text": {
            "type": "string",
            "maxLength": 10000
          },
          "code": {
            "type": "string",
            "maxLength": 100
          },
          "url": {
            "type": "string",
            "maxLength": 2048
          },
          "buttonText": {
            "type": "string",
            "maxLength": 200
          },
          "buttonColor": {
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          }
        },
        "required": [
          "id",
          "align",
          "padding",
          "background",
          "color",
          "fontSize",
          "bold",
          "italic",
          "type",
          "title",
          "text",
          "code",
          "url",
          "buttonText",
          "buttonColor"
        ],
        "additionalProperties": false
      },
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "list"
            ]
          },
          "items": {
            "minItems": 1,
            "maxItems": 12,
            "type": "array",
            "items": {
              "type": "string",
              "maxLength": 1000
            }
          }
        },
        "required": [
          "id",
          "align",
          "padding",
          "background",
          "color",
          "fontSize",
          "bold",
          "italic",
          "type",
          "items"
        ],
        "additionalProperties": false
      },
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "social"
            ]
          },
          "links": {
            "minItems": 1,
            "maxItems": 6,
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "label": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 50
                },
                "url": {
                  "type": "string",
                  "maxLength": 2048
                }
              },
              "required": [
                "label",
                "url"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "id",
          "align",
          "padding",
          "background",
          "color",
          "fontSize",
          "bold",
          "italic",
          "type",
          "links"
        ],
        "additionalProperties": false
      }
    ]
  },
  "EmailSection": {
    "anyOf": [
      {
        "$ref": "#/components/schemas/EmailComponent"
      },
      {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[a-zA-Z0-9_-]{1,80}$"
          },
          "align": {
            "default": "left",
            "type": "string",
            "enum": [
              "left",
              "center",
              "right"
            ]
          },
          "padding": {
            "default": 24,
            "type": "integer",
            "minimum": 0,
            "maximum": 64
          },
          "background": {
            "default": "#ffffff",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "color": {
            "default": "#24382e",
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "fontSize": {
            "default": 16,
            "type": "integer",
            "minimum": 10,
            "maximum": 64
          },
          "bold": {
            "default": false,
            "type": "boolean"
          },
          "italic": {
            "default": false,
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "columns"
            ]
          },
          "left": {
            "maxItems": 12,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EmailComponent"
            }
          },
          "right": {
            "maxItems": 12,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EmailComponent"
            }
          }
        },
        "required": [
          "id",
          "align",
          "padding",
          "background",
          "color",
          "fontSize",
          "bold",
          "italic",
          "type",
          "left",
          "right"
        ],
        "additionalProperties": false
      }
    ]
  },
  "EmailDesign": {
    "type": "object",
    "properties": {
      "version": {
        "type": "number",
        "enum": [
          1
        ]
      },
      "preheader": {
        "type": "string",
        "maxLength": 200
      },
      "showLogo": {
        "type": "boolean"
      },
      "theme": {
        "type": "object",
        "properties": {
          "background": {
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "surface": {
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "text": {
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "accent": {
            "type": "string",
            "pattern": "^#[0-9a-f]{6}$"
          },
          "font": {
            "type": "string",
            "enum": [
              "Arial",
              "Georgia",
              "Verdana",
              "Trebuchet MS"
            ]
          },
          "width": {
            "type": "integer",
            "minimum": 480,
            "maximum": 720
          },
          "radius": {
            "type": "integer",
            "minimum": 0,
            "maximum": 32
          }
        },
        "required": [
          "background",
          "surface",
          "text",
          "accent",
          "font",
          "width",
          "radius"
        ],
        "additionalProperties": false
      },
      "blocks": {
        "minItems": 1,
        "maxItems": 60,
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/EmailSection"
        }
      }
    },
    "required": [
      "version",
      "preheader",
      "theme",
      "blocks"
    ],
    "additionalProperties": false
  }
}
↑↓ to navigate↵ to openesc to close