public sealed class CreateTaskRequest : IMessage<CreateTaskRequest>, IEquatable<CreateTaskRequest>, IDeepCloneable<CreateTaskRequest>, IBufferMessage, IMessage
Reference documentation and code samples for the Google Cloud Tasks v2 API class CreateTaskRequest.
Request message for [CreateTask][google.cloud.tasks.v2.CloudTasks.CreateTask].
Implements
IMessageCreateTaskRequest, IEquatableCreateTaskRequest, IDeepCloneableCreateTaskRequest, IBufferMessage, IMessageNamespace
Google.Cloud.Tasks.V2Assembly
Google.Cloud.Tasks.V2.dll
Constructors
CreateTaskRequest()
public CreateTaskRequest()
CreateTaskRequest(CreateTaskRequest)
public CreateTaskRequest(CreateTaskRequest other)
Parameter | |
---|---|
Name | Description |
other | CreateTaskRequest |
Properties
Parent
public string Parent { get; set; }
Required. The queue name. For example:
projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID
The queue must already exist.
Property Value | |
---|---|
Type | Description |
string |
ParentAsQueueName
public QueueName ParentAsQueueName { get; set; }
Property Value | |
---|---|
Type | Description |
QueueName |
ResponseView
public Task.Types.View ResponseView { get; set; }
The response_view specifies which subset of the [Task][google.cloud.tasks.v2.Task] will be returned.
By default response_view is [BASIC][google.cloud.tasks.v2.Task.View.BASIC]; not all information is retrieved by default because some data, such as payloads, might be desirable to return only when needed because of its large size or because of the sensitivity of data that it contains.
Authorization for [FULL][google.cloud.tasks.v2.Task.View.FULL] requires
cloudtasks.tasks.fullView
Google IAM
permission on the [Task][google.cloud.tasks.v2.Task] resource.
Property Value | |
---|---|
Type | Description |
TaskTypesView |
Task
public Task Task { get; set; }
Required. The task to add.
Task names have the following format:
projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID
.
The user can optionally specify a task
[name][google.cloud.tasks.v2.Task.name]. If a name is not specified then
the system will generate a random unique task id, which will be set in the
task returned in the [response][google.cloud.tasks.v2.Task.name].
If [schedule_time][google.cloud.tasks.v2.Task.schedule_time] is not set or is in the past then Cloud Tasks will set it to the current time.
Task De-duplication:
Explicitly specifying a task ID enables task de-duplication. If a task's ID is identical to that of an existing task or a task that was deleted or executed recently then the call will fail with [ALREADY_EXISTS][google.rpc.Code.ALREADY_EXISTS]. If the task's queue was created using Cloud Tasks, then another task with the same name can't be created for ~1hour after the original task was deleted or executed. If the task's queue was created using queue.yaml or queue.xml, then another task with the same name can't be created for ~9days after the original task was deleted or executed.
Because there is an extra lookup cost to identify duplicate task names, these [CreateTask][google.cloud.tasks.v2.CloudTasks.CreateTask] calls have significantly increased latency. Using hashed strings for the task id or for the prefix of the task id is recommended. Choosing task ids that are sequential or have sequential prefixes, for example using a timestamp, causes an increase in latency and error rates in all task commands. The infrastructure relies on an approximately uniform distribution of task ids to store and serve tasks efficiently.
Property Value | |
---|---|
Type | Description |
Task |