Gluecrawl
Jobs

Create a Job

Start a new scraping job. Charges 10 credits.

POST/v1/jobs
Requires authentication

10 credits

charged per job created
Goal-basedrecommended

Describe what to extract in natural language.

Columns-based

Define exact columns with types: text, number, url, array, date.

Body parameters

NameTypeDescription
urlrequiredstringPage URL to map and scrape.
inputrequiredobjectExtraction goal or column definitions.
max_pagesoptionalintegerMaximum listing pages to crawl for this job.Default: 10

Poll Get a Job until status becomes ready or failed. When ready, columns and protection_level are populated.

curl -X POST https://api.gluecrawl.ai/v1/jobs \  -H "Authorization: Bearer glue_yourApiKeyHere" \  -H "Content-Type: application/json" \  -d '{    "url": "https://example.com/products",    "input": { "type": "goal", "value": "Extract all product names and prices" },    "max_pages": 10  }'

Responses

application/json
{  "id": "550e8400-e29b-41d4-a716-446655440000",  "url": "https://example.com/products",  "input": { "type": "goal", "value": "Extract all product names and prices" },  "columns": {    "listing": [      { "name": "product_name", "type": "text" },      { "name": "price", "type": "number" },      { "name": "product_url", "type": "url" }    ],    "detail": [      { "name": "description", "type": "text" },      { "name": "rating", "type": "number" },      { "name": "reviews_count", "type": "number" }    ]  },  "status": "ready",  "protection_level": "light",  "max_pages": 10,  "created_at": "2026-04-01T09:00:00Z",  "updated_at": "2026-04-01T09:05:00Z"}