Charthop event API

The event API from Charthop — 5 operation(s) for event.

Operations 5

GET /v1/org/{orgId}/event Return past events, paginated, without payloads present #
POST /v1/org/{orgId}/event/notify/inbound/{appId}/{inboundId} Create an inbound event #
POST /v1/org/{orgId}/event/notify/outbound/app/{appId} Create an outbound event #
GET /v1/org/{orgId}/event/{eventId} Return individual event, including payload #
POST /v1/org/{orgId}/event/{eventId}/notify Resend all associated notifications for a previous event (superusers only) #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/charthop-event-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

charthop-event-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: REST API for ChartHop
  version: V1.0.0
  title: ChartHop access Event API
  contact:
    name: ChartHop
    url: https://www.charthop.com
    email: support@charthop.com
servers:
- url: https://localhost
- url: http://localhost
tags:
- name: event
paths:
  /v1/org/{orgId}/event:
    get:
      tags:
      - event
      summary: Return past events, paginated, without payloads present
      operationId: findEvents
      parameters:
      - name: orgId
        in: path
        description: Org identifier (either id or slug)
        required: true
        schema:
          type: string
      - name: userId
        in: query
        description: User id
        required: false
        schema:
          type: string
      - name: agentUserId
        in: query
        description: Agent user id (filter to events done by a specific agent)
        required: false
        schema:
          type: string
      - name: entityId
        in: query
        description: Entity id
        required: false
        schema:
          type: string
      - name: entityType
        in: query
        description: Entity type
        required: false
        schema:
          type: string
          enum:
          - ACTION
          - AGREEMENT
          - AI_AGENT
          - AI_AGENT_MEMORY
          - AI_CHAT
          - AI_CONFIG
          - AI_CREDIT_LIMIT
          - AI_CREDIT_USAGE
          - AI_HINT
          - AI_PROMPT
          - APP
          - APP_CONFIG
          - APPROVAL_CHAIN
          - APPROVAL_CHAIN_STAGE
          - APPROVAL_DELEGATE
          - APPROVAL_REQUEST
          - ASSESSMENT
          - BUDGET
          - BUDGET_POOL
          - BUNDLE
          - CALENDAR
          - CALENDAR_ENTRY
          - CATEGORY
          - CATEGORY_SORT
          - CHANGE
          - COMMENT
          - COMP_BAND
          - COMP_REVIEW
          - CONTENT
          - CUSTOMER
          - DATA_VIEW
          - EXCHANGE_RATE
          - EMAIL_TEMPLATE
          - EVENT
          - FIELD
          - FILE
          - FORM
          - FORM_DRAFT
          - FORM_RESPONSE
          - GEOCODE
          - GROUP
          - GROUP_TYPE
          - GOAL
          - GOAL_PROGRESS
          - GOAL_TARGET
          - GOAL_TYPE
          - GUIDELINE
          - JOB
          - JOB_CODE
          - JOB_LEVEL
          - MEDIA
          - MESSAGE
          - MULTIPLIER
          - ORG
          - ORG_CONFIG
          - PERSON
          - PROFILE_TAB
          - POLICY
          - PROCESS
          - PRODUCT
          - QUERY_TOKEN
          - QUESTION
          - REPORT
          - REPORT_CHART
          - ROLE
          - SCENARIO
          - SIGNATURE
          - SIGNATURE_REQUEST
          - STOCK_GRANT
          - STOCK_PRICE
          - TABLE
          - TABLE_ROW
          - TASK_CONFIG
          - TEMPLATE
          - TASK
          - TOKEN
          - TIMEOFF
          - TIMEOFF_BALANCE_ADJUSTMENT
          - TIMEOFF_LEDGER_ENTRY
          - TIMEOFF_POLICY
          - TRANSCRIPT
          - USER
      - name: parentEntityId
        in: query
        description: Parent entity id
        required: false
        schema:
          type: string
      - name: scenarioId
        in: query
        description: Scenario id
        required: false
        schema:
          type: string
      - name: processId
        in: query
        description: Process id
        required: false
        schema:
          type: string
      - name: fields
        in: query
        description: Fields that were modified
        required: false
        schema:
          type: string
      - name: code
        in: query
        description: Event code to search for
        required: false
        schema:
          type: string
      - name: from
        in: query
        description: Timestamp to start search at
        required: false
        schema:
          type: string
      - name: limit
        in: query
        description: Number of results to return
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResultsEvent'
        '400':
          description: bad request
        '401':
          description: not authorized
        '404':
          description: not found
  /v1/org/{orgId}/event/notify/inbound/{appId}/{inboundId}:
    post:
      tags:
      - event
      summary: Create an inbound event
      operationId: createAppInboundEvent
      parameters:
      - name: orgId
        in: path
        description: Org identifier (either id or slug)
        required: true
        schema:
          type: string
      - name: appId
        in: path
        description: App id
        required: true
        schema:
          type: string
      - name: inboundId
        in: path
        description: Inbound id
        required: true
        schema:
          type: string
      - name: processId
        in: query
        description: Process id
        required: false
        schema:
          type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                type: string
                example: 588f7ee98f138b19220041a7
        '400':
          description: bad request
        '401':
          description: not authorized
        '404':
          description: not found
      requestBody:
        content:
          application/json:
            schema:
              type: object
              additionalProperties:
                type: object
        description: Inbound body to create event
        required: true
  /v1/org/{orgId}/event/notify/outbound/app/{appId}:
    post:
      tags:
      - event
      summary: Create an outbound event
      operationId: createAppOutboundEvent
      parameters:
      - name: orgId
        in: path
        description: Org identifier (either id or slug)
        required: true
        schema:
          type: string
      - name: appId
        in: path
        description: App id
        required: true
        schema:
          type: string
      - name: processId
        in: query
        description: Process id
        required: false
        schema:
          type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                type: string
                example: 588f7ee98f138b19220041a7
        '400':
          description: bad request
        '401':
          description: not authorized
        '404':
          description: not found
      requestBody:
        content:
          application/json:
            schema:
              type: object
              additionalProperties:
                type: object
        description: Outbound body to create event
        required: true
  /v1/org/{orgId}/event/{eventId}:
    get:
      tags:
      - event
      summary: Return individual event, including payload
      operationId: getEvent
      parameters:
      - name: orgId
        in: path
        description: Org identifier (either id or slug)
        required: true
        schema:
          type: string
      - name: eventId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Event'
  /v1/org/{orgId}/event/{eventId}/notify:
    post:
      tags:
      - event
      summary: Resend all associated notifications for a previous event (superusers only)
      operationId: replayEvent
      parameters:
      - name: orgId
        in: path
        description: Org identifier (either id or slug)
        required: true
        schema:
          type: string
      - name: eventId
        in: path
        description: Event id
        required: true
        schema:
          type: string
      - name: app
        in: query
        description: App name to restrict notifications to
        required: false
        schema:
          type: string
      responses:
        '400':
          description: bad request
        '401':
          description: not authorized
        '404':
          description: not found
components:
  schemas:
    Event:
      type: object
      required:
      - id
      - userId
      - type
      - entityType
      - entityId
      - at
      properties:
        id:
          type: string
          description: globally unique id
          example: 588f7ee98f138b19220041a7
        userId:
          type: string
          description: user id who caused the event
          example: 588f7ee98f138b19220041a7
        orgId:
          type: string
          description: parent organization id
          example: 588f7ee98f138b19220041a7
        type:
          type: string
          description: type of event
          enum:
          - APP
          - APPROVE
          - CANCEL
          - COMBINE
          - CREATE
          - DELETE
          - DONE
          - ERROR
          - EXPORT
          - EXPORT_CSV
          - EXPORT_ORG_CHART
          - GENERATE
          - GEOIP
          - INCOMING
          - INSTALL
          - INVITE
          - INBOUND
          - LOGIN
          - MERGE
          - MESSAGE
          - OUTBOUND
          - PREVIEW_AS
          - READ
          - READ_EXTERNAL
          - READ_SENSITIVE
          - READ_ATS
          - READ_ATS_WEBHOOK
          - READ_FULL_NAME
          - READ_FUTURE_DATE
          - READ_METADATA
          - READ_COMP
          - READ_BILLING
          - READ_PENDING
          - READ_PAYROLL
          - READ_SENSITIVE_FILTERS
          - WRITE_EXTERNAL
          - REASSIGN
          - REJECT
          - RELEASE
          - REMIND
          - REMOVE_PASSWORD
          - REQUEST
          - RESTORE
          - RESUME
          - REVOKE
          - RUN
          - RUN_ATS
          - SECURITY
          - SHARE
          - SHOW_DASHBOARD_DAYS_AHEAD
          - SHOW_OPEN_JOBS
          - STEP
          - SUBMIT
          - SYNC
          - TEST
          - TOKEN
          - UNINSTALL
          - UPDATE
          - UPDATE_PASSWORD
          - UPLOAD_CSV
          - WRITE
          - VIEW_AS
        entityType:
          type: string
          description: type of target entity
          enum:
          - ACTION
          - AGREEMENT
          - AI_AGENT
          - AI_AGENT_MEMORY
          - AI_CHAT
          - AI_CONFIG
          - AI_CREDIT_LIMIT
          - AI_CREDIT_USAGE
          - AI_HINT
          - AI_PROMPT
          - APP
          - APP_CONFIG
          - APPROVAL_CHAIN
          - APPROVAL_CHAIN_STAGE
          - APPROVAL_DELEGATE
          - APPROVAL_REQUEST
          - ASSESSMENT
          - BUDGET
          - BUDGET_POOL
          - BUNDLE
          - CALENDAR
          - CALENDAR_ENTRY
          - CATEGORY
          - CATEGORY_SORT
          - CHANGE
          - COMMENT
          - COMP_BAND
          - COMP_REVIEW
          - CONTENT
          - CUSTOMER
          - DATA_VIEW
          - EXCHANGE_RATE
          - EMAIL_TEMPLATE
          - EVENT
          - FIELD
          - FILE
          - FORM
          - FORM_DRAFT
          - FORM_RESPONSE
          - GEOCODE
          - GROUP
          - GROUP_TYPE
          - GOAL
          - GOAL_PROGRESS
          - GOAL_TARGET
          - GOAL_TYPE
          - GUIDELINE
          - JOB
          - JOB_CODE
          - JOB_LEVEL
          - MEDIA
          - MESSAGE
          - MULTIPLIER
          - ORG
          - ORG_CONFIG
          - PERSON
          - PROFILE_TAB
          - POLICY
          - PROCESS
          - PRODUCT
          - QUERY_TOKEN
          - QUESTION
          - REPORT
          - REPORT_CHART
          - ROLE
          - SCENARIO
          - SIGNATURE
          - SIGNATURE_REQUEST
          - STOCK_GRANT
          - STOCK_PRICE
          - TABLE
          - TABLE_ROW
          - TASK_CONFIG
          - TEMPLATE
          - TASK
          - TOKEN
          - TIMEOFF
          - TIMEOFF_BALANCE_ADJUSTMENT
          - TIMEOFF_LEDGER_ENTRY
          - TIMEOFF_POLICY
          - TRANSCRIPT
          - USER
        entityId:
          type: string
          description: id of target entity
          example: 588f7ee98f138b19220041a7
        behalfUserId:
          type: string
          description: id of the original user this app user is acting on behalf of
          example: 588f7ee98f138b19220041a7
        agentUserId:
          type: string
          description: id of the agent (app user) if this event was performed by an agent on behalf of a user
          example: 588f7ee98f138b19220041a7
        aiChatId:
          type: string
          description: id of the AI chat that this event derives from
          example: 588f7ee98f138b19220041a7
        aiToolUseId:
          type: string
          description: AI chat tool use identifier that ties this event to a specific tool invocation
        jobId:
          type: string
          description: jobId of the entity, if the entity is a job or closely connected to a single job
          example: 588f7ee98f138b19220041a7
        personId:
          type: string
          description: personId of the entity, if the entity is a person or closely connected to a single person
          example: 588f7ee98f138b19220041a7
        tableId:
          type: string
          description: id of table, if entity is a table row
          example: 588f7ee98f138b19220041a7
        subtype:
          type: string
          description: subtype of entity
        payload:
          type: object
          description: event-specific payload containing information about the change that took place
          additionalProperties:
            type: object
        at:
          type: string
          description: timestamp of event
        processId:
          type: string
          description: id of process
          example: 588f7ee98f138b19220041a7
        date:
          type: string
          format: date
          description: effective date, if in use
        scenarioId:
          type: string
          description: id of scenario
          example: 588f7ee98f138b19220041a7
        parentEntityId:
          type: string
          description: id of associated entity, such as comp cycle
          example: 588f7ee98f138b19220041a7
        fields:
          type: array
          description: set of fields that were updated by the event
          uniqueItems: true
          items:
            type: string
        code:
          type: string
          description: event code, for example job.update
    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
    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'
    ResultsEvent:
      type: object
      required:
      - data
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Event'
        next:
          type: string
        access:
          type: array
          items:
            $ref: '#/components/schemas/ResultsAccess'