POST
/
v4
/
workflows
Create a new workflow
curl --request POST \
  --url https://api.kadoa.com/v4/workflows \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '{
  "entity": "<string>",
  "fields": [
    {
      "name": "<string>",
      "dataType": "STRING",
      "description": "<string>",
      "example": "<string>"
    }
  ],
  "urls": [
    "<string>"
  ],
  "navigationMode": "single-page",
  "userPrompt": "<string>",
  "limit": 123,
  "location": {
    "type": "auto",
    "isoCode": "<string>"
  },
  "name": "<string>",
  "description": "<string>",
  "tags": [
    "<string>"
  ],
  "monitoring": {},
  "interval": "ONLY_ONCE",
  "schedules": [
    "<string>"
  ],
  "bypassPreview": false,
  "interactions": [
    {
      "type": "CLICK",
      "selector": "<string>",
      "text": "<string>"
    }
  ]
}'
{
  "success": true,
  "workflowId": "<string>",
  "info": "Your workflow has been acknowledged and will be installed within the next 5 minutes"
}

Authorizations

x-api-key
string
header
required

API key for authentication

Body

application/json

Create a workflow by defining entity and fields directly

urls
string[]
required

List of URLs to scrape

navigationMode
enum<string>
required

Navigation mode for scraping. When using agentic-navigation, userPrompt is required and entity/fields become optional

Available options:
single-page,
paginated-page,
page-and-detail,
agentic-navigation
entity
string

Entity name for extraction (required unless using agentic-navigation mode)

fields
object[]

Schema fields for extraction (required unless using agentic-navigation mode)

userPrompt
string

Required when navigationMode is agentic-navigation. Natural language instructions for the agent (between 10 and 5000 characters)

Required string length: 10 - 5000
limit
integer

Maximum number of items to scrape

location
object

Scraping location configuration

name
string

Name of the workflow

description
string

Optional description of the workflow (maximum 500 characters)

Maximum length: 500
tags
string[]

Tags for categorization

monitoring
object

Monitoring configuration

interval
enum<string>

Update frequency

Available options:
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_WEEKLY,
MONTHLY,
REAL_TIME,
CUSTOM
schedules
string[]

Cron schedules for updates

bypassPreview
boolean
default:false

When true, bypasses preview and installs the scraper immediately with the given limit

interactions
object[]

Optional browser interactions to perform during scraping

Response

Workflow created successfully

success
boolean
Example:

true

workflowId
string

ID of the created workflow

info
string

Information about workflow creation

Example:

"Your workflow has been acknowledged and will be installed within the next 5 minutes"