openapi: 3.0.1
info:
contact:
name: Polarion REST API Support
url: https://support.sw.siemens.com/
description:
About
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.
For a detailed description of the REST API and how to use it, see the REST API User Guide (available on Support Center).
license:
name: Apache 2.0
url: http://www.apache.org/licenses/LICENSE-2.0.html
title: Polarion REST Account Users API
version: v1
servers:
- url: https://example.com/polarion/rest/v1
security:
- bearerAuth: []
tags:
- name: Users
paths:
/user:
get:
operationId: getCurrentUser
parameters:
- name: fields
in: query
description: Filter returned resource fields. See REST API User Guide for details.
style: deepObject
schema:
$ref: '#/components/schemas/sparseFields'
- name: include
in: query
description: Include related entities. See REST API User Guide 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/usersSingleGetResponse'
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 current User.
tags:
- Users
/users:
get:
operationId: getUsers
parameters:
- name: page[size]
in: query
description: Limit the number of entities returned in a single response. See REST API User Guide 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 REST API User Guide for details.
schema:
type: integer
format: int32
- name: fields
in: query
description: Filter returned resource fields. See REST API User Guide for details.
style: deepObject
schema:
$ref: '#/components/schemas/sparseFields'
- name: include
in: query
description: Include related entities. See REST API User Guide 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/usersListGetResponse'
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 Users.
tags:
- Users
post:
operationId: postUsers
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/usersListPostRequest'
description: The User(s) body.
required: true
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/usersListPostResponse'
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 Users.
tags:
- Users
/users/{userId}:
get:
operationId: getUser
parameters:
- name: userId
in: path
description: The User ID.
required: true
schema:
type: string
- name: fields
in: query
description: Filter returned resource fields. See REST API User Guide for details.
style: deepObject
schema:
$ref: '#/components/schemas/sparseFields'
- name: include
in: query
description: Include related entities. See REST API User Guide 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/usersSingleGetResponse'
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 User.
tags:
- Users
patch:
operationId: patchUser
parameters:
- name: userId
in: path
description: The User ID.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/usersSinglePatchRequest'
description: The User 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 User.
tags:
- Users
/users/{userId}/actions/getAvatar:
get:
operationId: getAvatar
parameters:
- name: userId
in: path
description: The User ID.
required: true
schema:
type: string
responses:
'200':
content:
application/octet-stream: {}
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 User Avatar.
tags:
- Users
/users/{userId}/actions/setLicense:
post:
operationId: setLicense
parameters:
- name: userId
in: path
description: The User ID.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/setLicenseRequestBody'
description: The user license 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: Sets the User's license.
tags:
- Users
/users/{userId}/actions/updateAvatar:
post:
operationId: updateAvatar
parameters:
- name: userId
in: path
description: The User ID.
required: true
schema:
type: string
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/updateAvatarRequestBody'
description: Avatar file data.
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 User Avatar.
tags:
- Users
components:
schemas:
usersSinglePatchRequest:
properties:
data:
properties:
type:
enum:
- users
type: string
id:
example: MyUserId
type: string
attributes:
properties:
description:
properties:
type:
enum:
- text/plain
type: string
value:
example: My text value
type: string
type: object
disabledNotifications:
type: boolean
email:
example: Email
type: string
initials:
example: Initials
type: string
name:
example: Name
type: string
type: object
relationships:
properties:
globalRoles:
properties:
data:
items:
properties:
id:
example: MyRoleId
type: string
type:
enum:
- globalroles
type: string
type: object
type: array
type: object
projectRoles:
properties:
data:
items:
properties:
id:
example: MyProjectId/MyRoleId
type: string
type:
enum:
- projectroles
type: string
type: object
type: array
type: object
userGroups:
properties:
data:
items:
properties:
id:
example: MyUserGroupId
type: string
type:
enum:
- usergroups
type: string
type: object
type: array
type: object
type: object
type: object
type: object
setLicenseRequestBody:
properties:
concurrent:
description: Is concurrent user
example: true
type: boolean
group:
description: License group
example: Department
type: string
license:
description: User's license type
enum:
- REVIEWER
- XReviewer
- XBase
- XEssentials
- XPro
- XStandard
- XEnterprise
- XAdvanced
- XExtended
- XPremium
- XAutomotive
- PRO
- REQUIREMENTS
- QA
- ALM
type: string
type: object
usersListGetResponse:
properties:
data:
items:
properties:
type:
enum:
- users
type: string
id:
example: MyUserId
type: string
revision:
example: '1234'
type: string
attributes:
properties:
avatarUrl:
example: http://server-host-name/application-path/icons/avatar/MyUserId/avatar.png?revision=1234
type: string
description:
properties:
type:
enum:
- text/plain
type: string
value:
example: My text value
type: string
type: object
disabledNotifications:
type: boolean
email:
example: Email
type: string
id:
example: MyUserId
type: string
initials:
example: Initials
type: string
name:
example: Name
type: string
type: object
relationships:
properties:
addOnLicenseSlots:
properties:
data:
items:
properties:
id:
example: LicenseType/ModelType/GroupId
type: string
type:
enum:
- license_slots
type: string
type: object
type: array
meta:
properties:
totalCount:
format: int32
type: integer
type: object
type: object
baseLicenseSlot:
properties:
data:
properties:
id:
example: LicenseType/ModelType/GroupId
type: string
type:
enum:
- license_slots
type: string
type: object
type: object
globalRoles:
properties:
data:
items:
properties:
id:
example: MyRoleId
type: string
type:
enum:
- globalroles
type: string
type: object
type: array
meta:
properties:
totalCount:
format: int32
type: integer
type: object
type: object
projectRoles:
properties:
data:
items:
properties:
id:
example: MyProjectId/MyRoleId
type: string
type:
enum:
- projectroles
type: string
type: object
type: array
meta:
properties:
totalCount:
format: int32
type: integer
type: object
type: object
userGroups:
properties:
data:
items:
properties:
id:
example: MyUserGroupId
type: string
revision:
example: '1234'
type: string
type:
enum:
- usergroups
type: string
type: object
type: array
meta:
properties:
totalCount:
format: int32
type: integer
type: object
type: object
type: object
links:
properties:
self:
example: server-host-name/application-path/users/MyUserId
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 REST API User Guide.
items:
type: object
type: array
links:
properties:
first:
example: server-host-name/application-path/users?page%5Bsize%5D=10&page%5Bnumber%5D=1
type: string
last:
example: server-host-name/application-path/users?page%5Bsize%5D=10&page%5Bnumber%5D=9
type: string
next:
example: server-host-name/application-path/users?page%5Bsize%5D=10&page%5Bnumber%5D=6
type: string
prev:
example: server-host-name/application-path/users?page%5Bsize%5D=10&page%5Bnumber%5D=4
type: string
self:
example: server-host-name/application-path/users?page%5Bsize%5D=10&page%5Bnumber%5D=5
type: string
type: object
meta:
properties:
totalCount:
format: int32
type: integer
type: object
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
updateAvatarRequestBody:
properties:
content:
description: avatar content
format: binary
type: string
title: UpdateAvatarRequestBody
type: object
usersListPostRequest:
properties:
data:
items:
properties:
type:
enum:
- users
type: string
attributes:
properties:
description:
properties:
type:
enum:
- text/plain
type: string
value:
example: My text value
type: string
type: object
disabledNotifications:
type: boolean
email:
example: Email
type: string
id:
example: MyUserId
type: string
initials:
example: Initials
type: string
name:
example: Name
type: string
required:
- id
type: object
relationships:
properties:
globalRoles:
properties:
data:
items:
properties:
id:
example: MyRoleId
type: string
type:
enum:
- globalroles
type: string
type: object
type: array
type: object
projectRoles:
properties:
data:
items:
properties:
id:
example: MyProjectId/MyRoleId
type: string
type:
enum:
- projectroles
type: string
type: object
type: array
type: object
userGroups:
properties:
data:
items:
properties:
id:
example: MyUserGroupId
type: string
type:
enum:
- usergroups
type: string
type: object
type: array
type: object
type: object
type: object
type: array
type: object
usersListPostResponse:
properties:
data:
items:
properties:
type:
enum:
- users
type: string
id:
example: MyUserId
type: string
links:
properties:
self:
example: server-host-name/application-path/users/MyUserId
type: string
type: object
type: object
type: array
type: object
usersSingleGetResponse:
properties:
data:
properties:
type:
enum:
- users
type: string
id:
example: MyUserId
type: string
revision:
example: '1234'
type: string
attributes:
properties:
avatarUrl:
example: http://server-host-name/application-path/icons/avatar/MyUserId/avatar.png?revision=1234
type: string
description:
properties:
type:
enum:
- text/plain
type: string
value:
example: My text value
type: string
type: object
disabledNotifications:
type: boolean
email:
example: Email
type: string
id:
example: MyUserId
type: string
initials:
example: Initials
type: string
name:
example: Name
type: string
type: object
relationships:
properties:
addOnLicenseSlots:
properties:
data:
items:
properties:
id:
example: LicenseType/ModelType/GroupId
type: string
type:
enum:
- license_slots
type: string
type: object
type: array
meta:
properties:
totalCount:
format: int32
type: integer
type: object
type: object
baseLicenseSlot:
properties:
data:
properties:
id:
example: LicenseType/ModelType/GroupId
type: string
type:
enum:
- license_slots
type: string
type: object
type: object
globalRoles:
properties:
data:
items:
properties:
id:
example: MyRoleId
type: string
type:
enum:
- globalroles
type: string
type: object
type: array
meta:
properties:
totalCount:
format: int32
type: integer
type: object
type: object
projectRoles:
properties:
data:
items:
properties:
id:
example: MyProjectId/MyRoleId
type: string
type:
enum:
- projectroles
type: string
type: object
type: array
meta:
properties:
totalCount:
format: int32
type: integer
type: object
type: object
userGroups:
properties:
data:
items:
properties:
id:
example: MyUserGroupId
type: string
revision:
example: '1234'
type: string
type:
enum:
- usergroups
type: string
type: object
type: array
meta:
properties:
totalCount:
format: int32
type: integer
type: object
type: object
type: object
links:
properties:
self:
example: server-host-name/application-path/users/MyUserId
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 REST API User Guide.
items:
type: object
type: array
links:
properties:
self:
example: server-host-name/application-path/users/MyUserId
type: string
type: object
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