---
title: "Get Raw Digital Forms in Bulk"
method: GET
path: "/v1/form-instance/bulk/{form_id}/"
tags: ["Form Instances"]
---

# Get Raw Digital Forms in Bulk

`GET /v1/form-instance/bulk/{form_id}/`

Get the contents of multiple form instances for the same form in a format suitable for business analytics applications.

This endpoint is different from Get Digital Form in a couple ways:

* It returns the contents of multiple forms instances.
* If the form template has changed since the form instance was submitted, this will use the structure of the form template. If fields were deleted in the form template, they will not be returned, even if the form instance contains that field.
* Fields that refer to another object (Asset, Document, Site or User) are the the name of that object.
* Attachments and tables are empty values.

## Path parameters

- `form_id` integer, required

## Query parameters

- `skip` integer, nullable
- `limit` integer, nullable
- `sort_direction` 'asc' | 'desc' — Direction to sort the `sort_column` - ascending or descending.
- `sort_column` 'updated_at' | 'created_at' | 'id' — Which column to sort on
- `date_start` string, date-time, nullable
- `date_cut_off` string, date-time, nullable
- `query_mode` 'own' | 'shared' — Specify the search mode for the form instances.
- `external_project_id` string, nullable
- `external_company_id` string, nullable
- `external_only` boolean, nullable
- `project_id` integer, nullable
- `form_instance_status` 'draft' | 'draft_pending_review' | 'pending_review' | 'completed' | 'disapproved' — The status of the form instances.
- `submitted_user_id` integer, nullable

## Response `200`

Successful Response

- ApiGenericResponseFormInstanceBulkModel
  - `error` boolean — A boolean error indicator.
  - `message` string, nullable — Optional message.
  - `data` FormInstanceBulkModel
    - `headers` object, required — Dictionary mapping the ID to the header name
    - `data` object[], required — Each row represents a form instance represented as a dictionary of IDs mapping to values. The IDs are the same as found in the header

## Other responses

- `400` — Business Logic Error
- `403` — Permission Error
- `404` — Records Not Found
- `409` — Integrity Error or Data Conflict
- `422` — Validation Error

---

[API](https://skmtc.dev/salussafety/apis/salus-developer-api.md) · [All operations](https://skmtc.dev/salussafety/apis/salus-developer-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/salussafety/salus-developer-api/revisions/ef065f44da25/schema)
