---
title: "Update Investigation"
method: PUT
path: "/incidents/v1/investigations/{investigation_id}"
tags: ["Investigations"]
---

# Update Investigation

`PUT /incidents/v1/investigations/{investigation_id}`

## Path parameters

- `investigation_id` string, required

## Request body

- S12IncidentsV1InvestigationsServiceUpdateInvestigationBody
  - `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.

- S12IncidentsV1UpdateInvestigationResponse

## 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)
