Siemens PLM Collections API

The Collections API from Siemens PLM — 6 operation(s) for collections.

OpenAPI Specification

siemens-plm-collections-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 Collections API
  version: v1
servers:
- url: https://example.com/polarion/rest/v1
security:
- bearerAuth: []
tags:
- name: Collections
paths:
  /projects/{projectId}/collections:
    delete:
      operationId: deleteCollections
      parameters:
      - name: projectId
        in: path
        description: The Project ID.
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/collectionsListDeleteRequest'
        description: The Collection(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 Collections.
      tags:
      - Collections
    get:
      operationId: getCollections
      parameters:
      - name: projectId
        in: path
        description: The Project 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: query
        in: query
        description: The query string.
        schema:
          type: string
      - name: sort
        in: query
        description: The sort string.
        schema:
          type: string
      - name: revision
        in: query
        description: The revision ID.
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/collectionsListGetResponse'
          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 Collections.
      tags:
      - Collections
    post:
      operationId: postCollections
      parameters:
      - name: projectId
        in: path
        description: The Project ID.
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/collectionsListPostRequest'
        description: The Collection(s) body.
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/collectionsListPostResponse'
          description: Created
        '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 Collections.
      tags:
      - Collections
  /projects/{projectId}/collections/{collectionId}:
    delete:
      operationId: deleteCollection
      parameters:
      - name: projectId
        in: path
        description: The Project ID.
        required: true
        schema:
          type: string
      - name: collectionId
        in: path
        description: The Collection 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 Collection.
      tags:
      - Collections
    get:
      operationId: getCollection
      parameters:
      - name: projectId
        in: path
        description: The Project ID.
        required: true
        schema:
          type: string
      - name: collectionId
        in: path
        description: The Collection 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/collectionsSingleGetResponse'
          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 Collection.
      tags:
      - Collections
    patch:
      operationId: patchCollections
      parameters:
      - name: projectId
        in: path
        description: The Project ID.
        required: true
        schema:
          type: string
      - name: collectionId
        in: path
        description: The Collection ID.
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/collectionsSinglePatchRequest'
        description: The Collection(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 Collection.
      tags:
      - Collections
  /projects/{projectId}/collections/{collectionId}/actions/close:
    post:
      operationId: closeCollection
      parameters:
      - name: projectId
        in: path
        description: The Project ID.
        required: true
        schema:
          type: string
      - name: collectionId
        in: path
        description: The Collection 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
        '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: Closes the specified Collection.
      tags:
      - Collections
  /projects/{projectId}/collections/{collectionId}/actions/reopen:
    post:
      operationId: reopenCollection
      parameters:
      - name: projectId
        in: path
        description: The Project ID.
        required: true
        schema:
          type: string
      - name: collectionId
        in: path
        description: The Collection 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
        '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: Reopens the specified Collection.
      tags:
      - Collections
  /projects/{projectId}/collections/{collectionId}/actions/reuse:
    post:
      operationId: reuseCollection
      parameters:
      - name: projectId
        in: path
        description: The Project ID.
        required: true
        schema:
          type: string
      - name: collectionId
        in: path
        description: The Collection ID.
        required: true
        schema:
          type: string
      - name: revision
        in: query
        description: The revision ID.
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/reuseCollectionRequestBody'
        description: Reusing parameters.
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/collectionsSinglePostResponse'
          description: Created
        '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: Reuses the specified Collection.
      tags:
      - Collections
  /projects/{projectId}/collections/{collectionId}/relationships/{relationshipId}:
    delete:
      operationId: deleteCollectionsRelationship
      parameters:
      - name: projectId
        in: path
        description: The Project ID.
        required: true
        schema:
          type: string
      - name: collectionId
        in: path
        description: The Collection ID.
        required: true
        schema:
          type: string
      - name: relationshipId
        in: path
        description: The Relationship ID.
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/relationshipsListDeleteRequest'
        description: The Relationship body.
        required: true
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '405':
          description: Not Allowed
        '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: Removes the specific Relationship from the Collection.
      tags:
      - Collections
    get:
      operationId: getCollectionsRelationship
      parameters:
      - name: projectId
        in: path
        description: The Project ID.
        required: true
        schema:
          type: string
      - name: collectionId
        in: path
        description: The Collection ID.
        required: true
        schema:
          type: string
      - name: relationshipId
        in: path
        description: The Relationship 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/RelationshipResponseBody'
          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 Collection Relationships.
      tags:
      - Collections
    patch:
      operationId: patchCollectionsRelationships
      parameters:
      - name: projectId
        in: path
        description: The Project ID.
        required: true
        schema:
          type: string
      - name: collectionId
        in: path
        description: The Collection ID.
        required: true
        schema:
          type: string
      - name: relationshipId
        in: path
        description: The Relationship ID.
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RelationshipsRequestWithRevisionBody'
        description: The Relationship 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 Collection Relationships.
      tags:
      - Collections
    post:
      operationId: postCollectionsRelationships
      parameters:
      - name: projectId
        in: path
        description: The Project ID.
        required: true
        schema:
          type: string
      - name: collectionId
        in: path
        description: The Collection ID.
        required: true
        schema:
          type: string
      - name: relationshipId
        in: path
        description: The Relationship ID.
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RelationshipsRequestWithRevisionBody'
        description: The Document(s) body.
        required: true
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '405':
          description: Not Allowed
        '406':
          description: Not Acceptable
        '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 the specific Relationships for the Collections.
      tags:
      - Collections
components:
  schemas:
    collectionsSinglePatchRequest:
      properties:
        data:
          properties:
            type:
              enum:
              - collections
              type: string
            id:
              example: MyProjectId/MyCollectionId
              type: string
            attributes:
              properties:
                description:
                  properties:
                    type:
                      enum:
                      - text/html
                      - text/plain
                      type: string
                    value:
                      example: My text value
                      type: string
                  type: object
                name:
                  example: Name
                  type: string
              type: object
            relationships:
              properties:
                documents:
                  properties:
                    data:
                      items:
                        properties:
                          id:
                            example: MyProjectId/MySpaceId/MyDocumentId
                            type: string
                          revision:
                            example: '1234'
                            type: string
                          type:
                            enum:
                            - documents
                            type: string
                        type: object
                      type: array
                  type: object
                richPages:
                  properties:
                    data:
                      items:
                        properties:
                          id:
                            example: MyProjectId/MySpaceId/MyRichPageId
                            type: string
                          type:
                            enum:
                            - pages
                            type: string
                        type: object
                      type: array
                  type: object
                testRuns:
                  properties:
                    data:
                      items:
                        properties:
                          id:
                            example: MyProjectId/MyTestRunId
                            type: string
                          type:
                            enum:
                            - testruns
                            type: string
                        type: object
                      type: array
                  type: object
                upstreamCollections:
                  properties:
                    data:
                      items:
                        properties:
                          id:
                            example: MyProjectId/MyCollectionId
                            type: string
                          revision:
                            example: '1234'
                            type: string
                          type:
                            enum:
                            - collections
                            type: string
                        type: object
                      type: array
                  type: object
              type: object
          type: object
      type: object
    RelationshipDataBody:
      properties:
        id:
          example: MyProjectId/MyResourceId
          type: string
        type:
          enum:
          - collections
          - categories
          - documents
          - document_attachments
          - document_comments
          - document_parts
          - enumerations
          - globalroles
          - icons
          - jobs
          - linkedworkitems
          - externallylinkedworkitems
          - linkedoslcresources
          - pages
          - page_attachments
          - page_comments
          - plans
          - projectroles
          - projectgroups
          - projects
          - projecttemplates
          - spaces
          - testparameters
          - testparameter_definitions
          - testrecords
          - teststep_results
          - testruns
          - testrun_attachments
          - teststepresult_attachments
          - testrun_comments
          - usergroups
          - users
          - workitems
          - workitem_attachments
          - workitem_approvals
          - workitem_comments
          - featureselections
          - teststeps
          - workrecords
          - revisions
          - testrecord_attachments
          - license_slots
          - license_types
          - license
          - metadata
          - license_assignments
          - customfields
          type: string
      type: object
    collectionsListPostRequest:
      properties:
        data:
          items:
            properties:
              type:
                enum:
                - collections
                type: string
              attributes:
                properties:
                  description:
                    properties:
                      type:
                        enum:
                        - text/html
                        - text/plain
                        type: string
                      value:
                        example: My text value
                        type: string
                    type: object
                  id:
                    example: ID
                    type: string
                  name:
                    example: Name
                    type: string
                type: object
              relationships:
                properties:
                  documents:
                    properties:
                      data:
                        items:
                          properties:
                            id:
                              example: MyProjectId/MySpaceId/MyDocumentId
                              type: string
                            revision:
                              example: '1234'
                              type: string
                            type:
                              enum:
                              - documents
                              type: string
                          type: object
                        type: array
                    type: object
                  richPages:
                    properties:
                      data:
                        items:
                          properties:
                            id:
                              example: MyProjectId/MySpaceId/MyRichPageId
                              type: string
                            type:
                              enum:
                              - pages
                              type: string
                          type: object
                        type: array
                    type: object
                  testRuns:
                    properties:
                      data:
                        items:
                          properties:
                            id:
                              example: MyProjectId/MyTestRunId
                              type: string
                            type:
                              enum:
                              - testruns
                              type: string
                          type: object
                        type: array
                    type: object
                  upstreamCollections:
                    properties:
                      data:
                        items:
                          properties:
                            id:
                              example: MyProjectId/MyCollectionId
                              type: string
                            revision:
                              example: '1234'
                              type: string
                            type:
                              enum:
                              - collections
                              type: string
                          type: object
                        type: array
                    type: object
                type: object
            type: object
          type: array
      type: object
    collectionsListDeleteRequest:
      properties:
        data:
          items:
            properties:
              type:
                enum:
                - collections
                type: string
              id:
                example: MyProjectId/MyCollectionId
                type: string
            type: object
          type: array
      type: object
    collectionsSinglePostResponse:
      properties:
        data:
          properties:
            type:
              enum:
              - collections
              type: string
            id:
              example: MyProjectId/MyCollectionId
              type: string
            attributes:
              properties:
                closedOn:
                  example: '1970-01-01T00:00:00Z'
                  format: date-time
                  type: string
                created:
                  example: '1970-01-01T00:00:00Z'
                  format: date-time
                  type: string
                description:
                  properties:
                    type:
                      enum:
                      - text/html
                      - text/plain
                      type: string
                    value:
                      example: My text value
                     

# --- truncated at 32 KB (69 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/siemens-plm/refs/heads/main/openapi/siemens-plm-collections-api-openapi.yml