Review Cycle API Reference
Introduction
The PerformYard Review Cycle API allows customers to programmatically retrieve and manage data related to review cycles defined in PerformYard. The API endpoints will let you:
- Retrieve the list of Review Cycles with the ability to sort, filter, and paginate results.
- Add a subject to a Review Cycle
Requirements
Calling these API endpoints requires an API Key and API ID. See Getting Started with PerformYard API for details on creating API keys and API Authentication for authentication flow.
Retrieve All Review Cycles
GET https://api.talent.performyard.com/v1/review-cycles
Returns a list review cycles.
Query Parameters
limit integer The number of review cycles to be returned in a single API Request. Default: 200 Minimum: 5 Maximum: 200 |
offset integer Used to paginate through the list of review cycles. Can be combined with limit. Default: 0 Increment the value by one to fetch subsequent pages (1 for the second page, 2 for the third, etc.). |
sort string Order in which to return the list of employees. Allowed Values: asc(FIELD_NAME) desc(FIELD_NAME) Allowed Field Names: name start_date |
name string Filter the returned review cycles by a specific name. Accepts only a single string value. Case sensitive. |
status enum Filter the returned review cycles by a specific status. Allowed Values: Active Completed Scheduled Accepts only a single string value. |
type enum The type of review cycle to return. Allowed Values: automated manual Accepts only a single string value. |
CURL Example
curl --location 'https://api.talent.performyard.com/v1/review-cycles' \ --header 'Accept: application/json' \ --header 'x-api-id: {{X-API-ID}}' \ --header 'x-api-key: {{X-API-KEY}}'
Response (200)
{ "review_cycles": [ { "id": "<string>", "name": "<string>", "start_date": "<string>", "completed": <boolean>, "status": "<string>" "type": "<string>" }, .... ] }
Add Subject to a Review Cycle
POST https://api.talent.performyard.com/v1/review-cycles/:review_cycle_id/subjects
Adds an employee to the defined review cycle.
Request Body Parameters
subjectId string required The employee being added to the review cycle. |
startDate string required The date of when the review should start. Allowed Formats: YYYY-MM-DD |
startTime enum The time when the review should start. Default value is based on company default review time. Timezone is based on company timezone. Allowed Values: midnight 9am noon 5pm Accepts only a single string value. |
adminEdit boolean Restricts editing permissions to just admins for this created review within the specified review cycle (update author/signers, add/remove forms). Management of created review can be down within PerformYard. Default value is false. Allowed Values: true false Accepts only a single boolean value. |
Request Body Format
{ "subjectId": "<string>", "startDate": "<string>", "startTime": "<string>", "adminEdit": <boolean> }
CURL Example
curl --location 'POST https://api.talent.performyard.com/v1/review-cycles/68628971d1328c0e869e5fd1/subjects' \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --header 'x-api-id: {{X-API-ID}}' \ --header 'x-api-key: {{X-API-KEY}}' \ --data ' { "subjectId": "6734c08623dbbf142bb2f3d6", "startDate": "2025-07-18", "startTime": "9am", "adminEdit": true }'
Response (200)
{ "message": "Employee added to review cycle." }