Returns a paginated list of extracted drawing regions within a project. A region is a bounding-box-delimited area detected on a sheet—such as a detail, plan view, section cut, or title block—along with any text extracted from that area. Filter by region type, drawing type, or layout type to focus on specific content patterns.
Sheet-scoped regions: To list regions belonging to a specific sheet, use the sub-resource endpoint GET /api/open/v1/projects/{projectId}/sheets/{sheetId}/regions. It accepts the same filter and pagination parameters as this endpoint (except sheetId becomes a path parameter and the sheets allowlist param is not available on that route).
Endpoint
GET https://plangrep.com/api/open/v1/projects/{projectId}/regions
Path Parameters
The unique identifier of the project whose regions you want to list.
Query Parameters
Maximum number of records to return per page. Must be between 1 and 500 .
Pagination cursor returned as nextCursor from a previous response. Omit to fetch the first page.
When true, artifact URL fields are stripped from each entity, reducing payload size.
Comma-separated list of sheet IDs to restrict results to regions on those sheets.
Restrict results to regions belonging to a single sheet.
Restrict results to regions belonging to a specific file.
Case-insensitive substring match on the parent file name.
Filter by parent file classification. One of: plans, specifications, documents, addenda, mixed, other.
Filter to regions on this specific 1-based page number. Minimum: 1.
Filter by the detected region type (e.g. detail, plan, section, elevation, schedule, title_block).
Filter by drawing discipline or type (e.g. architectural, structural, mechanical).
Filter by layout classification of the region.
Response
Returns a ProjectRegionEntityListResponse object.
Total number of regions matching the current filters across all pages.
The page size limit that was applied to this response.
The cursor value used for this page (echoed back from the request).
Opaque cursor to pass as cursor to retrieve the next page. null when there are no more pages.
Number of region entities actually returned in this response.
true if additional pages are available beyond this response.
Relay-style page info object. Cursor pointing to the first record in this page.
Cursor pointing to the last record in this page.
true if records exist before this page.
true if records exist after this page.
Data Fields
Array of extracted drawing region entities. Show ProjectRegionEntity fields
Unique identifier for this region.
ID of the sheet this region was detected on.
1-based page number within the source file.
Sheet number of the parent sheet (e.g. A1.01).
Human-readable label assigned to this region (e.g. DETAIL 3/A5.01).
Text extracted from this region. Always present; returns an empty string "" if no text was detected.
Normalized bounding box for the region (values in [0, 1] relative to page dimensions). Left edge, normalized to page width.
Top edge, normalized to page height.
Right edge, normalized to page width.
Bottom edge, normalized to page height.
Normalized bounding box for the region’s title/label area. Same structure as displayBox. May be null.
Array of artifact objects containing URLs to derived outputs (e.g. cropped region image). Omitted when compact=true.
Example Request
curl -X GET "https://plangrep.com/api/open/v1/projects/proj_abc123/regions?limit=50®ionType=detail&classification=plans" \
-H "Authorization: Bearer YOUR_API_TOKEN"
Example Response
{
"total" : 310 ,
"limit" : 50 ,
"cursor" : null ,
"nextCursor" : "eyJvZmZzZXQiOjUwfQ==" ,
"returnedCount" : 50 ,
"hasMore" : true ,
"pageInfo" : {
"startCursor" : "eyJvZmZzZXQiOjB9" ,
"endCursor" : "eyJvZmZzZXQiOjQ5fQ==" ,
"hasPreviousPage" : false ,
"hasNextPage" : true
},
"regions" : [
{
"regionId" : "region_001" ,
"fileId" : "file_001" ,
"sheetId" : "sheet_007" ,
"fileName" : "Architectural_Plans_SetA.pdf" ,
"pageNumber" : 12 ,
"sheetNumber" : "A5.01" ,
"label" : "DETAIL 3/A5.01" ,
"text" : "CONT. BEAD OF SEALANT AT ALL EDGES. SEE SPEC 07900." ,
"displayBox" : { "left" : 0.52 , "top" : 0.31 , "right" : 0.74 , "bottom" : 0.58 },
"titleDisplayBox" : { "left" : 0.52 , "top" : 0.58 , "right" : 0.74 , "bottom" : 0.62 },
"artifacts" : [
{ "type" : "region_crop" , "url" : "https://..." }
]
}
]
}