Phonely · Schema

Phonely Post-Call Event

Schema for the JSON payload that Phonely POSTs to a customer-configured HTTPS webhook endpoint after a call completes (the Send Call Data post-call workflow action).

AIArtificial IntelligenceVoice AIVoice AgentsConversational AITelephonyPhoneCall CenterContact CenterSMSWebhooksWorkflow AutomationSchedulingCRM

Properties

Name Type Description
callId string Unique identifier for the call.
agentName string Display name of the agent that handled the call.
callerName string Caller's name when known.
callDirection string Direction of the call.
callStarted string ISO 8601 timestamp of when the call started.
callEnded string ISO 8601 timestamp of when the call ended.
duration number Call duration in seconds.
businessPhoneNumber string Business phone number assigned to the agent (E.164).
customerPhoneNumber string Caller's phone number (E.164).
mentionedEmail stringnull Email address mentioned during the call, if any.
mentionedDate stringnull Date mentioned during the call, if any.
mentionedTime stringnull Time mentioned during the call, if any.
transcriptText string Full text transcript of the call.
transcript array Structured transcript turns.
summary string Brief AI-generated summary of the call.
longSummary stringnull Detailed AI-generated summary of the call.
purpose string AI-extracted call objective.
topic string AI-extracted call topic / category.
sentiment string Overall sentiment of the call.
keyPoints array Highlighted insights from the call.
unansweredQuestions array Caller questions that were not resolved.
actionItems array Tasks generated by the call.
followUp string Follow-up indicator.
followUpReason string Reason a follow-up is needed.
ai_success string AI performance / success metric for the call.
recordingUrl string HTTPS URL to the call recording.
dashboardUrl string HTTPS URL to view this call in the Phonely dashboard.
endedReason string Reason the call ended (e.g. caller_hangup, agent_hangup, transfer).
View JSON Schema on GitHub

JSON Schema

phonely-post-call-event-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://api-evangelist.com/schemas/phonely/phonely-post-call-event-schema.json",
  "title": "Phonely Post-Call Event",
  "description": "Schema for the JSON payload that Phonely POSTs to a customer-configured HTTPS webhook endpoint after a call completes (the Send Call Data post-call workflow action).",
  "type": "object",
  "required": [
    "callId",
    "callDirection",
    "callStarted",
    "callEnded",
    "duration",
    "businessPhoneNumber",
    "customerPhoneNumber"
  ],
  "properties": {
    "callId": {
      "type": "string",
      "description": "Unique identifier for the call."
    },
    "agentName": {
      "type": "string",
      "description": "Display name of the agent that handled the call."
    },
    "callerName": {
      "type": "string",
      "description": "Caller's name when known."
    },
    "callDirection": {
      "type": "string",
      "description": "Direction of the call.",
      "enum": ["inbound", "outbound"]
    },
    "callStarted": {
      "type": "string",
      "format": "date-time",
      "description": "ISO 8601 timestamp of when the call started."
    },
    "callEnded": {
      "type": "string",
      "format": "date-time",
      "description": "ISO 8601 timestamp of when the call ended."
    },
    "duration": {
      "type": "number",
      "description": "Call duration in seconds."
    },
    "businessPhoneNumber": {
      "type": "string",
      "description": "Business phone number assigned to the agent (E.164)."
    },
    "customerPhoneNumber": {
      "type": "string",
      "description": "Caller's phone number (E.164)."
    },
    "mentionedEmail": {
      "type": ["string", "null"],
      "description": "Email address mentioned during the call, if any."
    },
    "mentionedDate": {
      "type": ["string", "null"],
      "description": "Date mentioned during the call, if any."
    },
    "mentionedTime": {
      "type": ["string", "null"],
      "description": "Time mentioned during the call, if any."
    },
    "transcriptText": {
      "type": "string",
      "description": "Full text transcript of the call."
    },
    "transcript": {
      "type": "array",
      "description": "Structured transcript turns.",
      "items": {
        "type": "object",
        "required": ["role", "content"],
        "properties": {
          "role": {
            "type": "string",
            "enum": ["agent", "user"]
          },
          "content": {
            "type": "string"
          }
        }
      }
    },
    "summary": {
      "type": "string",
      "description": "Brief AI-generated summary of the call."
    },
    "longSummary": {
      "type": ["string", "null"],
      "description": "Detailed AI-generated summary of the call."
    },
    "purpose": {
      "type": "string",
      "description": "AI-extracted call objective."
    },
    "topic": {
      "type": "string",
      "description": "AI-extracted call topic / category."
    },
    "sentiment": {
      "type": "string",
      "description": "Overall sentiment of the call."
    },
    "keyPoints": {
      "type": "array",
      "description": "Highlighted insights from the call.",
      "items": { "type": "string" }
    },
    "unansweredQuestions": {
      "type": "array",
      "description": "Caller questions that were not resolved.",
      "items": { "type": "string" }
    },
    "actionItems": {
      "type": "array",
      "description": "Tasks generated by the call.",
      "items": { "type": "string" }
    },
    "followUp": {
      "type": "string",
      "description": "Follow-up indicator."
    },
    "followUpReason": {
      "type": "string",
      "description": "Reason a follow-up is needed."
    },
    "ai_success": {
      "type": "string",
      "description": "AI performance / success metric for the call."
    },
    "recordingUrl": {
      "type": "string",
      "format": "uri",
      "description": "HTTPS URL to the call recording."
    },
    "dashboardUrl": {
      "type": "string",
      "format": "uri",
      "description": "HTTPS URL to view this call in the Phonely dashboard."
    },
    "endedReason": {
      "type": "string",
      "description": "Reason the call ended (e.g. caller_hangup, agent_hangup, transfer)."
    }
  }
}