# Sync validation Validate sync mode, cursor, and primary key compatibility before syncing. Validates that the sync configuration (modes, cursors, primary keys) is compatible between source and destination streams. #### Path Parameters **`organization_id`** string required The unique identifier of the organization (format: `org_*`). #### Request Body **`connection_id`** string optional Existing connection to validate. **`source_id`** string optional Source to validate against. **`destination_id`** string optional Destination to validate against. **`streams`** array optional Stream configurations to validate. ## Returns A validation result containing `valid` (boolean) and `errors` (array of validation issues). Request ```bash cURL curl -X POST "https://api.aitronos.com/v1/organizations/org_xyz789/knowledge/connectors/connections/validate-sync-config" \ -H "Authorization: Bearer $ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{"connection_id": "conn_abc123", "streams": [{"stream_name": "users", "sync_mode": "incremental_append"}]}' ``` ```python Python SDK from aitronos import Aitronos client = Aitronos(api_key="your-api-key") result = client.knowledge_connectors.validate_sync_config( organization_id="org_xyz789", connection_id="conn_abc123", streams=[{"stream_name": "users", "sync_mode": "incremental_append"}], ) print(result) ``` ```python Python import requests org_id = "org_xyz789" url = f"https://api.aitronos.com/v1/organizations/{org_id}/knowledge/connectors/connections/validate-sync-config" headers = {"Authorization": "Bearer YOUR_ACCESS_TOKEN", "Content-Type": "application/json"} body = { "connection_id": "conn_abc123", "streams": [{"stream_name": "users", "sync_mode": "incremental_append"}] } response = requests.post(url, headers=headers, json=body) print(response.json()) ``` ```javascript JavaScript const response = await fetch( "https://api.aitronos.com/v1/organizations/org_xyz789/knowledge/connectors/connections/validate-sync-config", { method: "POST", headers: { Authorization: "Bearer YOUR_ACCESS_TOKEN", "Content-Type": "application/json", }, body: JSON.stringify({ connection_id: "conn_abc123", streams: [{ stream_name: "users", sync_mode: "incremental_append" }], }), } ); const data = await response.json(); console.log(data); ``` Response ```json 200 OK — Valid { "valid": true, "errors": [] } ``` ```json 200 OK — Invalid { "valid": false, "errors": [ { "stream_name": "users", "message": "Incremental sync mode requires a cursor field" } ] } ``` ```json 4xx Error { "success": false, "error": { "code": "CONNECTOR_VALIDATION_FAILED", "message": "Connector configuration validation failed.", "type": "client_error", "status": 422, "details": {}, "trace_id": "abc-123-def", "timestamp": "2025-12-22T15:30:00Z" } } ``` ## Related Resources - [Manage Connections](/docs/api-reference/knowledge-connectors/connections) - [Stream Configuration](/docs/api-reference/knowledge-connectors/stream-config)