---
title: "Update Investigations (bulk)"
method: PUT
path: "/incidents/v1/investigations"
tags: ["Investigations"]
---

# Update Investigations (bulk)

`PUT /incidents/v1/investigations`

## Request body

- S12IncidentsV1UpdateInvestigationsRequest
  - `ops` S12IncidentsV1UpdateInvestigationRequest[] — required. the set of operations to apply
    - `investigation_id` string — required. the ID of the investigation to update
    - `operation` S12IncidentsV1UpdateInvestigationOperation
      - `set_title` S12IncidentsV1SetTitleOperation
        - `title` string — optional. the updated title of the investigation
      - `set_description` S12IncidentsV1SetDescriptionOperation
        - `description` string — required. the updated description of the investigation
      - `set_status` S12IncidentsV1SetStatusOperation
        - `status_id` string — required. The ID of the status to set for the investigation
      - `link_actions` S12IncidentsV1LinkActionsOperation
        - `action_ids` string[] — required. The IDs of the actions to link to the investigation
      - `unlink_actions` S12IncidentsV1UnlinkActionsOperation
        - `action_ids` string[] — required. The IDs of the actions to unlink from the investigation
      - `link_issues` S12IncidentsV1LinkIssuesOperation
        - `issue_ids` string[] — required. The IDs of the issues to link to the investigation
      - `unlink_issues` S12IncidentsV1UnlinkIssuesOperation
        - `issue_ids` string[] — required. The IDs of the issues to unlink from the investigation
      - `link_inspections` S12IncidentsV1LinkInspectionsOperation
        - `inspection_ids` string[] — required. The IDs of the inspections to link to the investigation
      - `unlink_inspections` S12IncidentsV1UnlinkInspectionsOperation
        - `inspection_ids` string[] — required. The IDs of the inspections to unlink from the investigation
      - `add_media` S12IncidentsV1AddMediaOperation
        - `media` S12IncidentsV1MediaMetadata[] — required. The the media objects to add to the investigation
          - `media_id` string — The ID of the media. Must be generated by the caller
          - `filename` string — The filename of the media (including extension)
          - `media_type` 'MEDIA_TYPE_IMAGE' | 'MEDIA_TYPE_VIDEO' | 'MEDIA_TYPE_PDF' | 'MEDIA_TYPE_DOCX' | 'MEDIA_TYPE_XLSX' | 'MEDIA_TYPE_PPTX' | 'MEDIA_TYPE_CSV' — - MEDIA_TYPE_IMAGE: An image file (GIF, JPG, PNG, WEBP). - MEDIA_TYPE_VIDEO: A video file (MP4, MOV). - MEDIA_TYPE_PDF: A PDF document. - MEDIA_TYPE_DOCX: A Microsoft Word document (DOCX, DOC). - MEDIA_TYPE_XLSX: A Microsoft Excel spreadsheet (XLSX, XLS). - MEDIA_TYPE_PPTX: A Microsoft PowerPoint presentation (PPTX, PPT). - MEDIA_TYPE_CSV: A CSV file.
      - `remove_media` S12IncidentsV1RemoveMediaOperation
        - `media_ids` string[] — required. The IDs of the media to remove from the investigation
      - `set_field` S12IncidentsV1SetFieldOperation
        - `content` S12IncidentsV1FieldContent
          - `field_id` string — unique identifier for the field
          - `title` string — title of the field
          - `text` S12IncidentsV1TextFieldContent
            - `text` string — The text content for this field instance
      - `delete_field` S12IncidentsV1DeleteFieldOperation
        - `field_id` string — required. the ID of the field to delete
      - `set_detail_field` S12IncidentsV1SetDetailFieldOperation
        - `content` S12IncidentsV1DetailFieldContent
          - `field_id` string — unique identifier for the detail field
          - `title` string — title of the detail field
          - `data_type` 'FIELD_VALUE_TYPE_UNSPECIFIED' | 'FIELD_VALUE_TYPE_STRING' | 'FIELD_VALUE_TYPE_MONEY' | 'FIELD_VALUE_TYPE_TIMESTAMP' | 'FIELD_VALUE_TYPE_USER_ID' | 'FIELD_VALUE_TYPE_SELECT' | 'FIELD_VALUE_TYPE_TEMPLATE_ID' | 'FIELD_VALUE_TYPE_MULTI_SELECT' | 'FIELD_VALUE_TYPE_SITE' | 'FIELD_VALUE_TYPE_MULTI_SITE' | 'FIELD_VALUE_TYPE_INTEGER' | 'FIELD_VALUE_TYPE_ADDRESS' | 'FIELD_VALUE_TYPE_TIMEZONE' | 'FIELD_VALUE_TYPE_CONTACT_DETAILS' — Type of FieldValue. Defaults to type String. - FIELD_VALUE_TYPE_UNSPECIFIED: Field value type unspecified. - FIELD_VALUE_TYPE_STRING: Field value type string. - FIELD_VALUE_TYPE_MONEY: Field value type money. - FIELD_VALUE_TYPE_TIMESTAMP: Field value type timestamp. - FIELD_VALUE_TYPE_USER_ID: Field value type user ID. - FIELD_VALUE_TYPE_SELECT: Field value type select - FIELD_VALUE_TYPE_TEMPLATE_ID: Field value type template ID. - FIELD_VALUE_TYPE_MULTI_SELECT: Field value type multi-select - FIELD_VALUE_TYPE_SITE: Field value type site - FIELD_VALUE_TYPE_MULTI_SITE: Field value type multi-site - FIELD_VALUE_TYPE_INTEGER: Field value type integer - FIELD_VALUE_TYPE_ADDRESS: Field value type address. - FIELD_VALUE_TYPE_TIMEZONE: Field value type timezone - FIELD_VALUE_TYPE_CONTACT_DETAILS: Field value type contact details
          - `single_select` S12IncidentsV1SingleSelectDetailFieldContent
            - `selected` string — the selected option
            - `options` string[] — the repeated list of string options available
          - `multi_select` S12IncidentsV1MultiSelectDetailFieldContent
            - `selected` string[] — the selected options
            - `options` string[] — the repeated list of string options available
          - `date_time` S12IncidentsV1DateTimeDetailFieldContent
            - `datetime` string, date-time — the datetime content
          - `site` S12IncidentsV1SiteDetailFieldContent
            - `uuid` string — the uuid content
            - `name` string — the human-readable name of the site
          - `multi_site` S12IncidentsV1MultiSiteDetailFieldContent
            - `uuid` string[] — the uuid content
            - `names` object — the human-readable names of the sites
      - `link_courses` S12IncidentsV1LinkCoursesOperation
        - `course_ids` string[] — required. The IDs of the training courses to link to the investigation. Training courses use MongoDB ObjectIDs (24-char hex strings), not UUIDs. len min is 24 to enforce the ObjectID length; the validator requires min < max so max is 100.
      - `unlink_courses` S12IncidentsV1UnlinkCoursesOperation
        - `course_ids` string[] — required. The IDs of the training courses to unlink from the investigation. Training courses use MongoDB ObjectIDs (24-char hex strings), not UUIDs. len min is 24 to enforce the ObjectID length; the validator requires min < max so max is 100.
    - `updated_at` string, date-time — optional. The time that the update has occurred at.

## Response `200`

A successful response.

- S12IncidentsV1UpdateInvestigationsResponse

## Other responses

- `default` — An unexpected error response.

---

[API](https://skmtc.net/safetyculture/apis/safetyculture-api.md) · [All operations](https://skmtc.net/safetyculture/apis/safetyculture-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/safetyculture/safetyculture-api/revisions/5be91df61ded/schema)
