Permutive V1 API

The v1 API from Permutive — 5 operation(s) for v1.

Operations 11

GET /imports Get all 2nd party data imports #
GET /imports/{importId} Retrieves an import #
GET /imports/{importId}/segments Get all segments for an import. #
POST /imports/{importId}/segments Creates a segment for an import. #
PATCH /imports/{importId}/segments Batch update operations. #
GET /imports/{importId}/segments/{segmentId} Retrieves a single segment by its public ID for an import. #
DELETE /imports/{importId}/segments/{segmentId} Deletes a segment by its code for an import #
PATCH /imports/{importId}/segments/{segmentId} Updates a segment by its public ID for an import #
GET /imports/{importId}/segments/code/{segmentCode} Retrieves a single segment by its code for an import. #
DELETE /imports/{importId}/segments/code/{segmentCode} Deletes a segment by its public ID for an import #
PATCH /imports/{importId}/segments/code/{segmentCode} Updates a segment by its code for an import #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/permutive-v1-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

permutive-v1-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Taxonomy V1 API
  version: v1
servers:
- url: https://api.permutive.app/audience-api/v1
tags:
- name: v1
paths:
  /imports:
    get:
      tags:
      - v1
      summary: Get all 2nd party data imports
      operationId: getImports
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WrappedResponse_Import_DataSource'
              example:
                items:
                - id: ef832310-b808-44f4-86bc-947be1cd37c7
                  name: Data Provider Name
                  code: data_provider_name
                  relation: 3rd
                  identifiers:
                  - appnexus
                  inheritance:
                    workspace_id: 5de2731c-8dcf-4e12-a815-e58b481bd8ac
                    relation: ancestor
                  source:
                    id: f93e5c65-7b2e-4c38-b721-3beb93e4f877
                    state:
                      type: active
                    type: live_ramp_3p
        default:
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HttpErrorResponse'
  /imports/{importId}:
    get:
      tags:
      - v1
      summary: Retrieves an import
      operationId: getImportsImportid
      parameters:
      - name: importId
        in: path
        description: Import ID
        required: true
        schema:
          type: string
          format: uuid
        example: 32f8e031-c532-41bb-b25e-65bdb677a96f
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Import_DataSource'
              example:
                id: ef832310-b808-44f4-86bc-947be1cd37c7
                name: Data Provider Name
                code: data_provider_name
                relation: 3rd
                identifiers:
                - appnexus
                inheritance:
                  workspace_id: 5de2731c-8dcf-4e12-a815-e58b481bd8ac
                  relation: ancestor
                source:
                  id: f93e5c65-7b2e-4c38-b721-3beb93e4f877
                  state:
                    type: active
                  type: live_ramp_3p
        '400':
          description: 'Invalid value for: path parameter importId'
          content:
            text/plain:
              schema:
                type: string
        default:
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HttpErrorResponse'
  /imports/{importId}/segments:
    get:
      tags:
      - v1
      summary: Get all segments for an import.
      description: Retrieves all segments for an import. This is a paginated endpoint and takes an optional pagination token as a query parameter. If no token is provided then it retrieves the first page of results.
      operationId: getImportsImportidSegments
      parameters:
      - name: importId
        in: path
        description: Import ID
        required: true
        schema:
          type: string
          format: uuid
        example: 32f8e031-c532-41bb-b25e-65bdb677a96f
      - name: pagination_token
        in: query
        description: Pagination Token
        required: false
        schema:
          type: string
        examples:
          '123':
            value: MTIzNA==
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedResponse_Segment'
              example:
                elements:
                - id: 1b890475-1482-496d-bcfd-6b2f5564b249
                  code: '1234'
                  name: Segment Name
                  import_id: 9f87bd3e-32eb-4d15-8e85-17fb275fa809
                  description: segment description
                  cpm: 2
                  categories:
                  - category_1
                  updated_at: '2023-04-12T11:27:00.716632Z'
                pagination:
                  next_token: MTIzNA==
                  total_count: 5
        '400':
          description: 'Invalid value for: path parameter importId, Invalid value for: query parameter pagination_token'
          content:
            text/plain:
              schema:
                type: string
        default:
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HttpErrorResponse'
    post:
      tags:
      - v1
      summary: Creates a segment for an import.
      operationId: postImportsImportidSegments
      parameters:
      - name: importId
        in: path
        description: Import ID
        required: true
        schema:
          type: string
          format: uuid
        example: 32f8e031-c532-41bb-b25e-65bdb677a96f
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SegmentCreate'
            example:
              name: segment
              code: '1234'
              description: segment description
              cpm: 2
              categories:
              - category1
        required: true
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Segment'
        '400':
          description: 'Invalid value for: path parameter importId, Invalid value for: body'
          content:
            text/plain:
              schema:
                type: string
        default:
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HttpErrorResponse'
    patch:
      tags:
      - v1
      summary: Batch update operations.
      description: Note that operation order is not guaranteed. No more than 5,000 operations can be contained in a batch.
      operationId: patchImportsImportidSegments
      parameters:
      - name: importId
        in: path
        description: Import ID
        required: true
        schema:
          type: string
          format: uuid
        example: 32f8e031-c532-41bb-b25e-65bdb677a96f
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BatchRequest'
            example:
              operations:
              - data:
                  name: segment
                  code: '1234'
                  description: segment description
                  cpm: 2
                  categories:
                  - category1
                operation: Create
              - code: '12345'
                operation: Delete
              - code: '1234'
                data:
                  name: segment
                  description: segment description
                  cpm: 2
                  categories:
                  - category1
                operation: Update
        required: true
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WrappedResponse_Segment'
              example:
                items:
                - id: 1b890475-1482-496d-bcfd-6b2f5564b249
                  code: '1234'
                  name: Segment Name
                  import_id: 9f87bd3e-32eb-4d15-8e85-17fb275fa809
                  description: segment description
                  cpm: 2
                  categories:
                  - category_1
                  updated_at: '2023-04-12T11:27:00.716632Z'
        '400':
          description: 'Invalid value for: path parameter importId, Invalid value for: body'
          content:
            text/plain:
              schema:
                type: string
        default:
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HttpErrorResponse'
  /imports/{importId}/segments/{segmentId}:
    get:
      tags:
      - v1
      summary: Retrieves a single segment by its public ID for an import.
      description: Retrieves a single segment for a given import. The segment is identified by its globally unique public ID (UUID)
      operationId: getImportsImportidSegmentsSegmentid
      parameters:
      - name: importId
        in: path
        description: Import ID
        required: true
        schema:
          type: string
          format: uuid
        example: 32f8e031-c532-41bb-b25e-65bdb677a96f
      - name: segmentId
        in: path
        description: Segment ID
        required: true
        schema:
          type: string
          format: uuid
        example: 1b890475-1482-496d-bcfd-6b2f5564b249
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Segment'
              example:
                id: 1b890475-1482-496d-bcfd-6b2f5564b249
                code: '1234'
                name: Segment Name
                import_id: 9f87bd3e-32eb-4d15-8e85-17fb275fa809
                description: segment description
                cpm: 2
                categories:
                - category_1
                updated_at: '2023-04-12T11:27:00.716632Z'
        '400':
          description: 'Invalid value for: path parameter importId, Invalid value for: path parameter segmentId'
          content:
            text/plain:
              schema:
                type: string
        default:
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HttpErrorResponse'
    delete:
      tags:
      - v1
      summary: Deletes a segment by its code for an import
      description: Deletes a segment for an import. The segment is identified by its code.
      operationId: deleteImportsImportidSegmentsSegmentid
      parameters:
      - name: importId
        in: path
        description: Import ID
        required: true
        schema:
          type: string
          format: uuid
        example: 32f8e031-c532-41bb-b25e-65bdb677a96f
      - name: segmentId
        in: path
        description: Segment ID
        required: true
        schema:
          type: string
          format: uuid
        example: 1b890475-1482-496d-bcfd-6b2f5564b249
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Segment'
              example:
                id: 1b890475-1482-496d-bcfd-6b2f5564b249
                code: '1234'
                name: Segment Name
                import_id: 9f87bd3e-32eb-4d15-8e85-17fb275fa809
                description: segment description
                cpm: 2
                categories:
                - category_1
                updated_at: '2023-04-12T11:27:00.716632Z'
        '400':
          description: 'Invalid value for: path parameter importId, Invalid value for: path parameter segmentId'
          content:
            text/plain:
              schema:
                type: string
        default:
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HttpErrorResponse'
    patch:
      tags:
      - v1
      summary: Updates a segment by its public ID for an import
      description: Updates a segment for an import. The segment is identified by its globally unique public ID.
      operationId: patchImportsImportidSegmentsSegmentid
      parameters:
      - name: importId
        in: path
        description: Import ID
        required: true
        schema:
          type: string
          format: uuid
        example: 32f8e031-c532-41bb-b25e-65bdb677a96f
      - name: segmentId
        in: path
        description: Segment ID
        required: true
        schema:
          type: string
          format: uuid
        example: 1b890475-1482-496d-bcfd-6b2f5564b249
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SegmentUpdate'
            example:
              name: segment
              description: segment description
              cpm: 2
              categories:
              - category1
        required: true
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Segment'
              example:
                id: 1b890475-1482-496d-bcfd-6b2f5564b249
                code: '1234'
                name: Segment Name
                import_id: 9f87bd3e-32eb-4d15-8e85-17fb275fa809
                description: segment description
                cpm: 2
                categories:
                - category_1
                updated_at: '2023-04-12T11:27:00.716632Z'
        '400':
          description: 'Invalid value for: path parameter importId, Invalid value for: path parameter segmentId, Invalid value for: body'
          content:
            text/plain:
              schema:
                type: string
        default:
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HttpErrorResponse'
  /imports/{importId}/segments/code/{segmentCode}:
    get:
      tags:
      - v1
      summary: Retrieves a single segment by its code for an import.
      description: Retrieves a single segment for a given import. The segment is identified by its code.
      operationId: getImportsImportidSegmentsCodeSegmentcode
      parameters:
      - name: importId
        in: path
        description: Import ID
        required: true
        schema:
          type: string
          format: uuid
        example: 32f8e031-c532-41bb-b25e-65bdb677a96f
      - name: segmentCode
        in: path
        description: Segment Code
        required: true
        schema:
          type: string
        example: code
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Segment'
              example:
                id: 1b890475-1482-496d-bcfd-6b2f5564b249
                code: '1234'
                name: Segment Name
                import_id: 9f87bd3e-32eb-4d15-8e85-17fb275fa809
                description: segment description
                cpm: 2
                categories:
                - category_1
                updated_at: '2023-04-12T11:27:00.716632Z'
        '400':
          description: 'Invalid value for: path parameter importId'
          content:
            text/plain:
              schema:
                type: string
        default:
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HttpErrorResponse'
    delete:
      tags:
      - v1
      summary: Deletes a segment by its public ID for an import
      description: Deletes a segment for an import. The segment is identified by its globally unique public ID.
      operationId: deleteImportsImportidSegmentsCodeSegmentcode
      parameters:
      - name: importId
        in: path
        description: Import ID
        required: true
        schema:
          type: string
          format: uuid
        example: 32f8e031-c532-41bb-b25e-65bdb677a96f
      - name: segmentCode
        in: path
        description: Segment Code
        required: true
        schema:
          type: string
        example: code
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Segment'
              example:
                id: 1b890475-1482-496d-bcfd-6b2f5564b249
                code: '1234'
                name: Segment Name
                import_id: 9f87bd3e-32eb-4d15-8e85-17fb275fa809
                description: segment description
                cpm: 2
                categories:
                - category_1
                updated_at: '2023-04-12T11:27:00.716632Z'
        '400':
          description: 'Invalid value for: path parameter importId'
          content:
            text/plain:
              schema:
                type: string
        default:
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HttpErrorResponse'
    patch:
      tags:
      - v1
      summary: Updates a segment by its code for an import
      description: Updates a segment for an import. The segment is identified by its code.
      operationId: patchImportsImportidSegmentsCodeSegmentcode
      parameters:
      - name: importId
        in: path
        description: Import ID
        required: true
        schema:
          type: string
          format: uuid
        example: 32f8e031-c532-41bb-b25e-65bdb677a96f
      - name: segmentCode
        in: path
        description: Segment Code
        required: true
        schema:
          type: string
        example: code
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SegmentUpdate'
            example:
              name: segment
              description: segment description
              cpm: 2
              categories:
              - category1
        required: true
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Segment'
              example:
                id: 1b890475-1482-496d-bcfd-6b2f5564b249
                code: '1234'
                name: Segment Name
                import_id: 9f87bd3e-32eb-4d15-8e85-17fb275fa809
                description: segment description
                cpm: 2
                categories:
                - category_1
                updated_at: '2023-04-12T11:27:00.716632Z'
        '400':
          description: 'Invalid value for: path parameter importId, Invalid value for: body'
          content:
            text/plain:
              schema:
                type: string
        default:
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HttpErrorResponse'
components:
  schemas:
    BadOrigin:
      type: object
      properties:
        c:
          type: string
        d:
          $ref: '#/components/schemas/JsonObject'
    Updating1:
      required:
      - bucket
      - permissions
      type: object
      properties:
        bucket:
          type: string
        permissions:
          $ref: '#/components/schemas/Permissions'
    InvalidAPIKey:
      type: object
      properties:
        c:
          type: string
        d:
          $ref: '#/components/schemas/JsonObject'
    BatchOperation:
      oneOf:
      - $ref: '#/components/schemas/Create'
      - $ref: '#/components/schemas/Delete'
      - $ref: '#/components/schemas/Update'
    ValidationError:
      type: object
      properties:
        c:
          type: string
        d:
          $ref: '#/components/schemas/JsonObject'
    Ancestor:
      required:
      - workspaceId
      type: object
      properties:
        workspaceId:
          type: string
          format: uuid
    AlreadyExists:
      type: object
      properties:
        c:
          type: string
        d:
          $ref: '#/components/schemas/JsonObject'
    Second:
      type: object
    UnspecifiedInternalError:
      type: object
      properties:
        c:
          type: string
        d:
          $ref: '#/components/schemas/JsonObject'
    LiveRamp3P:
      type: object
    Inheritance:
      oneOf:
      - $ref: '#/components/schemas/Ancestor'
    DoesNotExist:
      type: object
      properties:
        c:
          type: string
        d:
          $ref: '#/components/schemas/JsonObject'
    UnknownError:
      required:
      - s
      - co
      - m
      type: object
      properties:
        s:
          $ref: '#/components/schemas/HttpStatus'
        co:
          type: integer
          format: int32
        m:
          type: string
        c:
          type: string
        d:
          $ref: '#/components/schemas/JsonObject'
    User:
      required:
      - id
      type: object
      properties:
        id:
          type: string
    Import_DataSource:
      required:
      - id
      - name
      - code
      - relation
      - identifiers
      - source
      type: object
      properties:
        id:
          type: string
          format: uuid
        name:
          type: string
        code:
          type: string
        relation:
          $ref: '#/components/schemas/Relation'
        identifiers:
          $ref: '#/components/schemas/NonEmptyList_Identifier'
        inheritance:
          $ref: '#/components/schemas/Inheritance'
        source:
          $ref: '#/components/schemas/Details_DataSource'
    DataSource:
      oneOf:
      - $ref: '#/components/schemas/Active1'
      - $ref: '#/components/schemas/Bespoke'
      - $ref: '#/components/schemas/Creating1'
      - $ref: '#/components/schemas/LiveRamp3P'
      - $ref: '#/components/schemas/PrincipalError'
      - $ref: '#/components/schemas/RealtimeAPI'
      - $ref: '#/components/schemas/SetupFailure'
      - $ref: '#/components/schemas/Updating1'
      - $ref: '#/components/schemas/V1'
      - $ref: '#/components/schemas/V11'
    SetupFailure:
      required:
      - permissions
      type: object
      properties:
        bucket:
          type: string
        permissions:
          $ref: '#/components/schemas/Permissions'
    HttpErrorResponse:
      required:
      - requestId
      - error
      type: object
      properties:
        requestId:
          type: string
          format: uuid
        error:
          $ref: '#/components/schemas/HttpError'
    WrappedResponse_Segment:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/Segment'
    SchemeNotSupported:
      type: object
      properties:
        c:
          type: string
        d:
          $ref: '#/components/schemas/JsonObject'
    Permissions:
      type: object
      properties:
        read:
          type: array
          items:
            $ref: '#/components/schemas/Principal'
        write:
          type: array
          items:
            $ref: '#/components/schemas/Principal'
        sync:
          type: array
          items:
            $ref: '#/components/schemas/Principal'
    Group:
      required:
      - id
      type: object
      properties:
        id:
          type: string
    NonEmptyList_Identifier:
      required:
      - head
      type: object
      properties:
        head:
          type: string
        tail:
          type: array
          items:
            type: string
    PrincipalError:
      required:
      - bucket
      - permissions
      - errors
      type: object
      properties:
        bucket:
          type: string
        permissions:
          $ref: '#/components/schemas/Permissions'
        errors:
          $ref: '#/components/schemas/NonEmptyList_String'
    JsonObject:
      type: object
    RealtimeAPI:
      type: object
    Update:
      required:
      - code
      - data
      type: object
      properties:
        code:
          type: string
        data:
          $ref: '#/components/schemas/SegmentUpdate'
    Principal:
      oneOf:
      - $ref: '#/components/schemas/Group'
      - $ref: '#/components/schemas/ServiceAccount'
      - $ref: '#/components/schemas/User'
    AuthorizationFailedForAPIKey:
      type: object
      properties:
        c:
          type: string
        d:
          $ref: '#/components/schemas/JsonObject'
    InvalidRequestBody:
      type: object
      properties:
        c:
          type: string
        d:
          $ref: '#/components/schemas/JsonObject'
    AuthorizationFailedForUser:
      type: object
      properties:
        c:
          type: string
        d:
          $ref: '#/components/schemas/JsonObject'
    Create:
      required:
      - data
      type: object
      properties:
        data:
          $ref: '#/components/schemas/SegmentCreate'
    InsufficientAPIKey:
      type: object
      properties:
        c:
          type: string
        d:
          $ref: '#/components/schemas/JsonObject'
    State:
      oneOf:
      - $ref: '#/components/schemas/Active'
      - $ref: '#/components/schemas/Creating'
      - $ref: '#/components/schemas/Error'
      - $ref: '#/components/schemas/Failure'
      - $ref: '#/components/schemas/Updating'
    PaginationCount:
      required:
      - value
      type: object
      properties:
        value:
          type: integer
          format: int64
    Third:
      type: object
    MissingRequestBody:
      type: object
      properties:
        c:
          type: string
        d:
          $ref: '#/components/schemas/JsonObject'
    AuthorizationMissing:
      type: object
      properties:
        c:
          type: string
        d:
          $ref: '#/components/schemas/JsonObject'
    PaginatedResponse_Segment:
      required:
      - pagination
      type: object
      properties:
        elements:
          type: array
          items:
            $ref: '#/components/schemas/Segment'
        pagination:
          $ref: '#/components/schemas/Pagination'
    Failure:
      type: object
    PaginationToken:
      required:
      - value
      type: object
      properties:
        value:
          type: string
    Creating:
      type: object
    Bespoke:
      type: object
    SegmentCreate:
      required:
      - name
      - code
      type: object
      properties:
        name:
          type: string
        code:
          type: string
        description:
          type: string
        cpm:
          type: number
          format: double
        categories:
          type: array
          items:
            type: string
    Updating:
      type: object
    HttpError:
      oneOf:
      - $ref: '#/components/schemas/AlreadyExists'
      - $ref: '#/components/schemas/AuthorizationFailed'
      - $ref: '#/components/schemas/AuthorizationFailedForAPIKey'
      - $ref: '#/components/schemas/AuthorizationFailedForUser'
      - $ref: '#/components/schemas/AuthorizationMissing'
      - $ref: '#/components/schemas/BadEncoding'
      - $ref: '#/components/schemas/BadOrigin'
      - $ref: '#/components/schemas/DoesNotExist'
      - $ref: '#/components/schemas/InsufficientAPIKey'
      - $ref: '#/components/schemas/InvalidAPIKey'
      - $ref: '#/components/schemas/InvalidHeader'
      - $ref: '#/components/schemas/InvalidParameters'
      - $ref: '#/components/schemas/InvalidRequestBody'
      - $ref: '#/components/schemas/MissingHeader'
      - $ref: '#/components/schemas/MissingOrigin'
      - $ref: '#/components/schemas/MissingParameters'
      - $ref: '#/components/schemas/MissingRequestBody'
      - $ref: '#/components/schemas/RouteDeprecated'
      - $ref: '#/components/schemas/SchemeNotSupported'
      - $ref: '#/components/schemas/UnknownError'
      - $ref: '#/components/schemas/UnspecifiedInternalError'
      - $ref: '#/components/schemas/ValidationError'
      - $ref: '#/components/schemas/VerbNotImplemented'
    InvalidParameters:
      type: object
      properties:
        c:
          type: string
        d:
          $ref: '#/components/schemas/JsonObject'
    BadEncoding:
      type: object
      properties:
        c:
          type: string
        d:
          $ref: '#/components/schemas/JsonObject'
    InvalidHeader:
      type: object
      properties:
        c:
          type: string
        d:
          $ref: '#/components/schemas/JsonObject'
    SegmentUpdate:
      type: object
      properties:
        name:
          type: string
        description:
          type: string
        cpm:
          type: number
          format: double
        categories:
          type: array
          items:
            type: string
    Delete:
      required:
      - code
      type: object
      properties:
        code:
          type: string
    MissingHeader:
      type: object
      properties:
        c:
          type: string
        d:
          $ref: '#/components/schemas/JsonObject'
    Error:
      required:
      - errors
      type: object
      properties:
        errors:
          $ref: '#/components/schemas/NonEmptyList_String'
    WrappedResponse_Import_DataSource:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/Import_DataSource'
    ServiceAccount:
      required:
      - id
      type: object
      properties:
        id:
          type: string
    V11:
      required:
      - organizationId
      type: object
      properties:
        organizationId:
          type: string
          format: uuid
    AuthorizationFailed:
      type: object
      properties:
        c:
          type: string
        d:
          $ref: '#/components/schemas/JsonObject'
    NonEmptyList_String:
      required:
      - head
      type: object
      properties:
        head:
          type: string
        tail:
          type: array
          items:
            type: string
    Creating1:
      required:
      - permissions
      type: object
      properties:
        permissions:
          $ref: '#/components/schemas/Permissions'
    Pagination:
      type: object
      properties:
        nextToken:
          $ref: '#/components/schemas/PaginationToken'
        totalCount:
          $ref: '#/components/schemas/PaginationCount'
    V1:
      required:
      - advertiserName
      - organizationId
      type: object
      properties:
        advertiserName:
          type: string
        organizationId:
          type: string
          format: uuid
    RouteDeprecated:
      type: object
      properties:
        c:
          type: string
        d:
          $ref: '#/components/schemas/JsonObject'
    MissingParameters:
      type: object
      properties:
        c:
          type: string
        d:
          $ref: '#/components/schemas/JsonObject'
    Active:
      type: object
    BatchRequest:
      required:
      - operations
      type: object
      properties:
        operations:
          required:
          - head
          type: object
          properties:
            head:
              $ref: '#/components/schemas/BatchOperation'
            tail:
              type: array
              items:
                $ref: '#/components/schemas/BatchOperation'
    Segment:
      required:
      - id
      - code
      - name
      - importId
      - updatedAt
      type: object
      properties:
        id:
          type: string
          format: uuid
        code:
          type: string
        name:
          type: string
        importId:
          type: string
          format: uuid
        description:
          type: string
        cpm:
          type: number
          format: double
        categories:
          type: array
          items:
            type: string
        updatedAt:
          type: string
          format: date-time
    HttpStatus:
      required:
      - code
      type: object
      properties:
        code:
          type: integer
          format: int32
    Details_DataSource:
      required:
      - id
      - state
      - details
      type: object
      properties:
        id:
          type: string
          format: uuid
        state:
          $ref: '#/components/schemas/State'
        details:
          $ref: '#/components/schemas/DataSource'
    MissingOrigin:
      type: object
      properties:
        c:
          type: string
        d:
          $ref: '#/components/schemas/JsonObject'
    VerbNotImplemented:
      type: object
      properties:
        c:
          type: string
        d:
          $ref: '#/components/schemas/JsonObject'
    Relation:
      oneOf:
      - $ref: '#/components/schemas/Second'
      - $ref: '#/components/schemas/Third'
    Active1:
      required:
      - bucket
      - permissions
      type: object
      properties:
        b

# --- truncated at 32 KB (32 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/permutive/refs/heads/main/openapi/permutive-v1-api-openapi.yml