Bulk create extended cases

Prev Next
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.

Security
HTTP
Type bearer
Body parameters

The request for creating extended cases in bulk.

Expand All
object

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_key
string

The deduplication key to identify the case. If a case with the same deduplication key already exists, the operation will fail.

Examplededuplication_identifier_12345
title
string

The case title.

ExampleCompromised user device
description
string

The case description.

ExampleA user device is infected with malware
state
object (case_managementcasesv1State)
value
string

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
severity
object (v1Severity)
value
string

The severity of the case. The possible values are: informational, low, medium, high, critical.

Examplehigh
assignee
string

The email address of the case assignee.

Examplejohn@torq.io
reporter
object (v1Actor)
user
object (ActorUser)
email
string

The email of the actor. Only applicable when the actor is a user.

Examplejane@torq.io
sla
string (int64)

The case resolution SLA duration in seconds.

Example86400
category
string

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
key
string

The key of the custom field.

Examplefoo
case_id
integer (int32)

The ID of the case to which the custom field applies.

Example123
value
string

The value of the custom field.

Examplebar
schema
object (v1CustomFieldSchema)
type
string

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_text
object (CustomFieldSchemaShortTextConstraints)

The constraints applied to the custom field value if the type is TYPE_SHORT_TEXT.

min_length
integer (int32)

The minimum length of the custom field value.

Example1
max_length
integer (int32)

The maximum length of the custom field value.

Example255
regex
string

The regular expression that the custom field value must match.

Example^foo$
single_select
object (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_id
integer (int32)

The ID of the case the quick action belongs to.

title
string

The title of the quick action.

workflow_id
string

The ID of the workflow that will be executed when the quick action is selected.

runbook_id
string

The runbook associated with the case.

custom_sla_timers
Array of object (v1SlaTimer)

The case custom SLA timers.

object
name
string

The name of the custom SLA timer.

case_id
integer (int32)

The ID of the case to which the custom SLA timer applies.

target
string (int64)

The duration, in seconds, from the timer start until expiration.

state
object (case_managementsla_timersv1State)
id
string

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_lead
boolean

Indicates whether the timer is a lead timer.

notes
Array of object (v1Note)

The case notes.

object
id
string

The unique identifier of the note.

case_id
integer (int32)

The unique identifier of the case.

Example28
title
string

The note title.

Min length1
Max length100
ExampleLorem Ipsum
content
string

The note content.

Max length65535
ExampleLorem 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_by
object (v1Actor)
user
object (ActorUser)
email
string

The email of the actor. Only applicable when the actor is a user.

Examplejane@torq.io
updated_by
object (v1Actor)
user
object (ActorUser)
email
string

The email of the actor. Only applicable when the actor is a user.

Examplejane@torq.io
resolution_summary
object (v1ResolutionSummary)
reason
string

The reason the case was resolved or closed (up to 100 characters).

Exampleuser device was cleaned
details
string

The detailed overview of the case resolution.

ExampleThe user device was cleaned using the following steps: ...
created_at
string (date-time)

The timestamp when the case was created. If left empty, defaults to the current time during the bulk case creation operation.

updated_at
string (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_at
string (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.

reviewer
string

The email of the case reviewer.

Examplejohn@torq.io
Responses
200

A successful response.

Expand All
object

The response returned when creating extended cases in bulk.

operation
object (v1BulkCreateOperation)
id
string

The operation ID to track the progress of the bulk creation.

name
string

The operation name.

state
string

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_object
object (v1BulkCreateCaseResponse)

The response for the bulk case creation operation.

case_ids
Array of string

The IDs of the cases created.

string
error
string

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 All
object
code
integer (int32)
message
string
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" }

@type
string

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