{ "openapi" : "3.0.1", "info" : { "title" : "CRM Calling Extensions", "description" : "Basepom for all HubSpot Projects", "version" : "v3", "x-hubspot-product-tier-requirements" : { "marketing" : "FREE", "sales" : "FREE", "service" : "FREE", "cms" : "FREE", "commerce" : "FREE", "crmHub" : "FREE", "dataHub" : "FREE" }, "x-hubspot-related-documentation" : [ { "name" : "Call SDK Guide", "url" : "https://developers.hubspot.com/docs/guides/api/crm/extensions/calling-sdk" } ] }, "servers" : [ { "url" : "https://api.hubapi.com" } ], "tags" : [ { "name" : "Advanced" }, { "name" : "Basic" }, { "name" : "Batch" } ], "paths" : { "/crm/extensions/calling/v3/connection-statuses" : { "get" : { "tags" : [ "Basic" ], "operationId" : "get-/crm/extensions/calling/v3/connection-statuses_/crm/extensions/calling/v3/connection-statuses", "parameters" : [ { "name" : "userId", "in" : "query", "description" : "", "required" : false, "style" : "form", "explode" : true, "schema" : { "type" : "array", "example" : null, "items" : { "type" : "integer", "format" : "int32", "example" : null } } } ], "responses" : { "200" : { "description" : "successful operation", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/CollectionResponseUserCallingConnectionStatusResponseNoPaging" }, "example" : null } } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "automation" ] }, { "oauth2" : [ "crm.objects.owners.read" ] } ] } }, "/crm/extensions/calling/v3/connection-statuses/batch/read" : { "post" : { "tags" : [ "Batch" ], "operationId" : "post-/crm/extensions/calling/v3/connection-statuses/batch/read_/crm/extensions/calling/v3/connection-statuses/batch/read", "parameters" : [ ], "requestBody" : { "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/BatchInputPublicObjectId" }, "example" : null } }, "required" : true }, "responses" : { "200" : { "description" : "successful operation", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/CollectionResponseUserCallingConnectionStatusResponseNoPaging" }, "example" : null } } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "automation" ] }, { "oauth2" : [ "crm.objects.owners.read" ] } ] } }, "/crm/extensions/calling/v3/connection-statuses/me" : { "get" : { "tags" : [ "Basic" ], "operationId" : "get-/crm/extensions/calling/v3/connection-statuses/me_/crm/extensions/calling/v3/connection-statuses/me", "parameters" : [ ], "responses" : { "200" : { "description" : "successful operation", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/UserCallingConnectionStatusResponse" }, "example" : null } } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "automation" ] }, { "oauth2" : [ "crm.objects.owners.read" ] } ] } }, "/crm/v3/extensions/calling/inbound-call" : { "post" : { "tags" : [ "Advanced" ], "summary" : "Submit details of an inbound call to the CRM.", "description" : "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.", "operationId" : "post-/crm/v3/extensions/calling/inbound-call_/crm/v3/extensions/calling/inbound-call", "parameters" : [ ], "requestBody" : { "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/CompletedThirdPartyCallRequest" }, "example" : null } }, "required" : true }, "responses" : { "200" : { "description" : "successful operation", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/CompletedThirdPartyCallResponse" }, "example" : null } } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "crm.objects.contacts.highly_sensitive.write.v2" ] }, { "oauth2" : [ "crm.objects.contacts.write" ] }, { "oauth2" : [ "crm.objects.contacts.sensitive.write.v2" ] }, { "oauth2" : [ "crm.schemas.contacts.write" ] } ] } }, "/crm/v3/extensions/calling/recordings/ready" : { "post" : { "tags" : [ "Advanced" ], "summary" : "Mark a call recording as ready for retrieval.", "description" : "This endpoint is used to mark a call recording as ready. It requires the engagementId to identify the specific recording.", "operationId" : "post-/crm/v3/extensions/calling/recordings/ready_markAsReady", "parameters" : [ ], "requestBody" : { "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/MarkRecordingAsReadyRequest" }, "example" : null } }, "required" : true }, "responses" : { "204" : { "description" : "No content", "content" : { } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "crm.objects.contacts.highly_sensitive.write.v2" ] }, { "oauth2" : [ "crm.objects.contacts.write" ] }, { "oauth2" : [ "crm.objects.contacts.sensitive.write.v2" ] }, { "oauth2" : [ "crm.schemas.contacts.write" ] } ] } }, "/crm/v3/extensions/calling/{appId}/settings" : { "get" : { "tags" : [ "Basic" ], "summary" : "Retrieve the calling extension settings for a specific app.", "description" : "Retrieve the current settings of the calling extension for the specified appId. ", "operationId" : "get-/crm/v3/extensions/calling/{appId}/settings_get", "parameters" : [ { "name" : "appId", "in" : "path", "description" : "The unique identifier for the app whose calling extension settings are being retrieved.", "required" : true, "style" : "simple", "explode" : false, "schema" : { "type" : "integer", "format" : "int32", "example" : null } } ], "responses" : { "200" : { "description" : "successful operation", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/SettingsResponse" }, "example" : null } } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "developers-read" ] } ] }, "post" : { "tags" : [ "Basic" ], "summary" : "Create new calling extension settings for a specific app.", "description" : "Create new settings for the calling extension associated with the specified appId.", "operationId" : "post-/crm/v3/extensions/calling/{appId}/settings_create", "parameters" : [ { "name" : "appId", "in" : "path", "description" : "The unique identifier for the app for which new calling extension settings are being created.", "required" : true, "style" : "simple", "explode" : false, "schema" : { "type" : "integer", "format" : "int32", "example" : null } } ], "requestBody" : { "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/SettingsRequest" }, "example" : null } }, "required" : true }, "responses" : { "200" : { "description" : "successful operation", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/SettingsResponse" }, "example" : null } } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "developers-write" ] } ] }, "delete" : { "tags" : [ "Basic" ], "summary" : "Delete the calling extension settings for a specific app.", "description" : "Remove the calling extension settings associated with the specified appId. This action cannot be undone.", "operationId" : "delete-/crm/v3/extensions/calling/{appId}/settings_remove", "parameters" : [ { "name" : "appId", "in" : "path", "description" : "The unique identifier for the app whose calling extension settings are being deleted.", "required" : true, "style" : "simple", "explode" : false, "schema" : { "type" : "integer", "format" : "int32", "example" : null } } ], "responses" : { "204" : { "description" : "No content", "content" : { } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "developers-write" ] } ] }, "patch" : { "tags" : [ "Basic" ], "summary" : "Update the calling extension settings for a specific app.", "description" : "Modify existing calling extension settings for the specified appId. Only the fields provided in the request will be updated.", "operationId" : "patch-/crm/v3/extensions/calling/{appId}/settings_update", "parameters" : [ { "name" : "appId", "in" : "path", "description" : "The unique identifier for the app whose calling extension settings are being updated.", "required" : true, "style" : "simple", "explode" : false, "schema" : { "type" : "integer", "format" : "int32", "example" : null } } ], "requestBody" : { "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/SettingsPatchRequest" }, "example" : null } }, "required" : true }, "responses" : { "200" : { "description" : "successful operation", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/SettingsResponse" }, "example" : null } } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "developers-write" ] } ] } }, "/crm/v3/extensions/calling/{appId}/settings/channel-connection" : { "get" : { "tags" : [ "Basic" ], "summary" : "Retrieve the channel connection settings for a specific app.", "description" : "Access the current channel connection settings for the specified app.", "operationId" : "get-/crm/v3/extensions/calling/{appId}/settings/channel-connection_get", "parameters" : [ { "name" : "appId", "in" : "path", "description" : "The unique identifier for the app whose channel connection settings are to be retrieved.", "required" : true, "style" : "simple", "explode" : false, "schema" : { "type" : "integer", "format" : "int32", "example" : null } } ], "responses" : { "200" : { "description" : "successful operation", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/ChannelConnectionSettingsResponse" }, "example" : null } } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "developers-read" ] } ] }, "post" : { "tags" : [ "Basic" ], "summary" : "Create new channel connection settings for a specific app.", "description" : "Establish new channel connection settings for the specified app.", "operationId" : "post-/crm/v3/extensions/calling/{appId}/settings/channel-connection_create", "parameters" : [ { "name" : "appId", "in" : "path", "description" : "The unique identifier for the app for which new channel connection settings are to be created.", "required" : true, "style" : "simple", "explode" : false, "schema" : { "type" : "integer", "format" : "int32", "example" : null } } ], "requestBody" : { "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/ChannelConnectionSettingsRequest" }, "example" : null } }, "required" : true }, "responses" : { "200" : { "description" : "successful operation", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/ChannelConnectionSettingsResponse" }, "example" : null } } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "developers-write" ] } ] }, "delete" : { "tags" : [ "Basic" ], "summary" : "Remove the channel connection settings for a specific app.", "description" : "Delete the channel connection settings associated with the specified app.", "operationId" : "delete-/crm/v3/extensions/calling/{appId}/settings/channel-connection_remove", "parameters" : [ { "name" : "appId", "in" : "path", "description" : "The unique identifier for the app whose channel connection settings are to be deleted.", "required" : true, "style" : "simple", "explode" : false, "schema" : { "type" : "integer", "format" : "int32", "example" : null } } ], "responses" : { "204" : { "description" : "No content", "content" : { } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "developers-write" ] } ] }, "patch" : { "tags" : [ "Basic" ], "summary" : "Update the channel connection settings for a specific app.", "description" : "Modify the existing channel connection settings for the specified app.", "operationId" : "patch-/crm/v3/extensions/calling/{appId}/settings/channel-connection_update", "parameters" : [ { "name" : "appId", "in" : "path", "description" : "The unique identifier for the app whose channel connection settings are to be updated.", "required" : true, "style" : "simple", "explode" : false, "schema" : { "type" : "integer", "format" : "int32", "example" : null } } ], "requestBody" : { "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/ChannelConnectionSettingsPatchRequest" }, "example" : null } }, "required" : true }, "responses" : { "200" : { "description" : "successful operation", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/ChannelConnectionSettingsResponse" }, "example" : null } } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "developers-write" ] } ] } }, "/crm/v3/extensions/calling/{appId}/settings/recording" : { "get" : { "tags" : [ "Basic" ], "summary" : "Retrieve recording settings for an app.", "description" : "Retrieve the current recording settings for a specific app using the provided app ID.", "operationId" : "get-/crm/v3/extensions/calling/{appId}/settings/recording_get", "parameters" : [ { "name" : "appId", "in" : "path", "description" : "The unique identifier for the app whose recording settings are being retrieved.", "required" : true, "style" : "simple", "explode" : false, "schema" : { "type" : "integer", "format" : "int32", "example" : null } } ], "responses" : { "200" : { "description" : "successful operation", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RecordingSettingsResponse" }, "example" : null } } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "developers-read" ] } ] }, "post" : { "tags" : [ "Basic" ], "summary" : "Create recording settings for an app.", "description" : "Create new recording settings for a specific app using the provided app ID.", "operationId" : "post-/crm/v3/extensions/calling/{appId}/settings/recording_create", "parameters" : [ { "name" : "appId", "in" : "path", "description" : "The unique identifier for the app for which new recording settings are being created.", "required" : true, "style" : "simple", "explode" : false, "schema" : { "type" : "integer", "format" : "int32", "example" : null } } ], "requestBody" : { "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RecordingSettingsRequest" }, "example" : null } }, "required" : true }, "responses" : { "200" : { "description" : "successful operation", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RecordingSettingsResponse" }, "example" : null } } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "developers-write" ] } ] }, "patch" : { "tags" : [ "Basic" ], "summary" : "Update recording settings for an app.", "description" : "Update the recording settings for a specific app using the provided app ID.", "operationId" : "patch-/crm/v3/extensions/calling/{appId}/settings/recording_update", "parameters" : [ { "name" : "appId", "in" : "path", "description" : "The unique identifier for the app whose recording settings are being updated.", "required" : true, "style" : "simple", "explode" : false, "schema" : { "type" : "integer", "format" : "int32", "example" : null } } ], "requestBody" : { "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RecordingSettingsPatchRequest" }, "example" : null } }, "required" : true }, "responses" : { "200" : { "description" : "successful operation", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RecordingSettingsResponse" }, "example" : null } } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "developers-write" ] } ] } } }, "components" : { "schemas" : { "BatchInputPublicObjectId" : { "required" : [ "inputs" ], "type" : "object", "properties" : { "inputs" : { "type" : "array", "example" : null, "items" : { "$ref" : "#/components/schemas/PublicObjectId" } } }, "example" : null }, "ChannelConnectionSettingsPatchRequest" : { "type" : "object", "properties" : { "isReady" : { "type" : "boolean", "description" : "Indicates whether the channel connection settings are ready.", "example" : null }, "url" : { "type" : "string", "description" : "The URL for the channel connection settings.", "example" : null } }, "example" : null }, "ChannelConnectionSettingsRequest" : { "required" : [ "isReady", "url" ], "type" : "object", "properties" : { "isReady" : { "type" : "boolean", "description" : "Indicates whether the channel connection settings are ready.", "example" : null }, "url" : { "type" : "string", "description" : "The URL associated with the channel connection settings.", "example" : null } }, "example" : null }, "ChannelConnectionSettingsResponse" : { "required" : [ "createdAt", "isReady", "updatedAt", "url" ], "type" : "object", "properties" : { "createdAt" : { "type" : "string", "description" : "The date and time when the channel connection settings were created.", "format" : "date-time", "example" : null }, "isReady" : { "type" : "boolean", "description" : "Indicates whether the channel connection settings are ready for use.", "example" : null }, "updatedAt" : { "type" : "string", "description" : "The date and time when the channel connection settings were last updated.", "format" : "date-time", "example" : null }, "url" : { "type" : "string", "description" : "The URL associated with the channel connection settings.", "example" : null } }, "example" : null }, "CollectionResponseUserCallingConnectionStatusResponseNoPaging" : { "required" : [ "results" ], "type" : "object", "properties" : { "results" : { "type" : "array", "example" : null, "items" : { "$ref" : "#/components/schemas/UserCallingConnectionStatusResponse" } } }, "example" : null }, "CompanyCallerId" : { "title" : "COMPANY", "required" : [ "callerIdType", "objectCoordinates" ], "type" : "object", "properties" : { "callerIdType" : { "type" : "string", "description" : "Specifies the type of caller ID, which is set to 'COMPANY' by default.", "example" : null, "default" : "COMPANY", "enum" : [ "COMPANY" ] }, "name" : { "type" : "string", "description" : "The name associated with the company caller ID.", "example" : null }, "objectCoordinates" : { "$ref" : "#/components/schemas/ObjectCoordinates" } }, "example" : null, "x-hubspot-sub-type-impl" : true }, "CompletedThirdPartyCallRequest" : { "required" : [ "createEngagement", "engagementProperties", "externalCallId", "finalCallStatus", "fromNumber", "potentialRecipientUserIds", "toNumber" ], "type" : "object", "properties" : { "callStartedTimestamp" : { "type" : "string", "description" : "The timestamp indicating when the call started, formatted as a date-time string.", "format" : "date-time", "example" : null }, "createEngagement" : { "type" : "boolean", "description" : "Indicates whether an engagement should be created for the call.", "example" : null }, "durationSeconds" : { "type" : "integer", "description" : "The duration of the call in seconds.", "format" : "int32", "example" : null }, "engagementProperties" : { "type" : "object", "additionalProperties" : { "type" : "string", "example" : null }, "description" : "Contains additional properties related to the engagement.", "example" : null }, "externalCallId" : { "type" : "string", "description" : "The unique identifier for the call from an external system.", "example" : null }, "finalCallStatus" : { "type" : "string", "description" : "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.", "example" : null, "enum" : [ "BUSY", "CALLING_CRM_USER", "CANCELED", "COMPLETED", "CONNECTING", "FAILED", "HOLD", "IN_PROGRESS", "MISSED", "NO_ANSWER", "QUEUED", "RINGING", "UNKNOWN" ] }, "fromNumber" : { "$ref" : "#/components/schemas/FormattedPhoneNumber" }, "potentialRecipientUserIds" : { "type" : "array", "example" : null, "items" : { "type" : "integer", "format" : "int32", "example" : null } }, "toNumber" : { "$ref" : "#/components/schemas/FormattedPhoneNumber" }, "userId" : { "type" : "integer", "description" : "The ID of the user associated with the call.", "format" : "int32", "example" : null } }, "example" : null }, "CompletedThirdPartyCallResponse" : { "required" : [ "callerIdMatches" ], "type" : "object", "properties" : { "callerIdMatches" : { "type" : "array", "example" : null, "items" : { "example" : null, "oneOf" : [ { "$ref" : "#/components/schemas/ContactCallerId" }, { "$ref" : "#/components/schemas/CompanyCallerId" } ] } } }, "example" : null }, "ContactCallerId" : { "title" : "CONTACT", "required" : [ "callerIdType", "objectCoordinates" ], "type" : "object", "properties" : { "callerIdType" : { "type" : "string", "description" : "Specifies the type of caller ID, with the default value being CONTACT.", "example" : null, "default" : "CONTACT", "enum" : [ "CONTACT" ] }, "email" : { "type" : "string", "description" : "The email address of the contact.", "example" : null }, "firstName" : { "type" : "string", "description" : "The first name of the contact.", "example" : null }, "lastName" : { "type" : "string", "description" : "The last name of the contact.", "example" : null }, "objectCoordinates" : { "$ref" : "#/components/schemas/ObjectCoordinates" } }, "example" : null, "x-hubspot-sub-type-impl" : true }, "Error" : { "required" : [ "category", "correlationId", "message" ], "type" : "object", "properties" : { "category" : { "type" : "string", "description" : "The error category", "example" : null }, "context" : { "type" : "object", "additionalProperties" : { "type" : "array", "example" : null, "items" : { "type" : "string", "example" : null } }, "description" : "Context about the error condition", "example" : "{invalidPropertyName=[propertyValue], missingScopes=[scope1, scope2]}" }, "correlationId" : { "type" : "string", "description" : "A unique identifier for the request. Include this value with any error reports or support tickets", "format" : "uuid", "example" : "aeb5f871-7f07-4993-9211-075dc63e7cbf" }, "errors" : { "type" : "array", "description" : "further information about the error", "example" : null, "items" : { "$ref" : "#/components/schemas/ErrorDetail" } }, "links" : { "type" : "object", "additionalProperties" : { "type" : "string", "example" : null }, "description" : "A map of link names to associated URIs containing documentation about the error or recommended remediation steps", "example" : null }, "message" : { "type" : "string", "description" : "A human readable message describing the error along with remediation steps where appropriate", "example" : "An error occurred" }, "subCategory" : { "type" : "string", "description" : "A specific category that contains more specific detail about the error", "example" : null } }, "example" : { "message" : "Invalid input (details will vary based on the error)", "correlationId" : "aeb5f871-7f07-4993-9211-075dc63e7cbf", "category" : "VALIDATION_ERROR", "links" : { "knowledge-base" : "https://www.hubspot.com/products/service/knowledge-base" } } }, "ErrorDetail" : { "required" : [ "message" ], "type" : "object", "properties" : { "code" : { "type" : "string", "description" : "The status code associated with the error detail", "example" : null }, "context" : { "type" : "object", "additionalProperties" : { "type" : "array", "example" : null, "items" : { "type" : "string", "example" : null } }, "description" : "Context about the error condition", "example" : "{missingScopes=[scope1, scope2]}" }, "in" : { "type" : "string", "description" : "The name of the field or parameter in which the error was found.", "example" : null }, "message" : { "type" : "string", "description" : "A human readable message describing the error along with remediation steps where appropriate", "example" : null }, "subCategory" : { "type" : "string", "description" : "A specific category that contains more specific detail about the error", "example" : null } }, "example" : null }, "FormattedPhoneNumber" : { "required" : [ "e164Number", "phoneNumberType" ], "type" : "object", "properties" : { "e164Number" : { "type" : "string", "description" : "The phone number formatted in E.164 standard.", "example" : null }, "extension" : { "type" : "string", "description" : "The extension number associated with the phone number.", "example" : null }, "phoneNumberType" : { "type" : "string", "description" : "The type of phone number, with accepted values including FIXED_LINE, MOBILE, VOIP, and others.", "example" : null, "enum" : [ "FIXED_LINE", "FIXED_LINE_OR_MOBILE", "MOBILE", "PAGER", "PERSONAL_NUMBER", "PREMIUM_RATE", "SHARED_COST", "TOLL_FREE", "UAN", "UNKNOWN", "VOICEMAIL", "VOIP" ] } }, "example" : null }, "HubSpotCallingProvider" : { "title" : "HUBSPOT", "required" : [ "type" ], "type" : "object", "properties" : { "type" : { "type" : "string", "example" : null, "default" : "HUBSPOT", "enum" : [ "HUBSPOT" ] } }, "example" : null, "x-hubspot-sub-type-impl" : true }, "MarkRecordingAsReadyRequest" : { "required" : [ "engagementId" ], "type" : "object", "properties" : { "engagementId" : { "type" : "integer", "description" : "The unique identifier for the engagement associated with the call recording.", "format" : "int64", "example" : null } }, "example" : null }, "ObjectCoordinates" : { "required" : [ "objectId", "objectTypeId", "portalId" ], "type" : "object", "properties" : { "objectId" : { "type" : "integer", "description" : "The unique identifier for the object.", "format" : "int64", "example" : null }, "objectTypeId" : { "type" : "string", "description" : "The type identifier for the object.", "example" : null }, "portalId" : { "type" : "integer", "description" : "The unique identifier for the portal.", "format" : "int32", "example" : null } }, "example" : null }, "PublicObjectId" : { "required" : [ "id" ], "type" : "object", "properties" : { "id" : { "type" : "string", "description" : "The unique ID of the object.", "example" : null } }, "description" : "Contains the Id of a Public Object", "example" : null }, "RecordingSettingsPatchRequest" : { "type" : "object", "properties" : { "urlToRetrieveAuthedRecording" : { "type" : "string", "description" : "The URL used to access authenticated call recordings.", "example" : null } }, "example" : null }, "RecordingSettingsRequest" : { "required" : [ "urlToRetrieveAuthedRecording" ], "type" : "object", "properties" : { "urlToRetrieveAuthedRecording" : { "type" : "string", "description" : "The URL used to access authenticated call recordings.", "example" : null } }, "example" : null }, "RecordingSettingsResponse" : { "required" : [ "urlToRetrieveAuthedRecording" ], "type" : "object", "properties" : { "urlToRetrieveAuthedRecording" : { "type" : "string", "description" : "The URL used to retrieve authenticated call recordings.", "example" : null } }, "example" : null }, "SettingsPatchRequest" : { "type" : "object", "properties" : { "height" : { "type" : "integer", "description" : "The height setting for the calling extension interface.", "format" : "int32", "example" : null }, "isReady" : { "type" : "boolean", "description" : "Specifies whether the calling extension is ready for use.", "example" : null }, "name" : { "type" : "string", "description" : "The name of the calling extension.", "example" : null }, "supportsCustomObjects" : { "type" : "boolean", "description" : "Indicates if the calling extension supports custom objects.", "example" : null }, "supportsInboundCalling" : { "type" : "boolean", "description" : "Indicates if the calling extension supports inbound calling.", "example" : null }, "url" : { "type" : "string", "description" : "The URL associated with the calling extension settings.", "example" : null }, "usesCallingWindow" : { "type" : "boolean", "description" : "Indicates if the calling extension uses a calling window.", "example" : null }, "usesRemote" : { "type" : "boolean", "description" : "Indicates if the calling extension uses a remote connection.", "example" : null }, "width" : { "type" : "integer", "description" : "The width setting for the calling extension interface.", "format" : "int32", "example" : null } }, "example" : null }, "SettingsRequest" : { "required" : [ "height", "isReady", "name", "supportsCustomObjects", "supportsInboundCalling", "url", "usesCallingWindow", "usesRemote", "width" ], "type" : "object", "properties" : { "height" : { "type" : "integer", "description" : "Specifies the height of the calling extension interface.", "format" : "int32", "example" : null }, "isReady" : { "type" : "boolean", "description" : "Indicates if the calling extension is ready for use.", "example" : null }, "name" : { "type" : "string", "description" : "The name of the calling extension.", "example" : null }, "supportsCustomObjects" : { "type" : "boolean", "description" : "Indicates if the calling extension supports custom objects.", "example" : null }, "supportsInboundCalling" : { "type" : "boolean", "description" : "Indicates if the calling extension supports inbound calling.", "example" : null }, "url" : { "type" : "string", "description" : "The URL associated with the calling extension.", "example" : null }, "usesCallingWindow" : { "type" : "boolean", "description" : "Indicates if the calling extension uses a separate calling window.", "example" : null }, "usesRemote" : { "type" : "boolean", "description" : "Indicates if the calling extension uses remote services.", "example" : null }, "width" : { "type" : "integer", "description" : "Specifies the width of the calling extension interface.", "format" : "int32", "example" : null } }, "example" : null }, "SettingsResponse" : { "required" : [ "createdAt", "height", "isReady", "name", "supportsCustomObjects", "supportsInboundCalling", "updatedAt", "url", "usesCallingWindow", "usesRemote", "width" ], "type" : "object", "properties" : { "createdAt" : { "type" : "string", "description" : "The date and time when the calling extension settings were created.", "format" : "date-time", "example" : null }, "height" : { "type" : "integer", "description" : "The height of the calling extension interface.", "format" : "int32", "example" : null }, "isReady" : { "type" : "boolean", "description" : "Specifies whether the calling extension settings are ready for use.", "example" : null }, "name" : { "type" : "string", "description" : "The name of the calling extension.", "example" : null }, "supportsCustomObjects" : { "type" : "boolean", "description" : "Indicates if the calling extension supports custom objects.", "example" : null }, "supportsInboundCalling" : { "type" : "boolean", "description" : "Indicates if the calling extension supports inbound calling.", "example" : null }, "updatedAt" : { "type" : "string", "description" : "The date and time when the calling extension settings were last updated.", "format" : "date-time", "example" : null }, "url" : { "type" : "string", "description" : "The URL associated with the calling extension.", "example" : null }, "usesCallingWindow" : { "type" : "boolean", "description" : "Specifies if the calling extension uses a dedicated calling window.", "example" : null }, "usesRemote" : { "type" : "boolean", "description" : "Indicates if the calling extension uses a remote service.", "example" : null }, "width" : { "type" : "integer", "description" : "The width of the calling extension interface.", "format" : "int32", "example" : null } }, "example" : null }, "ThirdPartyCallingProvider" : { "title" : "THIRD_PARTY", "required" : [ "appId", "type" ], "type" : "object", "properties" : { "appId" : { "type" : "integer", "format" : "int32", "example" : null }, "appName" : { "type" : "string", "example" : null }, "type" : { "type" : "string", "example" : null, "default" : "THIRD_PARTY", "enum" : [ "THIRD_PARTY" ] } }, "example" : null, "x-hubspot-sub-type-impl" : true }, "UserCallingConnectionStatusResponse" : { "required" : [ "connected", "userId" ], "type" : "object", "properties" : { "connected" : { "type" : "boolean", "example" : null }, "provider" : { "example" : null, "oneOf" : [ { "$ref" : "#/components/schemas/HubSpotCallingProvider" }, { "$ref" : "#/components/schemas/ThirdPartyCallingProvider" } ] }, "userId" : { "type" : "string", "example" : null } }, "example" : null } }, "responses" : { "Error" : { "description" : "An error occurred.", "content" : { "*/*" : { "schema" : { "$ref" : "#/components/schemas/Error" }, "example" : null } } } }, "securitySchemes" : { "developer_hapikey" : { "type" : "apiKey", "name" : "hapikey", "in" : "query" }, "oauth2" : { "type" : "oauth2", "flows" : { "authorizationCode" : { "authorizationUrl" : "https://app.hubspot.com/oauth/authorize", "tokenUrl" : "https://api.hubapi.com/oauth/v1/token", "scopes" : { "automation" : "", "crm.extensions_calling_transcripts.read" : "", "crm.extensions_calling_transcripts.write" : "", "crm.objects.contacts.highly_sensitive.read.v2" : "", "crm.objects.contacts.highly_sensitive.write.v2" : "", "crm.objects.contacts.sensitive.write.v2" : "", "crm.objects.contacts.write" : "", "crm.objects.owners.read" : "", "crm.schemas.contacts.write" : "", "developers-read" : "", "developers-write" : "" } } } }, "private_apps" : { "type" : "apiKey", "name" : "private-app", "in" : "header" }, "private_apps_legacy" : { "type" : "apiKey", "name" : "private-app-legacy", "in" : "header" } } }, "x-hubspot-available-client-libraries" : [ "Node", "Python", "Ruby", "PHP" ], "x-hubspot-product-tier-requirements" : { "marketing" : "FREE", "sales" : "FREE", "service" : "FREE", "cms" : "FREE", "commerce" : "FREE", "crmHub" : "FREE", "dataHub" : "FREE" } }