Soda Data Sources API

Soda Cloud API Datasource Endpoints

Operations 18

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /api/v1/datasources List data sources · List datasources #
Ask an LLM
“Which data sources are connected to my organization?”
“Can I search my data sources by name?”
Tell an agent
List all my data sources.
Search data sources for {search}.
POST /api/v1/datasources Create a data source · Create a datasource #
Ask an LLM
“How do I connect a new data source from a YAML configuration?”
“Can I assign a runner when I add a data source?”
Tell an agent
Create a data source from this configuration: {configurationFileContents}.
Add data source {label} on runner {runnerId} with config {configurationFileContents}.
POST /api/v1/datasources/actions/testConnection Test a data source connection · Test datasource connection #
Ask an LLM
“Can I check that a data source configuration connects before saving it?”
“Which runner is used when testing a connection?”
Tell an agent
Test the connection of {configurationFileContents} using runner {runnerId}.
Start a connection test on runner {runnerId} for config {configurationFileContents}.
GET /api/v1/datasources/actions/testConnection/{operationId} Check connection test result · Get status for async connection test #
Ask an LLM
“Did my data source connection test succeed?”
“What is the state of an asynchronous connection test?”
Tell an agent
Get the result of connection test {operationId}.
Poll connection test {operationId} until it finishes.
GET /api/v1/datasources/roles List data source roles · List datasource roles #
Ask an LLM
“What data source-level roles can I assign?”
“Which permission sets exist for individual data sources?”
Tell an agent
List the data source roles in my organization.
Show page {page} of data source roles.
POST /api/v1/datasources/roles Create a custom data source role · Create a datasource role #
Ask an LLM
“Can I create a data source role that lets people create datasets?”
“How do I define a role limited to viewing a data source?”
Tell an agent
Create a data source role named {name}.
Create data source role {name} with create-datasets {createDatasets} and view-datasource {viewDatasource}.
POST /api/v1/datasources/roles/{roleId} Update a data source role · Update a datasource role #
Ask an LLM
“Can I change what an existing data source role is allowed to do?”
“How do I rename a custom data source role?”
Tell an agent
Rename data source role {roleId} to {name}.
Update data source role {roleId} ({name}) so manage-settings is {manageDatasourceSettings}.
DELETE /api/v1/datasources/roles/{roleId} Delete a data source role · Delete a datasource role #
Ask an LLM
“How do I remove a custom data source role?”
“Can I delete a data source permission role that is no longer used?”
Tell an agent destructive · confirm first
Delete data source role {roleId}.
Remove the custom data source role {roleId}.
GET /api/v1/datasources/{datasourceId} Get a data source · Get a datasource #
Ask an LLM
“What are the details of one data source?”
“Can I fetch a single data source by its ID?”
Tell an agent
Get data source {datasourceId}.
Show the configuration details of data source {datasourceId}.
POST /api/v1/datasources/{datasourceId} Update a data source · Update a datasource #
Ask an LLM
“How do I change the connection configuration of an existing data source?”
“Can I move a data source to a different runner?”
Tell an agent
Update data source {datasourceId} with configuration {configurationFileContents}.
Switch data source {datasourceId} to runner {runnerId}.
DELETE /api/v1/datasources/{datasourceId} Delete a data source · Delete a datasource #
Ask an LLM
“How do I disconnect a data source and everything under it?”
“Is deleting a data source done asynchronously?”
Tell an agent destructive · confirm first
Delete data source {datasourceId}.
Remove data source {datasourceId} and all its associated resources.
GET /api/v1/datasources/{datasourceId}/diagnosticsWarehouse Get a data source's diagnostics warehouse · Get datasource diagnostics warehouse configuration #
Ask an LLM
“Is a diagnostics warehouse enabled for this data source?”
“Where does a data source store scan results and failed rows?”
Tell an agent
Show the diagnostics warehouse configuration of data source {datasourceId}.
Check the diagnostics warehouse setup on data source {datasourceId}.
POST /api/v1/datasources/{datasourceId}/diagnosticsWarehouse Configure a data source's diagnostics warehouse · Update datasource diagnostics warehouse configuration #
Ask an LLM
“Can I send failed rows and scan results to my own warehouse?”
“How do I choose the table name template for diagnostics data?”
Tell an agent
Enable the diagnostics warehouse on data source {datasourceId}: {enabled}.
Set the diagnostics table name template for data source {datasourceId} to {tableNameTemplate}.
POST /api/v1/datasources/{datasourceId}/discover Run discovery on a data source · Trigger datasource discovery #
Ask an LLM
“Can I detect new tables in a data source without waiting for the schedule?”
“How do I trigger an on-demand discovery scan?”
Tell an agent
Run discovery on data source {datasourceId}.
Scan data source {datasourceId} for new tables and schemas now.
POST /api/v1/datasources/{datasourceId}/onboardDatasets Onboard discovered datasets · Onboard discovered datasets #
Ask an LLM
“How do I turn discovered tables into monitored datasets?”
“Can I onboard several discovered datasets from a data source at once?”
Tell an agent
Onboard discovered datasets {discoveredDatasetIds} in data source {datasourceId}.
Start onboarding {discoveredDatasetIds} as datasets on data source {datasourceId}.
GET /api/v1/datasources/{datasourceId}/onboardDatasets/{operationId} Check dataset onboarding status · Get status for async dataset onboarding process #
Ask an LLM
“Has onboarding of my discovered datasets finished?”
“What state is an onboarding operation in?”
Tell an agent
Get the status of onboarding {operationId} on data source {datasourceId}.
Poll dataset onboarding {operationId} for data source {datasourceId}.
GET /api/v1/datasources/{datasourceId}/responsibilities List who has access to a data source · List datasource responsibilities #
Ask an LLM
“Which users and groups hold roles on a data source?”
“Who is responsible for this data source?”
Tell an agent
List responsibilities on data source {datasourceId}.
Show which users and groups have roles on data source {datasourceId}.
POST /api/v1/datasources/{datasourceId}/responsibilities Replace data source access assignments · Update datasource responsibilities #
Ask an LLM
“How do I give a group a role on a data source?”
“Does updating data source responsibilities overwrite the existing list?”
Tell an agent
Set responsibilities on data source {datasourceId} to {responsibilities}.
Replace who can access data source {datasourceId} with {responsibilities}.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/soda-data:soda-data-data-sources-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

soda-data-data-sources-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Soda Cloud API v4 Datasources API
  version: v1
  description: The Soda Cloud REST API (v4 public API). Assembled verbatim from the OpenAPI 3.1.0 documents Soda publishes inside each REST API reference page at https://docs.soda.io/reference/soda-apis/rest-api/.
  contact:
    name: Soda
    url: https://www.soda.io
servers:
- description: Cloud EU
  url: https://cloud.soda.io
- description: Cloud US
  url: https://cloud.us.soda.io
security:
- basicAuthApiKey: []
- cookieToken: []
tags:


# --- truncated at 32 KB (61 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/soda-data/refs/heads/main/openapi/soda-data-data-sources-api-openapi.yml