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

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

Update a Python extension

Request

Updates the data of an existing Python extension, including configurations and metadata.

Security
ApiKeyAuth
Path
extensionIdstringrequired

Extension ID

Example: my-extension
Bodyapplication/jsonrequired

Updated extension data

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

Responses

Extension updated successfully

Bodyapplication/json
object
Response
application/json
{}

Delete a Python extension

Request

Deletes a Python extension from the system.

Warning: This operation is irreversible. Agents that use this extension may not work correctly.

Security
ApiKeyAuth
Path
extensionIdstringrequired

Unique ID of the extension to delete

Example: my-extension
curl -i -X DELETE \
  http://docs.webrobot.eu/_mock/openapi/webrobot/api/python-extensions/python-extensions/my-extension \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

Extension deleted successfully

Bodyapplication/json
object
Response
application/json
{}

Generate PySpark code from an extension

Request

Generates PySpark code from a Python extension registered in the system.

Useful for converting Python extensions into PySpark code usable in Spark jobs.

Security
ApiKeyAuth
Path
extensionIdstringrequired

Extension ID

Example: my-extension
curl -i -X POST \
  http://docs.webrobot.eu/_mock/openapi/webrobot/api/python-extensions/python-extensions/my-extension/generate-pyspark \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

PySpark code generated successfully

Bodyapplication/json
codestring

Generated PySpark code

Response
application/json
{ "code": "string" }

Get extensions of an agent

Request

Returns the list of all Python extensions associated with a specific agent.

Security
ApiKeyAuth
Path
agentIdstringrequired

Agent ID

Example: 123
curl -i -X GET \
  http://docs.webrobot.eu/_mock/openapi/webrobot/api/python-extensions/agents/123/extensions \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

List of the agent's extensions

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

Get Python extensions of an agent

Request

Returns the list of all Python extensions associated with a specific agent.

Security
ApiKeyAuth
Path
agentIdstringrequired

Agent ID

Example: 123
curl -i -X GET \
  http://docs.webrobot.eu/_mock/openapi/webrobot/api/python-extensions/agents/123/python-extensions \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

List of the agent's Python extensions

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

Update Python extensions of an agent

Request

Updates the list of Python extensions associated with a specific agent.

Security
ApiKeyAuth
Path
agentIdstringrequired

Agent ID

Example: 123
Bodyapplication/jsonrequired

List of Python extensions to associate with the agent

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

Responses

Extensions updated successfully

Bodyapplication/json
object
Response
application/json
{}

Get information about the Python Extensions plugin

Request

Returns general information about the Python Extensions plugin, including versions and configurations.

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

Responses

Plugin information

Bodyapplication/json
object
Response
application/json
{}

Get supported extension types

Request

Returns the list of all Python extension types supported by the system.

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

Responses

List of supported types

Bodyapplication/jsonArray [
string
]
Response
application/json
[ "string" ]

Process Python extensions from YAML

Request

Processes and registers Python extensions from a YAML definition.

Useful for importing extensions from configuration files.

Security
ApiKeyAuth
Bodyapplication/jsonrequired

YAML definition of extensions

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

Responses

Extensions processed successfully

Bodyapplication/json
object
Response
application/json
{}

Register a new Python extension

Request

Registers a new Python extension in the system.

The extension can be used by agents to extend Spark jobs functionality.

Security
ApiKeyAuth
Bodyapplication/jsonrequired

Extension data to register

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

Responses

Extension registered successfully

Bodyapplication/json
object
Response
application/json
{}

Validate a Python extension

Request

Validates the structure and syntax of a Python extension without registering it in the system.

Useful for verifying the correctness of an extension before registration.

Security
ApiKeyAuth
Bodyapplication/jsonrequired

Extension data to validate

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

Responses

Extension is valid

Bodyapplication/json
validboolean
Example: true
errorsArray of strings

List of validation errors (if any)

Response
application/json
{ "valid": true, "errors": [ "string" ] }