Procore Submittals API

The Submittals API from Procore — 76 operation(s) for submittals.

Business capability
Vendor Document Management BC-1130.40

Operations 83

GET /rest/v2.0/companies/{company_id}/projects/{project_id}/external_submittals Return a list of all External Submittals #
GET /rest/v2.0/companies/{company_id}/projects/{project_id}/external_submittals/{id} Return an External Submittal #
PATCH /rest/v2.0/companies/{company_id}/projects/{project_id}/external_submittals/{id}/linked_local_submittals Update linked local submittals for an External Submittal #
GET /rest/v2.0/companies/{company_id}/projects/{project_id}/external_submittals/export Download a list of External Submittals #
GET /rest/v2.0/companies/{company_id}/projects/{project_id}/external_submittals/{id}/revisions List revisions for an External Submittal #
GET /rest/v2.0/companies/{company_id}/projects/{project_id}/external_submittals/{id}/advanced_exports Show advanced export options for an External Submittal #
POST /rest/v2.0/companies/{company_id}/projects/{project_id}/external_submittals/{id}/advanced_exports Create an advanced export for an External Submittal #
GET /rest/v2.0/companies/{company_id}/projects/{project_id}/external_submittals/filter_options List available External Submittal Filter Options #
GET /rest/v2.0/companies/{company_id}/projects/{project_id}/external_submittals/filter_options/connection_status List existing Connection Status filter options #
GET /rest/v2.0/companies/{company_id}/projects/{project_id}/external_submittals/filter_options/created_by_contact_id List existing Created By filter options #
GET /rest/v2.0/companies/{company_id}/projects/{project_id}/external_submittals/filter_options/current_revision List existing Current Revision filter options #
GET /rest/v2.0/companies/{company_id}/projects/{project_id}/external_submittals/filter_options/number List existing Number filter options #
GET /rest/v2.0/companies/{company_id}/projects/{project_id}/external_submittals/filter_options/private List existing Private filter options #
GET /rest/v2.0/companies/{company_id}/projects/{project_id}/external_submittals/filter_options/received_from_contact_id List existing Received From filter options #
GET /rest/v2.0/companies/{company_id}/projects/{project_id}/external_submittals/filter_options/responsible_contractor_vendor_id List existing Responsible Contractor filter options #
GET /rest/v2.0/companies/{company_id}/projects/{project_id}/external_submittals/filter_options/status_id List existing Status filter options #
GET /rest/v2.0/companies/{company_id}/projects/{project_id}/external_submittals/filter_options/specification_section_id List existing Specification Section filter options #
GET /rest/v2.0/companies/{company_id}/projects/{project_id}/external_submittals/filter_options/submittal_manager_contact_id List existing Submittal Manager filter options #
GET /rest/v2.0/companies/{company_id}/projects/{project_id}/external_submittals/filter_options/linked_to_local_submittals List existing Linked to Local Submittals filter options #
GET /rest/v2.0/companies/{company_id}/projects/{project_id}/external_submittals/filter_options/type_id List existing Type filter options #
PATCH /rest/v1.0/submittal_approvers/{id} Update Submittal Approver #
GET /rest/v1.0/submittal_responses List Submittal Responses #
GET /rest/v1.0/projects/{project_id}/submittal_responses List Submittal Responses #
POST /rest/v1.0/projects/{project_id}/submittal_responses Create Submittal Response #
PATCH /rest/v2.0/companies/{company_id}/projects/{project_id}/submittal_responses/{id} Update Submittal Response #
GET /rest/v1.0/submittal_associated_attachments List Submittal Associated Attachments #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options List available Submittal filters #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/approver_id List Filter Options for Approvers #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/attachments List Filter Options for Attachments #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/ball_in_court_id List Filter Options for Ball in Court #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/ball_in_court_company_id List Filter Options for Ball in Court Company #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/cost_code_id List Filter Options for Cost Code #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/created_by_id List Filter Options for Created By #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/current_revision List Filter Options for Current Revision #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/division List Filter Options for Specification Division #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/location_id List Filter Options for Location #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/private List Filter Options for Private #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/received_from_id List Filter Options for Received From #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/response_id List Filter Options for Submittal Response #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/responsible_contractor_id List Filter Options for Responsible Contractor #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/revision List Filter Options for Submittal Revision #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/specification_section_id List Filter Options for Specification Section #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/status_id List Filter Options for Submittal Status #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/sub_job_id List Filter Options for Submittal Sub Job #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/submittal_manager_id List Filter Options for Submittal Manager #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/submittal_package_id List Filter Options for Submittal Package #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/type List Filter Options for Type #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/number List of Number Filter Options #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/submittal_workflow_template_id List Filter Options for Submittal Workflow Template #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/task_id List Filter Options for Submittal Scheduled Task #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/unpackaged List Filter Options for Submittal Unpackaged #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/buffer_time List Filter Options for Buffer Time #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/created_via List Filter Options for Created Via #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/design_team_review_time List Filter Options for Design Team Review Time #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/for_record_only List Filter Options for For Record Only #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/internal_review_time List Filter Options for Internal Review Time #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/is_rejected List Filter Options for Is Rejected #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/lead_time List Filter Options for Lead Time #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/prepare_time List Filter Options for Prepare Time #
GET /rest/v1.0/projects/{project_id}/submittals/filter_options/specification_area_id List Filter Options for Specification Area #
GET /rest/v1.0/projects/{project_id}/submittals List Submittals on a Project #
POST /rest/v1.0/projects/{project_id}/submittals Create Submittal #
GET /rest/v1.0/projects/{project_id}/submittals/recycle_bin List of deleted Submittals #
GET /rest/v1.0/projects/{project_id}/submittals/{id} Show Submittal #
PATCH /rest/v1.0/projects/{project_id}/submittals/{id} Update Submittal #
GET /rest/v1.0/projects/{project_id}/submittals/{id}/workflow_data Get Workflow Data #
GET /rest/v1.0/projects/{project_id}/submittals/{id}/revisions Get Revisions #
GET /rest/v1.0/projects/{project_id}/submittals/next_available_number Get Next Available Number #
GET /rest/v1.0/projects/{project_id}/submittals/next_available_number/{spec_section_id} Get Next Available Number By Spec Section #
POST /rest/v1.1/projects/{project_id}/submittals Create Submittal #
GET /rest/v1.1/projects/{project_id}/submittals List Submittals on a project #
GET /rest/v1.1/projects/{project_id}/submittals/recycle_bin List of deleted Submittals #
GET /rest/v1.1/projects/{project_id}/submittals/attachments_with_markup List all submittal attachments with download urls #
GET /rest/v1.1/projects/{project_id}/submittals/{id} Show Submittal #
PATCH /rest/v1.1/projects/{project_id}/submittals/{id} Update Submittal #
DELETE /rest/v1.1/projects/{project_id}/submittals/{id} Delete Submittal #
GET /rest/v1.1/projects/{project_id}/submittals/{id}.pdf Show Submittal in PDF format #
GET /rest/v1.1/projects/{project_id}/submittals/{id}/workflow_data Get Workflow Data #
GET /rest/v1.1/projects/{project_id}/submittals/{id}/revisions Get Revisions #
GET /rest/v1.1/projects/{project_id}/submittals/next_available_number Get Next Available Number #
GET /rest/v1.1/projects/{project_id}/submittals/next_available_number/{spec_section_id} Get Next Available Number By Spec Section #
GET /rest/v1.1/projects/{project_id}/submittals/check_number Check if number and revision entered are available or duplicated #
GET /rest/v2.0/companies/{company_id}/projects/{project_id}/submittals Return a list of all Submittals #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/procore:procore-submittals-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

procore-submittals-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Procore REST Submittals API
  version: v1.0/v2.0
  description: Merged from the per-resource OpenAPI documents Procore publishes through its developer portal (https://developers.procore.com/api/v1/resource_groups). Originals are kept verbatim in openapi/_original/resources/.
  x-source: https://developers.procore.com/api/v1/resource_groups
servers:
- url: https://api.procore.com
  description: Production
security:
- bearerAuth: []
tags:


# --- truncated at 32 KB (1345 KB total) ---
# Full source: https://artifacts.apis.io/procore/openapi/procore-submittals-api-openapi.yml