Unify Object Records API

The Object Records API from Unify — 4 operation(s) for object records.

OpenAPI Specification

unify-object-records-api-openapi.yml Raw ↑
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