fieldtask_get_operation
Read-only- Permissions
- REST equivalent
GET /public/v1/operations/{resource_id}- Safe retries
- Reads only; safe to repeat
fieldtask_get_operation lets an AI client confirm what a create call did: which record it saved, and the status of follow-up work such as geocoding an address or synchronization with a connected system.
Every create tool returns an operation_id. Ask the client to "check the operation" after a create, or when you're not sure a create went through, instead of asking it to create the record again.
Same checks and results as REST GET /public/v1/operations/{resource_id}.
Permissions
The tool appears whenever the connection can use at least one read tool. Reading a particular operation also needs read access to the kind of record it created, for example jobs:read for a job. Only operations created through the same connection, approved by the same person, can be read.
| Permission | Dependency in the permission map |
|---|
Arguments
Arguments for fieldtask_get_operation. Descriptions are the text your AI client receives.
idstring (uuid)requiredUse operation_id returned by the earlier create call.
Additional properties are rejected.
Result
data.local_status is always committed: the record exists in FieldTask. data.integration.status describes the follow-up work; see Get an operation (REST) for every value.
Operation results are kept for seven days. After that the tool returns operation_result_expired, which doesn't mean the create failed.
Structured result of fieldtask_get_operation (structuredContent).
dataOperationrequired
Tool annotations
| Annotation | Value | Meaning |
|---|---|---|
destructiveHint | false | Never modifies or removes existing records. |
idempotentHint | true | Repeating the same call has no further effect. |
openWorldHint | false | Works only within FieldTask. |
readOnlyHint | true | Only reads data. |
Full tool definition (JSON)
{
"annotations": {
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": false,
"readOnlyHint": true
},
"description": "Recover your committed operation on this connection. Current read permission is required. Local commit and integration delivery are separate.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"id": {
"description": "Use operation_id returned by the earlier create call.",
"format": "uuid",
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "fieldtask_get_operation",
"outputSchema": {
"$defs": {
"Integration": {
"additionalProperties": false,
"allOf": [
{
"else": {
"properties": {
"targets": {
"minItems": 1
}
}
},
"if": {
"properties": {
"status": {
"const": "not_applicable"
}
}
},
"then": {
"properties": {
"targets": {
"maxItems": 0
}
}
}
}
],
"description": "Status of the synchronization attempts tracked by this operation. For quotes, separate web-app synchronization may continue after an initial blocked attempt; this status is not a complete history of the record in the connected CRM.",
"properties": {
"status": {
"enum": [
"not_applicable",
"pending",
"succeeded",
"partial",
"blocked",
"failed",
"outcome_unknown"
]
},
"targets": {
"items": {
"$ref": "#/$defs/IntegrationTarget"
},
"maxItems": 100,
"minItems": 0,
"type": "array"
},
"updated_at": {
"$ref": "#/$defs/UtcTimestamp"
}
},
"required": [
"status",
"updated_at",
"targets"
],
"type": "object"
},
"IntegrationTarget": {
"additionalProperties": false,
"allOf": [
{
"if": {
"properties": {
"status": {
"enum": [
"pending",
"succeeded"
]
}
},
"required": [
"status"
]
},
"then": {
"properties": {
"error_code": {
"const": null
}
}
}
}
],
"properties": {
"error_code": {
"enum": [
null,
"provider_unavailable",
"authorization_required",
"invalid_upstream_data",
"reconciliation_required",
"configuration_required"
]
},
"id": {
"format": "uuid",
"type": "string"
},
"status": {
"enum": [
"pending",
"succeeded",
"blocked",
"failed",
"outcome_unknown"
]
}
},
"required": [
"id",
"status",
"error_code"
],
"type": "object"
},
"Operation": {
"additionalProperties": false,
"allOf": [
{
"if": {
"properties": {
"command": {
"const": "job.create"
}
}
},
"then": {
"properties": {
"resource": {
"properties": {
"type": {
"const": "jobs"
}
}
}
}
}
},
{
"if": {
"properties": {
"command": {
"const": "customer.create"
}
}
},
"then": {
"properties": {
"resource": {
"properties": {
"type": {
"const": "customers"
}
}
}
}
}
},
{
"if": {
"properties": {
"command": {
"const": "customer_location.create"
}
}
},
"then": {
"properties": {
"resource": {
"properties": {
"type": {
"const": "customer_locations"
}
}
}
}
}
},
{
"if": {
"properties": {
"command": {
"const": "member_invitation.create"
}
}
},
"then": {
"properties": {
"resource": {
"properties": {
"type": {
"const": "member_invitations"
}
}
}
}
}
},
{
"if": {
"properties": {
"command": {
"const": "product.create"
}
}
},
"then": {
"properties": {
"resource": {
"properties": {
"type": {
"const": "products"
}
}
}
}
}
},
{
"if": {
"properties": {
"command": {
"const": "job_item.create"
}
}
},
"then": {
"properties": {
"resource": {
"properties": {
"type": {
"const": "job_items"
}
}
}
}
}
},
{
"if": {
"properties": {
"command": {
"const": "invoice.create"
}
}
},
"then": {
"properties": {
"resource": {
"properties": {
"type": {
"const": "invoices"
}
}
}
}
}
},
{
"if": {
"properties": {
"command": {
"const": "quote.create"
}
}
},
"then": {
"properties": {
"resource": {
"properties": {
"type": {
"const": "quotes"
}
}
}
}
}
}
],
"properties": {
"command": {
"enum": [
"job.create",
"customer.create",
"customer_location.create",
"member_invitation.create",
"product.create",
"job_item.create",
"invoice.create",
"quote.create"
]
},
"created_at": {
"$ref": "#/$defs/UtcTimestamp"
},
"http_status": {
"const": 201
},
"id": {
"format": "uuid",
"type": "string"
},
"integration": {
"$ref": "#/$defs/Integration"
},
"local_status": {
"const": "committed"
},
"resource": {
"$ref": "#/$defs/OperationResource"
},
"result_expires_at": {
"$ref": "#/$defs/UtcTimestamp"
}
},
"required": [
"id",
"command",
"local_status",
"created_at",
"result_expires_at",
"http_status",
"resource",
"integration"
],
"type": "object"
},
"OperationResource": {
"additionalProperties": false,
"properties": {
"id": {
"format": "uuid",
"type": "string"
},
"type": {
"enum": [
"jobs",
"customers",
"customer_locations",
"member_invitations",
"products",
"job_items",
"invoices",
"quotes"
]
}
},
"required": [
"type",
"id"
],
"type": "object"
},
"OperationResponse": {
"additionalProperties": false,
"properties": {
"data": {
"$ref": "#/$defs/Operation"
}
},
"required": [
"data"
],
"type": "object"
},
"UtcTimestamp": {
"format": "date-time",
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(\\.\\d+)?Z$",
"type": "string"
}
},
"additionalProperties": false,
"properties": {
"data": {
"$ref": "#/$defs/Operation"
}
},
"required": [
"data"
],
"type": "object"
}
}