FAQ
Common questions about integrating with the BuildingMinds API. New here? Start with the Getting Started guide and the Data model overview.
How do I update or delete a record?
Re-submit the record with the same external ID. To update, send it again (fields are upserted); to delete, send it with eventType: <Entity>Deleted. See Updating and deleting records. Not every entity supports delete — Address, for example, has only Add/Update.
How do I identify my records across systems?
You assign each entity a stable external ID in your own system and send it with every record. BuildingMinds matches on that ID, so re-sending the same ID updates the record rather than duplicating it. Keep your external IDs stable and unique — they are how your system and BuildingMinds stay in sync.
Can I read my data back out through this API?
No — this is an ingestion (write) API. It accepts and validates the data you submit and lets you poll batch status, but it does not expose read-back/query endpoints for your entities. For a bulk export of your data, contact your BuildingMinds representative.
Are there webhooks or callbacks when processing finishes?
No. Processing is asynchronous and pull-based: track each submission by polling GET /batch/{batchId}/inbound until every record reaches Completed or Published.
Is there a file-upload option instead of calling each endpoint?
Yes. Download the data template, fill it in, and upload it — see the Download data template and Upload a file endpoints in the API Reference.
How is the API secured?
All requests are made over HTTPS/SSL, authenticated with an OAuth 2.0 client-credentials Bearer token (≈60-minute lifetime). See Token lifetime & security.
How are breaking changes handled?
BuildingMinds aims to avoid breaking changes to the API and data contracts. Where a change is unavoidable, it is communicated in advance.
