openapi: 3.0.0 info: title: ProcessMaker Platform RESTful Environment Variables Requests API description: 'The ProcessMaker Platform RESTful API provides programmatic access to all platform functionality including process design, case management, task handling, user management, and enterprise integrations. The API is BPMN 2.0 compliant and follows the OpenAPI specification with interactive Swagger UI documentation auto-generated by Swagger/L5-Swagger. ' version: 1.0.0 contact: email: info@processmaker.com license: name: Apache 2.0 url: https://www.apache.org/licenses/LICENSE-2.0.html servers: - url: https://{organization}.processmaker.net/api/1.0 description: ProcessMaker Cloud instance variables: organization: default: myorg description: Your ProcessMaker organization subdomain security: - bearerAuth: [] tags: - name: Requests description: Process request (case) management paths: /requests: get: tags: - Requests summary: Returns all process requests operationId: getProcessesRequests parameters: - name: type in: query description: Filter by status schema: type: string enum: - all - in_progress - completed - started_me - $ref: '#/components/parameters/filter' - $ref: '#/components/parameters/order_by' - $ref: '#/components/parameters/order_direction' - $ref: '#/components/parameters/per_page' - $ref: '#/components/parameters/include' responses: '200': description: List of process requests content: application/json: schema: $ref: '#/components/schemas/ProcessRequestCollection' /requests/{process_request_id}: get: tags: - Requests summary: Get single process request by ID operationId: getProcessRequestById parameters: - name: process_request_id in: path required: true schema: type: integer - $ref: '#/components/parameters/include' responses: '200': description: Single process request content: application/json: schema: $ref: '#/components/schemas/ProcessRequest' '404': $ref: '#/components/responses/404' put: tags: - Requests summary: Update a process request operationId: updateProcessRequest parameters: - name: process_request_id in: path required: true schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ProcessRequestEditable' responses: '204': description: No content '404': $ref: '#/components/responses/404' delete: tags: - Requests summary: Delete a process request operationId: deleteProcessRequest parameters: - name: process_request_id in: path required: true schema: type: integer responses: '204': description: No content '404': $ref: '#/components/responses/404' /requests/{process_request_id}/events/{event_id}: post: tags: - Requests summary: Trigger an intermediate catch event in a process request operationId: updateProcessRequestEvent parameters: - name: process_request_id in: path required: true schema: type: string - name: event_id in: path required: true schema: type: string responses: '204': description: Event triggered successfully components: schemas: ProcessRequestCollection: type: object properties: data: type: array items: $ref: '#/components/schemas/ProcessRequest' meta: $ref: '#/components/schemas/Metadata' ProcessRequest: allOf: - $ref: '#/components/schemas/ProcessRequestEditable' - type: object properties: id: type: integer process_id: type: integer user_id: type: integer process_collaboration_id: type: integer nullable: true callable_id: type: string created_at: type: string format: date-time updated_at: type: string format: date-time completed_at: type: string format: date-time nullable: true Metadata: type: object properties: total: type: integer count: type: integer per_page: type: integer current_page: type: integer total_pages: type: integer sort_by: type: string sort_order: type: string search: type: string ProcessRequestEditable: type: object properties: status: type: string enum: - ACTIVE - COMPLETED - ERROR - CANCELED data: type: object name: type: string parameters: per_page: name: per_page in: query schema: type: integer default: 10 filter: name: filter in: query description: 'Filter results by string. Searches Name, Description, and Status. Status must match exactly. Others can be a substring. ' schema: type: string include: name: include in: query description: Include data from related models in payload. Comma separated list. schema: type: string default: '' order_direction: name: order_direction in: query schema: type: string enum: - asc - desc default: asc order_by: name: order_by in: query description: Field to order results by schema: type: string responses: '404': description: Not Found content: application/json: schema: type: object properties: error: type: string securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: JWT