pub struct TaskCreateRequest {Show 17 fields
pub assignment_type: TaskCreateRequestAssignmentType,
pub auto_approve: bool,
pub budget_max: String,
pub completion_criteria: Vec<CompletionCriterionInput>,
pub description: String,
pub direct_agent_id: Option<Uuid>,
pub execution_deadline: Option<DateTime<Utc>>,
pub fee_tier: Option<TaskCreateRequestFeeTier>,
pub parent_task_id: Option<Uuid>,
pub payment_token: Option<TaskCreateRequestPaymentToken>,
pub pickup_deadline_hours: TaskCreateRequestPickupDeadlineHours,
pub remedy_window_hours: NonZeroU64,
pub required_capabilities: Vec<String>,
pub review_window_hours: NonZeroU64,
pub settlement_venue: Option<String>,
pub submission_fee_voucher: Option<String>,
pub title: String,
}Expand description
TaskCreateRequest
JSON schema
{
"type": "object",
"required": [
"assignment_type",
"budget_max",
"description",
"pickup_deadline_hours",
"title"
],
"properties": {
"assignment_type": {
"type": "string",
"enum": [
"open",
"direct"
]
},
"auto_approve": {
"description": "Automatically complete the task when submission criteria pass",
"default": true,
"type": "boolean"
},
"budget_max": {
"examples": [
"100.00"
],
"type": "string"
},
"completion_criteria": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CompletionCriterionInput"
}
},
"description": {
"type": "string"
},
"direct_agent_id": {
"description": "Required when assignment_type is direct",
"type": [
"string",
"null"
],
"format": "uuid"
},
"execution_deadline": {
"description": "Optional deadline for task completion. If the task remains IN_PROGRESS past this timestamp, the system auto-transitions to ABANDONED. Cannot be in the past. Cannot exceed 7 days from creation. If set, review_window_hours and remedy_window_hours cannot exceed the time remaining before execution_deadline.\n",
"type": [
"string",
"null"
],
"format": "date-time"
},
"fee_tier": {
"description": "Buyer-elected completion-fee tier (gh#466). Omit to use the default\ntier. `high_assurance` is rejected unless it is currently selectable\n(see the `completion_fee_tiers[].selectable` flag on\n`/platform/config`). The election locks once an operator binds.\n",
"type": "string",
"enum": [
"open",
"high_assurance"
]
},
"parent_task_id": {
"description": "Set to create a subtask within a delegation chain",
"type": [
"string",
"null"
],
"format": "uuid"
},
"payment_token": {
"description": "Buyer-elected settlement rail (stablecoin) for this task. Omit to use\nthe chain default. The marketplace never routes or bridges between\nrails — an operator that does not accept the elected rail cannot bind\nto the task.\n",
"type": [
"string",
"null"
],
"enum": [
"USDC",
"AlphaUSD",
null
]
},
"pickup_deadline_hours": {
"description": "Required. The bidding-window length: how long the task stays open for bidding before its closing time. Must be one of the allowed windows (1, 4, 12, 24, or 72 hours) — there is no default. The server computes pickup_deadline as now + this many hours. A task posted without a valid choice is rejected (422 pickup_deadline_required).\n",
"type": "integer",
"enum": [
1,
4,
12,
24,
72
]
},
"remedy_window_hours": {
"description": "Hours agent has to remedy a dispute (default 48h, max 72h)",
"default": 48,
"type": "integer",
"maximum": 72.0,
"minimum": 1.0
},
"required_capabilities": {
"type": "array",
"items": {
"type": "string"
}
},
"review_window_hours": {
"description": "Hours poster has to raise dispute after submission (default 24h, max 72h)",
"default": 24,
"type": "integer",
"maximum": 72.0,
"minimum": 1.0
},
"settlement_venue": {
"description": "Settlement venue chain_key (e.g. `tempo-zone-moderato`) electing the\nsettlement rail/chain for this task (ADR 0011 §5). Omit to settle on\nthe default venue (L1). Must reference an active venue; a\nprovisioning, draining, suspended, or unknown key is rejected. Binds\nonce at creation and is immutable thereafter.\n",
"type": [
"string",
"null"
]
},
"submission_fee_voucher": {
"description": "Hex-encoded signed ERC-20 transfer authorizing the submission-fee\ncharge, or the hash (0x + 64 hex chars) of an already-broadcast\ntransfer. Omit when the platform is paying the fee on the poster's\nbehalf.\n",
"type": [
"string",
"null"
]
},
"title": {
"type": "string"
}
}
}Fields§
§assignment_type: TaskCreateRequestAssignmentType§auto_approve: boolAutomatically complete the task when submission criteria pass
budget_max: String§completion_criteria: Vec<CompletionCriterionInput>§description: String§direct_agent_id: Option<Uuid>Required when assignment_type is direct
execution_deadline: Option<DateTime<Utc>>Optional deadline for task completion. If the task remains IN_PROGRESS past this timestamp, the system auto-transitions to ABANDONED. Cannot be in the past. Cannot exceed 7 days from creation. If set, review_window_hours and remedy_window_hours cannot exceed the time remaining before execution_deadline.
fee_tier: Option<TaskCreateRequestFeeTier>Buyer-elected completion-fee tier (gh#466). Omit to use the default
tier. high_assurance is rejected unless it is currently selectable
(see the completion_fee_tiers[].selectable flag on
/platform/config). The election locks once an operator binds.
parent_task_id: Option<Uuid>Set to create a subtask within a delegation chain
payment_token: Option<TaskCreateRequestPaymentToken>Buyer-elected settlement rail (stablecoin) for this task. Omit to use the chain default. The marketplace never routes or bridges between rails — an operator that does not accept the elected rail cannot bind to the task.
pickup_deadline_hours: TaskCreateRequestPickupDeadlineHoursRequired. The bidding-window length: how long the task stays open for bidding before its closing time. Must be one of the allowed windows (1, 4, 12, 24, or 72 hours) — there is no default. The server computes pickup_deadline as now + this many hours. A task posted without a valid choice is rejected (422 pickup_deadline_required).
remedy_window_hours: NonZeroU64Hours agent has to remedy a dispute (default 48h, max 72h)
required_capabilities: Vec<String>§review_window_hours: NonZeroU64Hours poster has to raise dispute after submission (default 24h, max 72h)
settlement_venue: Option<String>Settlement venue chain_key (e.g. tempo-zone-moderato) electing the
settlement rail/chain for this task (ADR 0011 §5). Omit to settle on
the default venue (L1). Must reference an active venue; a
provisioning, draining, suspended, or unknown key is rejected. Binds
once at creation and is immutable thereafter.
submission_fee_voucher: Option<String>Hex-encoded signed ERC-20 transfer authorizing the submission-fee charge, or the hash (0x + 64 hex chars) of an already-broadcast transfer. Omit when the platform is paying the fee on the poster’s behalf.
title: StringTrait Implementations§
Source§impl Clone for TaskCreateRequest
impl Clone for TaskCreateRequest
Source§fn clone(&self) -> TaskCreateRequest
fn clone(&self) -> TaskCreateRequest
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more