Get All Purchase Orders
get_all_purchase_ordersFetch paginated purchase order lists from Procore with filters for vendor, status, dates, and more. Select view types to control response detail.
Instructions
Returns a paginated list of purchase orders with filtering and sorting options. Supports multiple view types: Normal (default), Short, Compact, Extended, Mobile, and Id. Results can be filtered by associated document IDs, labels, and vendors. Use this when you already know which purchase order you want and need its full field set. company_id and project_id default to the values set by procore_set_config when omitted. Returns a single JSON object describing the purchase order. Read-only — it changes nothing in Procore. Failures come back as an error payload carrying the HTTP status — commonly 401 when the token has expired, 403 without tool permission, and 404 when an id does not resolve. Required parameters: company_id, project_id. Procore API (v2.0): Resource Management > Materials Management. Endpoint: GET /rest/v2.0/companies/{company_id}/projects/{project_id}/materials_mgmt/purchase_orders
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Query string parameter — page number for paginated results (default: 1) | |
| sort | No | Query string parameter — sort results by field. Prefix with '-' for descending order (e.g. '-created_at'). | |
| view | No | Query string parameter — response detail level. Use 'normal' for standard fields or 'extended' for all fields | |
| per_page | No | Query string parameter — the page size between 1 and 100. For Ids view the maximum page size is 5000. | |
| company_id | Yes | URL path parameter — the company identifier | |
| project_id | Yes | URL path parameter — the project identifier | |
| filters__id | No | Query string parameter — comma-separated list of purchase order IDs to filter by | |
| filters__labels | No | Query string parameter — filter results by labels | |
| filters__search | No | Query string parameter — filter results by search | |
| filters__status | No | Query string parameter — filter by purchase order status(es) | |
| filters__vendor | No | Query string parameter — filter results by vendor | |
| filters__columns | No | Query string parameter — the columns to include in the response | |
| overdue_po_lines | No | Query string parameter — filter for overdue purchase order lines | |
| filters__po_guids | No | Query string parameter — comma-separated list of purchase order GUIDs to filter by | |
| filters__origin_id | No | Query string parameter — comma-separated list of purchase order Origin IDs to filter by | |
| filters__created_at | No | Query string parameter — the date range string for purchase order creation dates. Format: [YYYY-MM-DD...YYYY-MM-DD] (e.g. [2026-01-01...2026-12-31]) | |
| filters__updated_at | No | Query string parameter — the updated date range string for purchase order modification dates. Format: [YYYY-MM-DD...YYYY-MM-DD] (e.g. [2026-01-01...2026-12-31]) | |
| filters__property_key | No | Query string parameter — the document property key for filtering | |
| filters__property_value | No | Query string parameter — the document property value for filtering | |
| filters__include_deleted | No | Query string parameter — filter to include or exclude deleted purchase orders | |
| filters__associated_doc_ids | No | Query string parameter — associated document IDs | |
| filters__include_fully_shipped | No | Query string parameter — filter to include or exclude fully shipped purchase orders. When false (default), only POs with remaining quantity to ship are returned. | |
| filters__include_fully_received | No | Query string parameter — filter to include or exclude fully received purchase orders. When true (default), All purchase orders are returned. |