API Reference
API Reference

/review-cycles/:id

Returns a single performance review cycle by id. Required scope: r_reviews.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
🚧

This endpoint uses the r_reviews scope, which must be enabled through the Integrations section found within the Settings menu.

Requires a user token, or an account token together with the member_id query parameter (the request is then evaluated with that member's permissions). An account token without member_id gets 403 Account tokens need a member_id for this operation. member_id is ignored for user tokens.

The member must be able to view review cycles: either through the View review cycles permission (global or scoped role), or through View employee directory in an account with performance reviews enabled.

The same visibility rules as GET /review-cycles apply: archived, deleted, or otherwise non-visible cycles return 404.

Results

{
  "id": "4d3",
  "name": "Annual Review 2024",
  "description": "Company-wide annual performance review",
  "state": "active",
  "start_date": "2024-11-01T00:00:00.000Z",
  "end_date": "2024-11-30T00:00:00.000Z",
  "review_period_start": "2024-01-01T00:00:00.000Z",
  "review_period_end": "2024-11-01T00:00:00.000Z",
  "timezone": null,
  "employee_count": 4,
  "draft_count": 2,
  "completed_count": 1,
  "not_started_count": 1,
  "share_start_date": null,
  "share_deadline": null,
  "sign_deadline": null,
  "employee_meeting_deadline": null,
  "customization_start_date": "2024-10-01T00:00:00.000Z",
  "customization_end_date": "2024-10-15T00:00:00.000Z",
  "has_manager_review": true,
  "has_self_review": true,
  "has_peer_reviews": false,
  "has_upwards_reviews": false
}
keytypedescription
idstringReview cycle SPI key
namestringName of the review cycle
descriptionstring | nullDescription of the review cycle
statestringOne of: draft, scheduled, in_preparation, active, ended
start_datestringISO 8601 date the cycle starts
end_datestringISO 8601 date the cycle ends
review_period_startstringISO 8601 start of the period under review
review_period_endstringISO 8601 end of the period under review
timezonestring | nullTimezone of the cycle
employee_countintegerNumber of employees in the cycle
draft_countintegerNumber of reviews in draft
completed_countintegerNumber of completed reviews
not_started_countintegerNumber of reviews not yet started
share_start_datestring | nullISO 8601 date from which reviews can be shared
share_deadlinestring | nullISO 8601 deadline for sharing reviews
sign_deadlinestring | nullISO 8601 deadline for signing reviews
employee_meeting_deadlinestring | nullISO 8601 deadline for the review meeting
customization_start_datestring | nullISO 8601 start of the form preparation (customization) window
customization_end_datestring | nullISO 8601 end of the form preparation (customization) window
has_manager_reviewbooleanWhether the cycle includes manager reviews
has_self_reviewbooleanWhether the cycle includes self reviews
has_peer_reviewsbooleanWhether the cycle includes peer reviews
has_upwards_reviewsbooleanWhether the cycle includes upward reviews

Error responses

Error bodies come in three shapes. 400 validation errors are a JSON object keyed by the invalid parameter, e.g. {"limit": {"code": "number.max", "message": "\"limit\" must be less than or equal to 200"}}. 401 and 403 are plain-text bodies, e.g. Required scopes missing: ["r_reviews"], or Forbidden when the member lacks permission. 404 is JSON, e.g. {"message": "Review cycle not found"}.

StatusCondition
400id is not a valid SPI key
401Missing or invalid token
403Missing r_reviews scope, account token without member_id, or the member cannot view review cycles
404No visible review cycle exists with the supplied id
Path Params
string
required

Review cycle SPI key (hexadecimal)

Query Params
string

Required when using an account token: the member (SPI key, from GET /members) to act as. The request is evaluated with that member's permissions; without it the request gets 403. Ignored for user tokens.

Headers
string
enum
Defaults to application/json

Generated from available response content types

Allowed:
Responses

Language
Credentials
Header
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json
text/plain