---
title: "Creates a custom sourceDefinition for the given workspace"
method: POST
path: "/v1/source_definitions/create_custom"
tags: ["source_definition"]
---

# Creates a custom sourceDefinition for the given workspace

`POST /v1/source_definitions/create_custom`

## Request body

- CustomSourceDefinitionCreate
  - `sourceDefinition` SourceDefinitionCreate, required
    - `dockerImageTag` string, required
    - `dockerRepository` string, required
    - `documentationUrl` string, uri, required
    - `icon` string
    - `name` string, required
    - `resourceRequirements` ActorDefinitionResourceRequirements — actor definition specific resource requirements. if default is set, these are the requirements that should be set for ALL jobs run for this actor definition. it is overriden by the job type specific configurations. if not set, the platform will use defaults. these values will be overriden by configuration at the connection level.
      - `default` ResourceRequirements — optional resource requirements to run workers (blank for unbounded allocations)
        - `cpu_limit` string
        - `cpu_request` string
        - `memory_limit` string
        - `memory_request` string
      - `jobSpecific` JobTypeResourceLimit[]
        - `jobType` 'get_spec' | 'check_connection' | 'discover_schema' | 'sync' | 'reset_connection' | 'connection_updater' | 'replicate', required — enum that describes the different types of jobs that the platform runs.
        - `resourceRequirements` ResourceRequirements, required — optional resource requirements to run workers (blank for unbounded allocations)
          - `cpu_limit` string
          - `cpu_request` string
          - `memory_limit` string
          - `memory_request` string
  - `workspaceId` string, uuid, required

## Response `200`

Successful operation

- SourceDefinitionRead
  - `dockerImageTag` string, required
  - `dockerRepository` string, required
  - `documentationUrl` string, uri
  - `icon` string
  - `name` string, required
  - `protocolVersion` string — The Airbyte Protocol version supported by the connector
  - `releaseDate` string, date — The date when this connector was first released, in yyyy-mm-dd format.
  - `releaseStage` 'alpha' | 'beta' | 'generally_available' | 'custom'
  - `resourceRequirements` ActorDefinitionResourceRequirements — actor definition specific resource requirements. if default is set, these are the requirements that should be set for ALL jobs run for this actor definition. it is overriden by the job type specific configurations. if not set, the platform will use defaults. these values will be overriden by configuration at the connection level.
    - `default` ResourceRequirements — optional resource requirements to run workers (blank for unbounded allocations)
      - `cpu_limit` string
      - `cpu_request` string
      - `memory_limit` string
      - `memory_request` string
    - `jobSpecific` JobTypeResourceLimit[]
      - `jobType` 'get_spec' | 'check_connection' | 'discover_schema' | 'sync' | 'reset_connection' | 'connection_updater' | 'replicate', required — enum that describes the different types of jobs that the platform runs.
      - `resourceRequirements` ResourceRequirements, required — optional resource requirements to run workers (blank for unbounded allocations)
        - `cpu_limit` string
        - `cpu_request` string
        - `memory_limit` string
        - `memory_request` string
  - `sourceDefinitionId` string, uuid, required
  - `sourceType` 'api' | 'file' | 'database' | 'custom'

## Other responses

- `422` — Input failed validation

---

[API](https://skmtc.net/airbyte/apis/config.md) · [All operations](https://skmtc.net/airbyte/apis/config/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/airbyte/config/revisions/ce48e08e02ec/schema)
