---
updatedAt: 2026-04-28T13:19:55.000Z
agentTools:
  projectIndex: https://dev.frontapp.com/llms.txt
---

# Create a call

Creates a call in Front.

# OpenAPI definition

```json
{
  "openapi": "3.0.0",
  "x-api-id": "front",
  "x-explorer-enabled": false,
  "x-proxy-enabled": true,
  "x-samples-enabled": true,
  "info": {
    "version": "1.0.0",
    "title": "Channel API",
    "contact": {
      "name": "Front Platform",
      "url": "https://community.front.com"
    }
  },
  "security": [
    {
      "http": []
    }
  ],
  "servers": [
    {
      "url": "https://api2.frontapp.com"
    }
  ],
  "components": {
    "securitySchemes": {
      "http": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "JWT"
      }
    },
    "schemas": {
      "CallParty": {
        "type": "object",
        "required": [
          "handle"
        ],
        "properties": {
          "handle": {
            "type": "string",
            "description": "Party identifier compatible with the application channel contact type."
          },
          "name": {
            "type": "string",
            "description": "Optional display name for the party."
          }
        }
      },
      "CreateCall": {
        "discriminator": {
          "propertyName": "direction",
          "mapping": {
            "inbound": "#/components/schemas/CreateCallInbound",
            "outbound": "#/components/schemas/CreateCallOutbound"
          }
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/CreateCallInbound"
          },
          {
            "$ref": "#/components/schemas/CreateCallOutbound"
          }
        ],
        "properties": {
          "direction": {
            "type": "string",
            "enum": [
              "inbound",
              "outbound"
            ],
            "description": "Use `inbound` with required `from` (external party); use `outbound` with required `to` (callee)."
          }
        }
      },
      "CreateCallInbound": {
        "type": "object",
        "required": [
          "external_call_id",
          "initial_status",
          "direction",
          "from",
          "parent_external_call_id"
        ],
        "properties": {
          "external_call_id": {
            "type": "string",
            "description": "Stable identifier for this call in the provider system."
          },
          "initial_status": {
            "type": "string",
            "enum": [
              "queued",
              "ringing"
            ]
          },
          "direction": {
            "type": "string",
            "enum": [
              "inbound"
            ],
            "description": "Inbound calls must include `from` (external party who initiated). The channel is treated as the receiving side (e.g. agent or queue)."
          },
          "from": {
            "$ref": "#/components/schemas/CallParty",
            "description": "External party who initiated the inbound call."
          },
          "started_at": {
            "type": "number",
            "description": "Optional Unix timestamp (ms) when the call started."
          },
          "parent_external_call_id": {
            "type": "string",
            "description": "External ID of the parent call (e.g. where the call was transferred from). This will be used to thread the call into an existing conversation with a matching parent call ID."
          },
          "agent_email_address": {
            "type": "string",
            "description": "Optional email of the teammate associated with the call."
          }
        }
      },
      "CreateCallOutbound": {
        "type": "object",
        "required": [
          "external_call_id",
          "initial_status",
          "direction",
          "to",
          "parent_external_call_id"
        ],
        "properties": {
          "external_call_id": {
            "type": "string",
            "description": "Stable identifier for this call in the provider system."
          },
          "initial_status": {
            "type": "string",
            "enum": [
              "queued",
              "ringing"
            ]
          },
          "direction": {
            "type": "string",
            "enum": [
              "outbound"
            ],
            "description": "Outbound calls must include `to` (callee). The channel is treated as the originating side (e.g. agent)."
          },
          "to": {
            "$ref": "#/components/schemas/CallParty",
            "description": "Party being called (callee)."
          },
          "started_at": {
            "type": "number",
            "description": "Optional Unix timestamp (ms) when the call started."
          },
          "parent_external_call_id": {
            "type": "string",
            "description": "External ID of the parent call (e.g. where the call was transferred from). This will be used to thread the call into an existing conversation with a matching parent call ID."
          },
          "agent_email_address": {
            "type": "string",
            "description": "Optional email of the teammate associated with the call."
          }
        }
      }
    }
  },
  "paths": {
    "/channels/{channel_id}/calls": {
      "post": {
        "summary": "Create a call",
        "operationId": "create-call",
        "description": "Creates a call in Front.",
        "tags": [
          "Calls"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "channel_id",
            "required": true,
            "description": "The Channel ID.",
            "schema": {
              "type": "string",
              "default": "cha_123"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCall"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "Accepted"
          },
          "400": {
            "description": "Bad Request"
          }
        },
        "x-required-scopes": [
          "channels:write"
        ]
      }
    }
  }
}
```