API

Goodtables.io provides a HTTP API that allows you to do programatically everything that can be done via the web interface. All the endpoints documented below live in https://goodtables.io/api/, and require that you send your authorization token via the Authorization header.

Endpoints

GET /source

Returns list of user’s sources

Status Codes:
POST /source

Creates a new source. By default, the integration_name is “api”

Query Parameters:
 
  • name (string) – The source name
  • private (boolean) – Controls if the created source is private or not
Status Codes:
GET /source/{source_id}

Gets the source ID

Parameters:
  • source_id (string) – The source id
Status Codes:
GET /source/{source_id}/job

Returns list of source’s jobs

Parameters:
  • source_id (string) – The job source’s id
Status Codes:
POST /source/{source_id}/job
Query Parameters:
 
  • data (string) –
Status Codes:
  • 200 OK – Success
  • 404 Not Found – Source not found
  • 403 Forbidden – You don’t have permissions to access source, or the source integration_name isn’t API, or there are too many files.
  • 400 Bad Request – Malformed, invalid, or missing job configuration
GET /source/{source_id}/job/{job_id}

Returns a specific source’s job

Parameters:
  • source_id (string) – The job source’s id
  • job_id (string) – The job id
Status Codes:
GET /token

Return user’s API token list

Status Codes:
POST /token

Create new API token

Query Parameters:
 
  • description (string) – Token description
Status Codes:
DELETE /token/{token_id}

Delete API Token

Parameters:
  • token_id (string) – The Token id
Status Codes: