Unify Object Records API
The Object Records API from Unify — 4 operation(s) for object records.
The Object Records API from Unify — 4 operation(s) for object records.
openapi: 3.1.0
info:
title: Unify Analytics Events Object Records API
summary: Send website and product analytics data into the Unify platform.
version: '1'
termsOfService: https://www.unifygtm.com/legal/terms-and-conditions
contact:
name: Unify Support
url: https://www.unifygtm.com/support
email: support@unifygtm.com
servers:
- url: https://api.unifyintent.com/analytics/v1
variables: {}
security:
- BasicAuth: []
tags:
- name: Object Records
paths:
/objects/{object_name}/records:
get:
operationId: list_object_records
parameters:
- name: object_name
in: path
required: true
schema:
$ref: '#/components/schemas/UObjects.UObjectName'
- name: limit
in: query
required: false
description: Limit the number of records returned. Default is 100.
schema:
type: integer
minimum: 1
maximum: 1000
explode: false
- name: cursor
in: query
required: false
description: Cursor from the previous response to resume pagination from.
schema:
type: string
explode: false
responses:
'200':
description: Response for a successful list operation with cursor-based pagination.
content:
application/json:
schema:
type: object
required:
- status
- data
- cursor
properties:
status:
type: string
enum:
- success
data:
type: array
items:
type: object
required:
- object
- id
- created_at
- updated_at
- attributes
properties:
object:
type: string
description: The API name of the object this record is an instance of.
readOnly: true
id:
allOf:
- $ref: '#/components/schemas/UValues.UUuid'
description: Unique UUID identifier for the record.
readOnly: true
created_at:
type: string
format: date-time
description: Date and time the record was created.
readOnly: true
updated_at:
type: string
format: date-time
description: Date and time the record was last updated.
readOnly: true
attributes:
type: object
unevaluatedProperties:
anyOf:
- $ref: '#/components/schemas/UValues.UValue'
- type: 'null'
description: 'Attribute values for the record. Each key is the API name of the attribute
and each value is the corresponding attribute value for the record.'
cursor:
anyOf:
- $ref: '#/components/schemas/UValues.UUuid'
- type: 'null'
description: Response for a successful list operation with cursor-based pagination.
'400':
description: Response for any operation that results in a bad request error.
content:
application/json:
schema:
type: object
required:
- status
properties:
status:
type: string
enum:
- bad_request
errors:
type: array
items:
$ref: '#/components/schemas/UResponses.BadRequestError'
message:
type: string
description: Response for any operation that results in a bad request error.
'401':
description: Response for any operation that results in an unauthorized error.
content:
application/json:
schema:
type: object
required:
- status
- message
properties:
status:
type: string
enum:
- unauthorized
message:
type: string
description: Response for any operation that results in an unauthorized error.
'404':
description: Response for any operation that results in a not found error.
content:
application/json:
schema:
type: object
required:
- status
- message
properties:
status:
type: string
enum:
- object_not_found
message:
type: string
description: Response for any operation that results in a not found error.
'500':
description: Response for any operation that results in an internal server error.
content:
application/json:
schema:
type: object
required:
- status
- message
properties:
status:
type: string
enum:
- error
message:
type: string
description: Response for any operation that results in an internal server error.
tags:
- Object Records
post:
operationId: create_object_record
parameters:
- name: object_name
in: path
required: true
schema:
$ref: '#/components/schemas/UObjects.UObjectName'
- name: validation_mode
in: query
required: false
schema:
$ref: '#/components/schemas/ValidationMode'
explode: false
responses:
'201':
description: Response for a successful create operation.
content:
application/json:
schema:
type: object
required:
- status
- data
properties:
status:
type: string
enum:
- success
data:
type: object
required:
- object
- id
- created_at
- updated_at
- attributes
properties:
object:
type: string
description: The API name of the object this record is an instance of.
readOnly: true
id:
allOf:
- $ref: '#/components/schemas/UValues.UUuid'
description: Unique UUID identifier for the record.
readOnly: true
created_at:
type: string
format: date-time
description: Date and time the record was created.
readOnly: true
updated_at:
type: string
format: date-time
description: Date and time the record was last updated.
readOnly: true
attributes:
type: object
unevaluatedProperties:
anyOf:
- $ref: '#/components/schemas/UValues.UValue'
- type: 'null'
description: 'Attribute values for the record. Each key is the API name of the attribute
and each value is the corresponding attribute value for the record.'
description: Response for a successful create operation.
'400':
description: Response for any operation that results in a bad request error.
content:
application/json:
schema:
type: object
required:
- status
properties:
status:
type: string
enum:
- bad_request
- record_missing_required_field
- referenced_record_not_found
errors:
type: array
items:
$ref: '#/components/schemas/UResponses.BadRequestError'
message:
type: string
description: Response for any operation that results in a bad request error.
'401':
description: Response for any operation that results in an unauthorized error.
content:
application/json:
schema:
type: object
required:
- status
- message
properties:
status:
type: string
enum:
- unauthorized
message:
type: string
description: Response for any operation that results in an unauthorized error.
'404':
description: Response for any operation that results in a not found error.
content:
application/json:
schema:
type: object
required:
- status
- message
properties:
status:
type: string
enum:
- object_not_found
message:
type: string
description: Response for any operation that results in a not found error.
'409':
description: Response for any operation that results in a conflict error.
content:
application/json:
schema:
type: object
required:
- status
- message
properties:
status:
type: string
enum:
- record_conflict
message:
type: string
description: Response for any operation that results in a conflict error.
'500':
description: Response for any operation that results in an internal server error.
content:
application/json:
schema:
type: object
required:
- status
- message
properties:
status:
type: string
enum:
- error
message:
type: string
description: Response for any operation that results in an internal server error.
'503':
description: Response for any operation that results in service unavailability.
content:
application/json:
schema:
type: object
required:
- status
- message
properties:
status:
type: string
enum:
- service_unavailable
message:
type: string
description: Response for any operation that results in service unavailability.
tags:
- Object Records
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateRecordRequest'
/objects/{object_name}/records/find-unique:
post:
operationId: find_unique_object_record
parameters:
- name: object_name
in: path
required: true
schema:
$ref: '#/components/schemas/UObjects.UObjectName'
responses:
'200':
description: Response for a successful get operation.
content:
application/json:
schema:
type: object
required:
- status
- data
properties:
status:
type: string
enum:
- success
data:
anyOf:
- type: object
required:
- object
- id
- created_at
- updated_at
- attributes
properties:
object:
type: string
description: The API name of the object this record is an instance of.
readOnly: true
id:
allOf:
- $ref: '#/components/schemas/UValues.UUuid'
description: Unique UUID identifier for the record.
readOnly: true
created_at:
type: string
format: date-time
description: Date and time the record was created.
readOnly: true
updated_at:
type: string
format: date-time
description: Date and time the record was last updated.
readOnly: true
attributes:
type: object
unevaluatedProperties:
anyOf:
- $ref: '#/components/schemas/UValues.UValue'
- type: 'null'
description: 'Attribute values for the record. Each key is the API name of the attribute
and each value is the corresponding attribute value for the record.'
- type: 'null'
description: Response for a successful get operation.
'400':
description: Response for any operation that results in a bad request error.
content:
application/json:
schema:
type: object
required:
- status
properties:
status:
type: string
enum:
- bad_request
errors:
type: array
items:
$ref: '#/components/schemas/UResponses.BadRequestError'
message:
type: string
description: Response for any operation that results in a bad request error.
'401':
description: Response for any operation that results in an unauthorized error.
content:
application/json:
schema:
type: object
required:
- status
- message
properties:
status:
type: string
enum:
- unauthorized
message:
type: string
description: Response for any operation that results in an unauthorized error.
'404':
description: Response for any operation that results in a not found error.
content:
application/json:
schema:
type: object
required:
- status
- message
properties:
status:
type: string
enum:
- object_not_found
message:
type: string
description: Response for any operation that results in a not found error.
'500':
description: Response for any operation that results in an internal server error.
content:
application/json:
schema:
type: object
required:
- status
- message
properties:
status:
type: string
enum:
- error
message:
type: string
description: Response for any operation that results in an internal server error.
tags:
- Object Records
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/FindUniqueRecordRequest'
/objects/{object_name}/records/upsert:
post:
operationId: upsert_object_record
parameters:
- name: object_name
in: path
required: true
schema:
$ref: '#/components/schemas/UObjects.UObjectName'
- name: validation_mode
in: query
required: false
schema:
$ref: '#/components/schemas/ValidationMode'
explode: false
responses:
'200':
description: Response for a successful update operation.
content:
application/json:
schema:
type: object
required:
- status
- data
properties:
status:
type: string
enum:
- success
data:
type: object
required:
- object
- id
- created_at
- updated_at
- attributes
properties:
object:
type: string
description: The API name of the object this record is an instance of.
readOnly: true
id:
allOf:
- $ref: '#/components/schemas/UValues.UUuid'
description: Unique UUID identifier for the record.
readOnly: true
created_at:
type: string
format: date-time
description: Date and time the record was created.
readOnly: true
updated_at:
type: string
format: date-time
description: Date and time the record was last updated.
readOnly: true
attributes:
type: object
unevaluatedProperties:
anyOf:
- $ref: '#/components/schemas/UValues.UValue'
- type: 'null'
description: 'Attribute values for the record. Each key is the API name of the attribute
and each value is the corresponding attribute value for the record.'
description: Response for a successful update operation.
'400':
description: Response for any operation that results in a bad request error.
content:
application/json:
schema:
type: object
required:
- status
properties:
status:
type: string
enum:
- bad_request
- record_missing_required_field
- referenced_record_not_found
errors:
type: array
items:
$ref: '#/components/schemas/UResponses.BadRequestError'
message:
type: string
description: Response for any operation that results in a bad request error.
'401':
description: Response for any operation that results in an unauthorized error.
content:
application/json:
schema:
type: object
required:
- status
- message
properties:
status:
type: string
enum:
- unauthorized
message:
type: string
description: Response for any operation that results in an unauthorized error.
'404':
description: Response for any operation that results in a not found error.
content:
application/json:
schema:
type: object
required:
- status
- message
properties:
status:
type: string
enum:
- object_not_found
message:
type: string
description: Response for any operation that results in a not found error.
'409':
description: Response for any operation that results in a conflict error.
content:
application/json:
schema:
type: object
required:
- status
- message
properties:
status:
type: string
enum:
- record_conflict
message:
type: string
description: Response for any operation that results in a conflict error.
'500':
description: Response for any operation that results in an internal server error.
content:
application/json:
schema:
type: object
required:
- status
- message
properties:
status:
type: string
enum:
- error
message:
type: string
description: Response for any operation that results in an internal server error.
'503':
description: Response for any operation that results in service unavailability.
content:
application/json:
schema:
type: object
required:
- status
- message
properties:
status:
type: string
enum:
- service_unavailable
message:
type: string
description: Response for any operation that results in service unavailability.
tags:
- Object Records
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpsertRecordRequest'
/objects/{object_name}/records/{record_id}:
get:
operationId: get_object_record
parameters:
- name: object_name
in: path
required: true
schema:
$ref: '#/components/schemas/UObjects.UObjectName'
- name: record_id
in: path
required: true
schema:
type: string
responses:
'200':
description: Response for a successful get operation.
content:
application/json:
schema:
type: object
required:
- status
- data
properties:
status:
type: string
enum:
- success
data:
type: object
required:
- object
- id
- created_at
- updated_at
- attributes
properties:
object:
type: string
description: The API name of the object this record is an instance of.
readOnly: true
id:
allOf:
- $ref: '#/components/schemas/UValues.UUuid'
description: Unique UUID identifier for the record.
readOnly: true
created_at:
type: string
format: date-time
description: Date and time the record was created.
readOnly: true
updated_at:
type: string
format: date-time
description: Date and time the record was last updated.
readOnly: true
attributes:
type: object
unevaluatedProperties:
anyOf:
- $ref: '#/components/schemas/UValues.UValue'
- type: 'null'
description: 'Attribute values for the record. Each key is the API name of the attribute
and each value is the corresponding attribute value for the record.'
description: Response for a successful get operation.
'400':
description: Response for any operation that results in a bad request error.
content:
application/json:
schema:
type: object
required:
- status
properties:
status:
type: string
enum:
- bad_request
errors:
type: array
items:
$ref: '#/components/schemas/UResponses.BadRequestError'
message:
type: string
description: Response for any operation that results in a bad request error.
'401':
description: Response for any operation that results in an unauthorized error.
content:
application/json:
schema:
type: object
required:
- status
- message
properties:
status:
type: string
enum:
- unauthorized
message:
type: string
description: Response for any operation that results in an unauthorized error.
'404':
description: Response for any operation that results in a not found error.
content:
application/json:
schema:
type: object
required:
- status
- message
properties:
status:
type: string
enum:
- object_not_found
- record_not_found
message:
type: string
description: Response for any operation that results in a not found error.
'500':
description: Response for any operation that results in an internal server error.
content:
application/json:
schema:
type: object
required:
- status
- message
properties:
status:
type: string
enum:
- error
message:
type: string
description: Response for any operation that results in an internal server error.
tags:
- Object Records
patch:
operationId: update_object_record
parameters:
- name: object_name
in: path
required: true
schema:
$ref: '#/components/schemas/UObjects.UObjectName'
- name: record_id
in: path
required: true
schema:
type: string
- name: validation_mode
in: query
required: false
schema:
$ref: '#/components/schemas/ValidationMode'
explode: false
responses:
'200':
description: Response for a successful update operation.
content:
application/json:
schema:
type: object
required:
- status
- data
properties:
status:
type: string
enum:
- success
data:
type: object
required:
- object
- id
- created_at
- updated_at
- attributes
properties:
object:
type: string
description: The API name of the object this record is an instance of.
readOnly: true
id:
allOf:
- $ref: '#/components/schemas/UValues.UUuid'
description: Unique UUID identifier for the record.
readOnly: true
created_at:
type: string
format: date-time
description: Date and time the record was created.
readOnly: true
updated_at:
type: string
format: date-time
description: Date and time the record was last updated.
readOnly: true
attributes:
type: object
unevaluatedProperties:
anyOf:
- $ref: '#/components/schemas/UValues.UValue'
- type: 'null'
description: 'Attribute values for the record. Each key is the API name of the attribute
and each value is the corresponding attribute value for the record.'
description: Response for a successful update operation.
'400':
description: Response for any operation that results in a bad request error.
content:
application/json:
schema:
type: object
required:
- status
properties:
status:
type: string
enum:
- bad_request
- record_missing_required_field
- referenced_record_not_found
errors:
type: array
items:
$ref: '#/components/schemas/UResponses.BadRequestError'
message:
type: string
description: Response for any operation that results in a bad request error.
'401':
# --- truncated at 32 KB (56 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/unify/refs/heads/main/openapi/unify-object-records-api-openapi.yml