Skip to main content
Retrieves full detail for one CSI-like specification section. Use this endpoint when you need spec evidence, full section text, structured requirements, products, warnings, or facet text.
Section detail only exists for CSI-like specification sections. Outline-only headings such as 1.0 are intentionally filtered out and can return 404.

Endpoint

GET https://plangrep.com/api/open/v1/projects/{projectId}/specifications/{specId}/sections/{sectionId}

Path Parameters

projectId
string
required
The unique identifier of the project that owns the specification document.
specId
string
required
The unique identifier of the uploaded specification document.
sectionId
string
required
The unique identifier of the specification section to retrieve.

Query Parameters

compact
boolean
When true, artifact URL fields are stripped from the response.

Response

Returns an object containing the full specification section detail.
section
ProjectSpecificationSectionDetailEntity
The requested specification section detail.

Nested Schema Notes

Part
object
Parsed section part or article. Common fields include label, title, text, pageStart, and pageEnd.
Product
object
Product or material reference extracted from the section. Common fields include name, description, and supporting requirements.
SemanticRequirement
object
A normalized requirement with its text, optional label, and source location metadata when available.
Warning
object
A non-fatal issue with a machine-readable code and human-readable message.
FacetRequirement
object
Requirement extracted within a facet. Common fields include text, kind, and source metadata.
ProjectSpecificationSectionFacetEntity
object
Structured section facet with fields such as facetId, facetKey, facetKind, facetLabel, coverageKind, facetText, requirements, pageStart, and pageEnd.

Example Request

curl -X GET "https://plangrep.com/api/open/v1/projects/proj_abc123/specifications/spec_001/sections/section_001" \
  -H "Authorization: Bearer YOUR_API_TOKEN"

Example Response

{
  "section": {
    "sectionId": "section_001",
    "specId": "spec_001",
    "sectionNumber": "03 30 00",
    "sectionTitle": "Cast-In-Place Concrete",
    "pageStart": 45,
    "pageEnd": 62,
    "text": "SECTION 03 30 00 - CAST-IN-PLACE CONCRETE\n\nPART 1 - GENERAL\n...",
    "textLength": 84231,
    "parts": [
      {
        "label": "PART 1 - GENERAL",
        "title": "General",
        "text": "1.01 SUMMARY\nA. Section includes cast-in-place concrete..."
      }
    ],
    "products": [
      {
        "name": "Portland Cement",
        "description": "ASTM C150, Type I or II"
      }
    ],
    "submittals": [
      { "text": "Submit concrete mix designs before placement." }
    ],
    "references": [
      { "text": "ASTM C150" }
    ],
    "relatedSections": [
      { "text": "Section 03 20 00 - Concrete Reinforcing" }
    ],
    "qualityRequirements": [
      { "text": "Perform field quality control testing for each concrete placement." }
    ],
    "executionRequirements": [
      { "text": "Place concrete continuously between planned construction joints." }
    ],
    "warnings": [],
    "facets": [
      {
        "facetId": "facet_001",
        "facetKey": "part_1_general",
        "facetKind": "part",
        "facetLabel": "PART 1 - GENERAL",
        "coverageKind": "full",
        "facetText": "1.01 SUMMARY\nA. Section includes cast-in-place concrete..."
      }
    ],
    "artifacts": [
      {
        "type": "specification_file",
        "url": "https://...",
        "readWith": "plangrep_show_artifact_file"
      }
    ]
  }
}

Error Responses

StatusCodeDescription
400invalid_requestInvalid request parameters.
401unauthorizedMissing or invalid Bearer token.
404open_api_specification_not_foundNo specification document exists for this specId in the project.
404open_api_specification_section_not_foundNo CSI-like section exists for this sectionId in the specification document.
404specification_section_text_not_foundSection metadata exists, but full section text was not available from runtime.