Query structured spec data via REST or MCP. Get exactly what your agent needs.
https://api.hubapi.com
/crm/v3/objects/companies
Create a company with the given properties and return a copy of the object, including the ID. Documentation and examples for creating standard companies is provided.
application/json
SimplePublicObjectInputForCreate
| Property | Type | Required |
|---|---|---|
| properties | object | required |
| associations | array | required |
| └ to | object | required |
| └ id | string | required |
| └ types | array | required |
| └ associationTypeId | integer | required |
| └ associationCategory | string | required |
successful operation
POST /crm/v3/objects/companies
/crm/v3/objects/contacts
Create a contact with the given properties and return a copy of the object, including the ID. Documentation and examples for creating standard contacts is provided.
application/json
SimplePublicObjectInputForCreate
| Property | Type | Required |
|---|---|---|
| properties | object | required |
| associations | array | required |
| └ to | object | required |
| └ id | string | required |
| └ types | array | required |
| └ associationTypeId | integer | required |
| └ associationCategory | string | required |
successful operation
POST /crm/v3/objects/contacts
/crm/v3/objects/deals
Create a deal with the given properties and return a copy of the object, including the ID. Documentation and examples for creating standard deals is provided.
application/json
SimplePublicObjectInputForCreate
| Property | Type | Required |
|---|---|---|
| properties | object | required |
| associations | array | required |
| └ to | object | required |
| └ id | string | required |
| └ types | array | required |
| └ associationTypeId | integer | required |
| └ associationCategory | string | required |
successful operation
POST /crm/v3/objects/deals
/crm/v3/objects/feedback_submissions
Create a feedback submission with the given properties and return a copy of the object, including the ID. Documentation and examples for creating standard feedback submissions is provided.
application/json
SimplePublicObjectInputForCreate
| Property | Type | Required |
|---|---|---|
| properties | object | required |
| associations | array | required |
| └ to | object | required |
| └ id | string | required |
| └ types | array | required |
| └ associationTypeId | integer | required |
| └ associationCategory | string | required |
successful operation
POST /crm/v3/objects/feedback_submissions
/crm/v3/objects/line_items
Create a line item with the given properties and return a copy of the object, including the ID. Documentation and examples for creating standard line items is provided.
application/json
SimplePublicObjectInputForCreate
| Property | Type | Required |
|---|---|---|
| properties | object | required |
| associations | array | required |
| └ to | object | required |
| └ id | string | required |
| └ types | array | required |
| └ associationTypeId | integer | required |
| └ associationCategory | string | required |
successful operation
POST /crm/v3/objects/line_items
/crm/v3/objects/products
Create a product with the given properties and return a copy of the object, including the ID. Documentation and examples for creating standard products is provided.
application/json
SimplePublicObjectInputForCreate
| Property | Type | Required |
|---|---|---|
| properties | object | required |
| associations | array | required |
| └ to | object | required |
| └ id | string | required |
| └ types | array | required |
| └ associationTypeId | integer | required |
| └ associationCategory | string | required |
successful operation
POST /crm/v3/objects/products
/crm/v3/objects/quotes
Create a quote with the given properties and return a copy of the object, including the ID. Documentation and examples for creating standard quotes is provided.
application/json
SimplePublicObjectInputForCreate
| Property | Type | Required |
|---|---|---|
| properties | object | required |
| associations | array | required |
| └ to | object | required |
| └ id | string | required |
| └ types | array | required |
| └ associationTypeId | integer | required |
| └ associationCategory | string | required |
successful operation
POST /crm/v3/objects/quotes
/crm/v3/objects/tickets
Create a ticket with the given properties and return a copy of the object, including the ID. Documentation and examples for creating standard tickets is provided.
application/json
SimplePublicObjectInputForCreate
| Property | Type | Required |
|---|---|---|
| properties | object | required |
| associations | array | required |
| └ to | object | required |
| └ id | string | required |
| └ types | array | required |
| └ associationTypeId | integer | required |
| └ associationCategory | string | required |
successful operation
POST /crm/v3/objects/tickets
/crm/v3/objects/{objectType}
Create a CRM object with the given properties and return a copy of the object, including the ID. Documentation and examples for creating standard objects is provided.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| objectType | path | required | string | — |
application/json
SimplePublicObjectInputForCreate
| Property | Type | Required |
|---|---|---|
| properties | object | required |
| associations | array | required |
| └ to | object | required |
| └ id | string | required |
| └ types | array | required |
| └ associationTypeId | integer | required |
| └ associationCategory | string | required |
successful operation
POST /crm/v3/objects/{objectType}
/crm/v3/objects/companies/batch/archive
application/json
BatchInputSimplePublicObjectId
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
No content
POST /crm/v3/objects/companies/batch/archive
/crm/v3/objects/companies/batch/create
application/json
BatchInputSimplePublicObjectInputForCreate
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ properties | object | required |
| └ associations | array | required |
| └ to | object | required |
| └ id | string | required |
| └ types | array | required |
| └ associationTypeId | integer | required |
| └ associationCategory | string | required |
successful operation
multiple statuses
POST /crm/v3/objects/companies/batch/create
/crm/v3/objects/companies/batch/read
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| archived | query | optional | boolean | Whether to return only results that have been archived. |
application/json
BatchReadInputSimplePublicObjectId
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
| idProperty | string | optional |
| properties | array | required |
| propertiesWithHistory | array | required |
successful operation
multiple statuses
POST /crm/v3/objects/companies/batch/read
/crm/v3/objects/companies/batch/update
application/json
BatchInputSimplePublicObjectBatchInput
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
| └ idProperty | string | optional |
| └ properties | object | required |
successful operation
multiple statuses
POST /crm/v3/objects/companies/batch/update
/crm/v3/objects/contacts/batch/archive
application/json
BatchInputSimplePublicObjectId
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
No content
POST /crm/v3/objects/contacts/batch/archive
/crm/v3/objects/contacts/batch/create
application/json
BatchInputSimplePublicObjectInputForCreate
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ properties | object | required |
| └ associations | array | required |
| └ to | object | required |
| └ id | string | required |
| └ types | array | required |
| └ associationTypeId | integer | required |
| └ associationCategory | string | required |
successful operation
multiple statuses
POST /crm/v3/objects/contacts/batch/create
/crm/v3/objects/contacts/batch/read
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| archived | query | optional | boolean | Whether to return only results that have been archived. |
application/json
BatchReadInputSimplePublicObjectId
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
| idProperty | string | optional |
| properties | array | required |
| propertiesWithHistory | array | required |
successful operation
multiple statuses
POST /crm/v3/objects/contacts/batch/read
/crm/v3/objects/contacts/batch/update
application/json
BatchInputSimplePublicObjectBatchInput
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
| └ idProperty | string | optional |
| └ properties | object | required |
successful operation
multiple statuses
POST /crm/v3/objects/contacts/batch/update
/crm/v3/objects/deals/batch/archive
application/json
BatchInputSimplePublicObjectId
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
No content
POST /crm/v3/objects/deals/batch/archive
/crm/v3/objects/deals/batch/create
application/json
BatchInputSimplePublicObjectInputForCreate
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ properties | object | required |
| └ associations | array | required |
| └ to | object | required |
| └ id | string | required |
| └ types | array | required |
| └ associationTypeId | integer | required |
| └ associationCategory | string | required |
successful operation
multiple statuses
POST /crm/v3/objects/deals/batch/create
/crm/v3/objects/deals/batch/read
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| archived | query | optional | boolean | Whether to return only results that have been archived. |
application/json
BatchReadInputSimplePublicObjectId
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
| idProperty | string | optional |
| properties | array | required |
| propertiesWithHistory | array | required |
successful operation
multiple statuses
POST /crm/v3/objects/deals/batch/read
/crm/v3/objects/deals/batch/update
application/json
BatchInputSimplePublicObjectBatchInput
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
| └ idProperty | string | optional |
| └ properties | object | required |
successful operation
multiple statuses
POST /crm/v3/objects/deals/batch/update
/crm/v3/objects/feedback_submissions/batch/archive
application/json
BatchInputSimplePublicObjectId
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
No content
POST /crm/v3/objects/feedback_submissions/batch/archive
/crm/v3/objects/feedback_submissions/batch/create
application/json
BatchInputSimplePublicObjectInputForCreate
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ properties | object | required |
| └ associations | array | required |
| └ to | object | required |
| └ id | string | required |
| └ types | array | required |
| └ associationTypeId | integer | required |
| └ associationCategory | string | required |
successful operation
multiple statuses
POST /crm/v3/objects/feedback_submissions/batch/create
/crm/v3/objects/feedback_submissions/batch/read
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| archived | query | optional | boolean | Whether to return only results that have been archived. |
application/json
BatchReadInputSimplePublicObjectId
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
| idProperty | string | optional |
| properties | array | required |
| propertiesWithHistory | array | required |
successful operation
multiple statuses
POST /crm/v3/objects/feedback_submissions/batch/read
/crm/v3/objects/feedback_submissions/batch/update
application/json
BatchInputSimplePublicObjectBatchInput
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
| └ idProperty | string | optional |
| └ properties | object | required |
successful operation
multiple statuses
POST /crm/v3/objects/feedback_submissions/batch/update
/crm/v3/objects/line_items/batch/archive
application/json
BatchInputSimplePublicObjectId
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
No content
POST /crm/v3/objects/line_items/batch/archive
/crm/v3/objects/line_items/batch/create
application/json
BatchInputSimplePublicObjectInputForCreate
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ properties | object | required |
| └ associations | array | required |
| └ to | object | required |
| └ id | string | required |
| └ types | array | required |
| └ associationTypeId | integer | required |
| └ associationCategory | string | required |
successful operation
multiple statuses
POST /crm/v3/objects/line_items/batch/create
/crm/v3/objects/line_items/batch/read
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| archived | query | optional | boolean | Whether to return only results that have been archived. |
application/json
BatchReadInputSimplePublicObjectId
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
| idProperty | string | optional |
| properties | array | required |
| propertiesWithHistory | array | required |
successful operation
multiple statuses
POST /crm/v3/objects/line_items/batch/read
/crm/v3/objects/line_items/batch/update
application/json
BatchInputSimplePublicObjectBatchInput
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
| └ idProperty | string | optional |
| └ properties | object | required |
successful operation
multiple statuses
POST /crm/v3/objects/line_items/batch/update
/crm/v3/objects/products/batch/archive
application/json
BatchInputSimplePublicObjectId
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
No content
POST /crm/v3/objects/products/batch/archive
/crm/v3/objects/products/batch/create
application/json
BatchInputSimplePublicObjectInputForCreate
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ properties | object | required |
| └ associations | array | required |
| └ to | object | required |
| └ id | string | required |
| └ types | array | required |
| └ associationTypeId | integer | required |
| └ associationCategory | string | required |
successful operation
multiple statuses
POST /crm/v3/objects/products/batch/create
/crm/v3/objects/products/batch/read
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| archived | query | optional | boolean | Whether to return only results that have been archived. |
application/json
BatchReadInputSimplePublicObjectId
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
| idProperty | string | optional |
| properties | array | required |
| propertiesWithHistory | array | required |
successful operation
multiple statuses
POST /crm/v3/objects/products/batch/read
/crm/v3/objects/products/batch/update
application/json
BatchInputSimplePublicObjectBatchInput
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
| └ idProperty | string | optional |
| └ properties | object | required |
successful operation
multiple statuses
POST /crm/v3/objects/products/batch/update
/crm/v3/objects/quotes/batch/archive
application/json
BatchInputSimplePublicObjectId
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
No content
POST /crm/v3/objects/quotes/batch/archive
/crm/v3/objects/quotes/batch/create
application/json
BatchInputSimplePublicObjectInputForCreate
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ properties | object | required |
| └ associations | array | required |
| └ to | object | required |
| └ id | string | required |
| └ types | array | required |
| └ associationTypeId | integer | required |
| └ associationCategory | string | required |
successful operation
multiple statuses
POST /crm/v3/objects/quotes/batch/create
/crm/v3/objects/quotes/batch/read
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| archived | query | optional | boolean | Whether to return only results that have been archived. |
application/json
BatchReadInputSimplePublicObjectId
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
| idProperty | string | optional |
| properties | array | required |
| propertiesWithHistory | array | required |
successful operation
multiple statuses
POST /crm/v3/objects/quotes/batch/read
/crm/v3/objects/quotes/batch/update
application/json
BatchInputSimplePublicObjectBatchInput
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
| └ idProperty | string | optional |
| └ properties | object | required |
successful operation
multiple statuses
POST /crm/v3/objects/quotes/batch/update
/crm/v3/objects/tickets/batch/archive
application/json
BatchInputSimplePublicObjectId
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
No content
POST /crm/v3/objects/tickets/batch/archive
/crm/v3/objects/tickets/batch/create
application/json
BatchInputSimplePublicObjectInputForCreate
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ properties | object | required |
| └ associations | array | required |
| └ to | object | required |
| └ id | string | required |
| └ types | array | required |
| └ associationTypeId | integer | required |
| └ associationCategory | string | required |
successful operation
multiple statuses
POST /crm/v3/objects/tickets/batch/create
/crm/v3/objects/tickets/batch/read
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| archived | query | optional | boolean | Whether to return only results that have been archived. |
application/json
BatchReadInputSimplePublicObjectId
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
| idProperty | string | optional |
| properties | array | required |
| propertiesWithHistory | array | required |
successful operation
multiple statuses
POST /crm/v3/objects/tickets/batch/read
/crm/v3/objects/tickets/batch/update
application/json
BatchInputSimplePublicObjectBatchInput
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
| └ idProperty | string | optional |
| └ properties | object | required |
successful operation
multiple statuses
POST /crm/v3/objects/tickets/batch/update
/crm/v3/objects/{objectType}/batch/archive
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| objectType | path | required | string | — |
application/json
BatchInputSimplePublicObjectId
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
No content
POST /crm/v3/objects/{objectType}/batch/archive
/crm/v3/objects/{objectType}/batch/create
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| objectType | path | required | string | — |
application/json
BatchInputSimplePublicObjectInputForCreate
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ properties | object | required |
| └ associations | array | required |
| └ to | object | required |
| └ id | string | required |
| └ types | array | required |
| └ associationTypeId | integer | required |
| └ associationCategory | string | required |
successful operation
multiple statuses
POST /crm/v3/objects/{objectType}/batch/create
/crm/v3/objects/{objectType}/batch/read
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| objectType | path | required | string | — |
| archived | query | optional | boolean | Whether to return only results that have been archived. |
application/json
BatchReadInputSimplePublicObjectId
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
| idProperty | string | optional |
| properties | array | required |
| propertiesWithHistory | array | required |
successful operation
multiple statuses
POST /crm/v3/objects/{objectType}/batch/read
/crm/v3/objects/{objectType}/batch/update
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| objectType | path | required | string | — |
application/json
BatchInputSimplePublicObjectBatchInput
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | required |
| └ idProperty | string | optional |
| └ properties | object | required |
successful operation
multiple statuses
POST /crm/v3/objects/{objectType}/batch/update
/crm/v3/properties/{objectType}/batch/archive
Archive a provided list of properties. This method will return a 204 No Content response on success regardless of the initial state of the property (e.g. active, already archived, non-existent).
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| objectType | path | required | string | — |
application/json
BatchInputPropertyName
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ name | string | required |
No content
POST /crm/v3/properties/{objectType}/batch/archive
/crm/v3/properties/{objectType}/batch/create
Create a batch of properties using the same rules as when creating an individual property.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| objectType | path | required | string | — |
application/json
BatchInputPropertyCreate
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ name | string | required |
| └ type | string | required |
| └ label | string | required |
| └ hidden | boolean | optional |
| └ options | array | optional |
| └ label | string | required |
| └ value | string | required |
| └ hidden | boolean | required |
| └ description | string | optional |
| └ displayOrder | integer | required |
| └ fieldType | string | required |
| └ formField | boolean | optional |
| └ groupName | string | required |
| └ description | string | optional |
| └ displayOrder | integer | optional |
| └ hasUniqueValue | boolean | optional |
| └ externalOptions | boolean | optional |
| └ calculationFormula | string | optional |
| └ referencedObjectType | string | optional |
successful operation
multiple statuses
POST /crm/v3/properties/{objectType}/batch/create
/crm/v3/properties/{objectType}/batch/read
Read a provided list of properties.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| objectType | path | required | string | — |
application/json
BatchReadInputPropertyName
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ name | string | required |
| archived | boolean | required |
successful operation
multiple statuses
POST /crm/v3/properties/{objectType}/batch/read
/crm/v3/imports
Begins importing data from the specified file resources. This uploads the corresponding file and uses the import request object to convert rows in the files to objects.
multipart/form-data
CoreStartImportRequest
| Property | Type | Required |
|---|---|---|
| files | string | optional |
| importRequest | string | optional |
successful operation
POST /crm/v3/imports
/crm/v3/imports/{importId}/cancel
This allows a developer to cancel an active import.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| importId | path | required | integer | — |
successful operation
POST /crm/v3/imports/{importId}/cancel
/crm/v3/properties/{objectType}
Create and return a copy of a new property for the specified object type.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| objectType | path | required | string | — |
application/json
PropertyCreate
| Property | Type | Required |
|---|---|---|
| name | string | required |
| type | string | required |
| label | string | required |
| hidden | boolean | optional |
| options | array | optional |
| └ label | string | required |
| └ value | string | required |
| └ hidden | boolean | required |
| └ description | string | optional |
| └ displayOrder | integer | required |
| fieldType | string | required |
| formField | boolean | optional |
| groupName | string | required |
| description | string | optional |
| displayOrder | integer | optional |
| hasUniqueValue | boolean | optional |
| externalOptions | boolean | optional |
| calculationFormula | string | optional |
| referencedObjectType | string | optional |
successful operation
POST /crm/v3/properties/{objectType}
/crm/v3/schemas
Define a new object schema, along with custom properties and associations. The entire object schema, including its object type ID, properties, and associations will be returned in the response.
Object schema definition, including properties and associations.
application/json
ObjectSchemaEgg
| Property | Type | Required |
|---|---|---|
| name | string | required |
| labels | object | required |
| └ plural | string | optional |
| └ singular | string | optional |
| properties | array | required |
| └ name | string | required |
| └ type | string | required |
| └ label | string | required |
| └ hidden | boolean | optional |
| └ options | array | optional |
| └ label | string | required |
| └ value | string | required |
| └ hidden | boolean | required |
| └ description | string | optional |
| └ displayOrder | integer | required |
| └ fieldType | string | required |
| └ formField | boolean | optional |
| └ groupName | string | optional |
| └ description | string | optional |
| └ displayOrder | integer | optional |
| └ hasUniqueValue | boolean | optional |
| └ textDisplayHint | string | optional |
| └ numberDisplayHint | string | optional |
| └ optionSortStrategy | string | optional |
| └ showCurrencySymbol | boolean | optional |
| └ referencedObjectType | string | optional |
| └ searchableInGlobalSearch | boolean | optional |
| description | string | optional |
| associatedObjects | array | required |
| requiredProperties | array | required |
| searchableProperties | array | optional |
| primaryDisplayProperty | string | optional |
| secondaryDisplayProperties | array | optional |
successful operation
POST /crm/v3/schemas
/crm/v3/schemas/{objectType}/associations
Defines a new association between the primary schema’s object type and other object types.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| objectType | path | required | string | Fully qualified name or object type ID of your schema. |
Attributes that define the association.
application/json
AssociationDefinitionEgg
| Property | Type | Required |
|---|---|---|
| name | string | optional |
| toObjectTypeId | string | required |
| fromObjectTypeId | string | required |
successful operation
POST /crm/v3/schemas/{objectType}/associations
/crm/v3/timeline/events
Creates an instance of a timeline event based on an event template. Once created, this event is immutable on the object timeline and cannot be modified. If the event template was configured to update object properties via objectPropertyName, this call will also attempt to updates those properties, or add them if they don’t exist.
The timeline event definition.
application/json
TimelineEvent
| Property | Type | Required |
|---|---|---|
| id | string | optional |
| utk | string | optional |
| string | optional | |
| domain | string | optional |
| tokens | object | required |
| objectId | string | optional |
| extraData | object | optional |
| timestamp | string | optional |
| timelineIFrame | object | optional |
| └ url | string | required |
| └ width | integer | required |
| └ height | integer | required |
| └ linkLabel | string | required |
| └ headerLabel | string | required |
| eventTemplateId | string | required |
successful operation
POST /crm/v3/timeline/events
/crm/v3/timeline/events/batch/create
Creates multiple instances of timeline events based on an event template. Once created, these event are immutable on the object timeline and cannot be modified. If the event template was configured to update object properties via objectPropertyName, this call will also attempt to updates those properties, or add them if they don’t exist.
The timeline event definition.
application/json
BatchInputTimelineEvent
| Property | Type | Required |
|---|---|---|
| inputs | array | required |
| └ id | string | optional |
| └ utk | string | optional |
| string | optional | |
| └ domain | string | optional |
| └ tokens | object | required |
| └ objectId | string | optional |
| └ extraData | object | optional |
| └ timestamp | string | optional |
| └ timelineIFrame | object | optional |
| └ url | string | required |
| └ width | integer | required |
| └ height | integer | required |
| └ linkLabel | string | required |
| └ headerLabel | string | required |
| └ eventTemplateId | string | required |
successful operation
multiple statuses
POST /crm/v3/timeline/events/batch/create
/crm/v3/objects/companies/gdpr-delete
Permanently delete a contact and all associated content to follow GDPR. Use optional property ‘idProperty’ set to ‘email’ to identify contact by email address. If email address is not found, the email address will be added to a blocklist and prevent it from being used in the future.
application/json
PublicGdprDeleteInput
| Property | Type | Required |
|---|---|---|
| objectId | string | required |
| idProperty | string | optional |
No content
POST /crm/v3/objects/companies/gdpr-delete
/crm/v3/objects/contacts/gdpr-delete
Permanently delete a contact and all associated content to follow GDPR. Use optional property ‘idProperty’ set to ‘email’ to identify contact by email address. If email address is not found, the email address will be added to a blocklist and prevent it from being used in the future.
application/json
PublicGdprDeleteInput
| Property | Type | Required |
|---|---|---|
| objectId | string | required |
| idProperty | string | optional |
No content
POST /crm/v3/objects/contacts/gdpr-delete
/crm/v3/objects/deals/gdpr-delete
Permanently delete a contact and all associated content to follow GDPR. Use optional property ‘idProperty’ set to ‘email’ to identify contact by email address. If email address is not found, the email address will be added to a blocklist and prevent it from being used in the future.
application/json
PublicGdprDeleteInput
| Property | Type | Required |
|---|---|---|
| objectId | string | required |
| idProperty | string | optional |
No content
POST /crm/v3/objects/deals/gdpr-delete
/crm/v3/objects/feedback_submissions/gdpr-delete
Permanently delete a contact and all associated content to follow GDPR. Use optional property ‘idProperty’ set to ‘email’ to identify contact by email address. If email address is not found, the email address will be added to a blocklist and prevent it from being used in the future.
application/json
PublicGdprDeleteInput
| Property | Type | Required |
|---|---|---|
| objectId | string | required |
| idProperty | string | optional |
No content
POST /crm/v3/objects/feedback_submissions/gdpr-delete
/crm/v3/objects/line_items/gdpr-delete
Permanently delete a contact and all associated content to follow GDPR. Use optional property ‘idProperty’ set to ‘email’ to identify contact by email address. If email address is not found, the email address will be added to a blocklist and prevent it from being used in the future.
application/json
PublicGdprDeleteInput
| Property | Type | Required |
|---|---|---|
| objectId | string | required |
| idProperty | string | optional |
No content
POST /crm/v3/objects/line_items/gdpr-delete
/crm/v3/objects/products/gdpr-delete
Permanently delete a contact and all associated content to follow GDPR. Use optional property ‘idProperty’ set to ‘email’ to identify contact by email address. If email address is not found, the email address will be added to a blocklist and prevent it from being used in the future.
application/json
PublicGdprDeleteInput
| Property | Type | Required |
|---|---|---|
| objectId | string | required |
| idProperty | string | optional |
No content
POST /crm/v3/objects/products/gdpr-delete
/crm/v3/objects/quotes/gdpr-delete
Permanently delete a contact and all associated content to follow GDPR. Use optional property ‘idProperty’ set to ‘email’ to identify contact by email address. If email address is not found, the email address will be added to a blocklist and prevent it from being used in the future.
application/json
PublicGdprDeleteInput
| Property | Type | Required |
|---|---|---|
| objectId | string | required |
| idProperty | string | optional |
No content
POST /crm/v3/objects/quotes/gdpr-delete
/crm/v3/objects/tickets/gdpr-delete
Permanently delete a contact and all associated content to follow GDPR. Use optional property ‘idProperty’ set to ‘email’ to identify contact by email address. If email address is not found, the email address will be added to a blocklist and prevent it from being used in the future.
application/json
PublicGdprDeleteInput
| Property | Type | Required |
|---|---|---|
| objectId | string | required |
| idProperty | string | optional |
No content
POST /crm/v3/objects/tickets/gdpr-delete
/crm/v3/properties/{objectType}/groups
Create and return a copy of a new property group.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| objectType | path | required | string | — |
application/json
PropertyGroupCreate
| Property | Type | Required |
|---|---|---|
| name | string | required |
| label | string | required |
| displayOrder | integer | optional |
successful operation
POST /crm/v3/properties/{objectType}/groups
/crm/v3/pipelines/{objectType}/{pipelineId}/stages
Create a new stage associated with the pipeline identified by {pipelineId}. The entire stage object, including its unique ID, will be returned in the response.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| objectType | path | required | string | — |
| pipelineId | path | required | string | — |
application/json
PipelineStageInput
| Property | Type | Required |
|---|---|---|
| label | string | required |
| metadata | object | required |
| displayOrder | integer | required |
successful operation
POST /crm/v3/pipelines/{objectType}/{pipelineId}/stages
/crm/v3/pipelines/{objectType}
Create a new pipeline with the provided property values. The entire pipeline object, including its unique ID, will be returned in the response.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| objectType | path | required | string | — |
application/json
PipelineInput
| Property | Type | Required |
|---|---|---|
| label | string | required |
| stages | array | required |
| └ label | string | required |
| └ metadata | object | required |
| └ displayOrder | integer | required |
| displayOrder | integer | required |
successful operation
POST /crm/v3/pipelines/{objectType}
/crm/v3/objects/companies/merge
application/json
PublicMergeInput
| Property | Type | Required |
|---|---|---|
| objectIdToMerge | string | required |
| primaryObjectId | string | required |
successful operation
POST /crm/v3/objects/companies/merge
/crm/v3/objects/contacts/merge
application/json
PublicMergeInput
| Property | Type | Required |
|---|---|---|
| objectIdToMerge | string | required |
| primaryObjectId | string | required |
successful operation
POST /crm/v3/objects/contacts/merge
/crm/v3/objects/deals/merge
application/json
PublicMergeInput
| Property | Type | Required |
|---|---|---|
| objectIdToMerge | string | required |
| primaryObjectId | string | required |
successful operation
POST /crm/v3/objects/deals/merge
/crm/v3/objects/feedback_submissions/merge
application/json
PublicMergeInput
| Property | Type | Required |
|---|---|---|
| objectIdToMerge | string | required |
| primaryObjectId | string | required |
successful operation
POST /crm/v3/objects/feedback_submissions/merge
/crm/v3/objects/line_items/merge
application/json
PublicMergeInput
| Property | Type | Required |
|---|---|---|
| objectIdToMerge | string | required |
| primaryObjectId | string | required |
successful operation
POST /crm/v3/objects/line_items/merge
/crm/v3/objects/products/merge
application/json
PublicMergeInput
| Property | Type | Required |
|---|---|---|
| objectIdToMerge | string | required |
| primaryObjectId | string | required |
successful operation
POST /crm/v3/objects/products/merge
/crm/v3/objects/quotes/merge
application/json
PublicMergeInput
| Property | Type | Required |
|---|---|---|
| objectIdToMerge | string | required |
| primaryObjectId | string | required |
successful operation
POST /crm/v3/objects/quotes/merge
/crm/v3/objects/tickets/merge
application/json
PublicMergeInput
| Property | Type | Required |
|---|---|---|
| objectIdToMerge | string | required |
| primaryObjectId | string | required |
successful operation
POST /crm/v3/objects/tickets/merge
/crm/v3/objects/{objectType}/merge
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| objectType | path | required | string | — |
application/json
PublicMergeInput
| Property | Type | Required |
|---|---|---|
| objectIdToMerge | string | required |
| primaryObjectId | string | required |
successful operation
POST /crm/v3/objects/{objectType}/merge
/crm/v3/extensions/calling/{appId}/settings/recording
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| appId | path | required | integer | — |
application/json
RecordingSettingsRequest
| Property | Type | Required |
|---|---|---|
| urlToRetrieveAuthedRecording | string | required |
successful operation
POST /crm/v3/extensions/calling/{appId}/settings/recording
/crm/v3/objects/companies/search
application/json
PublicObjectSearchRequest
| Property | Type | Required |
|---|---|---|
| after | string | required |
| limit | integer | required |
| query | string | optional |
| sorts | array | required |
| properties | array | required |
| filterGroups | array | required |
| └ filters | array | required |
| └ value | string | optional |
| └ values | array | optional |
| └ operator | string | required |
| └ highValue | string | optional |
| └ propertyName | string | required |
successful operation
POST /crm/v3/objects/companies/search
/crm/v3/objects/contacts/search
application/json
PublicObjectSearchRequest
| Property | Type | Required |
|---|---|---|
| after | string | required |
| limit | integer | required |
| query | string | optional |
| sorts | array | required |
| properties | array | required |
| filterGroups | array | required |
| └ filters | array | required |
| └ value | string | optional |
| └ values | array | optional |
| └ operator | string | required |
| └ highValue | string | optional |
| └ propertyName | string | required |
successful operation
POST /crm/v3/objects/contacts/search
/crm/v3/objects/deals/search
application/json
PublicObjectSearchRequest
| Property | Type | Required |
|---|---|---|
| after | string | required |
| limit | integer | required |
| query | string | optional |
| sorts | array | required |
| properties | array | required |
| filterGroups | array | required |
| └ filters | array | required |
| └ value | string | optional |
| └ values | array | optional |
| └ operator | string | required |
| └ highValue | string | optional |
| └ propertyName | string | required |
successful operation
POST /crm/v3/objects/deals/search
/crm/v3/objects/feedback_submissions/search
application/json
PublicObjectSearchRequest
| Property | Type | Required |
|---|---|---|
| after | string | required |
| limit | integer | required |
| query | string | optional |
| sorts | array | required |
| properties | array | required |
| filterGroups | array | required |
| └ filters | array | required |
| └ value | string | optional |
| └ values | array | optional |
| └ operator | string | required |
| └ highValue | string | optional |
| └ propertyName | string | required |
successful operation
POST /crm/v3/objects/feedback_submissions/search
/crm/v3/objects/line_items/search
application/json
PublicObjectSearchRequest
| Property | Type | Required |
|---|---|---|
| after | string | required |
| limit | integer | required |
| query | string | optional |
| sorts | array | required |
| properties | array | required |
| filterGroups | array | required |
| └ filters | array | required |
| └ value | string | optional |
| └ values | array | optional |
| └ operator | string | required |
| └ highValue | string | optional |
| └ propertyName | string | required |
successful operation
POST /crm/v3/objects/line_items/search
/crm/v3/objects/products/search
application/json
PublicObjectSearchRequest
| Property | Type | Required |
|---|---|---|
| after | string | required |
| limit | integer | required |
| query | string | optional |
| sorts | array | required |
| properties | array | required |
| filterGroups | array | required |
| └ filters | array | required |
| └ value | string | optional |
| └ values | array | optional |
| └ operator | string | required |
| └ highValue | string | optional |
| └ propertyName | string | required |
successful operation
POST /crm/v3/objects/products/search
/crm/v3/objects/quotes/search
application/json
PublicObjectSearchRequest
| Property | Type | Required |
|---|---|---|
| after | string | required |
| limit | integer | required |
| query | string | optional |
| sorts | array | required |
| properties | array | required |
| filterGroups | array | required |
| └ filters | array | required |
| └ value | string | optional |
| └ values | array | optional |
| └ operator | string | required |
| └ highValue | string | optional |
| └ propertyName | string | required |
successful operation
POST /crm/v3/objects/quotes/search
/crm/v3/objects/tickets/search
application/json
PublicObjectSearchRequest
| Property | Type | Required |
|---|---|---|
| after | string | required |
| limit | integer | required |
| query | string | optional |
| sorts | array | required |
| properties | array | required |
| filterGroups | array | required |
| └ filters | array | required |
| └ value | string | optional |
| └ values | array | optional |
| └ operator | string | required |
| └ highValue | string | optional |
| └ propertyName | string | required |
successful operation
POST /crm/v3/objects/tickets/search
/crm/v3/objects/{objectType}/search
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| objectType | path | required | string | — |
application/json
PublicObjectSearchRequest
| Property | Type | Required |
|---|---|---|
| after | string | required |
| limit | integer | required |
| query | string | optional |
| sorts | array | required |
| properties | array | required |
| filterGroups | array | required |
| └ filters | array | required |
| └ value | string | optional |
| └ values | array | optional |
| └ operator | string | required |
| └ highValue | string | optional |
| └ propertyName | string | required |
successful operation
POST /crm/v3/objects/{objectType}/search
/crm/v3/extensions/calling/{appId}/settings
Used to set the menu label, target iframe URL, and dimensions for your calling extension.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| appId | path | required | integer | The ID of the target app. |
Settings state to create with.
application/json
SettingsRequest
| Property | Type | Required |
|---|---|---|
| url | string | required |
| name | string | required |
| width | integer | optional |
| height | integer | optional |
| isReady | boolean | optional |
| supportsCustomObjects | boolean | optional |
successful operation
POST /crm/v3/extensions/calling/{appId}/settings
/crm/v3/timeline/{appId}/event-templates
Event templates define the general structure for a custom timeline event. This includes formatted copy for its heading and details, as well as any custom property definitions. The event could be something like viewing a video, registering for a webinar, or filling out a survey. A single app can define multiple event templates.
Event templates will be created for contacts by default, but they can be created for companies, tickets, and deals as well.
Each event template contains its own set of tokens and Markdown templates. These tokens can be associated with any CRM object properties via the objectPropertyName field to fully build out CRM objects.
You must create an event template before you can create events.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| appId | path | required | integer | The ID of the target app. |
The new event template definition.
application/json
TimelineEventTemplateCreateRequest
| Property | Type | Required |
|---|---|---|
| name | string | required |
| tokens | array | required |
| └ name | string | required |
| └ type | string | required |
| └ label | string | required |
| └ options | array | optional |
| └ label | string | required |
| └ value | string | required |
| └ createdAt | string | optional |
| └ updatedAt | string | optional |
| └ objectPropertyName | string | optional |
| objectType | string | required |
| detailTemplate | string | optional |
| headerTemplate | string | optional |
successful operation
POST /crm/v3/timeline/{appId}/event-templates
/crm/v3/timeline/{appId}/event-templates/{eventTemplateId}/tokens
Once you’ve defined an event template, it’s likely that you’ll want to define tokens for it as well. You can do this on the event template itself or update individual tokens here.
Event type tokens allow you to attach custom data to events displayed in a timeline or used for list segmentation.
You can also use objectPropertyName to associate any CRM object properties. This will allow you to fully build out CRM objects.
Token names should be unique across the template.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| eventTemplateId | path | required | string | The event template ID. |
| appId | path | required | integer | The ID of the target app. |
The new token definition.
application/json
TimelineEventTemplateToken
| Property | Type | Required |
|---|---|---|
| name | string | required |
| type | string | required |
| label | string | required |
| options | array | optional |
| └ label | string | required |
| └ value | string | required |
| createdAt | string | optional |
| updatedAt | string | optional |
| objectPropertyName | string | optional |
successful operation
POST /crm/v3/timeline/{appId}/event-templates/{eventTemplateId}/tokens
ActionResponse
{
"type": "object",
"required": [
"completedAt",
"startedAt",
"status"
],
"properties": {
"links": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"status": {
"enum": [
"PENDING",
"PROCESSING",
"CANCELED",
"COMPLETE"
],
"type": "string"
},
"startedAt": {
"type": "string",
"format": "date-time"
},
"completedAt": {
"type": "string",
"format": "date-time"
},
"requestedAt": {
"type": "string",
"format": "date-time"
}
}
}
AssociatedId
{
"type": "object",
"required": [
"id",
"type"
],
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string"
}
}
}
AssociationDefinition
{
"type": "object",
"example": {
"id": "105",
"name": "my_object_to_contact",
"toObjectTypeId": "0-1",
"fromObjectTypeId": "2-123456"
},
"required": [
"fromObjectTypeId",
"id",
"toObjectTypeId"
],
"properties": {
"id": {
"type": "string",
"example": "105",
"description": "A unique ID for this association."
},
"name": {
"type": "string",
"example": "my_object_to_contact",
"description": "A unique name for this association."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "When the association was defined."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "When the association was last updated."
},
"toObjectTypeId": {
"type": "string",
"example": "0-1",
"description": "ID of the target object type ID to link to."
},
"fromObjectTypeId": {
"type": "string",
"example": "2-123456",
"description": "ID of the primary object type to link from."
}
},
"description": "Defines an association between two object types."
}
AssociationDefinitionEgg
{
"type": "object",
"example": {
"name": "my_object_to_contact",
"toObjectTypeId": "contact",
"fromObjectTypeId": "2-123456"
},
"required": [
"fromObjectTypeId",
"toObjectTypeId"
],
"properties": {
"name": {
"type": "string",
"example": "my_object_to_contact",
"description": "A unique name for this association."
},
"toObjectTypeId": {
"type": "string",
"example": "contact",
"description": "ID of the target object type ID to link to."
},
"fromObjectTypeId": {
"type": "string",
"example": "2-123456",
"description": "ID of the primary object type to link from."
}
},
"description": "Defines an association between two object types."
}
AssociationSpec
{
"type": "object",
"required": [
"associationCategory",
"associationTypeId"
],
"properties": {
"associationTypeId": {
"type": "integer",
"format": "int32"
},
"associationCategory": {
"enum": [
"HUBSPOT_DEFINED",
"USER_DEFINED",
"INTEGRATOR_DEFINED"
],
"type": "string"
}
}
}
BatchInputPropertyCreate
{
"type": "object",
"required": [
"inputs"
],
"properties": {
"inputs": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PropertyCreate"
}
}
}
}
BatchInputPropertyName
{
"type": "object",
"required": [
"inputs"
],
"properties": {
"inputs": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PropertyName"
}
}
}
}
BatchInputSimplePublicObjectBatchInput
{
"type": "object",
"required": [
"inputs"
],
"properties": {
"inputs": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SimplePublicObjectBatchInput"
}
}
}
}
BatchInputSimplePublicObjectId
{
"type": "object",
"required": [
"inputs"
],
"properties": {
"inputs": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SimplePublicObjectId"
}
}
}
}
BatchInputSimplePublicObjectInputForCreate
{
"type": "object",
"required": [
"inputs"
],
"properties": {
"inputs": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SimplePublicObjectInputForCreate"
}
}
}
}
BatchInputTimelineEvent
{
"type": "object",
"example": {
"inputs": [
{
"email": "art3mis-pup@petspot.com",
"tokens": {
"petAge": 3,
"petName": "Art3mis",
"petColor": "black"
},
"extraData": {
"questions": [
{
"answer": "Bark!",
"question": "Who's a good girl?"
},
{
"answer": "Woof!",
"question": "Do you wanna go on a walk?"
}
]
},
"timelineIFrame": {
"url": "https://my.petspot.com/pets/Art3mis",
"width": 600,
"height": 400,
"linkLabel": "View Art3mis",
"headerLabel": "Art3mis dog"
},
"eventTemplateId": "1001298"
},
{
"email": "pocket-tiger@petspot.com",
"tokens": {
"petAge": 3,
"petName": "Pocket",
"petColor": "yellow"
},
"extraData": {
"questions": [
{
"answer": "Purr...",
"question": "Who's a good kitty?"
},
{
"answer": "Meow!",
"question": "Will you stop playing with that?"
}
]
},
"timelineIFrame": {
"url": "https://my.petspot.com/pets/Pocket",
"width": 600,
"height": 400,
"linkLabel": "View Pocket",
"headerLabel": "Pocket Tiger"
},
"eventTemplateId": "1001298"
}
]
},
"required": [
"inputs"
],
"properties": {
"inputs": {
"type": "array",
"items": {
"$ref": "#/components/schemas/TimelineEvent"
},
"example": [
{
"email": "art3mis-pup@petspot.com",
"tokens": {
"petAge": 3,
"petName": "Art3mis",
"petColor": "black"
},
"extraData": {
"questions": [
{
"answer": "Bark!",
"question": "Who's a good girl?"
},
{
"answer": "Woof!",
"question": "Do you wanna go on a walk?"
}
]
},
"timelineIFrame": {
"url": "https://my.petspot.com/pets/Art3mis",
"width": 600,
"height": 400,
"linkLabel": "View Art3mis",
"headerLabel": "Art3mis dog"
},
"eventTemplateId": "1001298"
},
{
"email": "pocket-tiger@petspot.com",
"tokens": {
"petAge": 3,
"petName": "Pocket",
"petColor": "yellow"
},
"extraData": {
"questions": [
{
"answer": "Purr...",
"question": "Who's a good kitty?"
},
{
"answer": "Meow!",
"question": "Will you stop playing with that?"
}
]
},
"timelineIFrame": {
"url": "https://my.petspot.com/pets/Pocket",
"width": 600,
"height": 400,
"linkLabel": "View Pocket",
"headerLabel": "Pocket Tiger"
},
"eventTemplateId": "1001298"
}
],
"description": "A collection of timeline events we want to create."
}
},
"description": "Used to create timeline events in batches."
}
BatchReadInputPropertyName
{
"type": "object",
"required": [
"archived",
"inputs"
],
"properties": {
"inputs": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PropertyName"
}
},
"archived": {
"type": "boolean"
}
}
}
BatchReadInputSimplePublicObjectId
{
"type": "object",
"required": [
"inputs",
"properties",
"propertiesWithHistory"
],
"properties": {
"inputs": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SimplePublicObjectId"
}
},
"idProperty": {
"type": "string"
},
"properties": {
"type": "array",
"items": {
"type": "string"
}
},
"propertiesWithHistory": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
BatchResponseProperty
{
"type": "object",
"required": [
"completedAt",
"results",
"startedAt",
"status"
],
"properties": {
"links": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"status": {
"enum": [
"PENDING",
"PROCESSING",
"CANCELED",
"COMPLETE"
],
"type": "string"
},
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Property"
}
},
"startedAt": {
"type": "string",
"format": "date-time"
},
"completedAt": {
"type": "string",
"format": "date-time"
},
"requestedAt": {
"type": "string",
"format": "date-time"
}
}
}
BatchResponsePropertyWithErrors
{
"type": "object",
"required": [
"completedAt",
"results",
"startedAt",
"status"
],
"properties": {
"links": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"errors": {
"type": "array",
"items": {
"$ref": "#/components/schemas/StandardError"
}
},
"status": {
"enum": [
"PENDING",
"PROCESSING",
"CANCELED",
"COMPLETE"
],
"type": "string"
},
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Property"
}
},
"numErrors": {
"type": "integer",
"format": "int32"
},
"startedAt": {
"type": "string",
"format": "date-time"
},
"completedAt": {
"type": "string",
"format": "date-time"
},
"requestedAt": {
"type": "string",
"format": "date-time"
}
}
}
BatchResponseSimplePublicObject
{
"type": "object",
"required": [
"completedAt",
"results",
"startedAt",
"status"
],
"properties": {
"links": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"status": {
"enum": [
"PENDING",
"PROCESSING",
"CANCELED",
"COMPLETE"
],
"type": "string"
},
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SimplePublicObject"
}
},
"startedAt": {
"type": "string",
"format": "date-time"
},
"completedAt": {
"type": "string",
"format": "date-time"
},
"requestedAt": {
"type": "string",
"format": "date-time"
}
}
}
BatchResponseSimplePublicObjectWithErrors
{
"type": "object",
"required": [
"completedAt",
"results",
"startedAt",
"status"
],
"properties": {
"links": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"errors": {
"type": "array",
"items": {
"$ref": "#/components/schemas/StandardError"
}
},
"status": {
"enum": [
"PENDING",
"PROCESSING",
"CANCELED",
"COMPLETE"
],
"type": "string"
},
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SimplePublicObject"
}
},
"numErrors": {
"type": "integer",
"format": "int32"
},
"startedAt": {
"type": "string",
"format": "date-time"
},
"completedAt": {
"type": "string",
"format": "date-time"
},
"requestedAt": {
"type": "string",
"format": "date-time"
}
}
}
BatchResponseTimelineEventResponse
{
"type": "object",
"example": {
"status": "COMPLETE",
"results": [
{
"id": "petspot:1001298:art3mis-pup@petspot.com-6edaa73d-d734-404d-908f-74774d58ac2bX",
"email": "art3mis-pup@petspot.com",
"tokens": {
"petAge": "3",
"petName": "Art3mis",
"petColor": "black"
},
"objectId": "28001",
"extraData": {
"questions": [
{
"answer": "Bark!",
"question": "Who's a good girl?"
},
{
"answer": "Woof!",
"question": "Do you wanna go on a walk?"
}
]
},
"timestamp": "2020-01-30T18:13:25.665Z",
"objectType": "contacts",
"timelineIFrame": {
"url": "https://my.petspot.com/pets/Art3mis",
"width": 600,
"height": 400,
"linkLabel": "View Art3mis",
"headerLabel": "Art3mis dog"
},
"eventTemplateId": "1001298"
},
{
"id": "petspot:1001298:pocket-tiger@petspot.com-0df6277b-6eba-4d1f-8c19-1994cbfaa4caX",
"email": "pocket-tiger@petspot.com",
"tokens": {
"petAge": "3",
"petName": "Pocket",
"petColor": "yellow"
},
"objectId": "28651",
"extraData": {
"questions": [
{
"answer": "Purr...",
"question": "Who's a good kitty?"
},
{
"answer": "Meow!",
"question": "Will you stop playing with that?"
}
]
},
"timestamp": "2020-01-30T18:13:25.665Z",
"objectType": "contacts",
"timelineIFrame": {
"url": "https://my.petspot.com/pets/Pocket",
"width": 600,
"height": 400,
"linkLabel": "View Pocket",
"headerLabel": "Pocket Tiger"
},
"eventTemplateId": "1001298"
}
],
"startedAt": "2020-01-30T18:13:24.974023Z",
"completedAt": "2020-01-30T18:13:26.227559Z"
},
"required": [
"completedAt",
"results",
"startedAt",
"status"
],
"properties": {
"links": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"status": {
"enum": [
"PENDING",
"PROCESSING",
"CANCELED",
"COMPLETE"
],
"type": "string",
"example": "COMPLETE",
"description": "The status of the batch response. Should always be COMPLETED if processed."
},
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/TimelineEventResponse"
},
"example": [
{
"id": "petspot:1001298:art3mis-pup@petspot.com-6edaa73d-d734-404d-908f-74774d58ac2b",
"email": "art3mis-pup@petspot.com",
"tokens": {
"petAge": "3",
"petName": "Art3mis",
"petColor": "black"
},
"objectId": "28001",
"extraData": {
"questions": [
{
"answer": "Bark!",
"question": "Who's a good girl?"
},
{
"answer": "Woof!",
"question": "Do you wanna go on a walk?"
}
]
},
"timestamp": "2020-01-30T18:13:25.665Z",
"objectType": "contacts",
"timelineIFrame": {
"url": "https://my.petspot.com/pets/Art3mis",
"width": 600,
"height": 400,
"linkLabel": "View Art3mis",
"headerLabel": "Art3mis dog"
},
"eventTemplateId": "1001298"
},
{
"id": "petspot:1001298:pocket-tiger@petspot.com-0df6277b-6eba-4d1f-8c19-1994cbfaa4ca",
"email": "pocket-tiger@petspot.com",
"tokens": {
"petAge": "3",
"petName": "Pocket",
"petColor": "yellow"
},
"objectId": "28651",
"extraData": {
"questions": [
{
"answer": "Purr...",
"question": "Who's a good kitty?"
},
{
"answer": "Meow!",
"question": "Will you stop playing with that?"
}
]
},
"timestamp": "2020-01-30T18:13:25.665Z",
"objectType": "contacts",
"timelineIFrame": {
"url": "https://my.petspot.com/pets/Pocket",
"width": 600,
"height": 400,
"linkLabel": "View Pocket",
"headerLabel": "Pocket Tiger"
},
"eventTemplateId": "1001298"
}
],
"description": "Successfully created events."
},
"startedAt": {
"type": "string",
"format": "date-time",
"description": "The time the request began processing."
},
"completedAt": {
"type": "string",
"format": "date-time",
"description": "The time the request was completed."
},
"requestedAt": {
"type": "string",
"format": "date-time",
"description": "The time the request occurred."
}
},
"description": "The state of the batch event request."
}
BatchResponseTimelineEventResponseWithErrors
{
"type": "object",
"required": [
"completedAt",
"results",
"startedAt",
"status"
],
"properties": {
"links": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"errors": {
"type": "array",
"items": {
"$ref": "#/components/schemas/StandardError"
}
},
"status": {
"enum": [
"PENDING",
"PROCESSING",
"CANCELED",
"COMPLETE"
],
"type": "string"
},
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/TimelineEventResponse"
}
},
"numErrors": {
"type": "integer",
"format": "int32"
},
"startedAt": {
"type": "string",
"format": "date-time"
},
"completedAt": {
"type": "string",
"format": "date-time"
},
"requestedAt": {
"type": "string",
"format": "date-time"
}
}
}
CollectionResponseAssociatedId
{
"type": "object",
"required": [
"results"
],
"properties": {
"paging": {
"$ref": "#/components/schemas/Paging"
},
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AssociatedId"
}
}
}
}
CollectionResponseObjectSchemaNoPaging
{
"type": "object",
"required": [
"results"
],
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ObjectSchema"
}
}
}
}
CollectionResponsePipelineNoPaging
{
"type": "object",
"required": [
"results"
],
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Pipeline"
}
}
}
}
CollectionResponsePipelineStageNoPaging
{
"type": "object",
"required": [
"results"
],
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PipelineStage"
}
}
}
}
CollectionResponsePropertyGroupNoPaging
{
"type": "object",
"required": [
"results"
],
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PropertyGroup"
}
}
}
}
CollectionResponsePropertyNoPaging
{
"type": "object",
"required": [
"results"
],
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Property"
}
}
}
}
CollectionResponsePublicAuditInfoNoPaging
{
"type": "object",
"required": [
"results"
],
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PublicAuditInfo"
}
}
}
}
CollectionResponsePublicImportErrorForwardPaging
{
"type": "object",
"required": [
"results"
],
"properties": {
"paging": {
"$ref": "#/components/schemas/ForwardPaging"
},
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PublicImportError"
}
}
}
}
CollectionResponsePublicImportResponse
{
"type": "object",
"required": [
"results"
],
"properties": {
"paging": {
"$ref": "#/components/schemas/Paging"
},
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PublicImportResponse"
}
}
}
}
CollectionResponsePublicOwnerForwardPaging
{
"type": "object",
"required": [
"results"
],
"properties": {
"paging": {
"$ref": "#/components/schemas/ForwardPaging"
},
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PublicOwner"
}
}
}
}
CollectionResponseSimplePublicObjectWithAssociationsForwardPaging
{
"type": "object",
"required": [
"results"
],
"properties": {
"paging": {
"$ref": "#/components/schemas/ForwardPaging"
},
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SimplePublicObjectWithAssociations"
}
}
}
}
CollectionResponseTimelineEventTemplateNoPaging
{
"type": "object",
"required": [
"results"
],
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/TimelineEventTemplate"
}
}
}
}
CollectionResponseWithTotalSimplePublicObjectForwardPaging
{
"type": "object",
"required": [
"results",
"total"
],
"properties": {
"total": {
"type": "integer",
"format": "int32"
},
"paging": {
"$ref": "#/components/schemas/ForwardPaging"
},
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SimplePublicObject"
}
}
}
}
CoreStartImportRequest
{
"type": "object",
"properties": {
"files": {
"type": "string",
"format": "binary",
"description": "A list of files containing the data to import"
},
"importRequest": {
"type": "string",
"description": "JSON formatted metadata about the import. This includes a name for the import and the column mappings for each file. See the overview tab for more on the required format."
}
}
}
Error
{
"type": "object",
"example": {
"links": {
"knowledge-base": "https://www.hubspot.com/products/service/knowledge-base"
},
"message": "Invalid input (details will vary based on the error)",
"category": "VALIDATION_ERROR",
"correlationId": "aeb5f871-7f07-4993-9211-075dc63e7cbf"
},
"required": [
"category",
"correlationId",
"message"
],
"properties": {
"links": {
"type": "object",
"example": {
"knowledge-base": "https://www.hubspot.com/products/service/knowledge-base"
},
"description": "A map of link names to associated URIs containing documentation about the error or recommended remediation steps",
"additionalProperties": {
"type": "string"
}
},
"errors": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ErrorDetail"
},
"description": "further information about the error"
},
"context": {
"type": "object",
"example": {
"missingScopes": [
"scope1",
"scope2"
],
"invalidPropertyName": [
"propertyValue"
]
},
"description": "Context about the error condition",
"additionalProperties": {
"type": "array",
"items": {
"type": "string"
}
}
},
"message": {
"type": "string",
"example": "Invalid input (details will vary based on the error)",
"description": "A human readable message describing the error along with remediation steps where appropriate"
},
"category": {
"type": "string",
"example": "VALIDATION_ERROR",
"description": "The error category"
},
"subCategory": {
"type": "string",
"description": "A specific category that contains more specific detail about the error"
},
"correlationId": {
"type": "string",
"format": "uuid",
"example": "aeb5f871-7f07-4993-9211-075dc63e7cbf",
"description": "A unique identifier for the request. Include this value with any error reports or support tickets"
}
}
}
ErrorDetail
{
"type": "object",
"required": [
"message"
],
"properties": {
"in": {
"type": "string",
"description": "The name of the field or parameter in which the error was found."
},
"code": {
"type": "string",
"description": "The status code associated with the error detail"
},
"context": {
"type": "object",
"example": {
"missingScopes": [
"scope1",
"scope2"
]
},
"description": "Context about the error condition",
"additionalProperties": {
"type": "array",
"items": {
"type": "string"
}
}
},
"message": {
"type": "string",
"description": "A human readable message describing the error along with remediation steps where appropriate"
},
"subCategory": {
"type": "string",
"description": "A specific category that contains more specific detail about the error"
}
}
}
EventDetail
{
"type": "object",
"example": {
"details": "<p>Registration occurred at Jan 30, 2020, 1:13:25 PM</p><h4>Questions</h4><p><strong>Who's a good kitty?</strong>: Purr...</p><p><strong>Will you stop playing with that?</strong>: Meow!</p><p>EDIT</p>"
},
"required": [
"details"
],
"properties": {
"details": {
"type": "string",
"example": "<p>Registration occurred at Jan 30, 2020, 1:13:25 PM</p><h4>Questions</h4><p><strong>Who's a good kitty?</strong>: Purr...</p><p><strong>Will you stop playing with that?</strong>: Meow!</p><p>EDIT</p>",
"description": "The details Markdown rendered as HTML."
}
},
"description": "The details Markdown rendered as HTML."
}
EventsCreateMultipleBatchResponse
{
"type": "object",
"example": {
"status": "COMPLETE",
"results": [
{
"id": "petspot:1001298:art3mis-pup@petspot.com-b9d73144-41bb-46c8-9a3f-f0849c1ad7e6",
"email": "art3mis-pup@petspot.com",
"tokens": {
"petAge": "3",
"petName": "Art3mis",
"petColor": "black"
},
"objectId": "28001",
"extraData": {
"questions": [
{
"answer": "Bark!",
"question": "Who's a good girl?"
},
{
"answer": "Woof!",
"question": "Do you wanna go on a walk?"
}
]
},
"timestamp": "2020-01-30T18:10:17.057Z",
"objectType": "contacts",
"timelineIFrame": {
"url": "https://my.petspot.com/pets/Art3mis",
"width": 600,
"height": 400,
"linkLabel": "View Art3mis",
"headerLabel": "Art3mis dog"
},
"eventTemplateId": "1001298"
},
{
"id": "petspot:1001298:pocket-tiger@petspot.com-c09a620f-60a4-46a8-be9f-fe0609fc3f0e",
"email": "pocket-tiger@petspot.com",
"tokens": {
"petAge": "3",
"petName": "Pocket",
"petColor": "yellow"
},
"objectId": "28651",
"extraData": {
"questions": [
{
"answer": "Purr...",
"question": "Who's a good kitty?"
},
{
"answer": "Meow!",
"question": "Will you stop playing with that?"
}
]
},
"timestamp": "2020-01-30T18:10:17.057Z",
"objectType": "contacts",
"timelineIFrame": {
"url": "https://my.petspot.com/pets/Pocket",
"width": 600,
"height": 400,
"linkLabel": "View Pocket",
"headerLabel": "Pocket Tiger"
},
"eventTemplateId": "1001298"
}
],
"startedAt": "2020-01-30T18:10:16.478734Z",
"completedAt": "2020-01-30T18:10:17.793206Z"
},
"properties": {
"status": {
"type": "string",
"example": "COMPLETE"
},
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "petspot:1001298:art3mis-pup@petspot.com-b9d73144-41bb-46c8-9a3f-f0849c1ad7e6"
},
"email": {
"type": "string",
"example": "art3mis-pup@petspot.com"
},
"tokens": {
"type": "object",
"properties": {
"petAge": {
"type": "string",
"example": "3"
},
"petName": {
"type": "string",
"example": "Art3mis"
},
"petColor": {
"type": "string",
"example": "black"
}
}
},
"objectId": {
"type": "string",
"example": "28001"
},
"extraData": {
"type": "object",
"properties": {
"questions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"answer": {
"type": "string",
"example": "Bark!"
},
"question": {
"type": "string",
"example": "Who's a good girl?"
}
}
}
}
}
},
"timestamp": {
"type": "string",
"example": "2020-01-30T18:10:17.057Z"
},
"objectType": {
"type": "string",
"example": "contacts"
},
"timelineIFrame": {
"type": "object",
"properties": {
"url": {
"type": "string",
"example": "https://my.petspot.com/pets/Art3mis"
},
"width": {
"type": "number",
"example": 600
},
"height": {
"type": "number",
"example": 400
},
"linkLabel": {
"type": "string",
"example": "View Art3mis"
},
"headerLabel": {
"type": "string",
"example": "Art3mis dog"
}
}
},
"eventTemplateId": {
"type": "string",
"example": "1001298"
}
}
}
},
"startedAt": {
"type": "string",
"example": "2020-01-30T18:10:16.478734Z"
},
"completedAt": {
"type": "string",
"example": "2020-01-30T18:10:17.793206Z"
}
}
}
EventsRenderingHtmlResponse
{
"type": "string"
}
ExternalSettings
{
"type": "object",
"example": {
"userVerifyUrl": "https://example.com/user-verify",
"createMeetingUrl": "https://example.com/create-meeting",
"deleteMeetingUrl": "https://example.com/delete-meeting",
"updateMeetingUrl": "https://example.com/update-meeting"
},
"required": [
"createMeetingUrl"
],
"properties": {
"userVerifyUrl": {
"type": "string",
"example": "https://example.com/user-verify",
"description": "The URL that HubSpot will use to verify that a user exists in the video conference application."
},
"createMeetingUrl": {
"type": "string",
"example": "https://example.com/create-meeting",
"description": "The URL that HubSpot will send requests to create a new video conference."
},
"deleteMeetingUrl": {
"type": "string",
"example": "https://example.com/delete-meeting",
"description": "The URL that HubSpot will send notifications of meetings that have been deleted in HubSpot."
},
"fetchAccountsUri": {
"type": "string"
},
"updateMeetingUrl": {
"type": "string",
"example": "https://example.com/update-meeting",
"description": "The URL that HubSpot will send updates to existing meetings. Typically called when the user changes the topic or times of a meeting."
}
},
"description": "The URLs of the various actions provided by the video conferencing application. All URLs must use the `https` protocol."
}
Filter
{
"type": "object",
"required": [
"operator",
"propertyName"
],
"properties": {
"value": {
"type": "string"
},
"values": {
"type": "array",
"items": {
"type": "string"
}
},
"operator": {
"enum": [
"EQ",
"NEQ",
"LT",
"LTE",
"GT",
"GTE",
"BETWEEN",
"IN",
"NOT_IN",
"HAS_PROPERTY",
"NOT_HAS_PROPERTY",
"CONTAINS_TOKEN",
"NOT_CONTAINS_TOKEN"
],
"type": "string",
"description": "null"
},
"highValue": {
"type": "string"
},
"propertyName": {
"type": "string"
}
}
}
FilterGroup
{
"type": "object",
"required": [
"filters"
],
"properties": {
"filters": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Filter"
}
}
}
}
ForwardPaging
{
"type": "object",
"properties": {
"next": {
"$ref": "#/components/schemas/NextPage"
}
}
}
ImportRowCore
{
"type": "object",
"required": [
"fileId",
"lineNumber",
"rowData"
],
"properties": {
"fileId": {
"type": "integer",
"format": "int32"
},
"rowData": {
"type": "array",
"items": {
"type": "string"
}
},
"pageName": {
"type": "string"
},
"lineNumber": {
"type": "integer",
"format": "int32"
}
}
}
ImportTemplate
{
"type": "object",
"required": [
"templateId",
"templateType"
],
"properties": {
"templateId": {
"type": "integer",
"format": "int32"
},
"templateType": {
"enum": [
"admin_defined",
"previous_import",
"user_file"
],
"type": "string"
}
}
}
NextPage
{
"type": "object",
"example": {
"link": "?after=NTI1Cg%3D%3D",
"after": "NTI1Cg%3D%3D"
},
"required": [
"after"
],
"properties": {
"link": {
"type": "string",
"example": "?after=NTI1Cg%3D%3D"
},
"after": {
"type": "string",
"example": "NTI1Cg%3D%3D"
}
}
}
ObjectSchema
{
"type": "object",
"example": {
"id": "123456X",
"name": "my_object",
"labels": {
"plural": "My objects",
"singular": "My object"
},
"metaType": "PORTAL_SPECIFIC",
"createdAt": "2020-02-20T18:07:11.390Z",
"updatedAt": "2020-02-20T18:09:07.555Z",
"properties": [
{
"name": "my_object_property",
"type": "string",
"label": "My object property",
"archived": false,
"createdAt": "2020-02-20T18:07:11.802Z",
"fieldType": "text",
"groupName": "my_object_information",
"updatedAt": "2020-02-20T18:07:11.802Z",
"calculated": false,
"displayOrder": -1,
"hasUniqueValue": false,
"externalOptions": false
}
],
"associations": [
{
"id": "123X",
"name": "my_object_to_contact",
"toObjectTypeId": "0-1",
"fromObjectTypeId": "2-123456"
}
],
"fullyQualifiedName": "p7878787_my_object\"",
"requiredProperties": [
"my_object_property"
],
"searchableProperties": [
"my_object_property"
],
"primaryDisplayProperty": "my_object_property"
},
"required": [
"associations",
"id",
"labels",
"name",
"properties",
"requiredProperties"
],
"properties": {
"id": {
"type": "string",
"example": "123456",
"description": "A unique ID for this schema's object type. Will be defined as {meta-type}-{unique ID}."
},
"name": {
"type": "string",
"example": "my_object",
"description": "A unique name for the schema's object type."
},
"labels": {
"$ref": "#/components/schemas/ObjectTypeDefinitionLabels"
},
"archived": {
"type": "boolean"
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "When the object schema was created."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "When the object schema was last updated."
},
"properties": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Property"
},
"example": [
{
"name": "my_object_property",
"type": "string",
"label": "My object property",
"archived": false,
"createdAt": "2020-02-20T18:07:11.802Z",
"fieldType": "text",
"groupName": "my_object_information",
"updatedAt": "2020-02-20T18:07:11.802Z",
"calculated": false,
"displayOrder": -1,
"hasUniqueValue": false,
"externalOptions": false
}
],
"description": "Properties defined for this object type."
},
"description": {
"type": "string"
},
"associations": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AssociationDefinition"
},
"example": [
{
"id": "123",
"name": "my_object_to_contact",
"toObjectTypeId": "0-1",
"fromObjectTypeId": "2-123456"
}
],
"description": "Associations defined for a given object type."
},
"objectTypeId": {
"type": "string"
},
"fullyQualifiedName": {
"type": "string",
"example": "p7878787_my_object\"",
"description": "An assigned unique ID for the object, including portal ID and object name."
},
"requiredProperties": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"my_object_property"
],
"description": "The names of properties that should be **required** when creating an object of this type."
},
"searchableProperties": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"my_object_property"
],
"description": "Names of properties that will be indexed for this object type in by HubSpot's product search."
},
"primaryDisplayProperty": {
"type": "string",
"example": "my_object_property",
"description": "The name of the primary property for this object. This will be displayed as primary on the HubSpot record page for this object type."
},
"secondaryDisplayProperties": {
"type": "array",
"items": {
"type": "string"
},
"description": "The names of secondary properties for this object. These will be displayed as secondary on the HubSpot record page for this object type."
}
},
"description": "Defines an object schema, including its properties and associations."
}
ObjectSchemaEgg
{
"type": "object",
"example": {
"name": "my_object",
"labels": {
"plural": "My objects",
"singular": "My object"
},
"metaType": "PORTAL_SPECIFIC",
"properties": [
{
"name": "my_object_property",
"label": "My object property",
"isPrimaryDisplayLabel": true
}
],
"associatedObjects": [
"CONTACT"
],
"requiredProperties": [
"my_object_property"
],
"primaryDisplayProperty": "my_object_property"
},
"required": [
"associatedObjects",
"labels",
"name",
"properties",
"requiredProperties"
],
"properties": {
"name": {
"type": "string",
"example": "my_object",
"description": "A unique name for this object. For internal use only."
},
"labels": {
"$ref": "#/components/schemas/ObjectTypeDefinitionLabels"
},
"properties": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ObjectTypePropertyCreate"
},
"example": [
{
"name": "my_object_property",
"label": "My object property",
"isPrimaryDisplayLabel": true
}
],
"description": "Properties defined for this object type."
},
"description": {
"type": "string"
},
"associatedObjects": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"CONTACT"
],
"description": "Associations defined for this object type."
},
"requiredProperties": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"my_object_property"
],
"description": "The names of properties that should be **required** when creating an object of this type."
},
"searchableProperties": {
"type": "array",
"items": {
"type": "string"
},
"description": "Names of properties that will be indexed for this object type in by HubSpot's product search."
},
"primaryDisplayProperty": {
"type": "string",
"example": "my_object_property",
"description": "The name of the primary property for this object. This will be displayed as primary on the HubSpot record page for this object type."
},
"secondaryDisplayProperties": {
"type": "array",
"items": {
"type": "string"
},
"description": "The names of secondary properties for this object. These will be displayed as secondary on the HubSpot record page for this object type."
}
},
"description": "Defines a new object type, its properties, and associations."
}
ObjectTypeDefinition
{
"type": "object",
"example": {
"id": "123456",
"name": "my_object",
"labels": {
"plural": "My objects",
"singular": "My object"
},
"metaType": "PORTAL_SPECIFIC",
"portalId": 12345678,
"createdAt": "2020-02-20T18:07:11.390Z",
"updatedAt": "2020-02-21T14:13:28.818002Z",
"requiredProperties": [
"my_object_property"
],
"searchableProperties": [
"my_object_property"
],
"primaryDisplayProperty": "my_object_property"
},
"required": [
"id",
"labels",
"name",
"requiredProperties"
],
"properties": {
"id": {
"type": "string",
"example": "123456",
"description": "A unique ID for this object type. Will be defined as {meta-type}-{unique ID}."
},
"name": {
"type": "string",
"example": "my_object",
"description": "A unique name for this object. For internal use only."
},
"labels": {
"$ref": "#/components/schemas/ObjectTypeDefinitionLabels"
},
"archived": {
"type": "boolean"
},
"portalId": {
"type": "integer",
"format": "int32",
"example": 12345678,
"description": "The ID of the account that this object type is specific to."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "When the object type was created."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "When the object type was last updated."
},
"description": {
"type": "string"
},
"objectTypeId": {
"type": "string"
},
"fullyQualifiedName": {
"type": "string"
},
"requiredProperties": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"my_object_property"
],
"description": "The names of properties that should be **required** when creating an object of this type."
},
"searchableProperties": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"my_object_property"
],
"description": "Names of properties that will be indexed for this object type in by HubSpot's product search."
},
"primaryDisplayProperty": {
"type": "string",
"example": "my_object_property",
"description": "The name of the primary property for this object. This will be displayed as primary on the HubSpot record page for this object type."
},
"secondaryDisplayProperties": {
"type": "array",
"items": {
"type": "string"
},
"description": "The names of secondary properties for this object. These will be displayed as secondary on the HubSpot record page for this object type."
}
},
"description": "Defines an object type."
}
ObjectTypeDefinitionLabels
{
"type": "object",
"example": {
"plural": "My objects",
"singular": "My object"
},
"properties": {
"plural": {
"type": "string",
"example": "My objects",
"description": "The word for multiple objects. (There’s no way to change this later.)"
},
"singular": {
"type": "string",
"example": "My object",
"description": "The word for one object. (There’s no way to change this later.)"
}
},
"description": "Singular and plural labels for the object. Used in CRM display."
}
ObjectTypeDefinitionPatch
{
"type": "object",
"example": {
"requiredProperties": [
"my_object_property"
],
"searchableProperties": [
"my_object_property"
],
"primaryDisplayProperty": "my_object_property"
},
"properties": {
"labels": {
"$ref": "#/components/schemas/ObjectTypeDefinitionLabels"
},
"restorable": {
"type": "boolean"
},
"description": {
"type": "string"
},
"requiredProperties": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"my_object_property"
],
"description": "The names of properties that should be **required** when creating an object of this type."
},
"searchableProperties": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"my_object_property"
],
"description": "Names of properties that will be indexed for this object type in by HubSpot's product search."
},
"primaryDisplayProperty": {
"type": "string",
"example": "my_object_property",
"description": "The name of the primary property for this object. This will be displayed as primary on the HubSpot record page for this object type."
},
"secondaryDisplayProperties": {
"type": "array",
"items": {
"type": "string"
},
"description": "The names of secondary properties for this object. These will be displayed as secondary on the HubSpot record page for this object type."
}
},
"description": "Defines attributes to update on an object type."
}