swagger: '2.0' info: version: v3 title: OpenTextâ„¢ Core Application Security Web API Explorer ApiKeyManagement Users API host: api.ams.fortify.com schemes: - https tags: - name: Users paths: /api/v3/users/{userId}: get: tags: - Users summary: Get a specific user description: 'Allowed Scopes: api-tenant, view-users' operationId: UsersV3_GetUser consumes: [] produces: - application/json - text/json - application/xml - text/xml parameters: - name: userId in: path description: The user id can be obtained by calling GET /api/v3/users required: true type: integer format: int32 responses: '200': description: Ok schema: $ref: '#/definitions/User' '401': description: Unauthorized '404': description: NotFound '429': description: TooManyRequests '500': description: InternalServerError put: tags: - Users summary: Update an existing user description: 'Allowed Scopes: api-tenant, manage-users' operationId: UsersV3_PutUser consumes: - application/json - text/json - application/xml - text/xml - application/x-www-form-urlencoded - multipart/form-data produces: - application/json - text/json - application/xml - text/xml parameters: - name: userId in: path description: The user id can be obtained by calling GET /api/v3/users required: true type: integer format: int32 - name: requestModel in: body description: PutUserRequest model required: true schema: $ref: '#/definitions/PutUserRequest' responses: '200': description: Ok schema: $ref: '#/definitions/PutUserResponse' '400': description: BadRequest schema: $ref: '#/definitions/ErrorResponse' '401': description: Unauthorized '404': description: NotFound '422': description: UnprocessableEntity schema: $ref: '#/definitions/ErrorResponse' '429': description: TooManyRequests '500': description: InternalServerError schema: $ref: '#/definitions/ErrorResponse' delete: tags: - Users summary: Delete a specific user description: 'Allowed Scopes: api-tenant, manage-users' operationId: UsersV3_DeleteUser consumes: [] produces: - application/json - text/json - application/xml - text/xml parameters: - name: userId in: path description: The user id can be obtained by calling GET /api/v3/users required: true type: integer format: int32 responses: '200': description: Ok schema: $ref: '#/definitions/DeleteUserResponse' '401': description: Unauthorized '404': description: NotFound '429': description: TooManyRequests '500': description: InternalServerError /api/v3/users: get: tags: - Users summary: Get a list of users description: 'Allowed Scopes: api-tenant, view-users' operationId: UsersV3_GetUsers consumes: [] produces: - application/json - text/json - application/xml - text/xml parameters: - name: filters in: query description: "A delimited list of field filters.\r\n

Field name and value should be separated by a colon (:).\r\n

Multiple fields should be separated by a plus (+). Multiple fields are treated as an AND condition. Example, fieldname1:value+fieldname2:value\r\n

Multiple values for a field should be separated by a pipe (|). Mulitple values for a field are treated as an OR condition. Example, fieldname1:value1|value2" required: false type: string - name: orderBy in: query description: The field name to order the results by. required: false type: string - name: orderByDirection in: query description: The direction to order the results by. ASC and DESC are valid values. required: false type: string - name: fields in: query description: Comma separated list of fields to return. required: false type: string - name: offset in: query description: Offset of the starting record. 0 indicates the first record. required: false type: integer format: int32 - name: limit in: query description: Maximum records to return. The maximum value allowed is 50. required: false type: integer format: int32 responses: '200': description: Ok schema: $ref: '#/definitions/UserListResponse' '400': description: BadRequest schema: $ref: '#/definitions/ErrorResponse' '401': description: Unauthorized '429': description: TooManyRequests '500': description: InternalServerError post: tags: - Users summary: Create a new user description: 'Allowed Scopes: api-tenant, manage-users' operationId: UsersV3_PostUser consumes: - application/json - text/json - application/xml - text/xml - application/x-www-form-urlencoded - multipart/form-data produces: - application/json - text/json - application/xml - text/xml parameters: - name: requestModel in: body description: PostUserRequest model required: true schema: $ref: '#/definitions/PostUserRequest' responses: '201': description: Created schema: $ref: '#/definitions/PostUserResponse' '401': description: Unauthorized '422': description: UnprocessableEntity schema: $ref: '#/definitions/ErrorResponse' '429': description: TooManyRequests '500': description: InternalServerError schema: $ref: '#/definitions/ErrorResponse' definitions: ErrorResponse: description: Error Response type: object properties: errors: description: List of errors type: array items: $ref: '#/definitions/Error' DeleteUserResponse: description: Delete User Response type: object properties: success: description: Indicates if the user was deleted type: boolean errors: description: A list of errors encountered type: array items: type: string PutUserResponse: description: Put Release Response type: object properties: success: description: Indicates if the user was updated type: boolean errors: description: A list of errors encountered type: array items: type: string User: description: User type: object properties: userId: format: int32 description: The users's id type: integer userName: description: The users's username type: string firstName: description: The users's first name type: string lastName: description: The users's last name type: string email: description: The users's email address type: string phoneNumber: description: The users's phone number type: string isVerified: description: Indicates if the user has been verified type: boolean roleId: format: int32 description: The users's role id type: integer roleName: description: The users's role name type: string isSuspended: description: Indicates if the user's account is suspended type: boolean mustChange: description: Indicates if the user must change the password on the next login type: boolean passwordNeverExpires: description: Indicates if the password never expires type: boolean modifiedDate: format: date-time description: The users's modified date type: string lastLoginDate: format: date-time description: The users's last login date type: string createdVia: description: How the user was created type: string PostUserResponse: description: Post User Response type: object properties: userId: format: int32 description: The id of the user type: integer UserListResponse: description: Generic List Response type: object properties: items: description: The list of items type: array items: $ref: '#/definitions/User' totalCount: format: int32 description: Total count of items type: integer offset: format: int32 description: Offset of the starting record. 0 indicates the first record. type: integer limit: format: int32 description: Maximum records to return. type: integer PostUserRequest: description: Post User Request required: - userName - email - firstName - lastName - roleId type: object properties: userName: description: The username type: string email: description: The user's email address type: string firstName: description: The user's first name type: string lastName: description: The user's last name type: string phoneNumber: description: The user's phone number type: string roleId: format: int32 description: The The user's role id type: integer passwordNeverExpires: description: Indicates if the password never expires type: boolean isSuspended: description: Indicates if the user's account is suspended type: boolean Error: description: Error type: object properties: errorCode: format: int32 description: The error code type: integer message: description: The error message type: string PutUserRequest: description: Put User Request required: - email - firstName - lastName - roleId type: object properties: email: description: The user's email address type: string firstName: description: The user's first name type: string lastName: description: The user's last name type: string phoneNumber: description: The user's phone number type: string roleId: format: int32 description: The user's role id type: integer passwordNeverExpires: description: Indicates if the password never expires type: boolean isSuspended: description: Indicates if the user's account is suspended type: boolean mustChange: description: Indicates if the user must change the password on the next login type: boolean password: description: The user's password type: string