Skip to main content

In the dashboard: open an inspection, then Additional Reports or Additional Information & Documents

The Hive Inspect API is a work in progress. It is available to a small group of accounts today, and the release for everyone is coming very soon. To ask for early access, message us from the chat bubble in your dashboard.
An attachment is a file or link added to an inspection. The API covers the two kinds you can add on an inspection in the dashboard.

The two kinds

Uploading a report can notify your client. It runs your “Additional report added” automations, the same as adding the report in the dashboard. If those automations email or text the client or their agent, each upload sends that message. Uploading a document never sends anything.
Private notes are not attachments. They are the notes field on the inspection.

List an inspection’s attachments

Each attachment has a kind, a name, and a url to download the file. Use kind=report or kind=document to list one kind, and visible_to_client=false to list only your inspector-only documents.
The url is a signed link that works for 1 hour. Do not store it. List the attachments again when you need a fresh link. A report that is only a link has no file, so its url is null.

List attachments across all inspections

To collect new files without asking each inspection in turn, use the account-wide list. It returns the same attachment objects, each with its inspection_id, newest change first:
  • updated_since returns only attachments added or changed since that time.
  • kind, visible_to_client and inspection_id narrow the list.
  • Attachments on deleted inspections and sample inspections are left out.
When you sync with updated_since, start a few minutes before your last sync so nothing is missed. A document’s id is unique within its inspection, so identify a document by inspection_id and id together.

Upload an attachment

Uploads use multipart/form-data, not JSON.
1

Upload a report

Send kind=report and a name. The description and the file are optional, so you can add a report that is only a link.
2

Upload a document

Send kind=document and the file. Add internal_only=true to keep it inspector-only, hidden from the client.
The response is the new attachment, with status 201.

Things to know

  • Send the right content type. The file’s content type must match its extension, for example application/pdf for a .pdf file. A mismatch returns 400.
  • File names are cleaned up. Spaces become underscores and special characters are removed, so Site Plan (v2).pdf is stored as Site_Plan_v2.pdf.
  • A file over the limit returns 413.
  • A report on an inspection that is not confirmed returns 400. Confirm the inspection first.
  • Attachments cannot be deleted or renamed through the API yet. Remove them in the dashboard.
Last modified on October 2, 2026