Charthop approval-request API
The approval-request API from Charthop — 4 operation(s) for approval-request.
The approval-request API from Charthop — 4 operation(s) for approval-request.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/charthop-approval-request-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.2.0
info:
description: REST API for ChartHop
version: V1.0.0
title: ChartHop access Approval Request API
contact:
name: ChartHop
url: https://www.charthop.com
email: support@charthop.com
servers:
- url: https://localhost
- url: http://localhost
tags:
- name: approval-request
paths:
/v1/org/{orgId}/approval-request/entity/scenario:
get:
tags:
- approval-request
summary: Return all approval request scenario responses for an org
operationId: findApprovalRequestResponsesByScenario
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
schema:
type: string
- name: from
in: query
description: Id to start paginating from
required: false
schema:
type: string
- name: limit
in: query
description: Number of results to return
required: false
schema:
type: integer
format: int32
- name: entityIds
in: query
description: entity ids to filter on
required: false
schema:
type: string
- name: includeDeleted
in: query
description: Include deleted approval requests
required: false
schema:
type: boolean
- name: includeCompReviewScenarios
in: query
description: Include scenario approval requests in comp reviews
required: false
schema:
type: boolean
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/ResultsApprovalRequestScenarioResponse'
'400':
description: bad request
'404':
description: not found
/v1/org/{orgId}/approval-request/entity/timeoff/{timeOffId}:
get:
tags:
- approval-request
summary: Return a particular approval request timeoff response by entity id
operationId: getApprovalRequestTimeoffResponseByTimeoffId
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
schema:
type: string
- name: timeOffId
in: path
description: Time off entity id
required: true
schema:
type: string
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/ApprovalRequestTimeoffResponse'
'400':
description: bad request
'401':
description: not authorized
'404':
description: not found
/v1/org/{orgId}/approval-request/scenario-job/{jobId}:
get:
tags:
- approval-request
summary: Return a particular approval request scenario response by jobId
operationId: getApprovalRequestScenarioResponseByJobId
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
schema:
type: string
- name: jobId
in: path
description: Job id
required: true
schema:
type: string
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/ApprovalRequestScenarioResponse'
'400':
description: bad request
'401':
description: not authorized
'404':
description: not found
/v1/org/{orgId}/approval-request/{approvalRequestId}/scenario-response:
get:
tags:
- approval-request
summary: Return a particular approval request scenario response by id
operationId: getApprovalRequestScenarioResponseById
parameters:
- name: orgId
in: path
description: Org identifier (either id or slug)
required: true
schema:
type: string
- name: approvalRequestId
in: path
description: Approval request id
required: true
schema:
type: string
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/ApprovalRequestScenarioResponse'
'400':
description: bad request
'401':
description: not authorized
'404':
description: not found
components:
schemas:
ApprovalGroupApprover:
type: object
required:
- jobId
- status
properties:
jobId:
type: string
description: A job ID that is part of the group
example: 588f7ee98f138b19220041a7
status:
type: string
description: The status of the approver
enum:
- PENDING
- APPROVED
- REJECTED
- SKIPPED
commentId:
type: string
description: Last comment of the approver
example: 588f7ee98f138b19220041a7
reassignCommentId:
type: string
description: Last comment associated with a reassignment
example: 588f7ee98f138b19220041a7
isFallback:
type: boolean
description: Whether approver is a fallback
fallbackFor:
type: string
description: What jobId approver is a fallback for
example: 588f7ee98f138b19220041a7
actedByJobId:
type: string
description: Job of the delegate who acted on this slot on the approver's behalf
example: 588f7ee98f138b19220041a7
updateAt:
type: string
description: The date the status was updated last
ApprovalRequestScenarioResponse:
type: object
required:
- id
- isComplete
- stageOverrides
- isApprovalCommentRequiredForActiveStage
- isRejectionCommentRequiredForActiveStage
- approvalChainId
- scenarioId
- createId
- createAt
- updateId
- updateAt
properties:
id:
type: string
example: 588f7ee98f138b19220041a7
activeStage:
$ref: '#/components/schemas/ApprovalChainStageOverride'
proposerStage:
$ref: '#/components/schemas/ApprovalChainStageOverride'
nextReviewerStage:
$ref: '#/components/schemas/ApprovalChainStageOverride'
isComplete:
type: boolean
rejectedStage:
$ref: '#/components/schemas/ApprovalChainStageOverride'
stageOverrides:
type: array
items:
$ref: '#/components/schemas/ApprovalChainStageOverride'
isApprovalCommentRequiredForActiveStage:
type: boolean
isRejectionCommentRequiredForActiveStage:
type: boolean
approvalChainId:
type: string
example: 588f7ee98f138b19220041a7
scenarioId:
type: string
example: 588f7ee98f138b19220041a7
createId:
type: string
example: 588f7ee98f138b19220041a7
createAt:
type: string
updateId:
type: string
example: 588f7ee98f138b19220041a7
updateAt:
type: string
deleteId:
type: string
example: 588f7ee98f138b19220041a7
deleteAt:
type: string
delegatedApproverJobId:
type: string
example: 588f7ee98f138b19220041a7
delegatedApproverJobIds:
type: array
items:
type: string
example: 588f7ee98f138b19220041a7
ApprovalChainStageOverride:
type: object
required:
- stageOverrideId
- approvalChainStageId
- status
- order
properties:
stageOverrideId:
type: string
description: unique id for stage
example: 588f7ee98f138b19220041a7
approvalChainStageId:
type: string
description: parent approval chain stage id
example: 588f7ee98f138b19220041a7
groups:
type: array
description: approval group override
items:
$ref: '#/components/schemas/ApprovalGroup'
status:
type: string
description: status of the stage
enum:
- CANCELED
- REJECTED
- PENDING
- ACTIVE
- REVIEWED
- APPROVED
- SKIPPED
- SUBMITTED
order:
type: integer
format: int32
description: order of the stage
ResultsAccess:
type: object
required:
- allowed
properties:
ids:
type: array
uniqueItems: true
items:
type: string
example: 588f7ee98f138b19220041a7
allowed:
type: array
uniqueItems: true
items:
$ref: '#/components/schemas/AccessAction'
ResultsApprovalRequestScenarioResponse:
type: object
required:
- data
properties:
data:
type: array
items:
$ref: '#/components/schemas/ApprovalRequestScenarioResponse'
next:
type: string
access:
type: array
items:
$ref: '#/components/schemas/ResultsAccess'
ApprovalRequestTimeoffResponse:
type: object
required:
- id
- isComplete
- stageOverrides
- approvalChainId
- timeOffId
- createId
- createAt
- updateId
- updateAt
properties:
id:
type: string
example: 588f7ee98f138b19220041a7
proposerJobId:
type: string
example: 588f7ee98f138b19220041a7
approverJobId:
type: string
example: 588f7ee98f138b19220041a7
isComplete:
type: boolean
stageOverrides:
type: array
items:
$ref: '#/components/schemas/ApprovalChainStageOverride'
approvalChainId:
type: string
example: 588f7ee98f138b19220041a7
timeOffId:
type: string
example: 588f7ee98f138b19220041a7
createId:
type: string
example: 588f7ee98f138b19220041a7
createAt:
type: string
updateId:
type: string
example: 588f7ee98f138b19220041a7
updateAt:
type: string
deleteId:
type: string
example: 588f7ee98f138b19220041a7
deleteAt:
type: string
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: '#/components/schemas/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)
AccessAction:
type: object
required:
- action
properties:
action:
type: string
fields:
type: array
uniqueItems: true
items:
type: string
types:
type: array
uniqueItems: true
items:
type: string