AvailableFor EveryoneDocument intake

Document intake

How files reach PermitOS, what metadata is stored, and what happens when document extraction is not configured.

Last updated 2026-05-11

Storage

Uploads go to the private permit-documents bucket. Each object path is namespaced by organization_id and project_id.

Metadata

Each document row stores filename, size, mime_type, category (e.g. application_form, site_plan, floor_plan, elevations, owner_authorization), uploaded_by, and extraction_status.

Extraction status

pending, processing, succeeded, failed, not_configured. When the extraction engine is not configured, all new uploads land in not_configured. Document analysis is not faked: PermitOS shows ‘Document extraction not configured. File metadata and checklist matching are available.’

Checklist matching

Required document categories per project type are matched against uploaded categories. Missing categories drive precheck issues without needing document content.

Related docs