> ## Documentation Index
> Fetch the complete documentation index at: https://docs.getcargo.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Create custom integration

> Create a new custom integration



## OpenAPI

````yaml https://api.getcargo.io/openapi.json post /connection/customIntegrations
openapi: 3.1.0
info:
  title: Cargo API
  version: 1.0.0
  description: Cargo Platform API v1
servers:
  - url: https://api.getcargo.io/v1
    description: Cargo API
security:
  - bearerAuth: []
paths:
  /connection/customIntegrations:
    post:
      tags:
        - Connection - Custom Integrations
      summary: Create custom integration
      description: Create a new custom integration
      requestBody:
        required: true
        content:
          application/json:
            schema:
              oneOf:
                - type: object
                  properties:
                    kind:
                      type: string
                      const: external
                      title: Kind
                      description: >-
                        Discriminator for an externally hosted custom
                        integration.
                    baseUrl:
                      type: string
                      title: Base URL
                      description: Base URL for an externally hosted custom integration.
                  required:
                    - kind
                    - baseUrl
                  additionalProperties: false
                - type: object
                  properties:
                    kind:
                      type: string
                      const: worker
                      title: Kind
                      description: Discriminator for a worker-backed custom integration.
                    workerUuid:
                      type: string
                      format: uuid
                      pattern: >-
                        ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$
                      title: Worker UUID
                      description: >-
                        Identifier of the hosting worker to back the
                        integration.
                  required:
                    - kind
                    - workerUuid
                  additionalProperties: false
              title: Request body
              description: Request body schema.
              type: object
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  customIntegration:
                    allOf:
                      - type: object
                        properties:
                          uuid:
                            type: string
                          workspaceUuid:
                            type: string
                          slug:
                            type: string
                          createdAt:
                            type: string
                          updatedAt:
                            type: string
                          deletedAt:
                            anyOf:
                              - type: string
                              - type: 'null'
                        required:
                          - uuid
                          - workspaceUuid
                          - slug
                          - createdAt
                          - updatedAt
                          - deletedAt
                        additionalProperties: false
                      - oneOf:
                          - type: object
                            properties:
                              kind:
                                type: string
                                const: external
                              baseUrl:
                                type: string
                            required:
                              - kind
                              - baseUrl
                            additionalProperties: false
                          - type: object
                            properties:
                              kind:
                                type: string
                                const: worker
                              workerUuid:
                                type: string
                            required:
                              - kind
                              - workerUuid
                            additionalProperties: false
                        type: object
                    title: Custom integration
                    description: Custom integration details.
                required:
                  - customIntegration
                additionalProperties: false
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '404':
          description: Not found
        '500':
          description: Internal server error
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````