# Create or Update a Custom Object Instance

Create or update a custom object instance

Endpoint: POST /custom_object_instances/{custom_object_type_identifier}
Version: Preview
Security: bearerAuth

## Path parameters:

  - `custom_object_type_identifier` (string, required)
    The unique identifier of the custom object type that defines the structure of the custom object instance.

## Header parameters:

  - `Intercom-Version` (string)

## Request fields (application/json):

  - `external_id` (string)
    A unique identifier for the Custom Object instance in the external system it originated from.

  - `external_created_at` (integer)
    The time when the Custom Object instance was created in the external system it originated from.
    Example: 1571672154

  - `external_updated_at` (integer)
    The time when the Custom Object instance was last updated in the external system it originated from.
    Example: 1571672154

## Response 200 fields (application/json):

  - `id` (string)
    The Intercom defined id representing the custom object instance.
    Example: 16032025

  - `external_id` (string)
    The id you have defined for the custom object instance.
    Example: 0001d1c1e65a7a19e9f59ae2

  - `external_created_at` (integer)
    The time when the Custom Object instance was created in the external system it originated from.
    Example: 1571672154

  - `external_updated_at` (integer)
    The time when the Custom Object instance was last updated in the external system it originated from.
    Example: 1571672154

  - `created_at` (integer)
    The time the attribute was created as a UTC Unix timestamp
    Example: 1671028894

  - `updated_at` (integer)
    The time the attribute was last updated as a UTC Unix timestamp
    Example: 1671028894

  - `type` (string)
    The identifier of the custom object type that defines the structure of the custom object instance.
    Example: Order

## Response 401 fields (application/json):

  - `type` (string, required)
    The type is error.list
    Example: error.list

  - `request_id` (string)
    Example: f93ecfa8-d08a-4325-8694-89aeb89c8f85

  - `errors` (array, required)
    An array of one or more error objects

  - `errors.code` (string, required)
    A string indicating the kind of error, used to further qualify the HTTP response code
    Example: unauthorized

  - `errors.message` (string)
    Optional. Human readable description of the error.
    Example: Access Token Invalid

  - `errors.field` (string)
    Optional. Used to identify a particular field or query parameter that was in error.
    Example: email

## Response 404 fields (application/json):

  - `type` (string, required)
    The type is error.list
    Example: error.list

  - `request_id` (string)
    Example: f93ecfa8-d08a-4325-8694-89aeb89c8f85

  - `errors` (array, required)
    An array of one or more error objects

  - `errors.code` (string, required)
    A string indicating the kind of error, used to further qualify the HTTP response code
    Example: unauthorized

  - `errors.message` (string)
    Optional. Human readable description of the error.
    Example: Access Token Invalid

  - `errors.field` (string)
    Optional. Used to identify a particular field or query parameter that was in error.
    Example: email

