---
updatedAt: 2026-06-03T14:46:37.000Z
agentTools:
  projectIndex: https://developers.fieldwire.com/llms.txt
---

# Get all markups in project

# OpenAPI definition

```json
{
  "openapi": "3.0.3",
  "info": {
    "title": "Fieldwire Regional API",
    "version": "v3"
  },
  "servers": [
    {
      "url": "https://client-api.{region}.fieldwire.com",
      "variables": {
        "region": {
          "default": "us",
          "enum": [
            "ca",
            "eu",
            "us"
          ]
        }
      }
    }
  ],
  "components": {
    "headers": {
      "count": {
        "description": "Pagination header: number of entities in responses",
        "schema": {
          "type": "integer"
        }
      },
      "current_user_id": {
        "description": "Current user's id",
        "schema": {
          "type": "integer"
        }
      },
      "has_more": {
        "description": "True if there are more pages of results, false otherwise",
        "schema": {
          "type": "boolean"
        }
      },
      "last_synced_at": {
        "description": "To be used as input for `last_synced_at` query parameter to get the next page of results",
        "schema": {
          "type": "string",
          "format": "date-time"
        }
      }
    },
    "parameters": {
      "api_version": {
        "name": "Fieldwire-Version",
        "in": "header",
        "description": "Specifies the version of the API to talk to",
        "required": true,
        "schema": {
          "type": "string",
          "format": "date"
        }
      },
      "entities_filter": {
        "name": "Fieldwire-Filter",
        "in": "header",
        "description": "Specifies if request should include active, deleted or all (default) entities",
        "required": false,
        "schema": {
          "type": "string",
          "enum": [
            "active",
            "deleted"
          ]
        }
      },
      "entities_per_page": {
        "name": "Fieldwire-Per-Page",
        "in": "header",
        "description": "Specifies the number of entities to include in the request",
        "required": false,
        "schema": {
          "type": "integer",
          "maximum": 1000
        }
      },
      "project_id": {
        "name": "project_id",
        "in": "path",
        "description": "ID of the project this entity belongs to",
        "required": true,
        "schema": {
          "type": "string",
          "format": "uuid"
        }
      },
      "last_synced_at": {
        "name": "last_synced_at",
        "in": "query",
        "description": "Timestamp since when further updates should be included",
        "required": false,
        "schema": {
          "type": "string",
          "format": "date-time"
        }
      }
    },
    "schemas": {
      "markup": {
        "type": "object",
        "description": "Markup that lives on plans",
        "required": [
          "id",
          "creator_user_id",
          "last_editor_user_id",
          "project_id",
          "sheet_id",
          "is_private",
          "data",
          "created_at",
          "device_created_at",
          "device_updated_at",
          "resolved_conflict",
          "updated_at"
        ],
        "nullable": false,
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "nullable": false,
            "description": "ID of the entity"
          },
          "creator_user_id": {
            "type": "integer",
            "format": "int32",
            "nullable": false,
            "description": "ID of the user who created this entity"
          },
          "last_editor_user_id": {
            "type": "integer",
            "format": "int32",
            "nullable": false,
            "description": "ID of the user who most recently edited this entity"
          },
          "project_id": {
            "type": "string",
            "format": "uuid",
            "nullable": false,
            "description": "ID of the project this entity belongs to"
          },
          "sheet_id": {
            "type": "string",
            "format": "uuid",
            "nullable": false,
            "description": "ID of the sheet this markup belongs to"
          },
          "is_private": {
            "type": "boolean",
            "nullable": false,
            "description": "Whether this is a private markup"
          },
          "data": {
            "type": "object",
            "nullable": false,
            "description": "GeoJSON representation of a Markup. https://geojson.org/"
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "nullable": false,
            "description": "Time when the server created the entity"
          },
          "deleted_at": {
            "type": "string",
            "format": "date-time",
            "nullable": true,
            "description": "Time the server deleted the entity"
          },
          "device_created_at": {
            "type": "string",
            "format": "date-time",
            "nullable": false,
            "description": "Time when the device created the entity"
          },
          "device_updated_at": {
            "type": "string",
            "format": "date-time",
            "nullable": false,
            "description": "Time when the device last updated the entity"
          },
          "resolved_conflict": {
            "type": "boolean",
            "nullable": false,
            "description": "Specifies if PUT/PATCH request was rejected - do not store this field!"
          },
          "updated_at": {
            "type": "string",
            "format": "date-time",
            "nullable": false,
            "description": "Time when the server last updated the entity"
          }
        },
        "additionalProperties": false
      }
    },
    "securitySchemes": {
      "jwt": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "JWT",
        "description": "Access token (JWT) generated using the acquired refresh token (API token). Our [authentication](https://developers.fieldwire.com/docs/authentication) guide covers the steps to generate a valid token"
      }
    }
  },
  "paths": {
    "/api/v3/projects/{project_id}/markups": {
      "get": {
        "summary": "Get all markups in project",
        "operationId": "get_markups_in_project",
        "tags": [
          "markups"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/api_version"
          },
          {
            "$ref": "#/components/parameters/entities_filter"
          },
          {
            "$ref": "#/components/parameters/entities_per_page"
          },
          {
            "$ref": "#/components/parameters/last_synced_at"
          },
          {
            "$ref": "#/components/parameters/project_id"
          },
          {
            "name": "filters[sheet_id_eq]",
            "description": "Filter on sheet_id field being equal to passed in value, allows for filtering with a array of values",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "example": "26462387-8f00-4118-8f1c-419ec8761c23"
            }
          },
          {
            "name": "filters[creator_user_id_eq]",
            "description": "Filter on creator_user_id field being equal to the passed in value, allows for filtering with a array of values",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "example": "100"
            }
          },
          {
            "name": "filters[last_editor_user_id_eq]",
            "description": "Filter on last_editor_user_id field being equal to the passed in value, allows for filtering with a array of values",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "example": "100"
            }
          },
          {
            "name": "filters[deleted_at_gte]",
            "description": "Filter on deleted_at field being greater than or equal to the passed in value",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "example": "2009-06-15T13:45:30Z"
            }
          },
          {
            "name": "filters[deleted_at_gt]",
            "description": "Filter on deleted_at field being greater than the passed in value",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "example": "2009-06-15T13:45:30Z"
            }
          },
          {
            "name": "filters[deleted_at_lte]",
            "description": "Filter on deleted_at field being less than or equal to the passed in value",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "example": "2009-06-15T13:45:30Z"
            }
          },
          {
            "name": "filters[deleted_at_lt]",
            "description": "Filter on deleted_at field being less than to the passed in value",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "example": "2009-06-15T13:45:30Z"
            }
          },
          {
            "name": "filters[created_at_gte]",
            "description": "Filter on created_at field being greater than or equal to the passed in value",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "example": "2009-06-15T13:45:30Z"
            }
          },
          {
            "name": "filters[created_at_gt]",
            "description": "Filter on created_at field being greater than the passed in value",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "example": "2009-06-15T13:45:30Z"
            }
          },
          {
            "name": "filters[created_at_lte]",
            "description": "Filter on created_at field being less than or equal to the passed in value",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "example": "2009-06-15T13:45:30Z"
            }
          },
          {
            "name": "filters[created_at_lt]",
            "description": "Filter on created_at field being less than to the passed in value",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "example": "2009-06-15T13:45:30Z"
            }
          },
          {
            "name": "filters[updated_at_gte]",
            "description": "Filter on updated_at field being greater than or equal to the passed in value",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "example": "2009-06-15T13:45:30Z"
            }
          },
          {
            "name": "filters[updated_at_gt]",
            "description": "Filter on updated_at field being greater than the passed in value",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "example": "2009-06-15T13:45:30Z"
            }
          },
          {
            "name": "filters[updated_at_lte]",
            "description": "Filter on updated_at field being less than or equal to the passed in value",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "example": "2009-06-15T13:45:30Z"
            }
          },
          {
            "name": "filters[updated_at_lt]",
            "description": "Filter on updated_at field being less than to the passed in value",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "example": "2009-06-15T13:45:30Z"
            }
          }
        ],
        "security": [
          {
            "jwt": []
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "headers": {
              "X-Current-User-Id": {
                "$ref": "#/components/headers/current_user_id"
              },
              "X-Count": {
                "$ref": "#/components/headers/count"
              },
              "X-Last-Synced-At": {
                "$ref": "#/components/headers/last_synced_at"
              },
              "X-Has-More": {
                "$ref": "#/components/headers/has_more"
              }
            },
            "content": {
              "application/json": {
                "example": [
                  {
                    "id": "ff6f3576-8984-4df6-89ed-9ce978374e62",
                    "creator_user_id": 1214,
                    "last_editor_user_id": 1214,
                    "project_id": "ceacd046-4696-4138-b29b-757325e722f7",
                    "resolved_conflict": false,
                    "created_at": "2026-10-02T14:50:43.630Z",
                    "updated_at": "2026-10-02T14:50:43.631Z",
                    "device_created_at": "2026-10-02T14:50:43.630Z",
                    "device_updated_at": "2026-10-02T14:50:43.630Z",
                    "deleted_at": null,
                    "sheet_id": "230b56d7-7cad-4427-a2f6-7e91fbd8b773",
                    "is_private": false,
                    "data": {
                      "a": "a"
                    }
                  },
                  {
                    "id": "27decf4c-5d58-47d9-b42a-05a396d3c7f7",
                    "creator_user_id": 1214,
                    "last_editor_user_id": 1214,
                    "project_id": "ceacd046-4696-4138-b29b-757325e722f7",
                    "resolved_conflict": false,
                    "created_at": "2026-10-01T00:00:00.000Z",
                    "updated_at": "2026-10-02T14:50:43.637Z",
                    "device_created_at": "2026-10-01T00:00:00.000Z",
                    "device_updated_at": "2026-10-01T00:00:00.000Z",
                    "deleted_at": null,
                    "sheet_id": "f9d16614-18c0-4577-bffd-18479ccf459e",
                    "is_private": false,
                    "data": {
                      "a": "a"
                    }
                  }
                ],
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/markup"
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}
```