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

List all Kubernetes CronJobs

Request

Returns the list of all CronJobs configured in the Kubernetes cluster.

CronJobs are used to schedule periodic execution of Spark jobs.

Security
ApiKeyAuth
Query
namespacestring

Kubernetes namespace to filter (optional)

Example: namespace=webrobot
curl -i -X GET \
  'http://docs.webrobot.eu/_mock/openapi/webrobot/cloud/scheduler/cronjobs?namespace=webrobot' \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

List of CronJobs retrieved successfully

Bodyapplication/jsonArray [
object
]
Response
application/json
[ {} ]

Create a new Kubernetes CronJob

Request

Creates a new Kubernetes CronJob to schedule periodic execution of a Spark job.

The CronJob will execute the job according to the specified schedule (cron format).

Security
ApiKeyAuth
Bodyapplication/jsonrequired

Configuration of the CronJob to create

namestring

CronJob name

namespacestring

Kubernetes namespace

schedulestring

Cron schedule expression

webhookUrlstring

Webhook URL to call on job completion

jobIdstring

Job ID to execute

projectIdstring

Project ID

clusterProviderstring

Cluster provider name

clusterConfigIdstring

Cluster configuration ID

secretNamestring

Kubernetes secret name

secretKeystring

Secret key name

imagestring

Docker image to use

curl -i -X POST \
  http://docs.webrobot.eu/_mock/openapi/webrobot/cloud/scheduler/cronjobs \
  -H 'Content-Type: application/json' \
  -H 'X-API-Key: YOUR_API_KEY_HERE' \
  -d '{
    "name": "string",
    "namespace": "string",
    "schedule": "string",
    "webhookUrl": "string",
    "jobId": "string",
    "projectId": "string",
    "clusterProvider": "string",
    "clusterConfigId": "string",
    "secretName": "string",
    "secretKey": "string",
    "image": "string"
  }'

Responses

CronJob created successfully

Bodyapplication/json
object
Response
application/json
{}

Get a specific CronJob

Request

Returns the details of a specific Kubernetes CronJob.

Security
ApiKeyAuth
Path
namestringrequired

CronJob name

Example: daily-etl-job
Query
namespacestring

Kubernetes namespace (optional)

Example: namespace=webrobot
curl -i -X GET \
  'http://docs.webrobot.eu/_mock/openapi/webrobot/cloud/scheduler/cronjobs/daily-etl-job?namespace=webrobot' \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

CronJob details

Bodyapplication/json
object
Response
application/json
{}

Delete a Kubernetes CronJob

Request

Deletes a Kubernetes CronJob and all its scheduled executions.

Warning: This operation is irreversible.

Security
ApiKeyAuth
Path
namestringrequired

Name of the CronJob to delete

Example: daily-etl-job
Query
namespacestring

Kubernetes namespace (optional)

Example: namespace=webrobot
curl -i -X DELETE \
  'http://docs.webrobot.eu/_mock/openapi/webrobot/cloud/scheduler/cronjobs/daily-etl-job?namespace=webrobot' \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

CronJob deleted successfully

Bodyapplication/json
object
Response
application/json
{}

Schedule a recurring EAN job

Request

Creates or updates the schedule for a recurring EAN Image Sourcing job for a country.

The job will be executed automatically according to the specified schedule (cron format).

Security
ApiKeyAuth
Path
countrystringrequired

ISO country code (e.g. "denmark", "italy", "france")

Example: denmark
Bodyapplication/jsonrequired

Schedule configuration (cron format)

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

Responses

Schedule created/updated successfully

Bodyapplication/json
object
Response
application/json
{}

Get project schedule

Request

Returns the project's schedule configuration, including information about when and how it is executed automatically.

Security
ApiKeyAuth
Path
projectIdstringrequired

Project ID

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

Responses

Schedule configuration

Bodyapplication/json
cronSchedulestring

Cronschedule

enabledboolean

Enabled

timezonestring

Timezone

Response
application/json
{ "cronSchedule": "string", "enabled": true, "timezone": "string" }

Set project schedule

Request

Sets or updates the schedule of a project for automatic execution.

The schedule uses cron expressions to define when to execute the project.

Security
ApiKeyAuth
Path
projectIdstringrequired

Project ID

Example: 98
Bodyapplication/jsonrequired

Schedule configuration

cronSchedulestring

Cronschedule

enabledboolean

Enabled

timezonestring

Timezone

curl -i -X PUT \
  http://docs.webrobot.eu/_mock/openapi/webrobot/api/projects/id/98/schedule \
  -H 'Content-Type: application/json' \
  -H 'X-API-Key: YOUR_API_KEY_HERE' \
  -d '{
    "cronSchedule": "string",
    "enabled": true,
    "timezone": "string"
  }'

Responses

Schedule set successfully

Bodyapplication/json
cronSchedulestring

Cronschedule

enabledboolean

Enabled

timezonestring

Timezone

Response
application/json
{ "cronSchedule": "string", "enabled": true, "timezone": "string" }

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

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