API

Base URL: https://api.slingdata.io

Authentication & Headers

All API requests require authentication using a Sling Project Token in the header:

Authorization: Sling-Project-Token xxxxxxxxxxxx
Content-Type: application/json

Project tokens can be created and managed through the Sling Data Platform, in the Settings > API Tokens section. Each token is associated with a specific project.

Connections

List Connections

GET /connection/list

Returns a list of all connections configured for the project.

Response

{
  "connections": [
    {
      "name": "string",
      "type": "string"
    }
  ]
}

Test Connection

POST /connection/test

Tests if a connection is valid and accessible.

Request Body

{
  "name": "string",  // Connection name
}

Response

{
  "valid": true|false,
  "error": "string"  // Present if valid is false
}

Files

Get File

GET /project/file/get

Retrieves contents of a specific project file.

Query Parameters

  • name: File path relative to project root

Response

{
  "name": "string",
  "body": "string",
  "is_dir": boolean,
  "updated": "datetime"
}

List Files

POST /project/file/list

Lists all files in the project.

Response

{
  "files": [
    {
      "name": "string",
      "body": "string",
      "is_dir": boolean,
      "updated": "datetime"
    }
  ]
}

Jobs

List Jobs

POST /project/job/list

Lists all jobs in the project.

Request Body

{
  "name": "string",  // Optional file path relative to project root
  "type": "string"  // Optional job type filter (replication, query)
}

Response

{
  "jobs": [
    {
      "id": "string",
      "name": "string",
      "type": "string",
      "status": "string",
      "file_name": "string"
    }
  ]
}

Get Job

GET /project/job/get

Gets details of a specific job.

Query Parameters

  • job_id: ID of the job

Response

{
  "id": "string",
  "name": "string",
  "type": "string",
  "status": "string",
  "file_name": "string",
  "config": {}
}

Run Job

POST /project/job/run

Triggers execution of a job.

Request Body

{
  "job_id": "string"
}

Response

{
  "exec_id": "string"
}

Executions

Cancel Execution

POST /execution/cancel

Cancels a running job run / execution.

Request Body

{
  "exec_id": "string"
}

List Executions

GET /execution/list

Returns a list of recent job runs / executions.

Query Parameters

  • status (optional): Filter by execution status: running | success | error | warning | skipped

  • limit (optional): Number of records to return (max 100)

Response

{
  "executions": [
    {
      "exec_id": "string",
      "status": "string",
      "start_time": "datetime",
      "end_time": "datetime",
      "error": "string",
      ...
    }
  ]
}

Last updated