curl --request POST \
--url https://api.kadoa.com/v4/workflows \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"urls": [
"<string>"
],
"userPrompt": "<string>",
"name": "<string>",
"description": "<string>",
"tags": [
"<string>"
],
"limit": 2,
"interval": "ONLY_ONCE",
"schedules": [
"<string>"
],
"bypassPreview": false,
"interactions": [
{
"type": "CLICK",
"selector": "<string>",
"text": "<string>",
"timeMs": 123,
"url": "<string>",
"tagName": "<string>",
"innerText": "<string>"
}
],
"dataValidationEnabled": true,
"additionalData": "<unknown>",
"templateId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"schemaId": "<string>",
"entity": "<string>",
"fields": [
{
"name": "<string>",
"description": "<string>",
"dataType": "STRING",
"fieldType": "SCHEMA",
"example": "<string>",
"isKey": true
}
]
}
'{
"error": false,
"success": true,
"workflowId": "<string>",
"message": "<string>",
"deprecationNotice": "<string>"
}Create a workflow using natural-language instructions, with optional schema guidance for structured extraction.
curl --request POST \
--url https://api.kadoa.com/v4/workflows \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"urls": [
"<string>"
],
"userPrompt": "<string>",
"name": "<string>",
"description": "<string>",
"tags": [
"<string>"
],
"limit": 2,
"interval": "ONLY_ONCE",
"schedules": [
"<string>"
],
"bypassPreview": false,
"interactions": [
{
"type": "CLICK",
"selector": "<string>",
"text": "<string>",
"timeMs": 123,
"url": "<string>",
"tagName": "<string>",
"innerText": "<string>"
}
],
"dataValidationEnabled": true,
"additionalData": "<unknown>",
"templateId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"schemaId": "<string>",
"entity": "<string>",
"fields": [
{
"name": "<string>",
"description": "<string>",
"dataType": "STRING",
"fieldType": "SCHEMA",
"example": "<string>",
"isKey": true
}
]
}
'{
"error": false,
"success": true,
"workflowId": "<string>",
"message": "<string>",
"deprecationNotice": "<string>"
}API key for authentication
Body
Create a workflow using natural-language instructions. Navigation is handled automatically for new integrations.
List of URLs to scrape. Can be a single URL or multiple URLs to scrape across different pages or domains.
1Natural language instructions for the workflow (10-5000 characters). Describe what data to extract and how to navigate the site
10 - 5000Human-readable name for this workflow (e.g., 'Product Catalog Scraper')
1Detailed description of what this workflow does and why it was created (maximum 500 characters)
500Tags for organizing and categorizing workflows (minimum 2 characters per tag)
2Maximum number of items to scrape. Useful for limiting scope during development or cost control
x >= 1Geographic location for scraping. Use 'auto' for automatic detection or 'manual' to specify a country
Show child attributes
Monitoring configuration
Show child attributes
How frequently this workflow should run (ONLY_ONCE, HOURLY, DAILY, WEEKLY, etc.)
ONLY_ONCE, EVERY_10_MINUTES, HALF_HOURLY, HOURLY, THREE_HOURLY, SIX_HOURLY, TWELVE_HOURLY, EIGHTEEN_HOURLY, DAILY, TWO_DAY, THREE_DAY, WEEKLY, BIWEEKLY, TRIWEEKLY, FOUR_WEEKS, MONTHLY, REAL_TIME, CUSTOM Cron expressions for custom schedules. Overrides the interval setting for fine-grained control
Skip preview and validation, deploy scraper immediately. Use with caution - set to true only when you're confident the configuration is correct
Browser interactions to perform before scraping (e.g., clicking buttons, filling forms, scrolling). See Interaction schema for available action types
Browser interaction definition. Examples:
Show child attributes
Enable data quality validation. When true, scraped data is validated against the schema and anomalies are detected
Additional data for the workflow (e.g. IDs from your system to link data)
Optional: ID of the template this workflow was created from. Records provenance only — the template's config is cloned at creation, not synced.
Optional: Schema ID to use with prompt-driven extraction
Optional: Entity name for prompt-driven extraction
1Optional: Additional extraction fields to guide the workflow
Extraction field schema
Show child attributes
201
Response for workflow creation