Detect wall materials

Wall material detection · model room-detector

POST/v1/drawings/detection/wall-materials

Detect rooms, derive wall segments, and resolve partition materials in a single async job. Runs room detection, detects wall segments, and matches each wall to a material with a confidence score — returning geometry, pattern_id, and material per wall in a slimmed-down result you poll for. Detections are in PDF coordinate space.

Returns
A job to check202 Accepted
Usage
Element detectionper sheet
Results in
A list of wallsresult.walls
Auth
API keyX-API-Key header

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 run room detection on. Omit to scan all pages. Out-of-range values are skipped by the worker but still counted.
floor_plan_pagesarray of integersOptionalSubset of pages to derive walls on. Useful when you want rooms detected across the full set but walls derived only for a specific floor plan page. Defaults to page_numbers when omitted.
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 rooms or walls. 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 submitted is one element detection, counted at job submission (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.