Siemens PLM Work Item Approvals API

The Work Item Approvals API from Siemens PLM — 2 operation(s) for work item approvals.

OpenAPI Specification

siemens-plm-work-item-approvals-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  contact:
    name: Polarion REST API Support
    url: https://support.sw.siemens.com/
  description: <h5>About</h5>The Polarion REST API lets you interact with Polarion programmatically. Use this API to integrate Polarion with your applications. This page documents the REST resources, including the HTTP response codes and example requests and responses. <br/><br/>For a detailed description of the REST API and how to use it, see the <a href="https://docs.sw.siemens.com/en-US/doc/230235217/PL20250606201928474.polarion_help_sc.xid2134849/xid2134871" target="_blank">REST API User Guide</a> (available on Support Center).
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
  title: Polarion REST Account Work Item Approvals API
  version: v1
servers:
- url: https://example.com/polarion/rest/v1
security:
- bearerAuth: []
tags:
- name: Work Item Approvals
paths:
  /projects/{projectId}/workitems/{workItemId}/approvals:
    delete:
      operationId: deleteApprovals
      parameters:
      - name: projectId
        in: path
        description: The Project ID.
        required: true
        schema:
          type: string
      - name: workItemId
        in: path
        description: The Work Item ID.
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/workitem_approvalsListDeleteRequest'
        description: The Workitem Approval(s) body.
        required: true
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '409':
          description: Conflict
        '413':
          description: Request Entity Too Large
        '415':
          description: Unsupported Media Type
        4XX-5XX:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errors'
          description: 'Error responses have the following structure:'
        '500':
          description: Internal Server Error
        '503':
          description: Service Unavailable
      summary: Deletes a list of Work Item Approvals.
      tags:
      - Work Item Approvals
    get:
      operationId: getWorkItemApprovals
      parameters:
      - name: projectId
        in: path
        description: The Project ID.
        required: true
        schema:
          type: string
      - name: workItemId
        in: path
        description: The Work Item ID.
        required: true
        schema:
          type: string
      - name: page[size]
        in: query
        description: Limit the number of entities returned in a single response. See <a href="https://docs.sw.siemens.com/en-US/doc/230235217/PL20250606201928474.polarion_help_sc.xid2134849/xid2134871" target="_blank">REST API User Guide</a> for details.
        schema:
          type: integer
          format: int32
      - name: page[number]
        in: query
        description: Specify the page number to be returned. Counting starts from 1. See <a href="https://docs.sw.siemens.com/en-US/doc/230235217/PL20250606201928474.polarion_help_sc.xid2134849/xid2134871" target="_blank">REST API User Guide</a> for details.
        schema:
          type: integer
          format: int32
      - name: fields
        in: query
        description: Filter returned resource fields. See <a href="https://docs.sw.siemens.com/en-US/doc/230235217/PL20250606201928474.polarion_help_sc.xid2134849/xid2134871" target="_blank">REST API User Guide</a> for details.
        style: deepObject
        schema:
          $ref: '#/components/schemas/sparseFields'
      - name: include
        in: query
        description: Include related entities. See <a href="https://docs.sw.siemens.com/en-US/doc/230235217/PL20250606201928474.polarion_help_sc.xid2134849/xid2134871" target="_blank">REST API User Guide</a> for details.
        schema:
          type: string
      - name: revision
        in: query
        description: The revision ID.
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/workitem_approvalsListGetResponse'
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '406':
          description: Not Acceptable
        4XX-5XX:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errors'
          description: 'Error responses have the following structure:'
        '500':
          description: Internal Server Error
        '503':
          description: Service Unavailable
      summary: Returns a list of instances.
      tags:
      - Work Item Approvals
    patch:
      operationId: patchWorkItemApprovals
      parameters:
      - name: projectId
        in: path
        description: The Project ID.
        required: true
        schema:
          type: string
      - name: workItemId
        in: path
        description: The Work Item ID.
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/workitem_approvalsListPatchRequest'
        description: The Test Run(s) body.
        required: true
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '409':
          description: Conflict
        '413':
          description: Request Entity Too Large
        '415':
          description: Unsupported Media Type
        4XX-5XX:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errors'
          description: 'Error responses have the following structure:'
        '500':
          description: Internal Server Error
        '503':
          description: Service Unavailable
      summary: Updates a list of instances.
      tags:
      - Work Item Approvals
    post:
      operationId: postWorkItemApprovals
      parameters:
      - name: projectId
        in: path
        description: The Project ID.
        required: true
        schema:
          type: string
      - name: workItemId
        in: path
        description: The Work Item ID.
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/workitem_approvalsListPostRequest'
        description: The Linked Work Item(s) body.
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/workitem_approvalsListPostResponse'
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '406':
          description: Not Acceptable
        '409':
          description: Conflict
        '413':
          description: Request Entity Too Large
        '415':
          description: Unsupported Media Type
        4XX-5XX:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errors'
          description: 'Error responses have the following structure:'
        '500':
          description: Internal Server Error
        '503':
          description: Service Unavailable
      summary: Creates a list of WorkItem Approvals.
      tags:
      - Work Item Approvals
  /projects/{projectId}/workitems/{workItemId}/approvals/{userId}:
    delete:
      operationId: deleteApproval
      parameters:
      - name: projectId
        in: path
        description: The Project ID.
        required: true
        schema:
          type: string
      - name: workItemId
        in: path
        description: The Work Item ID.
        required: true
        schema:
          type: string
      - name: userId
        in: path
        description: The User ID.
        required: true
        schema:
          type: string
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '409':
          description: Conflict
        4XX-5XX:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errors'
          description: 'Error responses have the following structure:'
        '500':
          description: Internal Server Error
        '503':
          description: Service Unavailable
      summary: Deletes the specified Work Item Approval.
      tags:
      - Work Item Approvals
    get:
      operationId: getWorkItemApproval
      parameters:
      - name: projectId
        in: path
        description: The Project ID.
        required: true
        schema:
          type: string
      - name: workItemId
        in: path
        description: The Work Item ID.
        required: true
        schema:
          type: string
      - name: userId
        in: path
        description: The User ID.
        required: true
        schema:
          type: string
      - name: fields
        in: query
        description: Filter returned resource fields. See <a href="https://docs.sw.siemens.com/en-US/doc/230235217/PL20250606201928474.polarion_help_sc.xid2134849/xid2134871" target="_blank">REST API User Guide</a> for details.
        style: deepObject
        schema:
          $ref: '#/components/schemas/sparseFields'
      - name: include
        in: query
        description: Include related entities. See <a href="https://docs.sw.siemens.com/en-US/doc/230235217/PL20250606201928474.polarion_help_sc.xid2134849/xid2134871" target="_blank">REST API User Guide</a> for details.
        schema:
          type: string
      - name: revision
        in: query
        description: The revision ID.
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/workitem_approvalsSingleGetResponse'
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '406':
          description: Not Acceptable
        4XX-5XX:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errors'
          description: 'Error responses have the following structure:'
        '500':
          description: Internal Server Error
        '503':
          description: Service Unavailable
      summary: Returns the specified instance.
      tags:
      - Work Item Approvals
    patch:
      operationId: patchWorkItemApproval
      parameters:
      - name: projectId
        in: path
        description: The Project ID.
        required: true
        schema:
          type: string
      - name: workItemId
        in: path
        description: The Work Item ID.
        required: true
        schema:
          type: string
      - name: userId
        in: path
        description: The User ID.
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/workitem_approvalsSinglePatchRequest'
        description: The Test Run(s) body.
        required: true
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '409':
          description: Conflict
        '413':
          description: Request Entity Too Large
        '415':
          description: Unsupported Media Type
        4XX-5XX:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errors'
          description: 'Error responses have the following structure:'
        '500':
          description: Internal Server Error
        '503':
          description: Service Unavailable
      summary: Updates the specified instance.
      tags:
      - Work Item Approvals
components:
  schemas:
    workitem_approvalsSingleGetResponse:
      properties:
        data:
          properties:
            type:
              enum:
              - workitem_approvals
              type: string
            id:
              example: MyProjectId/MyWorkItemId/MyUserId
              type: string
            revision:
              example: '1234'
              type: string
            attributes:
              properties:
                status:
                  enum:
                  - waiting
                  - approved
                  - disapproved
                  example: waiting
                  type: string
              type: object
            relationships:
              properties:
                user:
                  properties:
                    data:
                      properties:
                        id:
                          example: MyUserId
                          type: string
                        revision:
                          example: '1234'
                          type: string
                        type:
                          enum:
                          - users
                          type: string
                      type: object
                  type: object
              type: object
            links:
              properties:
                self:
                  example: server-host-name/application-path/projects/MyProjectId/workitems/MyWorkItemId/approvals/MyUserId?revision=1234
                  type: string
              type: object
            meta:
              properties:
                errors:
                  items:
                    properties:
                      detail:
                        description: Human-readable explanation specific to this occurrence of the problem.
                        example: 'Unexpected token, BEGIN_ARRAY expected, but was : BEGIN_OBJECT (at $.data)'
                        type: string
                      source:
                        properties:
                          parameter:
                            description: String indicating which URI query parameter caused the error.
                            example: revision
                            type: string
                          pointer:
                            description: JSON Pointer to the associated entity in the request document.
                            example: $.data
                            type: string
                          resource:
                            description: Resource causing the error.
                            properties:
                              id:
                                example: MyProjectId/id
                                type: string
                              type:
                                example: type
                                type: string
                            type: object
                        type: object
                      status:
                        description: HTTP status code applicable to this problem.
                        example: '400'
                        type: string
                      title:
                        description: Short, human-readable summary of the problem.
                        example: Bad Request
                        type: string
                    type: object
                  type: array
              type: object
          type: object
        included:
          description: Related entities might be returned, see <a href="https://docs.sw.siemens.com/en-US/doc/230235217/PL20250606201928474.polarion_help_sc.xid2134849/xid2134871" target="_blank">REST API User Guide</a>.
          items:
            type: object
          type: array
        links:
          properties:
            self:
              example: server-host-name/application-path/projects/MyProjectId/workitems/MyWorkItemId/approvals/MyUserId?revision=1234
              type: string
          type: object
      type: object
    workitem_approvalsListPostResponse:
      properties:
        data:
          items:
            properties:
              type:
                enum:
                - workitem_approvals
                type: string
              id:
                example: MyProjectId/MyWorkItemId/MyUserId
                type: string
              links:
                properties:
                  self:
                    example: server-host-name/application-path/projects/MyProjectId/workitems/MyWorkItemId/approvals/MyUserId?revision=1234
                    type: string
                type: object
            type: object
          type: array
      type: object
    workitem_approvalsSinglePatchRequest:
      properties:
        data:
          properties:
            type:
              enum:
              - workitem_approvals
              type: string
            id:
              example: MyProjectId/MyWorkItemId/MyUserId
              type: string
            attributes:
              properties:
                status:
                  enum:
                  - waiting
                  - approved
                  - disapproved
                  example: waiting
                  type: string
              type: object
          type: object
      type: object
    workitem_approvalsListPatchRequest:
      properties:
        data:
          items:
            properties:
              type:
                enum:
                - workitem_approvals
                type: string
              id:
                example: MyProjectId/MyWorkItemId/MyUserId
                type: string
              attributes:
                properties:
                  status:
                    enum:
                    - waiting
                    - approved
                    - disapproved
                    example: waiting
                    type: string
                type: object
            type: object
          type: array
      type: object
    workitem_approvalsListDeleteRequest:
      properties:
        data:
          items:
            properties:
              type:
                enum:
                - workitem_approvals
                type: string
              id:
                example: MyProjectId/MyWorkItemId/MyUserId
                type: string
            type: object
          type: array
      type: object
    sparseFields:
      properties:
        categories:
          description: Requested fields
          example: '@all'
          type: string
        collections:
          description: Requested fields
          example: '@all'
          type: string
        customfields:
          description: Requested fields
          example: '@all'
          type: string
        document_attachments:
          description: Requested fields
          example: '@all'
          type: string
        document_comments:
          description: Requested fields
          example: '@all'
          type: string
        document_parts:
          description: Requested fields
          example: '@all'
          type: string
        documents:
          description: Requested fields
          example: '@all'
          type: string
        enumerations:
          description: Requested fields
          example: '@all'
          type: string
        externallylinkedworkitems:
          description: Requested fields
          example: '@all'
          type: string
        featureselections:
          description: Requested fields
          example: '@all'
          type: string
        globalroles:
          description: Requested fields
          example: '@all'
          type: string
        icons:
          description: Requested fields
          example: '@all'
          type: string
        jobs:
          description: Requested fields
          example: '@all'
          type: string
        license:
          description: Requested fields
          example: '@all'
          type: string
        license_assignments:
          description: Requested fields
          example: '@all'
          type: string
        license_slots:
          description: Requested fields
          example: '@all'
          type: string
        license_types:
          description: Requested fields
          example: '@all'
          type: string
        linkedoslcresources:
          description: Requested fields
          example: '@all'
          type: string
        linkedworkitems:
          description: Requested fields
          example: '@all'
          type: string
        metadata:
          description: Requested fields
          example: '@all'
          type: string
        page_attachments:
          description: Requested fields
          example: '@all'
          type: string
        page_comments:
          description: Requested fields
          example: '@all'
          type: string
        pages:
          description: Requested fields
          example: '@all'
          type: string
        plans:
          description: Requested fields
          example: '@all'
          type: string
        projectroles:
          description: Requested fields
          example: '@all'
          type: string
        projects:
          description: Requested fields
          example: '@all'
          type: string
        projecttemplates:
          description: Requested fields
          example: '@all'
          type: string
        revisions:
          description: Requested fields
          example: '@all'
          type: string
        testparameter_definitions:
          description: Requested fields
          example: '@all'
          type: string
        testparameters:
          description: Requested fields
          example: '@all'
          type: string
        testrecord_attachments:
          description: Requested fields
          example: '@all'
          type: string
        testrecords:
          description: Requested fields
          example: '@all'
          type: string
        testrun_attachments:
          description: Requested fields
          example: '@all'
          type: string
        testrun_comments:
          description: Requested fields
          example: '@all'
          type: string
        testruns:
          description: Requested fields
          example: '@all'
          type: string
        teststep_results:
          description: Requested fields
          example: '@all'
          type: string
        teststepresult_attachments:
          description: Requested fields
          example: '@all'
          type: string
        teststeps:
          description: Requested fields
          example: '@all'
          type: string
        usergroups:
          description: Requested fields
          example: '@all'
          type: string
        users:
          description: Requested fields
          example: '@all'
          type: string
        workitem_approvals:
          description: Requested fields
          example: '@all'
          type: string
        workitem_attachments:
          description: Requested fields
          example: '@all'
          type: string
        workitem_comments:
          description: Requested fields
          example: '@all'
          type: string
        workitems:
          description: Requested fields
          example: '@all'
          type: string
        workrecords:
          description: Requested fields
          example: '@all'
          type: string
      type: object
    workitem_approvalsListGetResponse:
      properties:
        data:
          items:
            properties:
              type:
                enum:
                - workitem_approvals
                type: string
              id:
                example: MyProjectId/MyWorkItemId/MyUserId
                type: string
              revision:
                example: '1234'
                type: string
              attributes:
                properties:
                  status:
                    enum:
                    - waiting
                    - approved
                    - disapproved
                    example: waiting
                    type: string
                type: object
              relationships:
                properties:
                  user:
                    properties:
                      data:
                        properties:
                          id:
                            example: MyUserId
                            type: string
                          revision:
                            example: '1234'
                            type: string
                          type:
                            enum:
                            - users
                            type: string
                        type: object
                    type: object
                type: object
              links:
                properties:
                  self:
                    example: server-host-name/application-path/projects/MyProjectId/workitems/MyWorkItemId/approvals/MyUserId?revision=1234
                    type: string
                type: object
              meta:
                properties:
                  errors:
                    items:
                      properties:
                        detail:
                          description: Human-readable explanation specific to this occurrence of the problem.
                          example: 'Unexpected token, BEGIN_ARRAY expected, but was : BEGIN_OBJECT (at $.data)'
                          type: string
                        source:
                          properties:
                            parameter:
                              description: String indicating which URI query parameter caused the error.
                              example: revision
                              type: string
                            pointer:
                              description: JSON Pointer to the associated entity in the request document.
                              example: $.data
                              type: string
                            resource:
                              description: Resource causing the error.
                              properties:
                                id:
                                  example: MyProjectId/id
                                  type: string
                                type:
                                  example: type
                                  type: string
                              type: object
                          type: object
                        status:
                          description: HTTP status code applicable to this problem.
                          example: '400'
                          type: string
                        title:
                          description: Short, human-readable summary of the problem.
                          example: Bad Request
                          type: string
                      type: object
                    type: array
                type: object
            type: object
          type: array
        included:
          description: Related entities might be returned, see <a href="https://docs.sw.siemens.com/en-US/doc/230235217/PL20250606201928474.polarion_help_sc.xid2134849/xid2134871" target="_blank">REST API User Guide</a>.
          items:
            type: object
          type: array
        links:
          properties:
            first:
              example: server-host-name/application-path/projects/MyProjectId/workitems/MyWorkItemId/approvals?page%5Bsize%5D=10&page%5Bnumber%5D=1
              type: string
            last:
              example: server-host-name/application-path/projects/MyProjectId/workitems/MyWorkItemId/approvals?page%5Bsize%5D=10&page%5Bnumber%5D=9
              type: string
            next:
              example: server-host-name/application-path/projects/MyProjectId/workitems/MyWorkItemId/approvals?page%5Bsize%5D=10&page%5Bnumber%5D=6
              type: string
            prev:
              example: server-host-name/application-path/projects/MyProjectId/workitems/MyWorkItemId/approvals?page%5Bsize%5D=10&page%5Bnumber%5D=4
              type: string
            self:
              example: server-host-name/application-path/projects/MyProjectId/workitems/MyWorkItemId/approvals?page%5Bsize%5D=10&page%5Bnumber%5D=5
              type: string
          type: object
        meta:
          properties:
            totalCount:
              format: int32
              type: integer
          type: object
      type: object
    workitem_approvalsListPostRequest:
      properties:
        data:
          items:
            properties:
              type:
                enum:
                - workitem_approvals
                type: string
              attributes:
                properties:
                  status:
                    enum:
                    - waiting
                    - approved
                    - disapproved
                    example: waiting
                    type: string
                type: object
              relationships:
                properties:
                  user:
                    properties:
                      data:
                        properties:
                          id:
                            example: MyUserId
                            type: string
                          type:
                            enum:
                            - users
                            type: string
                        type: object
                    type: object
                type: object
            type: object
          type: array
      type: object
    errors:
      properties:
        errors:
          items:
            properties:
              status:
                description: HTTP status code applicable to this problem.
                example: '400'
                type: string
              title:
                description: Short, human-readable summary of the problem.
                example: Bad Request
                type: string
              detail:
                description: Human-readable explanation specific to this occurrence of the problem.
                example: 'Unexpected token, BEGIN_ARRAY expected, but was : BEGIN_OBJECT (at $.data)'
                type: string
              source:
                properties:
                  parameter:
                    description: String indicating which URI query parameter caused the error.
                    example: revision
                    type: string
                  pointer:
                    description: JSON Pointer to the associated entity in the request document.
                    example: $.data
                    type: string
                  resource:
                    description: Resource causing the error.
                    properties:
                      id:
                        example: MyProjectId/id
                        type: string
                      type:
                        example: type
                        type: string
                    type: object
                type: object
            type: object
          type: array
      type: object
  securitySchemes:
    bearerAuth:
      bearerFormat: JWT
      scheme: bearer
      type: http