Create a compliance document.
/rest/v1.0/projects/{project_id}/work_order_contracts/{contract_id}/compliance_documentsInspect fields and contractA Procore MCP connector in development for projects, RFIs, submittals and commercial records. Explore planned coverage and join the waitlist.
Construction
MCP XYZ is building an independent Procore MCP connector for teams that want an AI assistant to work with authorised construction project records through the Model Context Protocol. Planned coverage includes projects, RFIs, submittals, daily logs and commercial records. Access is waitlist-based while provider approval and live acceptance are pending.
Use the catalogue to check the operations and fields your work needs. If an existing connector is missing a useful action, tell us about it when joining the waitlist. Your software’s permissions and API limits still apply.
Planned access to projects, company information, people and project directories, within the connected account’s authorised permissions.
Inspect documented operationsInspect documented requests for information, submittals, drawing records and daily logs before choosing a project workflow.
Inspect documented operationsExplore documented commercial records, including change events, commitments and prime contracts. Live acceptance is still pending.
Inspect documented operations“Find the open RFIs for this project.”
New access starts with the Procore waitlist. Tell us which assistant you use and the work you want to do. We’ll contact you about relevant access updates; joining does not create an account or guarantee an invitation date.
Procore is in development. Live use requires an authorised developer app, installation in the relevant company, applicable provider approval and live acceptance.
The implemented connection paths support a developer-managed service account or user OAuth. Acceptance must confirm the account, region, permissions and intended agent use. The detailed catalogue tracks documented coverage; these workflows have not passed live business testing.
Production use needs the applicable Procore app and use-case approval. Procore’s Agentic APIs programme is a separate approved pilot. Ordinary REST credentials do not establish access to that pilot or approval for every agent or bulk-data use.
External presigned transfers, large uploads, some environments and provider-side token revocation have outstanding limits. A documented file operation does not mean a complete file workflow has been verified.
Procore API usage guidelines
Procore Agentic APIs guidance
Documented coverage
3,294 documented business operations across retained API versions. Open a contract to inspect its parameters, fields, sources and unresolved behaviour. No provider request is made here.
3,294 operations match. Showing 3181–3200.
/rest/v1.0/projects/{project_id}/work_order_contracts/{contract_id}/compliance_documentsInspect fields and contract/rest/v1.0/projectsInspect fields and contract/rest/v1.0/punch_item_typesInspect fields and contract/rest/v1.0/punch_items/add_punch_item_attachmentsInspect fields and contract/rest/v1.1/punch_items/add_punch_item_attachmentsInspect fields and contract/rest/v1.0/punch_items/{id}/commentsInspect fields and contract/rest/v1.0/punch_items/{id}/send_emailInspect fields and contract/rest/v1.1/punch_items/{id}/send_emailInspect fields and contract/rest/v1.0/punch_items/send_all_unsentInspect fields and contract/rest/v1.1/punch_items/send_all_unsentInspect fields and contract/rest/v1.0/punch_items/send_unsentInspect fields and contract/rest/v1.1/punch_items/send_unsentInspect fields and contract/rest/v1.0/punch_itemsInspect fields and contract/rest/v1.1/punch_itemsInspect fields and contract/rest/v1.0/purchase_order_contracts/{purchase_order_contract_id}/line_itemsInspect fields and contract/rest/v1.0/purchase_order_contracts/{purchase_order_contract_id}/line_item_contract_detailsInspect fields and contract/rest/v1.0/purchase_order_contractsInspect fields and contract/rest/v1.0/requested_changesInspect fields and contract/rest/v1.0/requisitions/{requisition_id}/add_change_order_packageInspect fields and contract/rest/v1.0/requisitions/{requisition_id}/single_pdf_compilersInspect fields and contractDocumented contract, live behaviour unverified
procore_post_projects_v1_0Read the provider documentation
| Parameter | Required | Provider description |
|---|---|---|
run_configurable_validations | No | If true, validations are run for the corresponding Configurable Field Set. |
The exact retained JSON includes schemas, nested fields, notes, source evidence and unresolved questions. It is a documented contract, not a live response.
{
"id": "post_projects_v1_0",
"name": "procore_post_projects_v1_0",
"resourceId": "projects",
"description": "Create project",
"method": "POST",
"path": "/rest/v1.0/projects",
"version": "1.0",
"documentationUrl": "https://developers.procore.com/reference/rest/projects?version=1.0",
"readOnly": false,
"destructive": true,
"idempotent": false,
"deprecated": false,
"beta": false,
"canonical": true,
"pathParameters": [],
"queryParameters": [
{
"name": "run_configurable_validations",
"in": "query",
"required": false,
"description": "If true, validations are run for the corresponding Configurable Field Set.",
"schema": {
"type": "boolean",
"default": false
}
}
],
"requestBodySchema": {
"title": "Body",
"type": "object",
"required": [
"company_id",
"project"
],
"properties": {
"company_id": {
"anyOf": [
{
"type": "integer",
"description": "The company identifier the project is associated with.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The company identifier the project is associated with.",
"x-mcp-original-type": "integer"
},
"project": {
"title": "Project",
"type": "object",
"required": [
"name"
],
"properties": {
"active": {
"type": "boolean",
"description": "The project active status.",
"default": true
},
"address": {
"type": "string",
"description": "The street address of the project."
},
"city": {
"type": "string",
"description": "The city where the project is located."
},
"code": {
"type": "string",
"description": "The project code."
},
"country_code": {
"type": "string",
"description": "The country code (ISO-3166 Alpha-2 format) where the project is located."
},
"description": {
"type": "string",
"description": "The project description."
},
"start_date": {
"type": "string",
"format": "date",
"description": "The date that the contract for the project is signed. Note: This field replaces estimated_start_date and will mirror its value."
},
"completion_date": {
"type": "string",
"format": "date",
"description": "The date that all parties agree the project meets or must meet “substantial completion”. Note: This field replaces estimated_completion_date and will mirror its value."
},
"total_value": {
"type": "number",
"format": "float",
"description": "The total amount of construction work performed, planned, or put in place during the project. Note: This field is a replacement of estimated_value and will mirror its value."
},
"warranty_start_date": {
"type": "string",
"format": "date",
"description": "The project warranty start date."
},
"warranty_end_date": {
"type": "string",
"format": "date",
"description": "The project warranty end date."
},
"flag": {
"type": "string",
"enum": [
"Red",
"Yellow",
"Green"
],
"description": "The project flag."
},
"image_id": {
"anyOf": [
{
"type": "integer",
"description": "The project image identifier.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project image identifier.",
"x-mcp-original-type": "integer"
},
"locale": {
"type": "string",
"description": "The locale for the Project. (Note that your account may not have access to all locales.)",
"enum": [
"de-DE",
"en",
"en-AE",
"en-AU",
"en-CA",
"en-GB",
"en-SG",
"en-US-x-owner",
"en-US-x-sc",
"en-budget",
"en-owner",
"es",
"es-419",
"es-ES",
"fr-CA",
"fr-FR",
"ja-JP",
"ko",
"pl-PL",
"pseudo",
"pt-BR",
"th-TH",
"zh-SG"
]
},
"name": {
"type": "string",
"description": "The project name."
},
"office_id": {
"anyOf": [
{
"type": "integer",
"description": "The project office identifier.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project office identifier.",
"x-mcp-original-type": "integer"
},
"phone": {
"type": "string",
"description": "The project telephone number."
},
"project_number": {
"type": "string",
"maxLength": 255,
"description": "The project number."
},
"public_notes": {
"type": "string",
"description": "The public notes for the project."
},
"project_stage_id": {
"anyOf": [
{
"type": "integer",
"description": "The project stage identifier.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project stage identifier.",
"x-mcp-original-type": "integer"
},
"square_feet": {
"type": "integer",
"description": "The total square footage of the project."
},
"state_code": {
"type": "string",
"description": "The state code (ISO-3166 Alpha-2 format) where the project is located."
},
"time_zone": {
"type": "string",
"description": "The timezone where the project is located."
},
"zip": {
"type": "string",
"description": "The project postal code."
},
"parent_job_id": {
"anyOf": [
{
"type": "integer",
"description": "The project's parent job identifier.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project's parent job identifier.",
"x-mcp-original-type": "integer"
},
"program_id": {
"anyOf": [
{
"type": "integer",
"description": "The project program identifier.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project program identifier.",
"x-mcp-original-type": "integer"
},
"portfolio_program_uuid": {
"type": [
"string",
"null"
],
"format": "uuid",
"description": "Public UUID of the Portfolio Program this project is placed under. Null or omitted means Unassigned. Ignored when the company does not have Portfolio Programs. Distinct from program_id (legacy grouping)."
},
"project_bid_type_id": {
"anyOf": [
{
"type": "integer",
"description": "The project bid type identifier.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project bid type identifier.",
"x-mcp-original-type": "integer"
},
"project_type_id": {
"anyOf": [
{
"type": "integer",
"description": "The project type identifier.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project type identifier.",
"x-mcp-original-type": "integer"
},
"project_owner_type_id": {
"anyOf": [
{
"type": "integer",
"description": "The project owner type identifier.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project owner type identifier.",
"x-mcp-original-type": "integer"
},
"project_region_id": {
"anyOf": [
{
"type": "integer",
"description": "The project region id of the project.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project region id of the project.",
"x-mcp-original-type": "integer"
},
"project_template_id": {
"anyOf": [
{
"type": "integer",
"description": "The project template identifier as designated by another project on this company.\nIt must be a project that is a template defined by `template: true`.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project template identifier as designated by another project on this company.\nIt must be a project that is a template defined by `template: true`.",
"x-mcp-original-type": "integer"
},
"origin_id": {
"type": [
"string",
"null"
],
"description": "External third-party identifier for the project."
},
"origin_data": {
"type": [
"string",
"null"
],
"description": "External third-party data string associated with the project."
},
"origin_code": {
"type": [
"string",
"null"
],
"description": "External third-party code associated with the project."
},
"override_start_date": {
"type": "string",
"format": "date",
"description": "This is the date that the project started and will be displayed on the portfolio page."
},
"override_start_date_check": {
"type": "boolean",
"description": "This is the property that enables the use of the override_start_date as the Actual Start Date."
},
"override_end_date": {
"type": "string",
"format": "date",
"description": "This is the date that the project will be finished and will be displayed on the portfolio page."
},
"override_end_date_check": {
"type": "boolean",
"description": "This is the property that enables the use of the override_end_date as the Projected Finish Date."
},
"department_ids": {
"type": "array",
"description": "The department ids the project is associated with.\nThe array should represent all departments, so if the current value is `[1, 2, 3]` and want to remove department `2`, then send `[1, 3]`.",
"items": {
"anyOf": [
{
"type": "integer",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"x-mcp-original-type": "integer"
}
},
"estimated_value": {
"type": "number",
"format": "float",
"description": "The estimated value of the project. Note: This field is now deprecated and will mirror the value of total_value until it is no longer supported."
},
"estimated_start_date": {
"type": "string",
"format": "date",
"description": "The estimated start date of the project. Note: This field is now deprecated and will mirror the value of start_date until it is no longer supported."
},
"estimated_completion_date": {
"type": "string",
"format": "date",
"description": "The estimated completion date of the project. Note: This field is now deprecated and will mirror the value of completion_date until it is no longer supported."
},
"store_number": {
"type": "string",
"description": "The project store number."
},
"accounting_project_number": {
"type": "string",
"description": "The project accounting project number."
},
"designated_market_area": {
"type": "string",
"description": "The project designated market area."
},
"erp_integrated": {
"type": "boolean",
"description": "The project will be ERP integrated.",
"default": false
},
"latitude": {
"type": "number",
"format": "float",
"description": "Project latitude"
},
"longitude": {
"type": "number",
"format": "float",
"description": "Project longitude"
},
"enable_copy_of_standard_cost_codes": {
"type": "boolean",
"description": "This property enables the user to copy default standard cost codes during new project creation when it is set to true. However, this flag does not have any impact when using project template, and the company's configuration is set to copy project template cost codes.",
"default": false
},
"sector": {
"title": "Project Sector",
"type": [
"string",
"null"
],
"description": "The sector of a project.",
"enum": [
"agriculture",
"airport",
"alcohol_establishment",
"amusement_park",
"animal_health_veterinary",
"animal_lodging",
"assembly",
"auto_parts_store",
"auto_service",
"auto_vehicle_terminal",
"automobile_retail",
"aviation",
"bank",
"bar_tavern",
"battery_energy_storage",
"behavioral_health",
"big_box_store",
"bowling_alley",
"brewery",
"bridges",
"business_park",
"campground",
"car_wash",
"casino",
"casino_hotel",
"cemetery",
"city_hall_operations",
"civil_infrastructure",
"college_university",
"commercial",
"convenience_store",
"convention_center",
"courthouse",
"cultural",
"dam",
"data_center",
"daycare_pre_k",
"dealership",
"death",
"dental",
"department_store",
"distillery",
"distribution_warehouse",
"district_operations",
"drug_store",
"dry_storage",
"educational",
"electrical_substation",
"elementary_school",
"energy",
"energy_distribution",
"energy_production",
"energy_storage",
"entertainment",
"entertainment_production",
"environmentally_controlled",
"event_space",
"fast_food_restaurant",
"fire_station",
"funeral_home",
"gas_station",
"golf",
"government",
"government_buildings",
"grocery_store",
"gym_athletic_studio",
"hangar",
"hazardous_storage",
"health_care",
"high_school",
"hospital",
"hospitality",
"hotel",
"hydro_power",
"individual_space",
"indoor",
"industrial",
"institutional",
"jail_prison",
"k_12",
"library",
"liquor_store",
"lodging",
"manufacturing",
"medical_center",
"medical_office_building_mob",
"middle_school",
"military_naval",
"miscellaneous_pavement",
"mixed_use",
"movie_theater",
"multifamily",
"museum",
"nuclear_power_plant",
"office",
"office_retail",
"oil_gas_mining",
"outdoor",
"outpatient_care",
"park",
"parking_garage",
"parking_lot",
"performing_arts",
"personal_service",
"pipe_line",
"playground",
"police_station",
"pool_swim_facility",
"post_office",
"production",
"psychiatric_hospital",
"public_safety",
"race_track",
"railway_terminal",
"railways",
"recreation",
"rehab_facility",
"religious_institution",
"research_development",
"reservoir",
"residential",
"residential_office_retail",
"residential_retail",
"restaurant",
"retail",
"roads_highways",
"runway_taxiway",
"rv_park",
"self_storage",
"senior_housing",
"sewer_systems",
"shopping_center_mall",
"sidewalk_walkways",
"single_family",
"solar_power",
"specialist_office",
"specialty_store",
"sports_courts",
"sports_fields",
"stadium_arena",
"storage",
"street_lights",
"student_housing",
"telecommunication",
"telecommunication_lines",
"terminal",
"trailer_park",
"transportation",
"transportation_terminals",
"tunnel",
"urgent_care",
"waste_collection",
"waste_infrastructure",
"waste_processing",
"waste_water",
"water_distribution",
"water_infrastructure",
"water_retention",
"water_treatment_plant_wwtp",
"wind_power",
"winery",
"winter_sports",
"zoo_aquarium",
null
]
},
"work_scope": {
"title": "Work Scope",
"type": [
"string",
"null"
],
"description": "The work scope of a project.",
"enum": [
"new_construction",
"renovation_alteration",
"maintenance_service",
null
]
},
"delivery_method": {
"title": "Delivery Method",
"type": [
"string",
"null"
],
"description": "The delivery method of a project.",
"enum": [
"construction_management_at_risk_cmar",
"construction_manager_as_agent_owners_rep",
"design_bid_build_dbb",
"design_build_db",
"indefinite_delivery_indefinite_quantity_idiq",
"integrated_project_delivery",
"multi_prime",
"public_private_partnership_p3",
"other",
null
]
},
"estimated_budget": {
"type": "number",
"format": "decimal",
"description": "The estimated budget for the project"
},
"priority": {
"type": "string",
"enum": [
"low",
"medium",
"high"
],
"description": "The priority level for the project"
},
"currency_configuration": {
"title": "Project Initial currency configuration",
"description": "This object will initialize the project currency configuration",
"type": [
"object",
"null"
],
"required": [
"currency_iso_code"
],
"properties": {
"currency_iso_code": {
"type": "string",
"description": "The currency iso code for the new project, must be available in the company exchange rates list",
"pattern": "^[A-Z]{3}$"
},
"exchange_rate_override": {
"type": [
"number",
"null"
],
"format": "float",
"description": "-> This optional parameter is used to populate a fixed initial project to company exchange rate, company exchange rate for the project currency iso code will be used instead if this parameter is missing"
}
}
},
"project_sector_id": {
"anyOf": [
{
"type": "integer",
"description": "Id of the project sector associated with the project.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "Id of the project sector associated with the project.",
"x-mcp-original-type": "integer"
}
}
}
}
},
"requestBodyRequired": true,
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "object",
"properties": {
"run_configurable_validations": {
"type": "boolean",
"default": false,
"description": "If true, validations are run for the corresponding Configurable Field Set."
}
},
"additionalProperties": {
"type": [
"string",
"number",
"boolean",
"null"
]
},
"required": []
},
"contentType": {
"type": "string",
"enum": [
"application/json"
],
"default": "application/json",
"description": "Request media type. Defaults to the documented JSON type when available."
},
"body": {
"title": "Body",
"type": "object",
"required": [
"company_id",
"project"
],
"properties": {
"company_id": {
"anyOf": [
{
"type": "integer",
"description": "The company identifier the project is associated with.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The company identifier the project is associated with.",
"x-mcp-original-type": "integer"
},
"project": {
"title": "Project",
"type": "object",
"required": [
"name"
],
"properties": {
"active": {
"type": "boolean",
"description": "The project active status.",
"default": true
},
"address": {
"type": "string",
"description": "The street address of the project."
},
"city": {
"type": "string",
"description": "The city where the project is located."
},
"code": {
"type": "string",
"description": "The project code."
},
"country_code": {
"type": "string",
"description": "The country code (ISO-3166 Alpha-2 format) where the project is located."
},
"description": {
"type": "string",
"description": "The project description."
},
"start_date": {
"type": "string",
"format": "date",
"description": "The date that the contract for the project is signed. Note: This field replaces estimated_start_date and will mirror its value."
},
"completion_date": {
"type": "string",
"format": "date",
"description": "The date that all parties agree the project meets or must meet “substantial completion”. Note: This field replaces estimated_completion_date and will mirror its value."
},
"total_value": {
"type": "number",
"format": "float",
"description": "The total amount of construction work performed, planned, or put in place during the project. Note: This field is a replacement of estimated_value and will mirror its value."
},
"warranty_start_date": {
"type": "string",
"format": "date",
"description": "The project warranty start date."
},
"warranty_end_date": {
"type": "string",
"format": "date",
"description": "The project warranty end date."
},
"flag": {
"type": "string",
"enum": [
"Red",
"Yellow",
"Green"
],
"description": "The project flag."
},
"image_id": {
"anyOf": [
{
"type": "integer",
"description": "The project image identifier.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project image identifier.",
"x-mcp-original-type": "integer"
},
"locale": {
"type": "string",
"description": "The locale for the Project. (Note that your account may not have access to all locales.)",
"enum": [
"de-DE",
"en",
"en-AE",
"en-AU",
"en-CA",
"en-GB",
"en-SG",
"en-US-x-owner",
"en-US-x-sc",
"en-budget",
"en-owner",
"es",
"es-419",
"es-ES",
"fr-CA",
"fr-FR",
"ja-JP",
"ko",
"pl-PL",
"pseudo",
"pt-BR",
"th-TH",
"zh-SG"
]
},
"name": {
"type": "string",
"description": "The project name."
},
"office_id": {
"anyOf": [
{
"type": "integer",
"description": "The project office identifier.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project office identifier.",
"x-mcp-original-type": "integer"
},
"phone": {
"type": "string",
"description": "The project telephone number."
},
"project_number": {
"type": "string",
"maxLength": 255,
"description": "The project number."
},
"public_notes": {
"type": "string",
"description": "The public notes for the project."
},
"project_stage_id": {
"anyOf": [
{
"type": "integer",
"description": "The project stage identifier.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project stage identifier.",
"x-mcp-original-type": "integer"
},
"square_feet": {
"type": "integer",
"description": "The total square footage of the project."
},
"state_code": {
"type": "string",
"description": "The state code (ISO-3166 Alpha-2 format) where the project is located."
},
"time_zone": {
"type": "string",
"description": "The timezone where the project is located."
},
"zip": {
"type": "string",
"description": "The project postal code."
},
"parent_job_id": {
"anyOf": [
{
"type": "integer",
"description": "The project's parent job identifier.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project's parent job identifier.",
"x-mcp-original-type": "integer"
},
"program_id": {
"anyOf": [
{
"type": "integer",
"description": "The project program identifier.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project program identifier.",
"x-mcp-original-type": "integer"
},
"portfolio_program_uuid": {
"type": [
"string",
"null"
],
"format": "uuid",
"description": "Public UUID of the Portfolio Program this project is placed under. Null or omitted means Unassigned. Ignored when the company does not have Portfolio Programs. Distinct from program_id (legacy grouping)."
},
"project_bid_type_id": {
"anyOf": [
{
"type": "integer",
"description": "The project bid type identifier.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project bid type identifier.",
"x-mcp-original-type": "integer"
},
"project_type_id": {
"anyOf": [
{
"type": "integer",
"description": "The project type identifier.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project type identifier.",
"x-mcp-original-type": "integer"
},
"project_owner_type_id": {
"anyOf": [
{
"type": "integer",
"description": "The project owner type identifier.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project owner type identifier.",
"x-mcp-original-type": "integer"
},
"project_region_id": {
"anyOf": [
{
"type": "integer",
"description": "The project region id of the project.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project region id of the project.",
"x-mcp-original-type": "integer"
},
"project_template_id": {
"anyOf": [
{
"type": "integer",
"description": "The project template identifier as designated by another project on this company.\nIt must be a project that is a template defined by `template: true`.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project template identifier as designated by another project on this company.\nIt must be a project that is a template defined by `template: true`.",
"x-mcp-original-type": "integer"
},
"origin_id": {
"type": [
"string",
"null"
],
"description": "External third-party identifier for the project."
},
"origin_data": {
"type": [
"string",
"null"
],
"description": "External third-party data string associated with the project."
},
"origin_code": {
"type": [
"string",
"null"
],
"description": "External third-party code associated with the project."
},
"override_start_date": {
"type": "string",
"format": "date",
"description": "This is the date that the project started and will be displayed on the portfolio page."
},
"override_start_date_check": {
"type": "boolean",
"description": "This is the property that enables the use of the override_start_date as the Actual Start Date."
},
"override_end_date": {
"type": "string",
"format": "date",
"description": "This is the date that the project will be finished and will be displayed on the portfolio page."
},
"override_end_date_check": {
"type": "boolean",
"description": "This is the property that enables the use of the override_end_date as the Projected Finish Date."
},
"department_ids": {
"type": "array",
"description": "The department ids the project is associated with.\nThe array should represent all departments, so if the current value is `[1, 2, 3]` and want to remove department `2`, then send `[1, 3]`.",
"items": {
"anyOf": [
{
"type": "integer",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"x-mcp-original-type": "integer"
}
},
"estimated_value": {
"type": "number",
"format": "float",
"description": "The estimated value of the project. Note: This field is now deprecated and will mirror the value of total_value until it is no longer supported."
},
"estimated_start_date": {
"type": "string",
"format": "date",
"description": "The estimated start date of the project. Note: This field is now deprecated and will mirror the value of start_date until it is no longer supported."
},
"estimated_completion_date": {
"type": "string",
"format": "date",
"description": "The estimated completion date of the project. Note: This field is now deprecated and will mirror the value of completion_date until it is no longer supported."
},
"store_number": {
"type": "string",
"description": "The project store number."
},
"accounting_project_number": {
"type": "string",
"description": "The project accounting project number."
},
"designated_market_area": {
"type": "string",
"description": "The project designated market area."
},
"erp_integrated": {
"type": "boolean",
"description": "The project will be ERP integrated.",
"default": false
},
"latitude": {
"type": "number",
"format": "float",
"description": "Project latitude"
},
"longitude": {
"type": "number",
"format": "float",
"description": "Project longitude"
},
"enable_copy_of_standard_cost_codes": {
"type": "boolean",
"description": "This property enables the user to copy default standard cost codes during new project creation when it is set to true. However, this flag does not have any impact when using project template, and the company's configuration is set to copy project template cost codes.",
"default": false
},
"sector": {
"title": "Project Sector",
"type": [
"string",
"null"
],
"description": "The sector of a project.",
"enum": [
"agriculture",
"airport",
"alcohol_establishment",
"amusement_park",
"animal_health_veterinary",
"animal_lodging",
"assembly",
"auto_parts_store",
"auto_service",
"auto_vehicle_terminal",
"automobile_retail",
"aviation",
"bank",
"bar_tavern",
"battery_energy_storage",
"behavioral_health",
"big_box_store",
"bowling_alley",
"brewery",
"bridges",
"business_park",
"campground",
"car_wash",
"casino",
"casino_hotel",
"cemetery",
"city_hall_operations",
"civil_infrastructure",
"college_university",
"commercial",
"convenience_store",
"convention_center",
"courthouse",
"cultural",
"dam",
"data_center",
"daycare_pre_k",
"dealership",
"death",
"dental",
"department_store",
"distillery",
"distribution_warehouse",
"district_operations",
"drug_store",
"dry_storage",
"educational",
"electrical_substation",
"elementary_school",
"energy",
"energy_distribution",
"energy_production",
"energy_storage",
"entertainment",
"entertainment_production",
"environmentally_controlled",
"event_space",
"fast_food_restaurant",
"fire_station",
"funeral_home",
"gas_station",
"golf",
"government",
"government_buildings",
"grocery_store",
"gym_athletic_studio",
"hangar",
"hazardous_storage",
"health_care",
"high_school",
"hospital",
"hospitality",
"hotel",
"hydro_power",
"individual_space",
"indoor",
"industrial",
"institutional",
"jail_prison",
"k_12",
"library",
"liquor_store",
"lodging",
"manufacturing",
"medical_center",
"medical_office_building_mob",
"middle_school",
"military_naval",
"miscellaneous_pavement",
"mixed_use",
"movie_theater",
"multifamily",
"museum",
"nuclear_power_plant",
"office",
"office_retail",
"oil_gas_mining",
"outdoor",
"outpatient_care",
"park",
"parking_garage",
"parking_lot",
"performing_arts",
"personal_service",
"pipe_line",
"playground",
"police_station",
"pool_swim_facility",
"post_office",
"production",
"psychiatric_hospital",
"public_safety",
"race_track",
"railway_terminal",
"railways",
"recreation",
"rehab_facility",
"religious_institution",
"research_development",
"reservoir",
"residential",
"residential_office_retail",
"residential_retail",
"restaurant",
"retail",
"roads_highways",
"runway_taxiway",
"rv_park",
"self_storage",
"senior_housing",
"sewer_systems",
"shopping_center_mall",
"sidewalk_walkways",
"single_family",
"solar_power",
"specialist_office",
"specialty_store",
"sports_courts",
"sports_fields",
"stadium_arena",
"storage",
"street_lights",
"student_housing",
"telecommunication",
"telecommunication_lines",
"terminal",
"trailer_park",
"transportation",
"transportation_terminals",
"tunnel",
"urgent_care",
"waste_collection",
"waste_infrastructure",
"waste_processing",
"waste_water",
"water_distribution",
"water_infrastructure",
"water_retention",
"water_treatment_plant_wwtp",
"wind_power",
"winery",
"winter_sports",
"zoo_aquarium",
null
]
},
"work_scope": {
"title": "Work Scope",
"type": [
"string",
"null"
],
"description": "The work scope of a project.",
"enum": [
"new_construction",
"renovation_alteration",
"maintenance_service",
null
]
},
"delivery_method": {
"title": "Delivery Method",
"type": [
"string",
"null"
],
"description": "The delivery method of a project.",
"enum": [
"construction_management_at_risk_cmar",
"construction_manager_as_agent_owners_rep",
"design_bid_build_dbb",
"design_build_db",
"indefinite_delivery_indefinite_quantity_idiq",
"integrated_project_delivery",
"multi_prime",
"public_private_partnership_p3",
"other",
null
]
},
"estimated_budget": {
"type": "number",
"format": "decimal",
"description": "The estimated budget for the project"
},
"priority": {
"type": "string",
"enum": [
"low",
"medium",
"high"
],
"description": "The priority level for the project"
},
"currency_configuration": {
"title": "Project Initial currency configuration",
"description": "This object will initialize the project currency configuration",
"type": [
"object",
"null"
],
"required": [
"currency_iso_code"
],
"properties": {
"currency_iso_code": {
"type": "string",
"description": "The currency iso code for the new project, must be available in the company exchange rates list",
"pattern": "^[A-Z]{3}$"
},
"exchange_rate_override": {
"type": [
"number",
"null"
],
"format": "float",
"description": "-> This optional parameter is used to populate a fixed initial project to company exchange rate, company exchange rate for the project currency iso code will be used instead if this parameter is missing"
}
}
},
"project_sector_id": {
"anyOf": [
{
"type": "integer",
"description": "Id of the project sector associated with the project.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "Id of the project sector associated with the project.",
"x-mcp-original-type": "integer"
}
}
}
}
}
},
"required": [
"body"
],
"additionalProperties": false
},
"pagination": null,
"notes": [
"Create a new Project in a Procore account. The new project is active by default.\n\n#### Country and State codes\nThe `country_code` and `state_code` parameter values must conform to the ISO-3166 Alpha-2 specification.\nSee [Working with Country Codes](/documentation/country-codes) for additional information.\n#### Recommendation\nFor accounts creating a significant number of projects (more than 300), schedule these operations during non-business hours (5 P.M PST - 7 A.M PST) to optimize efficiency. Coordinate the timing with your solution architect for insights into system load and effective resource utilization."
],
"unresolved": [
"No authorised Procore provider request has verified this operation."
],
"request": {
"parameters": [
{
"name": "Procore-Company-Id",
"in": "header",
"description": "Unique company identifier associated with the Procore User Account.",
"required": true,
"schema": {
"type": "integer"
}
},
{
"name": "run_configurable_validations",
"in": "query",
"required": false,
"description": "If true, validations are run for the corresponding Configurable Field Set.",
"schema": {
"type": "boolean",
"default": false
}
}
],
"content": {
"application/json": {
"schema": {
"title": "Body",
"type": "object",
"required": [
"company_id",
"project"
],
"properties": {
"company_id": {
"anyOf": [
{
"type": "integer",
"description": "The company identifier the project is associated with.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The company identifier the project is associated with.",
"x-mcp-original-type": "integer"
},
"project": {
"title": "Project",
"type": "object",
"required": [
"name"
],
"properties": {
"active": {
"type": "boolean",
"description": "The project active status.",
"default": true
},
"address": {
"type": "string",
"description": "The street address of the project."
},
"city": {
"type": "string",
"description": "The city where the project is located."
},
"code": {
"type": "string",
"description": "The project code."
},
"country_code": {
"type": "string",
"description": "The country code (ISO-3166 Alpha-2 format) where the project is located."
},
"description": {
"type": "string",
"description": "The project description."
},
"start_date": {
"type": "string",
"format": "date",
"description": "The date that the contract for the project is signed. Note: This field replaces estimated_start_date and will mirror its value."
},
"completion_date": {
"type": "string",
"format": "date",
"description": "The date that all parties agree the project meets or must meet “substantial completion”. Note: This field replaces estimated_completion_date and will mirror its value."
},
"total_value": {
"type": "number",
"format": "float",
"description": "The total amount of construction work performed, planned, or put in place during the project. Note: This field is a replacement of estimated_value and will mirror its value."
},
"warranty_start_date": {
"type": "string",
"format": "date",
"description": "The project warranty start date."
},
"warranty_end_date": {
"type": "string",
"format": "date",
"description": "The project warranty end date."
},
"flag": {
"type": "string",
"enum": [
"Red",
"Yellow",
"Green"
],
"description": "The project flag."
},
"image_id": {
"anyOf": [
{
"type": "integer",
"description": "The project image identifier.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project image identifier.",
"x-mcp-original-type": "integer"
},
"locale": {
"type": "string",
"description": "The locale for the Project. (Note that your account may not have access to all locales.)",
"enum": [
"de-DE",
"en",
"en-AE",
"en-AU",
"en-CA",
"en-GB",
"en-SG",
"en-US-x-owner",
"en-US-x-sc",
"en-budget",
"en-owner",
"es",
"es-419",
"es-ES",
"fr-CA",
"fr-FR",
"ja-JP",
"ko",
"pl-PL",
"pseudo",
"pt-BR",
"th-TH",
"zh-SG"
]
},
"name": {
"type": "string",
"description": "The project name."
},
"office_id": {
"anyOf": [
{
"type": "integer",
"description": "The project office identifier.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project office identifier.",
"x-mcp-original-type": "integer"
},
"phone": {
"type": "string",
"description": "The project telephone number."
},
"project_number": {
"type": "string",
"maxLength": 255,
"description": "The project number."
},
"public_notes": {
"type": "string",
"description": "The public notes for the project."
},
"project_stage_id": {
"anyOf": [
{
"type": "integer",
"description": "The project stage identifier.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project stage identifier.",
"x-mcp-original-type": "integer"
},
"square_feet": {
"type": "integer",
"description": "The total square footage of the project."
},
"state_code": {
"type": "string",
"description": "The state code (ISO-3166 Alpha-2 format) where the project is located."
},
"time_zone": {
"type": "string",
"description": "The timezone where the project is located."
},
"zip": {
"type": "string",
"description": "The project postal code."
},
"parent_job_id": {
"anyOf": [
{
"type": "integer",
"description": "The project's parent job identifier.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project's parent job identifier.",
"x-mcp-original-type": "integer"
},
"program_id": {
"anyOf": [
{
"type": "integer",
"description": "The project program identifier.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project program identifier.",
"x-mcp-original-type": "integer"
},
"portfolio_program_uuid": {
"type": [
"string",
"null"
],
"format": "uuid",
"description": "Public UUID of the Portfolio Program this project is placed under. Null or omitted means Unassigned. Ignored when the company does not have Portfolio Programs. Distinct from program_id (legacy grouping)."
},
"project_bid_type_id": {
"anyOf": [
{
"type": "integer",
"description": "The project bid type identifier.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project bid type identifier.",
"x-mcp-original-type": "integer"
},
"project_type_id": {
"anyOf": [
{
"type": "integer",
"description": "The project type identifier.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project type identifier.",
"x-mcp-original-type": "integer"
},
"project_owner_type_id": {
"anyOf": [
{
"type": "integer",
"description": "The project owner type identifier.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project owner type identifier.",
"x-mcp-original-type": "integer"
},
"project_region_id": {
"anyOf": [
{
"type": "integer",
"description": "The project region id of the project.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project region id of the project.",
"x-mcp-original-type": "integer"
},
"project_template_id": {
"anyOf": [
{
"type": "integer",
"description": "The project template identifier as designated by another project on this company.\nIt must be a project that is a template defined by `template: true`.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "The project template identifier as designated by another project on this company.\nIt must be a project that is a template defined by `template: true`.",
"x-mcp-original-type": "integer"
},
"origin_id": {
"type": [
"string",
"null"
],
"description": "External third-party identifier for the project."
},
"origin_data": {
"type": [
"string",
"null"
],
"description": "External third-party data string associated with the project."
},
"origin_code": {
"type": [
"string",
"null"
],
"description": "External third-party code associated with the project."
},
"override_start_date": {
"type": "string",
"format": "date",
"description": "This is the date that the project started and will be displayed on the portfolio page."
},
"override_start_date_check": {
"type": "boolean",
"description": "This is the property that enables the use of the override_start_date as the Actual Start Date."
},
"override_end_date": {
"type": "string",
"format": "date",
"description": "This is the date that the project will be finished and will be displayed on the portfolio page."
},
"override_end_date_check": {
"type": "boolean",
"description": "This is the property that enables the use of the override_end_date as the Projected Finish Date."
},
"department_ids": {
"type": "array",
"description": "The department ids the project is associated with.\nThe array should represent all departments, so if the current value is `[1, 2, 3]` and want to remove department `2`, then send `[1, 3]`.",
"items": {
"anyOf": [
{
"type": "integer",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"x-mcp-original-type": "integer"
}
},
"estimated_value": {
"type": "number",
"format": "float",
"description": "The estimated value of the project. Note: This field is now deprecated and will mirror the value of total_value until it is no longer supported."
},
"estimated_start_date": {
"type": "string",
"format": "date",
"description": "The estimated start date of the project. Note: This field is now deprecated and will mirror the value of start_date until it is no longer supported."
},
"estimated_completion_date": {
"type": "string",
"format": "date",
"description": "The estimated completion date of the project. Note: This field is now deprecated and will mirror the value of completion_date until it is no longer supported."
},
"store_number": {
"type": "string",
"description": "The project store number."
},
"accounting_project_number": {
"type": "string",
"description": "The project accounting project number."
},
"designated_market_area": {
"type": "string",
"description": "The project designated market area."
},
"erp_integrated": {
"type": "boolean",
"description": "The project will be ERP integrated.",
"default": false
},
"latitude": {
"type": "number",
"format": "float",
"description": "Project latitude"
},
"longitude": {
"type": "number",
"format": "float",
"description": "Project longitude"
},
"enable_copy_of_standard_cost_codes": {
"type": "boolean",
"description": "This property enables the user to copy default standard cost codes during new project creation when it is set to true. However, this flag does not have any impact when using project template, and the company's configuration is set to copy project template cost codes.",
"default": false
},
"sector": {
"title": "Project Sector",
"type": [
"string",
"null"
],
"description": "The sector of a project.",
"enum": [
"agriculture",
"airport",
"alcohol_establishment",
"amusement_park",
"animal_health_veterinary",
"animal_lodging",
"assembly",
"auto_parts_store",
"auto_service",
"auto_vehicle_terminal",
"automobile_retail",
"aviation",
"bank",
"bar_tavern",
"battery_energy_storage",
"behavioral_health",
"big_box_store",
"bowling_alley",
"brewery",
"bridges",
"business_park",
"campground",
"car_wash",
"casino",
"casino_hotel",
"cemetery",
"city_hall_operations",
"civil_infrastructure",
"college_university",
"commercial",
"convenience_store",
"convention_center",
"courthouse",
"cultural",
"dam",
"data_center",
"daycare_pre_k",
"dealership",
"death",
"dental",
"department_store",
"distillery",
"distribution_warehouse",
"district_operations",
"drug_store",
"dry_storage",
"educational",
"electrical_substation",
"elementary_school",
"energy",
"energy_distribution",
"energy_production",
"energy_storage",
"entertainment",
"entertainment_production",
"environmentally_controlled",
"event_space",
"fast_food_restaurant",
"fire_station",
"funeral_home",
"gas_station",
"golf",
"government",
"government_buildings",
"grocery_store",
"gym_athletic_studio",
"hangar",
"hazardous_storage",
"health_care",
"high_school",
"hospital",
"hospitality",
"hotel",
"hydro_power",
"individual_space",
"indoor",
"industrial",
"institutional",
"jail_prison",
"k_12",
"library",
"liquor_store",
"lodging",
"manufacturing",
"medical_center",
"medical_office_building_mob",
"middle_school",
"military_naval",
"miscellaneous_pavement",
"mixed_use",
"movie_theater",
"multifamily",
"museum",
"nuclear_power_plant",
"office",
"office_retail",
"oil_gas_mining",
"outdoor",
"outpatient_care",
"park",
"parking_garage",
"parking_lot",
"performing_arts",
"personal_service",
"pipe_line",
"playground",
"police_station",
"pool_swim_facility",
"post_office",
"production",
"psychiatric_hospital",
"public_safety",
"race_track",
"railway_terminal",
"railways",
"recreation",
"rehab_facility",
"religious_institution",
"research_development",
"reservoir",
"residential",
"residential_office_retail",
"residential_retail",
"restaurant",
"retail",
"roads_highways",
"runway_taxiway",
"rv_park",
"self_storage",
"senior_housing",
"sewer_systems",
"shopping_center_mall",
"sidewalk_walkways",
"single_family",
"solar_power",
"specialist_office",
"specialty_store",
"sports_courts",
"sports_fields",
"stadium_arena",
"storage",
"street_lights",
"student_housing",
"telecommunication",
"telecommunication_lines",
"terminal",
"trailer_park",
"transportation",
"transportation_terminals",
"tunnel",
"urgent_care",
"waste_collection",
"waste_infrastructure",
"waste_processing",
"waste_water",
"water_distribution",
"water_infrastructure",
"water_retention",
"water_treatment_plant_wwtp",
"wind_power",
"winery",
"winter_sports",
"zoo_aquarium",
null
]
},
"work_scope": {
"title": "Work Scope",
"type": [
"string",
"null"
],
"description": "The work scope of a project.",
"enum": [
"new_construction",
"renovation_alteration",
"maintenance_service",
null
]
},
"delivery_method": {
"title": "Delivery Method",
"type": [
"string",
"null"
],
"description": "The delivery method of a project.",
"enum": [
"construction_management_at_risk_cmar",
"construction_manager_as_agent_owners_rep",
"design_bid_build_dbb",
"design_build_db",
"indefinite_delivery_indefinite_quantity_idiq",
"integrated_project_delivery",
"multi_prime",
"public_private_partnership_p3",
"other",
null
]
},
"estimated_budget": {
"type": "number",
"format": "decimal",
"description": "The estimated budget for the project"
},
"priority": {
"type": "string",
"enum": [
"low",
"medium",
"high"
],
"description": "The priority level for the project"
},
"currency_configuration": {
"title": "Project Initial currency configuration",
"description": "This object will initialize the project currency configuration",
"type": [
"object",
"null"
],
"required": [
"currency_iso_code"
],
"properties": {
"currency_iso_code": {
"type": "string",
"description": "The currency iso code for the new project, must be available in the company exchange rates list",
"pattern": "^[A-Z]{3}$"
},
"exchange_rate_override": {
"type": [
"number",
"null"
],
"format": "float",
"description": "-> This optional parameter is used to populate a fixed initial project to company exchange rate, company exchange rate for the project currency iso code will be used instead if this parameter is missing"
}
}
},
"project_sector_id": {
"anyOf": [
{
"type": "integer",
"description": "Id of the project sector associated with the project.",
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[0-9]+$"
}
],
"description": "Id of the project sector associated with the project.",
"x-mcp-original-type": "integer"
}
}
}
}
}
}
},
"defaultContentType": "application/json"
},
"responseContentTypes": [
"application/json"
],
"provenance": {
"sourceUrl": "https://developers.procore.com/api/v1/resource_groups/resource/projects?version=rest_v1.0",
"sourceSha256": "7639991a55da1822b87e4c215f679c95745b18e87460bfb10ee035104914e4c6",
"snapshot": "snapshots/oas/projects--rest_v1.0.json.gz"
},
"sourceCorrections": []
}The Unleashed waitlist is open. Inspect its documented coverage and account requirements.
Explore Unleashed