openapi: 3.1.0 info: title: iTwin Schedules API description: "Plan and manage 4D construction schedules \u2014 tasks, resources, calendars, baselines, animations, and work\ \ breakdown." version: '1.0' contact: name: Bentley Developer Relations url: https://developer.bentley.com/apis/schedules/ license: name: Bentley Developer Portal Terms url: https://developer.bentley.com/legal/ servers: - url: https://api.bentley.com/schedules description: iTwin Platform Production externalDocs: description: iTwin Schedules API Documentation url: https://developer.bentley.com/apis/schedules/ tags: - name: Schedules description: Schedules resources for the iTwin Schedules API. - name: Tasks description: Tasks resources for the iTwin Schedules API. - name: Resources description: Resources resources for the iTwin Schedules API. - name: Calendars description: Calendars resources for the iTwin Schedules API. - name: Animations description: Animations resources for the iTwin Schedules API. - name: Baselines description: Baselines resources for the iTwin Schedules API. - name: Work Breakdown description: Work Breakdown resources for the iTwin Schedules API. security: - OAuth2: [] paths: /: get: tags: - Schedules summary: Get Schedules operationId: GetSchedules responses: '200': description: List of Schedules content: application/json: schema: type: object post: tags: - Schedules summary: Create Schedule operationId: CreateSchedule requestBody: required: true content: application/json: schema: type: object responses: '201': description: Schedule created content: application/json: schema: type: object /{scheduleId}: parameters: - name: scheduleId in: path required: true schema: type: string format: uuid get: tags: - Schedules summary: Get Schedules operationId: GetSchedules responses: '200': description: List of Schedules content: application/json: schema: type: object patch: tags: - Schedules summary: Update Schedule operationId: UpdateSchedule requestBody: required: true content: application/json: schema: type: object responses: '200': description: Schedule updated delete: tags: - Schedules summary: Delete Schedule operationId: DeleteSchedule responses: '204': description: Schedule deleted /{scheduleId}/tasks: parameters: - name: scheduleId in: path required: true schema: type: string format: uuid get: tags: - Tasks summary: Get Tasks operationId: GetTasks responses: '200': description: List of Tasks content: application/json: schema: type: object post: tags: - Tasks summary: Create Task operationId: CreateTask requestBody: required: true content: application/json: schema: type: object responses: '201': description: Task created content: application/json: schema: type: object /{scheduleId}/tasks/{taskId}: parameters: - name: scheduleId in: path required: true schema: type: string format: uuid - name: taskId in: path required: true schema: type: string format: uuid get: tags: - Tasks summary: Get Tasks operationId: GetTasks responses: '200': description: List of Tasks content: application/json: schema: type: object patch: tags: - Tasks summary: Update Task operationId: UpdateTask requestBody: required: true content: application/json: schema: type: object responses: '200': description: Task updated delete: tags: - Tasks summary: Delete Task operationId: DeleteTask responses: '204': description: Task deleted /{scheduleId}/resources: parameters: - name: scheduleId in: path required: true schema: type: string format: uuid get: tags: - Resources summary: Get Resources operationId: GetResources responses: '200': description: List of Resources content: application/json: schema: type: object post: tags: - Resources summary: Create Resource operationId: CreateResource requestBody: required: true content: application/json: schema: type: object responses: '201': description: Resource created content: application/json: schema: type: object /{scheduleId}/resources/{resourceId}: parameters: - name: scheduleId in: path required: true schema: type: string format: uuid - name: resourceId in: path required: true schema: type: string format: uuid get: tags: - Resources summary: Get Resources operationId: GetResources responses: '200': description: List of Resources content: application/json: schema: type: object patch: tags: - Resources summary: Update Resource operationId: UpdateResource requestBody: required: true content: application/json: schema: type: object responses: '200': description: Resource updated delete: tags: - Resources summary: Delete Resource operationId: DeleteResource responses: '204': description: Resource deleted /{scheduleId}/calendars: parameters: - name: scheduleId in: path required: true schema: type: string format: uuid get: tags: - Calendars summary: Get Calendars operationId: GetCalendars responses: '200': description: List of Calendars content: application/json: schema: type: object post: tags: - Calendars summary: Create Calendar operationId: CreateCalendar requestBody: required: true content: application/json: schema: type: object responses: '201': description: Calendar created content: application/json: schema: type: object /{scheduleId}/animations: parameters: - name: scheduleId in: path required: true schema: type: string format: uuid get: tags: - Animations summary: Get Animations operationId: GetAnimations responses: '200': description: List of Animations content: application/json: schema: type: object post: tags: - Animations summary: Create Animation operationId: CreateAnimation requestBody: required: true content: application/json: schema: type: object responses: '201': description: Animation created content: application/json: schema: type: object /{scheduleId}/baselines: parameters: - name: scheduleId in: path required: true schema: type: string format: uuid get: tags: - Baselines summary: Get Baselines operationId: GetBaselines responses: '200': description: List of Baselines content: application/json: schema: type: object post: tags: - Baselines summary: Create Baseline operationId: CreateBaseline requestBody: required: true content: application/json: schema: type: object responses: '201': description: Baseline created content: application/json: schema: type: object /{scheduleId}/wbs: parameters: - name: scheduleId in: path required: true schema: type: string format: uuid get: tags: - Work Breakdown summary: Get Work Breakdown operationId: GetWorkBreakdown responses: '200': description: List of Work Breakdown content: application/json: schema: type: object post: tags: - Work Breakdown summary: Create Work Breakdown operationId: CreateWorkBreakdown requestBody: required: true content: application/json: schema: type: object responses: '201': description: Work Breakdown created content: application/json: schema: type: object components: securitySchemes: OAuth2: type: oauth2 description: "iTwin Platform OAuth2 \u2014 Bentley IMS" flows: authorizationCode: authorizationUrl: https://ims.bentley.com/connect/authorize tokenUrl: https://ims.bentley.com/connect/token scopes: itwin-platform: Full access to iTwin Platform APIs schemas: Error: type: object properties: error: type: object properties: code: type: string message: type: string details: type: array items: type: object