Fieldwire · Capability

Fieldwire Attachments API — Markups

GeoJSON-shaped markup overlays drawn on Fieldwire attachments.

Fieldwire Attachments API — Markups is a Naftiko capability published by Fieldwire, one of 16 capabilities the APIs.io network indexes for this provider. It bundles 2 operations across the GET and POST methods rooted at /v1/projects/{…}/attachment_markups.

The capability includes 1 read-only operation and 1 state-changing operation. Lead operation: List GeoJSON markup overlays drawn on Fieldwire attachments. Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Tagged areas include Fieldwire, Attachments, Markups, GeoJSON, and Construction.

Run with Naftiko FieldwireAttachmentsMarkupsGeoJSONConstruction

What You Can Do

GET
Getattachmentmarkupsinproject
/v1/projects/{project_id}/attachment_markups
POST
Createattachmentmarkupinproject
/v1/projects/{project_id}/attachment_markups

MCP Tools

fieldwire-list-attachment-markups

List GeoJSON markup overlays drawn on Fieldwire attachments.

read-only idempotent
fieldwire-create-attachment-markup

Create a GeoJSON markup (arrow, drawing, measurement, or text) on a Fieldwire attachment.

Capability Spec

attachments-markups.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Fieldwire Attachments API — Markups
  description: GeoJSON-shaped markup overlays drawn on Fieldwire attachments.
  tags: [Fieldwire, Attachments, Markups, GeoJSON, Construction]
  created: '2026-05-25'
  modified: '2026-05-25'
binds:
- namespace: env
  keys:
    FIELDWIRE_ACCESS_TOKEN: FIELDWIRE_ACCESS_TOKEN
    FIELDWIRE_REGION_HOST: FIELDWIRE_REGION_HOST
capability:
  consumes:
  - type: http
    namespace: attachments-markups
    baseUri: '{{env.FIELDWIRE_REGION_HOST}}'
    description: Fieldwire Attachment Markups business capability.
    resources:
    - name: attachment-markups
      path: /api/v3/projects/{project_id}/attachment_markups
      operations:
      - name: getattachmentmarkupsinproject
        method: GET
        description: Get Attachment Markups In Project
        inputParameters: [{ name: project_id, in: path, type: integer, required: true }]
        outputParameters: [{ name: result, type: array, value: $. }]
      - name: createattachmentmarkupinproject
        method: POST
        description: Create Attachment Markup In Project
        inputParameters:
        - { name: project_id, in: path, type: integer, required: true }
        - { name: body, in: body, type: object, required: true }
        outputParameters: [{ name: result, type: object, value: $. }]
    authentication:
      type: bearer
      value: '{{env.FIELDWIRE_ACCESS_TOKEN}}'
      placement: header
  exposes:
  - type: rest
    namespace: attachments-markups-rest
    port: 8080
    description: REST adapter for Fieldwire Attachment Markups.
    resources:
    - path: /v1/projects/{project_id}/attachment_markups
      name: attachment-markups
      operations:
      - method: GET
        name: getattachmentmarkupsinproject
        call: attachments-markups.getattachmentmarkupsinproject
        with: { project_id: rest.path.project_id }
        outputParameters: [{ type: array, mapping: $. }]
      - method: POST
        name: createattachmentmarkupinproject
        call: attachments-markups.createattachmentmarkupinproject
        with: { project_id: rest.path.project_id, body: rest.body }
        outputParameters: [{ type: object, mapping: $. }]
  - type: mcp
    namespace: attachments-markups-mcp
    port: 9090
    transport: http
    description: MCP adapter for Fieldwire Attachment Markups.
    tools:
    - name: fieldwire-list-attachment-markups
      description: List GeoJSON markup overlays drawn on Fieldwire attachments.
      hints: { readOnly: true, destructive: false, idempotent: true }
      call: attachments-markups.getattachmentmarkupsinproject
      with: { project_id: tools.project_id }
      outputParameters: [{ type: array, mapping: $. }]
    - name: fieldwire-create-attachment-markup
      description: Create a GeoJSON markup (arrow, drawing, measurement, or text) on a Fieldwire attachment.
      hints: { readOnly: false, destructive: false, idempotent: false }
      call: attachments-markups.createattachmentmarkupinproject
      with: { project_id: tools.project_id, body: tools.body }
      outputParameters: [{ type: object, mapping: $. }]