openapi: 3.0.0
info:
  title: Unified.to CDP API
  version: "1.0"
  description: One API to Rule Them All
  contact:
    email: hello@unified.to
    url: https://unified.to/contact
  termsOfService: https://unified.to/tos
externalDocs:
  description: API Documentation
  url: https://docs.unified.to
tags:
  - name: unifiedapi
    description: Unified.to API
  - name: cdp
  - name: profile
  - name: segment
  - name: event
  - name: source
  - name: destination
  - name: activation
security:
  - jwt: []
servers:
  - url: https://api.unified.to
    description: North American data region
  - url: https://api-eu.unified.to
    description: European data region
  - url: https://api-au.unified.to
    description: Australian data region
components:
  securitySchemes:
    jwt:
      type: apiKey
      name: authorization
      in: header
  requestBodies:
    CdpProfile:
      required: true
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/CdpProfile"
    CdpSegment:
      required: true
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/CdpSegment"
    CdpEvent:
      required: true
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/CdpEvent"
    CdpSource:
      required: true
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/CdpSource"
    CdpDestination:
      required: true
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/CdpDestination"
    CdpActivation:
      required: true
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/CdpActivation"
  schemas:
    property_CdpProfile_address:
      type: object
      properties:
        address1:
          type: string
        address2:
          type: string
        city:
          type: string
        region:
          type: string
        region_code:
          type: string
        postal_code:
          type: string
        country:
          type: string
        country_code:
          type: string
      description: The address of the profile
    CdpIdentifier:
      type: object
      properties:
        type:
          type: string
          enum:
            - EMAIL
            - USER_ID
            - ANONYMOUS_ID
            - DEVICE_ID
            - PHONE
            - CRM_ID
            - LOYALTY_ID
            - OTHER
          x-speakeasy-unknown-values: allow
        value:
          type: string
        is_primary:
          type: boolean
        encoding:
          type: string
        source:
          type: string
      required:
        - value
    property_CdpProfile_identifiers:
      type: array
      items:
        $ref: "#/components/schemas/CdpIdentifier"
      description: The typed identifiers stitched to this profile
    CdpMetadata:
      type: object
      properties:
        id:
          type: string
        slug:
          type: string
        value:
          additionalProperties: true
          anyOf:
            - type: object
            - type: string
            - type: number
            - type: boolean
            - type: array
              items:
                anyOf:
                  - type: object
                  - type: string
                  - type: number
                  - type: boolean
        namespace:
          type: string
        format:
          type: string
          enum:
            - TEXT
            - NUMBER
            - DATE
            - BOOLEAN
            - ARRAY
            - OBJECT
          x-speakeasy-unknown-values: allow
        extra_data:
          additionalProperties: true
          anyOf:
            - type: object
            - type: string
            - type: number
            - type: boolean
            - type: array
              items:
                anyOf:
                  - type: object
                  - type: string
                  - type: number
                  - type: boolean
    property_CdpProfile_metadata:
      type: array
      items:
        $ref: "#/components/schemas/CdpMetadata"
      description: The traits/attributes of the profile
    CdpProfileSegment:
      type: object
      properties:
        segment_id:
          type: string
        name:
          type: string
        joined_at:
          type: string
          format: date-time
        expires_at:
          type: string
          format: date-time
    property_CdpProfile_segments:
      type: array
      items:
        $ref: "#/components/schemas/CdpProfileSegment"
      description: The segments/audiences this profile currently belongs to
    CdpConsent:
      type: object
      properties:
        purpose:
          type: string
        status:
          type: string
          enum:
            - GRANTED
            - DENIED
            - PENDING
          x-speakeasy-unknown-values: allow
        updated_at:
          type: string
          format: date-time
    property_CdpProfile_consent:
      type: array
      items:
        $ref: "#/components/schemas/CdpConsent"
      description: The consent/privacy preferences of the profile
    CdpProfile:
      type: object
      properties:
        id:
          type: string
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
        name:
          type: string
        first_name:
          type: string
        last_name:
          type: string
        email:
          type: string
        telephone:
          type: string
        gender:
          type: string
          enum:
            - MALE
            - FEMALE
            - INTERSEX
            - TRANS
            - NON_BINARY
          x-speakeasy-unknown-values: allow
        birthdate:
          type: string
        title:
          type: string
        company:
          type: string
        address:
          $ref: "#/components/schemas/property_CdpProfile_address"
        identifiers:
          $ref: "#/components/schemas/property_CdpProfile_identifiers"
        metadata:
          $ref: "#/components/schemas/property_CdpProfile_metadata"
        segments:
          $ref: "#/components/schemas/property_CdpProfile_segments"
        is_anonymous:
          type: boolean
        consent:
          $ref: "#/components/schemas/property_CdpProfile_consent"
        source_id:
          type: string
        raw:
          type: object
          additionalProperties: true
    CdpProfiles:
      type: array
      items:
        $ref: "#/components/schemas/CdpProfile"
    CdpSegment:
      type: object
      properties:
        id:
          type: string
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
        name:
          type: string
        slug:
          type: string
        description:
          type: string
        definition:
          type: string
        type:
          type: string
          enum:
            - USERS
            - ACCOUNTS
            - LINKED
          x-speakeasy-unknown-values: allow
        compute_mode:
          type: string
          enum:
            - REALTIME
            - BATCH
          x-speakeasy-unknown-values: allow
        size:
          type: number
        is_active:
          type: boolean
        source_id:
          type: string
        raw:
          type: object
          additionalProperties: true
    CdpSegments:
      type: array
      items:
        $ref: "#/components/schemas/CdpSegment"
    property_CdpEvent_identifiers:
      type: array
      items:
        $ref: "#/components/schemas/CdpIdentifier"
      description: The identifiers that link this event to a profile
    property_CdpEvent_metadata:
      type: array
      items:
        $ref: "#/components/schemas/CdpMetadata"
      description: The event payload/properties
    CdpEvent:
      type: object
      properties:
        id:
          type: string
        created_at:
          type: string
          format: date-time
        name:
          type: string
        type:
          type: string
          enum:
            - TRACK
            - PAGE
            - SCREEN
            - IDENTIFY
            - GROUP
            - ALIAS
          x-speakeasy-unknown-values: allow
        occurred_at:
          type: string
          format: date-time
        profile_id:
          type: string
        identifiers:
          $ref: "#/components/schemas/property_CdpEvent_identifiers"
        metadata:
          $ref: "#/components/schemas/property_CdpEvent_metadata"
        source:
          type: string
        source_id:
          type: string
        raw:
          type: object
          additionalProperties: true
    CdpEvents:
      type: array
      items:
        $ref: "#/components/schemas/CdpEvent"
    CdpSource:
      type: object
      properties:
        id:
          type: string
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
        name:
          type: string
        slug:
          type: string
        type:
          type: string
        direction:
          type: string
          enum:
            - SOURCE
            - DESTINATION
            - BIDIRECTIONAL
          x-speakeasy-unknown-values: allow
        is_enabled:
          type: boolean
        raw:
          type: object
          additionalProperties: true
    CdpSources:
      type: array
      items:
        $ref: "#/components/schemas/CdpSource"
    CdpDestination:
      type: object
      properties:
        id:
          type: string
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
        name:
          type: string
        slug:
          type: string
        type:
          type: string
        direction:
          type: string
          enum:
            - SOURCE
            - DESTINATION
            - BIDIRECTIONAL
          x-speakeasy-unknown-values: allow
        is_enabled:
          type: boolean
        raw:
          type: object
          additionalProperties: true
    CdpDestinations:
      type: array
      items:
        $ref: "#/components/schemas/CdpDestination"
    CdpActivation:
      type: object
      properties:
        id:
          type: string
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
        name:
          type: string
        segment_id:
          type: string
        destination_id:
          type: string
        source_id:
          type: string
        schedule:
          type: string
        status:
          type: string
          enum:
            - ACTIVE
            - PAUSED
            - ERROR
            - PENDING
          x-speakeasy-unknown-values: allow
        last_run_at:
          type: string
          format: date-time
        is_enabled:
          type: boolean
        raw:
          type: object
          additionalProperties: true
    CdpActivations:
      type: array
      items:
        $ref: "#/components/schemas/CdpActivation"
paths:
  /cdp/{connection_id}/profile:
    post:
      summary: Create a profile
      parameters:
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - first_name
                - last_name
                - email
                - telephone
                - gender
                - birthdate
                - title
                - company
                - address
                - identifiers
                - metadata
                - segments
                - is_anonymous
                - consent
                - source_id
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
      tags:
        - cdp
        - profile
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CdpProfile"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpProfile"
          description: Successful
      security:
        - jwt: []
      operationId: createCdpProfile
    get:
      summary: List all profiles
      parameters:
        - schema:
            type: number
          name: limit
          in: query
          required: false
        - schema:
            type: number
          name: offset
          in: query
          required: false
        - schema:
            type: string
          name: updated_gte
          in: query
          required: false
          description: Return only results whose updated date is equal or greater to this value (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
        - schema:
            type: string
          name: sort
          in: query
          required: false
        - schema:
            type: string
          name: order
          in: query
          required: false
        - schema:
            type: string
          name: query
          in: query
          required: false
          description: Query string to search. eg. email address or name
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - first_name
                - last_name
                - email
                - telephone
                - gender
                - birthdate
                - title
                - company
                - address
                - identifiers
                - metadata
                - segments
                - is_anonymous
                - consent
                - source_id
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
      tags:
        - cdp
        - profile
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpProfiles"
          description: Successful
      security:
        - jwt: []
      operationId: listCdpProfiles
  /cdp/{connection_id}/profile/{id}:
    get:
      summary: Retrieve a profile
      parameters:
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - first_name
                - last_name
                - email
                - telephone
                - gender
                - birthdate
                - title
                - company
                - address
                - identifiers
                - metadata
                - segments
                - is_anonymous
                - consent
                - source_id
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
        - schema:
            type: string
          description: ID of the Profile
          name: id
          in: path
          required: true
      tags:
        - cdp
        - profile
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpProfile"
          description: Successful
      security:
        - jwt: []
      operationId: getCdpProfile
    put:
      summary: Update a profile
      parameters:
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - first_name
                - last_name
                - email
                - telephone
                - gender
                - birthdate
                - title
                - company
                - address
                - identifiers
                - metadata
                - segments
                - is_anonymous
                - consent
                - source_id
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
        - schema:
            type: string
          description: ID of the Profile
          name: id
          in: path
          required: true
      tags:
        - cdp
        - profile
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CdpProfile"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpProfile"
          description: Successful
      security:
        - jwt: []
      operationId: updateCdpProfile
    patch:
      summary: Update a profile
      parameters:
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - first_name
                - last_name
                - email
                - telephone
                - gender
                - birthdate
                - title
                - company
                - address
                - identifiers
                - metadata
                - segments
                - is_anonymous
                - consent
                - source_id
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
        - schema:
            type: string
          description: ID of the Profile
          name: id
          in: path
          required: true
      tags:
        - cdp
        - profile
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CdpProfile"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpProfile"
          description: Successful
      security:
        - jwt: []
      operationId: patchCdpProfile
    delete:
      summary: Remove a profile
      parameters:
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
        - schema:
            type: string
          description: ID of the Profile
          name: id
          in: path
          required: true
      tags:
        - cdp
        - profile
      responses:
        "200":
          description: Successful
        default:
          headers:
            Content-Type:
              required: false
              schema:
                type: string
          content: {}
          description: Successful
      security:
        - jwt: []
      operationId: removeCdpProfile
  /cdp/{connection_id}/segment:
    post:
      summary: Create a segment
      parameters:
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - slug
                - description
                - definition
                - type
                - compute_mode
                - size
                - is_active
                - source_id
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
      tags:
        - cdp
        - segment
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CdpSegment"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpSegment"
          description: Successful
      security:
        - jwt: []
      operationId: createCdpSegment
    get:
      summary: List all segments
      parameters:
        - schema:
            type: number
          name: limit
          in: query
          required: false
        - schema:
            type: number
          name: offset
          in: query
          required: false
        - schema:
            type: string
          name: updated_gte
          in: query
          required: false
          description: Return only results whose updated date is equal or greater to this value (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
        - schema:
            type: string
          name: sort
          in: query
          required: false
        - schema:
            type: string
          name: order
          in: query
          required: false
        - schema:
            type: string
          name: query
          in: query
          required: false
          description: Query string to search. eg. email address or name
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - slug
                - description
                - definition
                - type
                - compute_mode
                - size
                - is_active
                - source_id
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
      tags:
        - cdp
        - segment
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpSegments"
          description: Successful
      security:
        - jwt: []
      operationId: listCdpSegments
  /cdp/{connection_id}/segment/{id}:
    get:
      summary: Retrieve a segment
      parameters:
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - slug
                - description
                - definition
                - type
                - compute_mode
                - size
                - is_active
                - source_id
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
        - schema:
            type: string
          description: ID of the Segment
          name: id
          in: path
          required: true
      tags:
        - cdp
        - segment
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpSegment"
          description: Successful
      security:
        - jwt: []
      operationId: getCdpSegment
    put:
      summary: Update a segment
      parameters:
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - slug
                - description
                - definition
                - type
                - compute_mode
                - size
                - is_active
                - source_id
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
        - schema:
            type: string
          description: ID of the Segment
          name: id
          in: path
          required: true
      tags:
        - cdp
        - segment
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CdpSegment"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpSegment"
          description: Successful
      security:
        - jwt: []
      operationId: updateCdpSegment
    patch:
      summary: Update a segment
      parameters:
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - slug
                - description
                - definition
                - type
                - compute_mode
                - size
                - is_active
                - source_id
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
        - schema:
            type: string
          description: ID of the Segment
          name: id
          in: path
          required: true
      tags:
        - cdp
        - segment
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CdpSegment"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpSegment"
          description: Successful
      security:
        - jwt: []
      operationId: patchCdpSegment
    delete:
      summary: Remove a segment
      parameters:
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
        - schema:
            type: string
          description: ID of the Segment
          name: id
          in: path
          required: true
      tags:
        - cdp
        - segment
      responses:
        "200":
          description: Successful
        default:
          headers:
            Content-Type:
              required: false
              schema:
                type: string
          content: {}
          description: Successful
      security:
        - jwt: []
      operationId: removeCdpSegment
  /cdp/{connection_id}/event:
    post:
      summary: Create an event
      parameters:
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - name
                - type
                - occurred_at
                - profile_id
                - identifiers
                - metadata
                - source
                - source_id
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
      tags:
        - cdp
        - event
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CdpEvent"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpEvent"
          description: Successful
      security:
        - jwt: []
      operationId: createCdpEvent
    get:
      summary: List all events
      parameters:
        - schema:
            type: number
          name: limit
          in: query
          required: false
        - schema:
            type: number
          name: offset
          in: query
          required: false
        - schema:
            type: string
          name: updated_gte
          in: query
          required: false
          description: Return only results whose updated date is equal or greater to this value (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
        - schema:
            type: string
          name: sort
          in: query
          required: false
        - schema:
            type: string
          name: order
          in: query
          required: false
        - schema:
            type: string
          name: query
          in: query
          required: false
          description: Query string to search. eg. email address or name
        - schema:
            type: string
          name: profile_id
          in: query
          required: false
          description: The profile ID to filter by
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - name
                - type
                - occurred_at
                - profile_id
                - identifiers
                - metadata
                - source
                - source_id
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
      tags:
        - cdp
        - event
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpEvents"
          description: Successful
      security:
        - jwt: []
      operationId: listCdpEvents
  /cdp/{connection_id}/event/{id}:
    get:
      summary: Retrieve an event
      parameters:
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - name
                - type
                - occurred_at
                - profile_id
                - identifiers
                - metadata
                - source
                - source_id
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
        - schema:
            type: string
          description: ID of the Event
          name: id
          in: path
          required: true
      tags:
        - cdp
        - event
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpEvent"
          description: Successful
      security:
        - jwt: []
      operationId: getCdpEvent
    put:
      summary: Update an event
      parameters:
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - name
                - type
                - occurred_at
                - profile_id
                - identifiers
                - metadata
                - source
                - source_id
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
        - schema:
            type: string
          description: ID of the Event
          name: id
          in: path
          required: true
      tags:
        - cdp
        - event
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CdpEvent"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpEvent"
          description: Successful
      security:
        - jwt: []
      operationId: updateCdpEvent
    patch:
      summary: Update an event
      parameters:
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - name
                - type
                - occurred_at
                - profile_id
                - identifiers
                - metadata
                - source
                - source_id
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
        - schema:
            type: string
          description: ID of the Event
          name: id
          in: path
          required: true
      tags:
        - cdp
        - event
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CdpEvent"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpEvent"
          description: Successful
      security:
        - jwt: []
      operationId: patchCdpEvent
    delete:
      summary: Remove an event
      parameters:
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
        - schema:
            type: string
          description: ID of the Event
          name: id
          in: path
          required: true
      tags:
        - cdp
        - event
      responses:
        "200":
          description: Successful
        default:
          headers:
            Content-Type:
              required: false
              schema:
                type: string
          content: {}
          description: Successful
      security:
        - jwt: []
      operationId: removeCdpEvent
  /cdp/{connection_id}/source:
    post:
      summary: Create a source
      parameters:
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - slug
                - type
                - direction
                - is_enabled
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
      tags:
        - cdp
        - source
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CdpSource"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpSource"
          description: Successful
      security:
        - jwt: []
      operationId: createCdpSource
    get:
      summary: List all sources
      parameters:
        - schema:
            type: number
          name: limit
          in: query
          required: false
        - schema:
            type: number
          name: offset
          in: query
          required: false
        - schema:
            type: string
          name: updated_gte
          in: query
          required: false
          description: Return only results whose updated date is equal or greater to this value (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
        - schema:
            type: string
          name: sort
          in: query
          required: false
        - schema:
            type: string
          name: order
          in: query
          required: false
        - schema:
            type: string
          name: query
          in: query
          required: false
          description: Query string to search. eg. email address or name
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - slug
                - type
                - direction
                - is_enabled
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
      tags:
        - cdp
        - source
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpSources"
          description: Successful
      security:
        - jwt: []
      operationId: listCdpSources
  /cdp/{connection_id}/source/{id}:
    get:
      summary: Retrieve a source
      parameters:
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - slug
                - type
                - direction
                - is_enabled
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
        - schema:
            type: string
          description: ID of the Source
          name: id
          in: path
          required: true
      tags:
        - cdp
        - source
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpSource"
          description: Successful
      security:
        - jwt: []
      operationId: getCdpSource
    put:
      summary: Update a source
      parameters:
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - slug
                - type
                - direction
                - is_enabled
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
        - schema:
            type: string
          description: ID of the Source
          name: id
          in: path
          required: true
      tags:
        - cdp
        - source
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CdpSource"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpSource"
          description: Successful
      security:
        - jwt: []
      operationId: updateCdpSource
    patch:
      summary: Update a source
      parameters:
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - slug
                - type
                - direction
                - is_enabled
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
        - schema:
            type: string
          description: ID of the Source
          name: id
          in: path
          required: true
      tags:
        - cdp
        - source
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CdpSource"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpSource"
          description: Successful
      security:
        - jwt: []
      operationId: patchCdpSource
    delete:
      summary: Remove a source
      parameters:
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
        - schema:
            type: string
          description: ID of the Source
          name: id
          in: path
          required: true
      tags:
        - cdp
        - source
      responses:
        "200":
          description: Successful
        default:
          headers:
            Content-Type:
              required: false
              schema:
                type: string
          content: {}
          description: Successful
      security:
        - jwt: []
      operationId: removeCdpSource
  /cdp/{connection_id}/destination:
    post:
      summary: Create a destination
      parameters:
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - slug
                - type
                - direction
                - is_enabled
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
      tags:
        - cdp
        - destination
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CdpDestination"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpDestination"
          description: Successful
      security:
        - jwt: []
      operationId: createCdpDestination
    get:
      summary: List all destinations
      parameters:
        - schema:
            type: number
          name: limit
          in: query
          required: false
        - schema:
            type: number
          name: offset
          in: query
          required: false
        - schema:
            type: string
          name: updated_gte
          in: query
          required: false
          description: Return only results whose updated date is equal or greater to this value (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
        - schema:
            type: string
          name: sort
          in: query
          required: false
        - schema:
            type: string
          name: order
          in: query
          required: false
        - schema:
            type: string
          name: query
          in: query
          required: false
          description: Query string to search. eg. email address or name
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - slug
                - type
                - direction
                - is_enabled
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
      tags:
        - cdp
        - destination
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpDestinations"
          description: Successful
      security:
        - jwt: []
      operationId: listCdpDestinations
  /cdp/{connection_id}/destination/{id}:
    get:
      summary: Retrieve a destination
      parameters:
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - slug
                - type
                - direction
                - is_enabled
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
        - schema:
            type: string
          description: ID of the Destination
          name: id
          in: path
          required: true
      tags:
        - cdp
        - destination
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpDestination"
          description: Successful
      security:
        - jwt: []
      operationId: getCdpDestination
    put:
      summary: Update a destination
      parameters:
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - slug
                - type
                - direction
                - is_enabled
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
        - schema:
            type: string
          description: ID of the Destination
          name: id
          in: path
          required: true
      tags:
        - cdp
        - destination
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CdpDestination"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpDestination"
          description: Successful
      security:
        - jwt: []
      operationId: updateCdpDestination
    patch:
      summary: Update a destination
      parameters:
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - slug
                - type
                - direction
                - is_enabled
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
        - schema:
            type: string
          description: ID of the Destination
          name: id
          in: path
          required: true
      tags:
        - cdp
        - destination
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CdpDestination"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpDestination"
          description: Successful
      security:
        - jwt: []
      operationId: patchCdpDestination
    delete:
      summary: Remove a destination
      parameters:
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
        - schema:
            type: string
          description: ID of the Destination
          name: id
          in: path
          required: true
      tags:
        - cdp
        - destination
      responses:
        "200":
          description: Successful
        default:
          headers:
            Content-Type:
              required: false
              schema:
                type: string
          content: {}
          description: Successful
      security:
        - jwt: []
      operationId: removeCdpDestination
  /cdp/{connection_id}/activation:
    post:
      summary: Create an activation
      parameters:
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - segment_id
                - destination_id
                - source_id
                - schedule
                - status
                - last_run_at
                - is_enabled
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
      tags:
        - cdp
        - activation
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CdpActivation"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpActivation"
          description: Successful
      security:
        - jwt: []
      operationId: createCdpActivation
    get:
      summary: List all activations
      parameters:
        - schema:
            type: number
          name: limit
          in: query
          required: false
        - schema:
            type: number
          name: offset
          in: query
          required: false
        - schema:
            type: string
          name: updated_gte
          in: query
          required: false
          description: Return only results whose updated date is equal or greater to this value (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
        - schema:
            type: string
          name: sort
          in: query
          required: false
        - schema:
            type: string
          name: order
          in: query
          required: false
        - schema:
            type: string
          name: query
          in: query
          required: false
          description: Query string to search. eg. email address or name
        - schema:
            type: string
          name: segment_id
          in: query
          required: false
          description: The segment ID to filter by
        - schema:
            type: string
          name: destination_id
          in: query
          required: false
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - segment_id
                - destination_id
                - source_id
                - schedule
                - status
                - last_run_at
                - is_enabled
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
      tags:
        - cdp
        - activation
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpActivations"
          description: Successful
      security:
        - jwt: []
      operationId: listCdpActivations
  /cdp/{connection_id}/activation/{id}:
    get:
      summary: Retrieve an activation
      parameters:
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - segment_id
                - destination_id
                - source_id
                - schedule
                - status
                - last_run_at
                - is_enabled
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
        - schema:
            type: string
          description: ID of the Activation
          name: id
          in: path
          required: true
      tags:
        - cdp
        - activation
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpActivation"
          description: Successful
      security:
        - jwt: []
      operationId: getCdpActivation
    put:
      summary: Update an activation
      parameters:
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - segment_id
                - destination_id
                - source_id
                - schedule
                - status
                - last_run_at
                - is_enabled
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
        - schema:
            type: string
          description: ID of the Activation
          name: id
          in: path
          required: true
      tags:
        - cdp
        - activation
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CdpActivation"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpActivation"
          description: Successful
      security:
        - jwt: []
      operationId: updateCdpActivation
    patch:
      summary: Update an activation
      parameters:
        - schema:
            type: array
            items:
              type: string
              enum:
                - id
                - created_at
                - updated_at
                - name
                - segment_id
                - destination_id
                - source_id
                - schedule
                - status
                - last_run_at
                - is_enabled
                - raw
          name: fields
          in: query
          required: false
          description: Fields to return
        - schema:
            type: string
          name: raw
          in: query
          required: false
          description: "Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters: foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar"
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
        - schema:
            type: string
          description: ID of the Activation
          name: id
          in: path
          required: true
      tags:
        - cdp
        - activation
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CdpActivation"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CdpActivation"
          description: Successful
      security:
        - jwt: []
      operationId: patchCdpActivation
    delete:
      summary: Remove an activation
      parameters:
        - schema:
            type: string
          description: ID of the connection
          name: connection_id
          in: path
          required: true
        - schema:
            type: string
          description: ID of the Activation
          name: id
          in: path
          required: true
      tags:
        - cdp
        - activation
      responses:
        "200":
          description: Successful
        default:
          headers:
            Content-Type:
              required: false
              schema:
                type: string
          content: {}
          description: Successful
      security:
        - jwt: []
      operationId: removeCdpActivation
