Detect doors

Door detection · model door-detector

POST/v1/drawings/detection/doors

Finds the doors on the pages of an architectural drawing set. Use it when you need door locations from your drawings without going through every sheet by hand.

Accepts a previously uploaded document_id, enqueues inference, and returns a job you poll for results. Detections are returned as bounding boxes in PDF coordinate space.

Returns
A job to check202 Accepted
Usage
Element detectionper sheet
Results in
A list of doorsresult.doors
Auth
API keyX-API-Key header
Processing time (free tier)

Free-tier doors detection typically completes in 2–4 minutes per job. Processing time scales mainly with page count and drawing complexity — a dense multi-page set takes longer than a single sheet.

Need it faster? Developer and Enterprise plans run detection on dedicated GPU infrastructure. Upgrade your plan

Example

Floor plan input
A sample floor plan before and after door detection: 47 doors detected.

How it runs

  1. Send a document_id
  2. Get a job_id
  3. Check your results or receive a webhook

Request

This endpoint requires a document_id. Upload your PDF first.

Body is JSON — this endpoint does not accept file uploads directly.

FieldDescription
document_idstring · UUIDRequiredID of the uploaded PDF. Must belong to this account and not be expired.
page_numbersarray of integersOptional1-based page indices to scan, for example [1, 2, 3]. Omit to scan all pages. Out-of-range values are skipped by the worker but still counted.
webhook_urlstring · URLOptionalURL to POST the completed job payload to. Delivered on developer, pro, and enterprise tiers only.
UsageUsage is counted on submission: each page in page_numbers (or every page of the document when omitted) is one element detection, not only the pages that contain doors. Send only valid page indices.

Responses

The job is enqueued immediately. Poll GET /v1/jobs/{job_id} until status is complete or failed.

FieldDescription
job_idstring · UUIDUse this to poll for results.
statusstringAlways queued on this response.
poll_urlstringPath only — prepend https://api.anchorgrid.ai to build the full URL.

Usage & rate limits

Each page scanned is one element detection (See pricing). Rate limit: tier RPM (5 / 60 / 120 / 300).

PlanWhen the allowance is used up
trialTrial allowance — 402 FREE_TIER_LIMIT_REACHED when used up, 402 TRIAL_ENDED once the trial is over.
developerMonthly allowance, then overage up to your overage limit — 402 OVERAGE_LIMIT_REACHED at the limit (429 QUOTA_EXCEEDED when the allowance is used up without overage billing).
enterpriseNo allowance check.

Rate-limit 429s include retry_after_seconds in the body. Quota 429s and rate-limit 429s return the same status code — check the error body to distinguish them.

Errors

StatusWhat it means
401Missing or invalid X-API-Key.
402Trial allowance used up.
404document_id not found or expired.
422Validation error — malformed UUID or invalid body.
429Rate limit or monthly quota exceeded.

Searches these docs: guides, the basics and every endpoint.

Make your first requestPlayground walkthrough: upload, choose an analysis, run it
Connect your softwareYour application calls the REST API. Requires an API key
Connect your AI agentGive an agent a tool that calls the REST API
AuthenticationX-API-Key header, 401 errors, keeping keys safe
Detect doorsPOST /v1/drawings/detection/doorsDoor detection — Find the doors on the pages of an architectural drawing set.
Check your resultsGET /v1/jobs/{job_id}Get a job — See a job’s status and, once it’s complete, its results.