Added

Data Sources: Connection Status & Update Endpoint

Monitor data source health and update configurations through new API capabilities. The list endpoint now includes real-time connection status, and a new PATCH endpoint allows updating data source names and credentials without recreating the resource.

What's New

  • Connection status in list response: Each data source now includes connectionStatus with success (boolean | null) and lastTestedAt (ISO timestamp | null) fields
  • Update endpoint: Modify data source name and connection configuration via PATCH request
  • Credential handling: Updated credentials are automatically encrypted using the same secure storage as creation

Modified Endpoint

  • GET /api/v1/accounts/{accountId}/data-sources - Now includes connectionStatus in response

New Endpoint

  • PATCH /api/v1/accounts/{accountId}/data-sources/{id} - Update data source properties

Response Format (List)

{
  "ok": true,
  "data": {
    "dataSources": [
      {
        "id": "uuid",
        "name": "My Snowflake",
        "type": "snowflake",
        "isDefault": false,
        "createdAt": "2026-01-15T10:30:00.000Z",
        "updatedAt": "2026-02-04T14:20:00.000Z",
        "createdBy": "[email protected]",
        "connectionStatus": {
          "success": true,
          "lastTestedAt": "2026-02-04T14:15:00.000Z"
        }
      }
    ],
    "count": 1
  }
}

Update Request Format

{
  "name": "Updated Name",
  "connectionConfig": {
    "type": "snowflake",
    "accountIdentifier": "org-account",
    "warehouseName": "COMPUTE_WH",
    "accessToken": "base64-encoded-token"
  }
}

Both fields are optional - include only what you want to update.

Getting Started

To check connection health across all data sources:

curl -X GET "https://api.bobsled.co/api/v1/accounts/{accountId}/data-sources" \
  -H "Authorization: Bearer {token}"

Filter by connection status client-side using the connectionStatus.success field:

  • true - Connection test passed
  • false - Connection test failed
  • null - Never tested