Create Custom Field
create_custom_fieldCreate a custom field in Procore to store extra information for projects or people. Supply company ID, field name, and type to generate it.
Instructions
Creates a new Custom Field for a given company ID. Custom Fields are used to store additional information about Projects or People. company_id defaults to the value set by procore_set_config when omitted. Creates the custom field and returns it with its new id (HTTP 201); calling it again creates another record. 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, name, type. Procore API: Company Admin > Custom - Configurable Tools. Endpoint: POST /rest/v1.0/workforce-planning/v2/companies/{company_id}/custom-fields
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | JSON request body field — the name of the Custom Field that appears in the UI. | |
| type | Yes | JSON request body field — the type of Custom Field. Determines the kind of data it will store. The type cannot be changed once created. | |
| values | No | JSON request body field — only applicable for `select` or `multi-select` fields. List of values that will be options in the field's dropdown. | |
| sort_by | No | JSON request body field — only applicable for `select` or `multi-select` fields. Controls sorting of dropdown values. `alpha` sorts alphabetically, while `listed` maintains the provided order. | |
| on_people | No | JSON request body field — if true, the field is available on People. | |
| can_filter | No | JSON request body field — if true, allows this field to be used as a filter. | |
| company_id | Yes | URL path parameter — unique identifier for the company. This parameter accepts both formats: - **Recommended**: Procore company ID (integer) - Use this for new integrations - Legacy: LaborChart UUID format (uuid string... | |
| description | No | JSON request body field — a description to help Admin users understand the field’s purpose. | |
| on_projects | No | JSON request body field — if true, the field is available on Projects. | |
| integration_only | No | JSON request body field — if true, only integrations can update this field. |