When extraction is the right tool
Extraction is a strong fit for:- company and product profiles
- pricing or policy extraction
- structured enrichment for downstream systems
- repeatable data collection from public pages
Design the request carefully
Good extraction quality usually depends more on request design than on retry count. Keep the request:- narrow enough to be realistic
- specific about what should be extracted
- backed by a schema that downstream systems can actually use
Generate a schema
Write the JSON schema yourself, as in the examples below, or generate a draft from your extraction goal. Schema generation requires theextract:schema:generate scope.
Node.js and Python examples use the Bulkgrid SDKs. Set BULKGRID_API_KEY in your backend environment; cURL examples also use BULKGRID_BASE_URL=https://bulkgrid.com.
cURL
schema and optional notes. Review the result before passing schema to /api/v1/extract.
Provide a query, optional context, and allowNulls to control whether nulls are allowed. Generated schemas are validated before being returned; if validation fails, the service retries once and then returns a structured error.
Review and tighten the draft, then test it with a small extraction run before expanding its scope. Schema generation prepares the request; submit the extraction separately to process your URLs.
Request examples
Workflow
- submit the extraction request
- store the run ID
- poll
GET /api/v1/runs/{runId} - fetch
GET /api/v1/runs/{runId}/results - read
extraction_datafrom the result records
Common quality problems
- the schema asks for data the source does not contain
- the query is too broad
- the page requires interaction or access patterns the request does not account for