Charthop comp-review API
The comp-review API from Charthop — 25 operation(s) for comp-review.
The comp-review API from Charthop — 25 operation(s) for comp-review.
swagger: '2.0'
info:
description: REST API for ChartHop
version: V1.0.0
title: ChartHop access comp-review API
contact:
name: ChartHop
url: https://www.charthop.com
email: support@charthop.com
host: localhost
schemes:
- https
- http
consumes:
- application/json
produces:
- application/json
tags:
- name: comp-review
paths:
/v1/org/{orgId}/comp-review:
get:
tags:
- comp-review
summary: Find comp reviews in the organization
operationId: findCompReviews
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: from
in: query
description: Comp review ID to start paginating from
required: false
type: string
- name: limit
in: query
description: Number of results to return
required: false
type: integer
format: int32
- name: returnAccess
in: query
description: 'Return access information -- pass a list of actions to check, for example: create,update,delete'
required: false
type: string
responses:
'200':
description: successful operation
schema:
$ref: '#/definitions/ResultsCompReview'
'400':
description: bad request
'401':
description: not authorized
'404':
description: not found
post:
tags:
- comp-review
summary: Create a comp review
operationId: createCompReview
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: body
in: body
description: Comp review data to create
required: true
schema:
$ref: '#/definitions/CreateCompReview'
responses:
'201':
description: created
schema:
$ref: '#/definitions/CompReview'
'400':
description: bad request
'401':
description: not authorized
'404':
description: not found
/v1/org/{orgId}/comp-review/bulk/delete:
post:
tags:
- comp-review
summary: Delete a set of comp reviews
operationId: bulkDelete
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: body
in: body
description: List of comp review ids to delete
required: true
schema:
type: array
items:
type: string
example: 588f7ee98f138b19220041a7
responses:
'200':
description: successful operation
schema:
$ref: '#/definitions/Process'
'400':
description: invalid data
'403':
description: permission denied
'404':
description: not found
/v1/org/{orgId}/comp-review/bulk/duplicate:
post:
tags:
- comp-review
summary: Duplicate a set of comp reviews
operationId: bulkDuplicate
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: body
in: body
description: List of comp review ids to duplicate
required: true
schema:
type: array
items:
type: string
example: 588f7ee98f138b19220041a7
responses:
'200':
description: successful operation
schema:
$ref: '#/definitions/Process'
'400':
description: invalid data
'403':
description: permission denied
'404':
description: not found
/v1/org/{orgId}/comp-review/{compReviewId}:
get:
tags:
- comp-review
summary: Return a particular comp review by ID
operationId: getCompReviewById
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: compReviewId
in: path
description: Comp review id
required: true
type: string
responses:
'200':
description: successful operation
schema:
$ref: '#/definitions/CompReview'
'400':
description: bad request
'401':
description: not authorized
'404':
description: not found
patch:
tags:
- comp-review
summary: Update a comp review
operationId: updateCompReview
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: compReviewId
in: path
description: Review id
required: true
type: string
- name: body
in: body
required: true
schema:
$ref: '#/definitions/UpdateCompReview'
responses:
'200':
description: successful operation
schema:
$ref: '#/definitions/CompReview'
'400':
description: bad request
'401':
description: not authorized
'404':
description: not found
delete:
tags:
- comp-review
summary: Delete a comp review
operationId: deleteCompReview
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: compReviewId
in: path
description: Comp review id
required: true
type: string
responses:
'400':
description: bad request
'401':
description: not authorized
'404':
description: not found
/v1/org/{orgId}/comp-review/{compReviewId}/approval-requests:
get:
tags:
- comp-review
summary: Get a list of approval request responses for a given comp review
operationId: getApprovalRequestsForCompReview
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: compReviewId
in: path
description: Comp review id
required: true
type: string
- name: isPreview
in: query
required: false
type: boolean
responses:
'200':
description: successful operation
schema:
type: array
items:
$ref: '#/definitions/ApprovalRequestCompReviewResponse'
'400':
description: bad request
'401':
description: not authorized
'404':
description: not found
/v1/org/{orgId}/comp-review/{compReviewId}/approval-requests/{approvalRequestId}:
patch:
tags:
- comp-review
summary: Update approval request status, including any rollups
operationId: updateApprovalRequestStatus
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: compReviewId
in: path
description: Comp review id
required: true
type: string
- name: approvalRequestId
in: path
description: Approval request id
required: true
type: string
- name: previewJobId
in: query
description: Preview-as job id
required: false
type: string
- name: isFinalApproval
in: query
description: Updating the final stage status
required: false
type: boolean
- name: collaboratorSelectedReviewerJobId
in: query
description: Reviewer job id a collaborator is working on
required: false
type: string
- name: body
in: body
description: Approval request data to update
required: true
schema:
$ref: '#/definitions/ApprovalRequestPatchBody'
responses:
'204':
description: No Content
/v1/org/{orgId}/comp-review/{compReviewId}/associated-entities:
get:
tags:
- comp-review
summary: Get the necessary caches on a specific date for a compensation review
operationId: getAssociatedEntities
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: compReviewId
in: path
description: Comp review id
required: true
type: string
responses:
'200':
description: successful operation
schema:
$ref: '#/definitions/PartialAppEntities'
'400':
description: bad request
'401':
description: not authorized
'404':
description: not found
/v1/org/{orgId}/comp-review/{compReviewId}/audit-log:
get:
tags:
- comp-review
summary: Return past events, paginated, without payloads present
operationId: getAuditLog
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: compReviewId
in: path
description: Comp review id
required: true
type: string
- name: currentUserJobId
in: query
description: The jobId of the current user
required: false
type: string
- name: isPreview
in: query
description: Is the audit log for a preview
required: false
type: boolean
- name: limit
in: query
description: Number of results to return
required: false
type: integer
format: int32
- name: from
in: query
description: Timestamp to start search at
required: false
type: string
responses:
'200':
description: successful operation
schema:
$ref: '#/definitions/ResultsEvent'
'400':
description: bad request
'401':
description: not authorized
'404':
description: not found
/v1/org/{orgId}/comp-review/{compReviewId}/conclude:
post:
tags:
- comp-review
summary: Concludes (or closes) the compensation review
operationId: concludeReview
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: compReviewId
in: path
description: Comp review id
required: true
type: string
- name: isFullyApproved
in: query
description: Whether is review fully approved on conclude (default false)
required: false
type: boolean
responses:
'200':
description: successful operation
'400':
description: bad request
'401':
description: not authorized
'404':
description: not found
/v1/org/{orgId}/comp-review/{compReviewId}/dry-run:
post:
tags:
- comp-review
summary: Preview changes that will occur when resuming a paused comp review
operationId: dryRunUnpause
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: compReviewId
in: path
description: Comp review id
required: true
type: string
responses:
'200':
description: successful operation
schema:
$ref: '#/definitions/CompReviewDryRunResponse'
'400':
description: bad request
'401':
description: not authorized
'404':
description: not found
/v1/org/{orgId}/comp-review/{compReviewId}/duplicate:
post:
tags:
- comp-review
summary: Duplicate a comp review
operationId: duplicate
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: compReviewId
in: path
description: Comp review id
required: true
type: string
- name: body
in: body
description: Duplicate options
required: true
schema:
$ref: '#/definitions/DuplicateCompReviewOptions'
responses:
'201':
description: successful operation
schema:
$ref: '#/definitions/CompReview'
'400':
description: invalid data
'403':
description: permission denied
'404':
description: not found
/v1/org/{orgId}/comp-review/{compReviewId}/eligible-employees:
get:
tags:
- comp-review
summary: Get a list of employees eligible for a given comp review
operationId: getEligibleEmployees
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: compReviewId
in: path
description: Comp review id
required: true
type: string
- name: filterScenarioIds
in: query
description: Find ineligible employees under specific comp scenario managers
required: false
type: string
- name: ineligible
in: query
description: Whether to get eligible or ineligible employees (defaults to eligible)
required: false
type: boolean
- name: from
in: query
description: Job id to start paginating from
required: false
type: string
- name: limit
in: query
description: Number of results to return
required: false
type: integer
format: int32
- name: fields
in: query
description: Table fields
required: true
type: string
- name: format
in: query
description: Data format to use; default is json, can also use json-extended or json-readable
required: false
type: string
- name: filter
in: query
description: Optional CQL filter to apply to employees
required: false
type: string
responses:
'200':
description: successful operation
schema:
$ref: '#/definitions/ResultsData'
'400':
description: bad request
'401':
description: not authorized
'404':
description: not found
/v1/org/{orgId}/comp-review/{compReviewId}/export:
post:
tags:
- comp-review
summary: Export a comp review's changes
operationId: exportChanges
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: compReviewId
in: path
description: Comp review id
required: true
type: string
- name: body
in: body
description: Export options
required: true
schema:
type: object
additionalProperties:
type: object
responses:
'201':
description: successful operation
schema:
$ref: '#/definitions/Process'
'400':
description: invalid data
'403':
description: permission denied
'404':
description: not found
/v1/org/{orgId}/comp-review/{compReviewId}/export/audit:
post:
tags:
- comp-review
summary: Export a comp review's audit log
operationId: exportAuditLog
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: compReviewId
in: path
description: Comp review id
required: true
type: string
- name: body
in: body
description: Export options
required: true
schema:
type: object
additionalProperties:
type: object
responses:
'201':
description: successful operation
schema:
$ref: '#/definitions/Process'
'400':
description: invalid data
'403':
description: permission denied
'404':
description: not found
/v1/org/{orgId}/comp-review/{compReviewId}/export/comments:
post:
tags:
- comp-review
summary: Export a comp review's comments
operationId: exportComments
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: compReviewId
in: path
description: Comp review id
required: true
type: string
- name: body
in: body
description: Export options
required: true
schema:
type: object
additionalProperties:
type: object
responses:
'201':
description: successful operation
schema:
$ref: '#/definitions/Process'
'400':
description: invalid data
'403':
description: permission denied
'404':
description: not found
/v1/org/{orgId}/comp-review/{compReviewId}/generate:
post:
tags:
- comp-review
summary: Generate a compensation review
operationId: generateCompReview
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: compReviewId
in: path
description: Comp review id
required: true
type: string
- name: body
in: body
description: Whether this should be generated as a preview
required: true
schema:
$ref: '#/definitions/GenerateCompReviewOptions'
responses:
'200':
description: successful operation
schema:
$ref: '#/definitions/Process'
'400':
description: bad request
'401':
description: not authorized
'404':
description: not found
/v1/org/{orgId}/comp-review/{compReviewId}/in-cycle:
get:
tags:
- comp-review
summary: Get an overview for a given user in an in-cycle comp-review
operationId: getInCycleView
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: compReviewId
in: path
description: Comp review id
required: true
type: string
- name: scenariosOnly
in: query
required: false
type: boolean
- name: proposalOnly
in: query
required: false
type: boolean
- name: reviewsOnly
in: query
required: false
type: boolean
- name: columnsOnly
in: query
required: false
type: boolean
- name: isPreview
in: query
required: false
type: boolean
- name: jobId
in: query
required: false
type: string
- name: includeAllRequests
in: query
description: Allows users with multiple roles to request full access for owner or final approver roles
required: false
type: boolean
- name: includeFeatures
in: query
required: false
type: boolean
responses:
'200':
description: successful operation
schema:
$ref: '#/definitions/InCycleViewResponse'
'400':
description: bad request
'401':
description: not authorized
'404':
description: not found
/v1/org/{orgId}/comp-review/{compReviewId}/in-cycle/changes:
get:
tags:
- comp-review
summary: Get the changes for a set of scenarios in an in-cycle comp-review
operationId: getInCycleChanges
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: compReviewId
in: path
description: Comp review id
required: true
type: string
- name: approvalRequestId
in: query
description: Approval request id
required: false
type: string
- name: isPreview
in: query
required: false
type: boolean
- name: jobId
in: query
required: false
type: string
responses:
'200':
description: successful operation
schema:
$ref: '#/definitions/InCycleViewChanges'
'400':
description: bad request
'401':
description: not authorized
'404':
description: not found
/v1/org/{orgId}/comp-review/{compReviewId}/in-cycle/changes/{changeId}:
get:
tags:
- comp-review
summary: Get the change data and guideline flags associated with an in-cycle change
operationId: getInCycleChange
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: compReviewId
in: path
description: Comp review id
required: true
type: string
- name: changeId
in: path
description: Change id
required: true
type: string
responses:
'200':
description: successful operation
schema:
$ref: '#/definitions/InCycleChange'
'400':
description: bad request
'401':
description: not authorized
'404':
description: not found
/v1/org/{orgId}/comp-review/{compReviewId}/in-cycle/collabicient:
get:
tags:
- comp-review
summary: Get a collaborator participant reviewer in-cycle comp-review
operationId: getInCycleCollabicientView
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: compReviewId
in: path
description: Comp review id
required: true
type: string
- name: scenariosOnly
in: query
required: false
type: boolean
- name: proposalOnly
in: query
required: false
type: boolean
- name: reviewsOnly
in: query
required: false
type: boolean
- name: columnsOnly
in: query
required: false
type: boolean
- name: isPreview
in: query
required: false
type: boolean
- name: collabicientJobId
in: query
required: true
type: string
responses:
'200':
description: successful operation
schema:
$ref: '#/definitions/InCycleViewResponse'
'400':
description: bad request
'401':
description: not authorized
'404':
description: not found
/v1/org/{orgId}/comp-review/{compReviewId}/metadata:
get:
tags:
- comp-review
summary: Return metadata for a particular comp review by ID
operationId: getCompReviewMetadata
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: compReviewId
in: path
description: Comp review id
required: true
type: string
responses:
'200':
description: successful operation
schema:
$ref: '#/definitions/CompReviewMetadata'
'400':
description: bad request
'401':
description: not authorized
'404':
description: not found
/v1/org/{orgId}/comp-review/{compReviewId}/pause:
post:
tags:
- comp-review
summary: Pauses the compensation review to allow for editing by an admin
operationId: pauseReview
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: compReviewId
in: path
description: Comp review id
required: true
type: string
responses:
'400':
description: bad request
'401':
description: not authorized
'404':
description: not found
/v1/org/{orgId}/comp-review/{compReviewId}/preview:
post:
tags:
- comp-review
summary: Generate tiering & preview for a compensation review
operationId: previewCompReview
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: compReviewId
in: path
description: Comp review id
required: true
type: string
responses:
'200':
description: successful operation
schema:
$ref: '#/definitions/TiersResponse'
'400':
description: bad request
'401':
description: not authorized
'404':
description: not found
/v1/org/{orgId}/comp-review/{compReviewId}/send-reminder-email:
post:
tags:
- comp-review
summary: 'Send a reminder email to someone participating in a comp review '
operationId: sendCompReviewReminderEmail
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: compReviewId
in: path
description: Comp review id
required: true
type: string
- name: body
in: body
description: Approval request ID
required: true
schema:
$ref: '#/definitions/SendReminderEmailOptions'
responses:
'400':
description: bad request
'401':
description: not authorized
'404':
description: not found
/v1/org/{orgId}/comp-review/{compReviewId}/visualizations:
post:
tags:
- comp-review
summary: Get data for visualizations for a comp review
operationId: getVisualizations
consumes:
- application/json
produces:
- application/json
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
type: string
- name: compReviewId
in: path
description: Comp review id
required: true
type: string
- name: viewJobId
in: query
description: The job you would like to view as
required: false
type: string
- name: preview
in: query
description: Are the visualizations for a preview
required: false
type: boolean
- name: includeAllRequests
in: query
description: Allows users with multiple roles to request full access for owner or final approver roles
required: false
type: boolean
- name: body
in: body
description: Options for visualizations
required: true
schema:
$ref: '#/definitions/GetVisualizationsOptions'
responses:
'200':
description: successful operation
schema:
$ref: '#/definitions/CompReviewVisualizations'
'400':
description: bad request
'401':
description: not authorized
'404':
description: not found
definitions:
ApprovalGroup:
type: object
required:
- type
- approvers
properties:
groupId:
type: string
description: globally unique id
example: 588f7ee98f138b19220041a7
type:
type: string
description: What type of group this is
enum:
- REVIEWER
- COLLABORATOR
- FINAL_APPROVER
approvers:
type: array
description: approvers that make up the group
items:
$ref: '#/definitions/ApprovalGroupApprover'
expandExpression:
type: string
description: optional custom expression to determine approval request tree
minApproversNeeded:
type: integer
format: int32
description: minimum number of approvers required in this group for approval (null means all approvers required)
LogData:
type: object
required:
- level
- at
- data
properties:
level:
type: string
enum:
- INFO
- WARN
- ERROR
at:
type: string
description: created timestamp
example: '2017-01-24T13:57:52Z'
message:
type: string
data:
type: object
additionalProperties:
type: object
CompReviewReviewerWorkbook:
type: object
required:
- columns
properties:
columns:
type: array
description: ordering and settings of columns in workbook
items:
$ref: '#/definitions/CompReviewWorkbookColumn'
numFrozenColumns:
type: integer
format: int32
description: number of frozen columns at start of workbook
moreInfoUrl:
type: string
description: optional link to see additional customer documentation
moreInfoLabel:
type: string
description: optional label for additional customer documentation
isEdited:
type: boolean
description: whether the default config has been modified
allowReviewerApproverAuditLog:
type: boolean
description: allows all reviewers and approvers to view the audit log
OwnershipChange:
type: object
required:
- scenarioId
- oldOwnerJobI
# --- truncated at 32 KB (132 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/charthop/refs/heads/main/openapi/charthop-comp-review-api-openapi.yml