Quickstart
The fast path to a working integration. For every endpoint and parameter, see the API Reference.
1 · Create your account and organization
Section titled “1 · Create your account and organization”Sign up and create an organization. Everything in LangParse — documents, keys, billing — is scoped to an organization, and you choose its data-residency region (US or Australia).
2 · Get an API key
Section titled “2 · Get an API key”In the dashboard, open Settings → API keys and create one. New keys are
scoped to parse by default (submit documents and read results); manage and
admin scopes require the admin role. The secret is shown once — store it
safely and use a separate key per environment.
Send it on every request as a bearer token (or the X-Api-Key header):
Authorization: Bearer YOUR_API_KEY3 · Submit a document
Section titled “3 · Submit a document”Everything parses through one endpoint — POST /api/v1/documents. Give it a
file (inline base64 contents, a remote url, or the id of a file you
uploaded earlier) and tell it how to parse:
model: "mdl_…"— parse with a model you built.schemaless: true— no model; LangParse infers the fields.auto: true— detect the best model, then parse.
curl https://api.langparse.dev/api/v1/documents \ -H "Authorization: Bearer $LANGPARSE_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "file": { "name": "invoice.pdf", "contents": "JVBERi0xLjcK… (base64)" }, "schemaless": true }'Parsing is asynchronous — you get a document id back right away. Every
response is wrapped in a top-level data envelope:
HTTP 202 Accepted{ "data": { "id": "doc_a1b2c3", "status": "queued", "pollUrl": "https://api.langparse.dev/api/v1/documents/doc_a1b2c3" }}4 · Poll for the result
Section titled “4 · Poll for the result”Fetch the document until status becomes processed (it moves through
queued → processing → processed, or failed):
curl https://api.langparse.dev/api/v1/documents/doc_a1b2c3 \ -H "Authorization: Bearer $LANGPARSE_API_KEY"The outer data is the document resource; the inner data is your structured
result, and fields carries per-field confidence:
{ "data": { "id": "doc_a1b2c3", "model": "mdl_invoice", "status": "processed", "pageCount": 1, "data": { "vendor_name": "Acme Industries", "invoice_no": "INV-20418", "total_amount": 12480.00, "currency": "USD" }, "fields": [ { "name": "vendor_name", "value": "Acme Industries", "confidence": "high" }, { "name": "total_amount", "value": 12480.00, "confidence": "high" } ] }}Building a model?
Section titled “Building a model?”To parse against a model instead of schemaless, list your models to get an id:
curl https://api.langparse.dev/api/models \ -H "Authorization: Bearer $LANGPARSE_API_KEY"Then pass "model": "mdl_…" in the submit call above. You can also let
LangParse suggest a schema from sample files (POST /api/v1/models/suggest)
or detect the best model for a file (POST /api/v1/models/detect).
Postman collection
Section titled “Postman collection”Prefer Postman? Import our ready-made collection — it’s generated from the same OpenAPI spec, so it stays in sync with the API:
- Download: langparse.postman_collection.json
In Postman: Import → drop the file → open the LangParse API collection →
set the apiKey collection variable to your key (baseUrl is pre-filled). Every
request inherits the key. You can also import straight from the
OpenAPI spec via Import → Link.
Where to go next
Section titled “Where to go next”- API Reference — every endpoint, parameter, and response.
- OpenAPI spec — generate a client/SDK or import into Postman.
- Core concepts — the ideas behind the API.
- Talk to us — stuck on something? We’re happy to help.