---
title: "Bulk create extended cases"
slug: "bulk-create-extended-cases-1"
updated: 2025-04-07T19:27:32Z
published: 2025-04-07T19:27:32Z
canonical: "developers.torq.io/bulk-create-extended-cases-1"
---
> ## Documentation Index
> Fetch the complete documentation index at: https://developers.torq.io/llms.txt
> Use this file to discover all available pages before exploring further.
# Bulk create extended cases
Post/v1alpha/cases/bulk_long_running
Creates up to 500 extended cases per bulk operation. The extended case is an object that includes a case and all its associated details, such as the runbook, notes, quick actions, and more. This API call returns an operation ID which can be used with `Retrieve bulk case creation state` or `List bulk case creation state` to track the operation progress. Bulk case creation is only available upon request - contact Torq Support for more information.
SecurityHTTPType bearer
Body parameters
The request for creating extended cases in bulk.
Expand Allobject
The request for creating extended cases in bulk.
cases Array of object (v1CreateExtendedCaseLongRunningRequest)
The cases to be created.
object
The request for creating an extended case.
deduplication_keystring
The deduplication key to identify the case. If a case with the same deduplication key already exists, the operation will fail.
Examplededuplication_identifier_12345
titlestring
The case title.
ExampleCompromised user device
descriptionstring
The case description.
ExampleA user device is infected with malware
stateobject (case_managementcasesv1State) valuestring
The name of the state. The default states are: new, in progress, on hold, resolved, closed. If your workspace has custom states, you can specify them by name.
Examplenew
severityobject (v1Severity) valuestring
The severity of the case. The possible values are: informational, low, medium, high, critical.
Examplehigh
assigneestring
The email address of the case assignee.
Examplejohn@torq.io
reporterobject (v1Actor)
userobject (ActorUser) emailstring
The email of the actor. Only applicable when the actor is a user.
Examplejane@torq.io
slastring (int64)
The case resolution SLA duration in seconds.
Example86400
categorystring
The case category.
Examplemalware
tags Array of string
The case tags.
Example[
"user",
"phishing"
]string
custom_fields Array of object (custom_fieldsv1CustomField)
The case custom fields.
object keystring
The key of the custom field.
Examplefoo
case_idinteger (int32)
The ID of the case to which the custom field applies.
Example123
valuestring
The value of the custom field.
Examplebar
schemaobject (v1CustomFieldSchema) typestring
The custom field type enum.
- TYPE_UNSPECIFIED: The custom field value type is unspecified.
- TYPE_SHORT_TEXT: The custom field value type is text.
- TYPE_NUMBER: The custom field value type is number.
- TYPE_BOOLEAN: The custom field value type is boolean.
- TYPE_TIMESTAMP: The custom field value type is timestamp.
- TYPE_LIST_SINGLE_SELECT: The custom field value type is list single select.
Valid values[
"TYPE_UNSPECIFIED",
"TYPE_SHORT_TEXT",
"TYPE_NUMBER",
"TYPE_BOOLEAN",
"TYPE_TIMESTAMP",
"TYPE_LIST_SINGLE_SELECT"
]Default"TYPE_UNSPECIFIED"
short_textobject (CustomFieldSchemaShortTextConstraints)
The constraints applied to the custom field value if the type is TYPE_SHORT_TEXT.
min_lengthinteger (int32)
The minimum length of the custom field value.
Example1
max_lengthinteger (int32)
The maximum length of the custom field value.
Example255
regexstring
The regular expression that the custom field value must match.
Example^foo$
single_selectobject (CustomFieldSchemaSingleSelectConstraints)
The constraints applied to the custom field value if the type is TYPE_LIST_SINGLE_SELECT.
allowed_values Array of string
The list of acceptable values for the custom field.
Example[
"foo",
"bar"
]string
quick_actions Array of object (v1QuickAction)
The case quick actions.
object case_idinteger (int32)
The ID of the case the quick action belongs to.
titlestring
The title of the quick action.
workflow_idstring
The ID of the workflow that will be executed when the quick action is selected.
runbook_idstring
The runbook associated with the case.
custom_sla_timers Array of object (v1SlaTimer)
The case custom SLA timers.
object namestring
The name of the custom SLA timer.
case_idinteger (int32)
The ID of the case to which the custom SLA timer applies.
targetstring (int64)
The duration, in seconds, from the timer start until expiration.
stateobject (case_managementsla_timersv1State) idstring
The state of the custom SLA timer.
- STATE_ID_NOT_RUNNING: The custom SLA timer isn't running.
- STATE_ID_RUNNING: The custom SLA timer is running.
Valid values[
"STATE_ID_NOT_RUNNING",
"STATE_ID_RUNNING"
]Default"STATE_ID_NOT_RUNNING"
is_leadboolean
Indicates whether the timer is a lead timer.
notes Array of object (v1Note)
The case notes.
object idstring
The unique identifier of the note.
case_idinteger (int32)
The unique identifier of the case.
Example28
titlestring
The note title.
Min length1Max length100ExampleLorem Ipsum
contentstring
The note content.
Max length65535ExampleLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
created_byobject (v1Actor)
userobject (ActorUser) emailstring
The email of the actor. Only applicable when the actor is a user.
Examplejane@torq.io
updated_byobject (v1Actor)
userobject (ActorUser) emailstring
The email of the actor. Only applicable when the actor is a user.
Examplejane@torq.io
resolution_summaryobject (v1ResolutionSummary) reasonstring
The reason the case was resolved or closed (up to 100 characters).
Exampleuser device was cleaned
detailsstring
The detailed overview of the case resolution.
ExampleThe user device was cleaned using the following steps: ...
created_atstring (date-time)
The timestamp when the case was created. If left empty, defaults to the current time during the bulk case creation operation.
updated_atstring (date-time)
The timestamp when the case was last updated. If left empty, defaults to the current time during the bulk case creation operation.
completed_atstring (date-time)
The timestamp when the case was resolved or closed. If left empty, defaults to the current time during the bulk case creation operation.
reviewerstring
The email of the case reviewer.
Examplejohn@torq.io
Responses200
A successful response.
Expand Allobject
The response returned when creating extended cases in bulk.
operationobject (v1BulkCreateOperation) idstring
The operation ID to track the progress of the bulk creation.
namestring
The operation name.
statestring
The state of the bulk case creation operation.
- BULK_CREATE_STATE_UNSPECIFIED: Default value.
- BULK_CREATE_STATE_PENDING: The operation is currently running.
- BULK_CREATE_STATE_SUCCEEDED: The operation succeeded.
- BULK_CREATE_STATE_FAILED: The operation failed.
Valid values[
"BULK_CREATE_STATE_UNSPECIFIED",
"BULK_CREATE_STATE_PENDING",
"BULK_CREATE_STATE_SUCCEEDED",
"BULK_CREATE_STATE_FAILED"
]Default"BULK_CREATE_STATE_UNSPECIFIED"
api_objectobject (v1BulkCreateCaseResponse)
The response for the bulk case creation operation.
case_ids Array of string
The IDs of the cases created.
string
errorstring
The error response for the bulk case creation operation.
401
Invalid bearer token. If you receive this message more than once try creating a new Client ID/Client Secret or generating a new bearer token.
object
403
You don't have permission to access this resource.
object
default
An unexpected error response.
Expand Allobject codeinteger (int32)
messagestring
details Array of object (protobufAny) object
`Any` contains an arbitrary serialized protocol buffer message along with a URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values in the form of utility functions or additional generated methods of the Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo))
Example 2: Pack and unpack a message in Java.
Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class))
Example 3: Pack and unpack a message in Python.
foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo any, err := anypb.New(foo) if err != nil ... foo := &pb.Foo if err := any.UnmarshalTo(foo); err != nil
The pack methods provided by protobuf library will by default use 'type.googleapis.com/full.type.name' as the type URL and the unpack methods only use the fully qualified type name after the last '/' in the type URL, for example "foo.bar.com/x/y.z" will yield type name "y.z".
JSON
The JSON representation of an `Any` value uses the regular representation of the deserialized, embedded message, with an additional field `@type` which contains the type URL. Example:
package google.profile; message Person
{ "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }
If the embedded message type is well-known and has a custom JSON representation, that representation will be embedded adding a field `value` which holds the custom JSON in addition to the `@type` field. Example (for message [google.protobuf.Duration][]):
{ "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
@typestring
A URL/resource name that uniquely identifies the type of the serialized protocol buffer message. This string must contain at least one "/" character. The last segment of the URL's path must represent the fully qualified name of the type (as in `path/google.protobuf.Duration`). The name should be in a canonical form (e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary all types that they expect it to use in the context of Any. However, for URLs which use the scheme `http`, `https`, or no scheme, one can optionally set up a type server that maps type URLs to message definitions as follows:
- If no scheme is provided, `https` is assumed.
- An HTTP GET on the URL must yield a [google.protobuf.Type][]
value in binary format, or produce an error.
- Applications are allowed to cache lookup results based on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in the official protobuf release, and it is not used for type URLs beginning with type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme) might be used with implementation specific semantics.
property*object additionalProperties