Skip to main content

Get Version Detail

Fetch the complete configuration and test data for a single connector version — including soft-deleted past versions. This powers the version-history diff viewer, which needs the full payload of any historical version, something the regular Get Connector cannot return because it filters out soft-deleted rows.

GET /api/connectors/{id}/versions/{versionId}

Authorization

  • Analyst (or admin): Required. Unauthenticated requests receive 401; users without the role receive 403.

Path Parameters

ParameterTypeRequiredDescription
idstringYesAny version of the connector family (used to resolve the platformName); may itself be soft-deleted
versionIdstringYesThe specific version to load
note

id and versionId must belong to the same connector family — they must share a platformName. This scopes access so a caller can only read versions of a connector they are already viewing.

Response

All fields use snake_case. Test-data sub-fields are unpacked from the __-prefixed blob stored inside paginationConfigs.

{
"id": "conn_slack001",
"version": "1.2.0",
"status": "production",
"is_active": false,
"restored_from": null,
"commit_message": "Add conversations.history endpoint",
"created_at": "2024-01-15T10:30:00Z",
"created_by": { "id": "analyst_001", "full_name": "John Doe" },

"platform_name": "Slack",
"platform_url": "https://slack.com/api",
"documentation_url": "https://api.slack.com/docs",
"endpoints": [ ... ],
"auth_config": { ... },
"rate_limit_global": { "requests": 100, "window_seconds": 60 },
"default_data_extraction": null,
"runtime_parameters": null,

"dependency_mappings": [ ... ],
"pagination_configs": { ... },
"reusable_variables": [ ... ],
"static_variables": [ ... ],
"execution_order": ["ep_conv_list", "ep_conv_history"],
"body_configs": { ... },
"recursion_configs": { ... },
"rate_limit_configs": { ... },
"url_download_queue": null,
"runtime_parameter_values": { ... }
}

Notable fields

FieldDescription
is_activetrue when this version is the live one (deletedAt is null), false for soft-deleted history
restored_fromThe version ID this one was restored from, or null
endpoints[].pathEndpoint paths are normalized to {param} syntax
pagination_configsPer-endpoint pagination, with all __-prefixed internal keys stripped out into their own fields
execution_orderOrdered endpoint IDs, or null if not set

Example Request

curl -X GET "https://api.traces.io/api/connectors/conn_slack002/versions/conn_slack001" \
-H "Authorization: Bearer <token>"

Error Responses

401 Unauthorized

{ "error": { "code": "UNAUTHORIZED", "message": "Authentication required" } }

403 Forbidden

{ "error": { "code": "FORBIDDEN", "message": "Analyst role required" } }

404 Not Found

Returned when the reference connector does not exist, or the requested version is not part of the same family:

{ "error": { "code": "NOT_FOUND", "message": "Version not found" } }

500 Internal Server Error

{ "error": { "code": "INTERNAL_ERROR", "message": "Failed to fetch connector version" } }