# Manage source definitions List, create, update, and delete connector source definitions for an organization. ## List source definitions Returns all available source definitions for the organization's workspace. #### Path Parameters **`organization_id`** string required The unique identifier of the organization (format: `org_*`). ## Get source definition Retrieve a single source definition by ID. #### Path Parameters **`definition_id`** string required The source definition ID. ## Create source definition Create a custom source definition. #### Request Body **`name`** string required Display name for the source definition. **`docker_repository`** string optional Docker image repository path. **`docker_image_tag`** string optional Docker image tag / version. **`documentation_url`** string optional URL to the source documentation. ## Update source definition Update an existing source definition. ## Delete source definition Delete a custom source definition. Returns 204 No Content on success. ## Returns A source definition object containing `source_definition_id`, `name`, `docker_repository`, `docker_image_tag`, `documentation_url`, and `icon`. Request ```bash cURL curl "https://api.aitronos.com/v1/organizations/org_xyz789/knowledge/connectors/source-definitions" \ -H "Authorization: Bearer $ACCESS_TOKEN" ``` ```python Python SDK from aitronos import Aitronos client = Aitronos(api_key="your-api-key") definitions = client.knowledge_connectors.list_source_definitions( organization_id="org_xyz789", ) print(definitions) ``` ```python Python import requests org_id = "org_xyz789" url = f"https://api.aitronos.com/v1/organizations/{org_id}/knowledge/connectors/source-definitions" headers = {"Authorization": "Bearer YOUR_ACCESS_TOKEN"} response = requests.get(url, headers=headers) print(response.json()) ``` ```javascript JavaScript const response = await fetch( "https://api.aitronos.com/v1/organizations/org_xyz789/knowledge/connectors/source-definitions", { headers: { Authorization: "Bearer YOUR_ACCESS_TOKEN" }, } ); const data = await response.json(); console.log(data); ``` Response ```json 200 OK { "data": [ { "source_definition_id": "def_abc123", "name": "Google Sheets", "docker_repository": "aitronos/source-google-sheets", "docker_image_tag": "0.5.0", "documentation_url": "https://docs.example.com/google-sheets", "icon": "google-sheets.svg" } ] } ``` ```json 4xx Error { "success": false, "error": { "code": "CONNECTOR_DEFINITION_NOT_FOUND", "message": "The connector definition was not found.", "type": "client_error", "status": 404, "details": {}, "trace_id": "abc-123-def", "timestamp": "2025-12-22T15:30:00Z" } } ``` ## Related Resources - [Source Definition Spec](/docs/api-reference/knowledge-connectors/source-definition-spec) - [Workspaces](/docs/api-reference/knowledge-connectors/workspaces) - [Sources](/docs/api-reference/knowledge-connectors/sources) - [Source Testing](/docs/api-reference/knowledge-connectors/source-testing)