v1
latestOpenAPI 3.0.12026-07-135219.1 KBSchedule Files
Upload a schedule file
Uploads a P6 schedule file (XER, XML, or PPX) and enqueues a sync job to parse and ingest it.
Required scope: write:schedule_files
Constraints:
- file must be a multipart/form-data upload.
- file_type must be one of xer, xml, ppx.
- Within the same partner family (XER/XML share a family; PPX is its own), the most recent file's file_type cannot change between uploads. Switching formats inside a partner returns 422 file_type_mismatch. PPX after XER is allowed because they belong to different partners.
- customer_project_id, if provided, must reference a customer project owned by the authenticated company.
422 error codes:
- invalid_request — missing required parameter (name, file, or file_type) or file is not a multipart upload.
- file_type_mismatch — the most recent file in the same partner family uses a different file_type.
- validation_error — the underlying record failed model-level validation (including unknown file_type values).
post/schedule_files
Response
File uploaded; sync job enqueued
Example response
{
"id": 482,
"name": "October 2026 Baseline",
"company_id": 1042,
"created_at": "2026-04-27T15:30:00Z"
}