---
title: "Create Issue (legacy)"
method: POST
path: "/tasks/v1/incidents"
tags: ["Issues"]
deprecated: true
---

# Create Issue (legacy)

`POST /tasks/v1/incidents`

> **Deprecated.**

## Request body

- S12TasksV1CreateIncidentRequest
  - `task_id` string — A UUID to identify the issue. Optional. If it is not provided, it will be automatically generated.
  - `title` string, required — Required. Title of the issue (maximum 255 characters).
  - `description` string — Optional. Description of the issue (maximum 500 characters).
  - `collaborators` S12TasksV1TaskCollaborator[] — The collaborators involved in this issue. Collaborators are users who have been assigned to the issue. The user will appear in the "Assignee" field in the issue. Only one user can be assigned to an issue at a time.
    - `collaborator_id` string — A UUID uniquely identifying this collaborator.
    - `collaborator_type` 'USER' | 'GROUP' | 'EXTERNAL_USER' | 'CONTRIBUTOR' — - USER: The collaborator is an internal user. - GROUP: The collaborator is a group. - EXTERNAL_USER: The collaborator is an external user. This happens when a task is assigned to an email address. - CONTRIBUTOR: The collaborator is a contributor. A contributor is an individual who raises a task anonymously. For example, creating an incident through the incident QR code functionality.
    - `assigned_role` 'ASSIGNEE' | 'CREATOR' — - ASSIGNEE: The collaborator has been assigned to a task. - CREATOR: The collaborator has created the task.
    - `user` S12TasksV1TaskUser — The user associated to the task. They could be a creator or assignee.
      - `user_id` string — The UUID of this user.
      - `firstname` string — The first name of the user.
      - `lastname` string — The last name of the user.
    - `group` S12TasksV1TaskGroup — The group that is assigned to a task.
      - `group_id` string — The UUID of this group.
      - `name` string — The name of the group
    - `external_user` S12TasksV1TaskExternalUser — The external user that is assigned to a task.
      - `id` string — The UUID uniquely identifying this external user.
      - `email` string — The email address of the external user.
    - `contributor` S12TasksV1TaskContributor
      - `id` string — The UUID uniquely identifying this contributor
      - `name` string — Optional. The contributor's name.
      - `email` string — Optional. The contributor's email address.
      - `contact` string — Optional. The contributor's (freetext) contact details.
  - `created_at` string, date-time — Optional. The date and time this issue was created. If no date is provided, the current time will be used. Must be sent in the Internet Date-Time format, more information about the type is available here: https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#timestamp.
  - `category_id` string, required — Required. The ID of the issue's category. Categories are configured at an organization level, and can be retrieved from the `GetCategories` endpoint. The issue will not be created if the category is missing, and an error will be returned.
  - `status_id` string — Optional. ID of the issue's status. If not set, this issue will be stored with the default status (Open). An issue can be open, in progress, or resolved, and these are represented by hardcoded UUID values. Open status: `547ed646-5e34-4732-bb54-a199d304368a`. In Progress status: `ca6f3bc7-b943-406e-8399-8a713b7e6268`. Resolved status: `450484b1-56cd-4784-9b49-a3cf97d0c0ad`.
  - `site_id` string — The ID of the site associated with the issue. Site IDs can be retrieved on platform.
  - `location` S12TasksV1TaskAddressLocation — The location of the task. The latitude and longitude in the `geo_position` object are required. All other fields are optional, but add extra context to the location on platform.
    - `name` string — The name of the task's location.
    - `thoroughfare` string — The thoroughfare of the location.
    - `sub_thoroughfare` string — The sub_thoroughfare of the location,
    - `locality` string — The locality of the location
    - `sub_locality` string — The sub_locality of the location
    - `administrative_area` string — The administrative_area of the location
    - `sub_administrative_area` string — The sub_administrative_area of the location
    - `postal_code` string — The postal_code of the location
    - `country` string — The country of the location
    - `iso_country_code` string — The iso_country_code of the location
    - `geo_position` S12CommonGeoPosition — A position is the fundamental geographical geometry construct.
      - `longitude` number, double — The geographical longitude
      - `latitude` number, double — The geographical latitude
      - `accuracy` integer — The accuracy in meters
  - `question_answers` S12TasksV1QuestionAnswer[] — Answers for questions on the issue.
    - `question_id` string — The ID of the question being answered.
    - `answer_text` S12TasksV1AnswerText — A type of answer for a custom question containing text data.
      - `text` string — The text that answers the question.
    - `answer_multiple_choice` S12TasksV1MultipleChoiceOption — MultipleChoiceOption represents a possible answer for a multiple choice question.
      - `id` string — The UUID of the multiple choice option.
      - `text` string — The text of the multiple choice option. This does not use the new `validator.string` option as question processing logic fails when symbols are substituted for similar-looking symbols.
  - `items` S12TasksV1Item[] — Optional. The category fields and questions that applied to this incident when it was created.
    - `id` string — The UUID of the item.
    - `name` string — Name of the item
    - `is_mandatory` boolean — Whether or not the item must be filled before submission
    - `type` 'ITEM_TYPE_UNSPECIFIED' | 'ITEM_TYPE_TITLE' | 'ITEM_TYPE_DESCRIPTION' | 'ITEM_TYPE_SITE' | 'ITEM_TYPE_MEDIA' | 'ITEM_TYPE_LOCATION' | 'ITEM_TYPE_QUESTION' | 'ITEM_TYPE_OCCURRED_AT' | 'ITEM_TYPE_ASSET' — - ITEM_TYPE_UNSPECIFIED: The item type is unspecified
    - `question_data` S12TasksV1Question — Question represents the question structure for a custom question.
      - `id` string — The UUID of the question.
      - `text` string — The text of the question being asked (e.g. "How many eggs are in a dozen?"). This does not use the new `validator.string` option as question processing logic fails when symbols are substituted for similar-looking symbols.
      - `type` 'QUESTION_TYPE_UNSPECIFIED' | 'QUESTION_TYPE_TEXT' | 'QUESTION_TYPE_MULTIPLE_CHOICE' — - QUESTION_TYPE_UNSPECIFIED: The question type is unspecified. This generally should not happen. - QUESTION_TYPE_TEXT: The question is text type. This question accepts freetext answers. - QUESTION_TYPE_MULTIPLE_CHOICE: The question is multiple choice. This question provides a list of options to choose from.
      - `is_mandatory` boolean — Whether the question is mandatory or not
      - `multiple_choice_options` S12TasksV1MultipleChoiceOptions — MultipleChoiceOptions is an explicit message for a set of MultipleChoiceOption's to use in a oneof field below.
        - `options` S12TasksV1MultipleChoiceOption[]
          - `id` string — The UUID of the multiple choice option.
          - `text` string — The text of the multiple choice option. This does not use the new `validator.string` option as question processing logic fails when symbols are substituted for similar-looking symbols.
    - `is_disabled` boolean — Whether or not the item is disabled and hidden from submission
  - `occurred_at` string, date-time — Optional. Date and time this incident occurred at
  - `asset_id` string — Optional. The ID of the asset associated with this issue.
  - `ai_generated` boolean — Optional. True when this issue is being created via an AI-assisted flow. The client declares AI involvement; the server persists the flag and surfaces it on Incident.ai_generated. Top-level marker for EU AI Act Article 50(2) machine-readable detectability (AI-522).

## Response `200`

A successful response.

- S12TasksV1CreateIncidentResponse
  - `incident_id` string

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