---
title: "Submit details of an inbound call to the CRM."
method: POST
path: "/crm/extensions/calling/2026-09/inbound-call"
tags: ["Advanced"]
---

# Submit details of an inbound call to the CRM.

`POST /crm/extensions/calling/2026-09/inbound-call`

## Request

- Base URL: `https://api.hubapi.com`
- URL: `https://api.hubapi.com/crm/extensions/calling/2026-09/inbound-call`
- Auth: one of:
  - OAuth 2
    - Authorization code: `https://app.hubspot.com/oauth/authorize`
    - Token URL: `https://api.hubapi.com/oauth/v1/token` scopes: `crm.objects.contacts.highly_sensitive.write.v2`
  - OAuth 2
    - Authorization code: `https://app.hubspot.com/oauth/authorize`
    - Token URL: `https://api.hubapi.com/oauth/v1/token` scopes: `crm.objects.contacts.write`
  - OAuth 2
    - Authorization code: `https://app.hubspot.com/oauth/authorize`
    - Token URL: `https://api.hubapi.com/oauth/v1/token` scopes: `crm.objects.contacts.sensitive.write.v2`
  - OAuth 2
    - Authorization code: `https://app.hubspot.com/oauth/authorize`
    - Token URL: `https://api.hubapi.com/oauth/v1/token` scopes: `crm.schemas.contacts.write`

This endpoint allows you to submit information about an inbound call to the CRM system. The request must include details such as the external call ID, call status, and involved phone numbers. This operation helps in logging and managing inbound call data within the CRM.

## Request body

- CompletedThirdPartyCallRequest
  - `callStartedTimestamp` string, date-time: The timestamp indicating when the call started, formatted as a date-time string.
  - `createEngagement` boolean, required: Indicates whether an engagement should be created for the call.
  - `durationSeconds` integer: The duration of the call in seconds.
  - `engagementProperties` object, required: Contains additional properties related to the engagement.
  - `externalCallId` string, required: The unique identifier for the call from an external system.
  - `finalCallStatus` 'BUSY' | 'CALLING_CRM_USER' | 'CANCELED' | 'COMPLETED' | 'CONNECTING' | 'FAILED' | 'HOLD' | 'IN_PROGRESS' | 'MISSED' | 'NO_ANSWER' | 'QUEUED' | 'RINGING' | 'UNKNOWN', required: The final status of the call, with accepted values including: BUSY, CALLING_CRM_USER, CANCELED, COMPLETED, CONNECTING, FAILED, HOLD, IN_PROGRESS, MISSED, NO_ANSWER, QUEUED, RINGING, UNKNOWN.
  - `fromNumber` FormattedPhoneNumber, required
    - `e164Number` string, required: The phone number formatted in E.164 standard.
    - `extension` string: The extension number associated with the phone number.
    - `phoneNumberType` 'FIXED_LINE' | 'FIXED_LINE_OR_MOBILE' | 'MOBILE' | 'PAGER' | 'PERSONAL_NUMBER' | 'PREMIUM_RATE' | 'SHARED_COST' | 'TOLL_FREE' | 'UAN' | 'UNKNOWN' | 'VOICEMAIL' | 'VOIP', required: The type of phone number, with accepted values including FIXED_LINE, MOBILE, VOIP, and others.
  - `potentialRecipientUserIds` integer[], required
  - `toNumber` FormattedPhoneNumber, required
    - `e164Number` string, required: The phone number formatted in E.164 standard.
    - `extension` string: The extension number associated with the phone number.
    - `phoneNumberType` 'FIXED_LINE' | 'FIXED_LINE_OR_MOBILE' | 'MOBILE' | 'PAGER' | 'PERSONAL_NUMBER' | 'PREMIUM_RATE' | 'SHARED_COST' | 'TOLL_FREE' | 'UAN' | 'UNKNOWN' | 'VOICEMAIL' | 'VOIP', required: The type of phone number, with accepted values including FIXED_LINE, MOBILE, VOIP, and others.
  - `userId` integer: The ID of the user associated with the call.

## Response `200`

successful operation

- CompletedThirdPartyCallResponse
  - `callerIdMatches` union[], required
    - union
      - ContactCallerId
        - `callerIdType` 'CONTACT', required: Specifies the type of caller ID, with the default value being CONTACT.
        - `email` string: The email address of the contact.
        - `firstName` string: The first name of the contact.
        - `lastName` string: The last name of the contact.
        - `objectCoordinates` ObjectCoordinates, required
          - `objectId` integer, required: The unique identifier for the object.
          - `objectTypeId` string, required: The type identifier for the object.
          - `portalId` integer, required: The unique identifier for the portal.
      - CompanyCallerId
        - `callerIdType` 'COMPANY', required: Specifies the type of caller ID, which is set to 'COMPANY' by default.
        - `name` string: The name associated with the company caller ID.
        - `objectCoordinates` ObjectCoordinates, required
          - `objectId` integer, required: The unique identifier for the object.
          - `objectTypeId` string, required: The type identifier for the object.
          - `portalId` integer, required: The unique identifier for the portal.

## Other responses

- `default`: An error occurred.

## Changes

- **2026-10-10** (2026-09) `8bccef69948c`: 2 info
  - the security scope `crm.objects.contacts.highly_sensitive.write.v2` was added to the endpoint's security scheme `oauth2`
  - the security scope `crm.schemas.contacts.write` was removed from the endpoint's security scheme `oauth2`
- **2026-09-10** (2026-09) `35046bde1057`: 2 breaking, 9 info
  - the `callerIdMatches/items/oneOf[subschema #1: CONTACT]/objectCoordinates/objectId` response's property format changed from `int32` to `int64` for status `200`
  - the `callerIdMatches/items/oneOf[subschema #2: COMPANY]/objectCoordinates/objectId` response's property format changed from `int32` to `int64` for status `200`
  - the endpoint scheme security `private_apps` was removed from the API
  - the endpoint scheme security `private_apps` was removed from the API
  - …7 more

[Operation history](https://skmtc.dev/hubspot/apis/crm-calling-extensions/changes/crm/extensions/calling/2026-09/inbound-call/post.md)

---

[API](https://skmtc.dev/hubspot/apis/crm-calling-extensions.md) - [All operations](https://skmtc.dev/hubspot/apis/crm-calling-extensions/llms.txt) - [OpenAPI document](https://skmtc.dev/hubspot/apis/crm-calling-extensions/revisions/8bccef69948c?raw)
