Skip to content

WebRobot ETL API (1.0.0)

API for managing projects, jobs, datasets, and ETL pipelines on WebRobot.

Authentication

The API uses API Keys for authentication. Include the X-API-Key header in all requests.

Base URL

  • Production: https://api.webrobot.eu/api
  • Development: http://localhost:8020/api

Rate Limiting

Requests are limited to 1000 requests per minute per API key.

Download OpenAPI description
Overview
WebRobot Support
License
Languages
Servers
Mock server
http://docs.webrobot.eu/_mock/openapi/
Production
https://api.webrobot.eu/api/
Local development
http://localhost:8020/api/

Cloud

Operations

Scheduler

Operations

Spark

Operations

Health

Operations

Training

Operations

EAN Plugin

Operations

Jobs

Operations

Bootstrap

Operations

Images

Operations

Info

Operations

Query

Operations

Upload

Operations

AI Providers

Operations

Models

Operations

Datasets

Operations

Agents

Operations

Categories

Operations

Test

Operations

Cloud Credentials

Operations

Tasks

Operations

Admin

Operations

ETL Library

Operations

Package

Operations

Plugins

Operations

Projects

Operations

Get all jobs of a project

Request

Returns the list of all ETL jobs associated with a specific project.

Security
ApiKeyAuth
Path
projectIdstringrequired

Project ID

Example: 98
curl -i -X GET \
  http://docs.webrobot.eu/_mock/openapi/webrobot/api/projects/id/98/jobs \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

List of jobs for the project

Bodyapplication/jsonArray [
idstring

Id

namestring

Name

descriptionstring

Description

projectIdstring

Projectid

agentIdstring

Agentid

inputDatasetIdstring

Inputdatasetid

cloudCredentialIdstring

Cloudcredentialid

cloudCredentialIdsArray of strings

Cloudcredentialids

executionStatusstring

Executionstatus

Enum"PENDING""RUNNING""COMPLETED""FAILED"
scheduledTimestring(date-time)

Scheduledtime

enabledboolean

Enabled

taskIdsArray of strings

Taskids

createdAtstring(date-time)

Createdat

updatedAtstring(date-time)

Updatedat

]
Response
application/json
[ { "id": "string", "name": "string", "description": "string", "projectId": "string", "agentId": "string", "inputDatasetId": "string", "cloudCredentialId": "string", "cloudCredentialIds": [ … ], "executionStatus": "PENDING", "scheduledTime": "2019-08-24T14:15:22Z", "enabled": true, "taskIds": [ … ], "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" } ]

Add a job to a project

Request

Creates a new ETL job and associates it with an existing project.

The job must be associated with an agent with valid PySpark code.

Security
ApiKeyAuth
Path
projectIdstringrequired

Project ID

Example: 98
Bodyapplication/jsonrequired

Job data to create

idstring

Id

namestring

Name

descriptionstring

Description

projectIdstring

Projectid

agentIdstring

Agentid

inputDatasetIdstring

Inputdatasetid

cloudCredentialIdstring

Cloudcredentialid

cloudCredentialIdsArray of strings

Cloudcredentialids

executionStatusstring

Executionstatus

Enum"PENDING""RUNNING""COMPLETED""FAILED"
scheduledTimestring(date-time)

Scheduledtime

enabledboolean

Enabled

taskIdsArray of strings

Taskids

createdAtstring(date-time)

Createdat

updatedAtstring(date-time)

Updatedat

curl -i -X POST \
  http://docs.webrobot.eu/_mock/openapi/webrobot/api/projects/id/98/jobs \
  -H 'Content-Type: application/json' \
  -H 'X-API-Key: YOUR_API_KEY_HERE' \
  -d '{
    "id": "string",
    "name": "string",
    "description": "string",
    "projectId": "string",
    "agentId": "string",
    "inputDatasetId": "string",
    "cloudCredentialId": "string",
    "cloudCredentialIds": [
      "string"
    ],
    "executionStatus": "PENDING",
    "scheduledTime": "2019-08-24T14:15:22Z",
    "enabled": true,
    "taskIds": [
      "string"
    ],
    "createdAt": "2019-08-24T14:15:22Z",
    "updatedAt": "2019-08-24T14:15:22Z"
  }'

Responses

Job created and added to project successfully

Bodyapplication/json
idstring

Id

namestring

Name

descriptionstring

Description

projectIdstring

Projectid

agentIdstring

Agentid

inputDatasetIdstring

Inputdatasetid

cloudCredentialIdstring

Cloudcredentialid

cloudCredentialIdsArray of strings

Cloudcredentialids

executionStatusstring

Executionstatus

Enum"PENDING""RUNNING""COMPLETED""FAILED"
scheduledTimestring(date-time)

Scheduledtime

enabledboolean

Enabled

taskIdsArray of strings

Taskids

createdAtstring(date-time)

Createdat

updatedAtstring(date-time)

Updatedat

Response
application/json
{ "id": "string", "name": "string", "description": "string", "projectId": "string", "agentId": "string", "inputDatasetId": "string", "cloudCredentialId": "string", "cloudCredentialIds": [ "string" ], "executionStatus": "PENDING", "scheduledTime": "2019-08-24T14:15:22Z", "enabled": true, "taskIds": [ "string" ], "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" }

Get all projects

Request

Returns the list of all projects available in the system.

Projects are used to organize related jobs, tasks, and datasets.

Security
ApiKeyAuth
curl -i -X GET \
  http://docs.webrobot.eu/_mock/openapi/webrobot/api/projects \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

List of projects

Bodyapplication/jsonArray [
idstring

Id

namestring

Name

descriptionstring

Description

cronSchedulestring

Cronschedule

enabledboolean

Enabled

jobIdsArray of strings

Jobids

createdAtstring(date-time)

Createdat

updatedAtstring(date-time)

Updatedat

]
Response
application/json
[ { "id": "string", "name": "string", "description": "string", "cronSchedule": "string", "enabled": true, "jobIds": [ … ], "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" } ]

ETL Execution

Operations

Execution

Operations

Webhooks

Operations

Metrics

Operations

getHtml

Request

Security
ApiKeyAuth
Path
protocolstringrequired

HTTP protocol (http or https)

urlstringrequired

URL to fetch HTML content from

curl -i -X GET \
  'http://docs.webrobot.eu/_mock/openapi/webrobot/api/html/{url}/{protocol}' \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

default response

Bodytext/html

getById

Request

Security
ApiKeyAuth
Path
tablestringrequired

Table name in Strapi

idstringrequired

Record ID

curl -i -X GET \
  'http://docs.webrobot.eu/_mock/openapi/api/strapi-tables/{table}/{id}' \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

default response

Bodyapplication/json
Response
application/json
null

update

Request

Security
ApiKeyAuth
Path
tablestringrequired

Table name in Strapi

idstringrequired

Record ID

Bodyapplication/json
property name*objectadditional property
curl -i -X PUT \
  'http://docs.webrobot.eu/_mock/openapi/api/strapi-tables/{table}/{id}' \
  -H 'Content-Type: application/json' \
  -H 'X-API-Key: YOUR_API_KEY_HERE' \
  -d '{
    "property1": {},
    "property2": {}
  }'

Responses

default response

Bodyapplication/json
Response
application/json
null

delete

Request

Security
ApiKeyAuth
Path
tablestringrequired

Table name in Strapi

idstringrequired

Record ID

curl -i -X DELETE \
  'http://docs.webrobot.eu/_mock/openapi/api/strapi-tables/{table}/{id}' \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

default response

Bodyapplication/json
Response
application/json
null

findAll

Request

Security
ApiKeyAuth
Path
tablestringrequired
Query
pageinteger(int32)
Default 0
pageSizeinteger(int32)

Number of records per page

Default 50
curl -i -X GET \
  'http://docs.webrobot.eu/_mock/openapi/api/strapi-tables/{table}?page=0&pageSize=50' \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

default response

Bodyapplication/json
Response
application/json
null

insert

Request

Security
ApiKeyAuth
Path
tablestringrequired

Table name in Strapi

Bodyapplication/json
property name*objectadditional property
curl -i -X POST \
  'http://docs.webrobot.eu/_mock/openapi/api/strapi-tables/{table}' \
  -H 'Content-Type: application/json' \
  -H 'X-API-Key: YOUR_API_KEY_HERE' \
  -d '{
    "property1": {},
    "property2": {}
  }'

Responses

default response

Bodyapplication/json
Response
application/json
null

getHealth

Request

Security
ApiKeyAuth
curl -i -X GET \
  http://docs.webrobot.eu/_mock/openapi/health \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

default response

Bodyapplication/json
Response
application/json
null

Python Extensions

Operations