Charthop expression API

The expression API from Charthop — 2 operation(s) for expression.

Operations 2

POST /v1/org/{orgId}/cql/evaluate Evaluate carrot expression #
POST /v1/org/{orgId}/cql/validate Validate carrot expression(s) #

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-expression-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 email required.

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

OpenAPI Specification

charthop-expression-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: REST API for ChartHop
  version: V1.0.0
  title: ChartHop access Expression API
  contact:
    name: ChartHop
    url: https://www.charthop.com
    email: support@charthop.com
servers:
- url: https://localhost
- url: http://localhost
tags:
- name: expression
paths:
  /v1/org/{orgId}/cql/evaluate:
    post:
      tags:
      - expression
      summary: Evaluate carrot expression
      operationId: evaluateExpression
      parameters:
      - name: orgId
        in: path
        description: Org identifier (either id or slug)
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EvaluateExpressionResponse'
        '400':
          description: bad request
        '401':
          description: not authorized
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EvaluateExpressionRequest'
        description: Expression to be evaluated
        required: true
  /v1/org/{orgId}/cql/validate:
    post:
      tags:
      - expression
      summary: Validate carrot expression(s)
      operationId: validateExpressions
      parameters:
      - name: orgId
        in: path
        description: Org identifier (either id or slug)
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidateExpressionResponse'
        '400':
          description: bad request
        '401':
          description: not authorized
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ValidateExpressionRequest'
        description: Expression to be validated
        required: true
components:
  schemas:
    ValidateExpressionResponse:
      type: object
      required:
      - isValid
      - results
      properties:
        isValid:
          type: boolean
        results:
          type: array
          items:
            $ref: '#/components/schemas/ValidateExpressionResult'
    EvaluateExpressionRequest:
      type: object
      required:
      - expr
      - entityType
      - entityId
      properties:
        expr:
          type: string
        entityType:
          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
        entityId:
          type: string
          example: 588f7ee98f138b19220041a7
    ValidateExpressionRequest:
      type: object
      required:
      - expressions
      properties:
        expressions:
          type: array
          items:
            type: string
    EvaluateExpressionResponse:
      type: object
      properties:
        result:
          type: object
        error:
          type: string
    ValidateExpressionResult:
      type: object
      required:
      - expr
      - isValid
      - message
      properties:
        expr:
          type: string
        isValid:
          type: boolean
        message:
          type: string