API ReferenceapicommsPOST /v1/sequences

POST /v1/sequences

Service: comms · operationId: (none)

Required scopes

(no scope declared — review service config)

Request body

{
  "type": "object",
  "properties": {
    "brand_id": {
      "type": "string",
      "minLength": 1
    },
    "name": {
      "type": "string",
      "minLength": 1
    },
    "description": {
      "type": "string"
    },
    "steps": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "position": {
            "type": "integer",
            "minimum": 0
          },
          "channel": {
            "type": "string",
            "enum": [
              "email",
              "sms",
              "push",
              "in_app"
            ]
          },
          "template_key": {
            "type": "string",
            "minLength": 1
          },
          "delay_minutes": {
            "type": "integer",
            "minimum": 0
          }
        },
        "required": [
          "position",
          "channel",
          "template_key",
          "delay_minutes"
        ]
      }
    }
  },
  "required": [
    "brand_id",
    "name",
    "steps"
  ]
}

Responses

201 Sequence created

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "brand_id": {
      "type": "string"
    },
    "name": {
      "type": "string"
    },
    "description": {
      "type": [
        "string",
        "null"
      ]
    },
    "status": {
      "type": "string"
    },
    "created_at": {
      "type": "string"
    },
    "updated_at": {
      "type": "string"
    },
    "steps": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "sequence_id": {
            "type": "string"
          },
          "position": {
            "type": "number"
          },
          "channel": {
            "type": "string"
          },
          "template_key": {
            "type": "string"
          },
          "delay_minutes": {
            "type": "number"
          }
        },
        "required": [
          "id",
          "sequence_id",
          "position",
          "channel",
          "template_key",
          "delay_minutes"
        ]
      }
    }
  },
  "required": [
    "id",
    "brand_id",
    "name",
    "description",
    "status",
    "created_at",
    "updated_at",
    "steps"
  ]
}

422 Validation error

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    },
    "message": {
      "type": "string"
    }
  },
  "required": [
    "error",
    "message"
  ]
}

Example

curl -X POST https://comms.platform.loop.health/v1/sequences \
  -H "Authorization: Bearer $ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'