Trimble Agriculture · Capability

Trimble Agriculture Data API — Work Orders

Trimble Agriculture Data API — Work Orders. 4 operations. Lead operation: List Work Orders. Self-contained Naftiko capability covering one Trimble Agriculture business surface.

Run with Naftiko Trimble AgricultureWork Orders

What You Can Do

GET
Listworkorders — List Work Orders
/v1/organizations/{organizationid}/workorders
POST
Createworkorder — Create Work Order
/v1/organizations/{organizationid}/workorders
GET
Getworkorderbyid — Get Work Order
/v1/organizations/{organizationid}/workorders/{workorderid}
PUT
Updateworkorder — Update Work Order
/v1/organizations/{organizationid}/workorders/{workorderid}

MCP Tools

list-work-orders

List Work Orders

read-only idempotent
create-work-order

Create Work Order

get-work-order

Get Work Order

read-only idempotent
update-work-order

Update Work Order

idempotent

Capability Spec

trimble-agriculture-work-orders.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Trimble Agriculture Data API — Work Orders
  description: 'Trimble Agriculture Data API — Work Orders. 4 operations. Lead operation: List Work Orders. Self-contained
    Naftiko capability covering one Trimble Agriculture business surface.'
  tags:
  - Trimble Agriculture
  - Work Orders
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    TRIMBLE_AGRICULTURE_API_KEY: TRIMBLE_AGRICULTURE_API_KEY
capability:
  consumes:
  - type: http
    namespace: trimble-agriculture-work-orders
    baseUri: https://cloud.api.trimble.com/Trimble-Ag-Software/externalApi/3.0
    description: Trimble Agriculture Data API — Work Orders business capability. Self-contained, no shared references.
    resources:
    - name: organizations-organizationId-workorders
      path: /organizations/{organizationId}/workorders
      operations:
      - name: listworkorders
        method: GET
        description: List Work Orders
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: organizationId
          in: path
          type: string
          required: true
        - name: status
          in: query
          type: string
          description: Filter by work order status
      - name: createworkorder
        method: POST
        description: Create Work Order
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: organizationId
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: organizations-organizationId-workorders-workOrderId
      path: /organizations/{organizationId}/workorders/{workOrderId}
      operations:
      - name: getworkorderbyid
        method: GET
        description: Get Work Order
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: organizationId
          in: path
          type: string
          required: true
        - name: workOrderId
          in: path
          type: string
          required: true
      - name: updateworkorder
        method: PUT
        description: Update Work Order
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: organizationId
          in: path
          type: string
          required: true
        - name: workOrderId
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    authentication:
      type: bearer
      token: '{{env.TRIMBLE_AGRICULTURE_API_KEY}}'
  exposes:
  - type: rest
    namespace: trimble-agriculture-work-orders-rest
    port: 8080
    description: REST adapter for Trimble Agriculture Data API — Work Orders. One Spectral-compliant resource per consumed
      operation, prefixed with /v1.
    resources:
    - path: /v1/organizations/{organizationid}/workorders
      name: organizations-organizationid-workorders
      description: REST surface for organizations-organizationId-workorders.
      operations:
      - method: GET
        name: listworkorders
        description: List Work Orders
        call: trimble-agriculture-work-orders.listworkorders
        with:
          organizationId: rest.organizationId
          status: rest.status
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createworkorder
        description: Create Work Order
        call: trimble-agriculture-work-orders.createworkorder
        with:
          organizationId: rest.organizationId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/organizations/{organizationid}/workorders/{workorderid}
      name: organizations-organizationid-workorders-workorderid
      description: REST surface for organizations-organizationId-workorders-workOrderId.
      operations:
      - method: GET
        name: getworkorderbyid
        description: Get Work Order
        call: trimble-agriculture-work-orders.getworkorderbyid
        with:
          organizationId: rest.organizationId
          workOrderId: rest.workOrderId
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updateworkorder
        description: Update Work Order
        call: trimble-agriculture-work-orders.updateworkorder
        with:
          organizationId: rest.organizationId
          workOrderId: rest.workOrderId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: trimble-agriculture-work-orders-mcp
    port: 9090
    transport: http
    description: MCP adapter for Trimble Agriculture Data API — Work Orders. One tool per consumed operation, routed inline
      through this capability's consumes block.
    tools:
    - name: list-work-orders
      description: List Work Orders
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: trimble-agriculture-work-orders.listworkorders
      with:
        organizationId: tools.organizationId
        status: tools.status
      outputParameters:
      - type: object
        mapping: $.
    - name: create-work-order
      description: Create Work Order
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: trimble-agriculture-work-orders.createworkorder
      with:
        organizationId: tools.organizationId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-work-order
      description: Get Work Order
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: trimble-agriculture-work-orders.getworkorderbyid
      with:
        organizationId: tools.organizationId
        workOrderId: tools.workOrderId
      outputParameters:
      - type: object
        mapping: $.
    - name: update-work-order
      description: Update Work Order
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: trimble-agriculture-work-orders.updateworkorder
      with:
        organizationId: tools.organizationId
        workOrderId: tools.workOrderId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.