Inngest Insights API

Query event and function data

Operations 4

GET /insights/events/schemas List event type schemas #
POST /insights/query Query insights #
POST /insights/query/prompt Generate insights query from prompt #
GET /insights/tables List insights tables #

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/inngest:inngest-insights-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

inngest-insights-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: The v2 API delivers a significantly improved developer experience with consistent design patterns and enhanced functionality.
  title: Inngest REST API v2 Insights API
  version: 2.0.0
servers:
- description: Production server
  url: https://api.inngest.com/v2
- description: Development server
  url: http://localhost:8288/api/v2
tags:
- description: Query event and function data
  name: Insights
paths:
  /insights/events/schemas:
    get:
      description: Returns a paginated list of event type schemas, where each schema describes the shape of a specific event's data as nested JSON.
      operationId: V2_ListInsightsEventSchemas
      parameters:
      - description: Pagination cursor from previous response
        in: query
        name: cursor
        schema:
          type: string
      - description: 'Number of event schemas to return per page (min: 1, max: 100)'
        in: query
        name: limit
        schema:
          default: '20'
          format: int32
          type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v2ListInsightsEventSchemasResponse'
          description: Paginated list of event type schemas
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v2ErrorResponse'
          description: Bad Request - invalid query parameters
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v2ErrorResponse'
          description: Unauthorized - authentication required
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v2ErrorResponse'
          description: Forbidden - insufficient permissions
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v2ErrorResponse'
          description: Internal Server Error
      security:
      - BearerAuth: []
      summary: List event type schemas
      tags:
      - Insights
      x-beta: true
  /insights/query:
    post:
      description: Query Insights using the provided SQL query.
      operationId: V2_QueryInsights
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v2QueryInsightsRequest'
        required: true
        x-originalParamName: body
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v2QueryInsightsResponse'
          description: Query executed successfully
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v2ErrorResponse'
          description: Bad Request - invalid input data
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v2ErrorResponse'
          description: Unauthorized - authentication required
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v2ErrorResponse'
          description: Forbidden - insufficient permissions
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v2ErrorResponse'
          description: Not Found - environment not found
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v2ErrorResponse'
          description: Unprocessable Entity - Query validation or execution failed.
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v2ErrorResponse'
          description: Internal Server Error
      security:
      - BearerAuth: []
      summary: Query insights
      tags:
      - Insights
      x-beta: true
  /insights/query/prompt:
    post:
      description: Translates a natural language prompt into an Insights SQL query.
      operationId: V2_QueryInsightsPrompt
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v2QueryInsightsPromptRequest'
        required: true
        x-originalParamName: body
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v2QueryInsightsPromptResponse'
          description: Query generated successfully
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v2ErrorResponse'
          description: Bad Request - invalid input data
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v2ErrorResponse'
          description: Unauthorized - authentication required
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v2ErrorResponse'
          description: Forbidden - insufficient permissions
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v2ErrorResponse'
          description: Unprocessable Entity - prompt could not be translated into a valid query
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v2ErrorResponse'
          description: Internal Server Error
      security:
      - BearerAuth: []
      summary: Generate insights query from prompt
      tags:
      - Insights
      x-beta: true
  /insights/tables:
    get:
      description: Lists the available tables that can be queried via the Insights query endpoint.
      operationId: V2_ListInsightsTables
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v2ListInsightsTablesResponse'
          description: List of available insights tables
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v2ErrorResponse'
          description: Unauthorized - authentication required
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v2ErrorResponse'
          description: Forbidden - insufficient permissions
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v2ErrorResponse'
          description: Internal Server Error
      security:
      - BearerAuth: []
      summary: List insights tables
      tags:
      - Insights
      x-beta: true
components:
  schemas:
    v2QueryInsightsPromptRequest:
      properties:
        prompt:
          description: Natural language description of the query to generate
          example: Show me the top 10 functions by failure rate in the last 7 days
          type: string
      type: object
    v2QueryInsightsRequest:
      properties:
        query:
          description: The insights query to execute, written in modified ClickHouse SQL
          type: string
      type: object
    v2InsightsOutputColumn:
      properties:
        name:
          description: Name of the column in the insights query result
          type: string
        type:
          $ref: '#/components/schemas/v2InsightsOutputColumnType'
      type: object
    v2InsightsDiagnosticPosition:
      properties:
        context:
          description: Snippet of the query string around the position to provide context for the diagnostic
          type: string
        end:
          description: Ending character index in the query string where the diagnostic applies
          format: int32
          type: integer
        start:
          description: Starting character index in the query string where the diagnostic applies
          format: int32
          type: integer
      type: object
    v2ResponseMetadata:
      properties:
        cachedUntil:
          format: date-time
          type: string
        fetchedAt:
          format: date-time
          type: string
        timeRange:
          $ref: '#/components/schemas/v2TimeRange'
      type: object
    v2Error:
      properties:
        code:
          type: string
        message:
          type: string
      type: object
    v2TimeRange:
      properties:
        from:
          format: date-time
          type: string
        until:
          format: date-time
          type: string
      type: object
    v2QueryInsightsPromptResponse:
      properties:
        data:
          $ref: '#/components/schemas/v2QueryInsightsPromptData'
        metadata:
          $ref: '#/components/schemas/v2ResponseMetadata'
      type: object
    v2InsightsTableColumn:
      properties:
        description:
          description: Human-readable description of the column and the data it contains
          type: string
        name:
          description: Name of the column in the insights table
          type: string
        type:
          description: Data type of the column (e.g., 'String', 'Int64', 'Array(String)', etc.)
          type: string
      type: object
    v2ListInsightsEventSchemasResponse:
      properties:
        data:
          description: Paginated list of event type schemas
          items:
            $ref: '#/components/schemas/v2InsightsEventSchema'
          type: array
        metadata:
          $ref: '#/components/schemas/v2ResponseMetadata'
        page:
          $ref: '#/components/schemas/v2Page'
      type: object
    v2QueryInsightsData:
      properties:
        columns:
          description: Column metadata for the insights query result
          items:
            $ref: '#/components/schemas/v2InsightsOutputColumn'
          type: array
        diagnostics:
          description: Any non-fatal diagnostics related to the insights query execution
          items:
            $ref: '#/components/schemas/v2InsightsDiagnostic'
          type: array
        rows:
          description: Rows of the insights query result, where each row contains a list of values corresponding to the columns
          items:
            $ref: '#/components/schemas/v2InsightsRow'
          type: array
      type: object
    v2QueryInsightsPromptData:
      properties:
        sql:
          description: The generated Insights SQL query
          example: SELECT function_id, COUNT(*) AS total, countIf(status = 'Failed') AS failures, failures / total AS failure_rate FROM function_runs WHERE started_at >= now() - INTERVAL 7 DAY GROUP BY function_id ORDER BY failure_rate DESC LIMIT 10
          type: string
        summary:
          description: A natural language summary of the generated query, useful for explaining the query's intent to agents
          example: This query retrieves the top 10 functions with the highest failure rate over the past week, showing the total number of runs, number of failures, and calculated failure rate for each function.
          type: string
      type: object
    v2InsightsDiagnostic:
      properties:
        code:
          description: Machine-readable code representing the type of diagnostic
          type: string
        message:
          description: Human-readable message describing the diagnostic
          type: string
        position:
          $ref: '#/components/schemas/v2InsightsDiagnosticPosition'
        severity:
          $ref: '#/components/schemas/v2InsightsDiagnosticSeverity'
      type: object
    v2InsightsOutputColumnType:
      default: VALUE_TYPE_UNSPECIFIED
      enum:
      - VALUE_TYPE_UNSPECIFIED
      - STRING
      - NUMBER
      - BOOLEAN
      - DATETIME
      - COMPLEX
      type: string
    v2InsightsTable:
      properties:
        columns:
          description: Columns available in this table
          items:
            $ref: '#/components/schemas/v2InsightsTableColumn'
          type: array
        description:
          description: Human-readable description of the table and its contents
          type: string
        name:
          description: Name of the table, used when writing queries
          example: function_runs
          type: string
      type: object
    v2InsightsRow:
      properties:
        values:
          description: Values for a single row of the insights query result, where each value corresponds to a column. The value is represented as a JSON object to allow for flexible typing (e.g., string, number, boolean, etc.)
          items: {}
          type: array
      type: object
    v2ErrorResponse:
      properties:
        errors:
          items:
            $ref: '#/components/schemas/v2Error'
          type: array
      type: object
    v2ListInsightsTablesResponse:
      properties:
        data:
          description: List of available tables that can be queried via the Insights query endpoint
          items:
            $ref: '#/components/schemas/v2InsightsTable'
          type: array
        metadata:
          $ref: '#/components/schemas/v2ResponseMetadata'
      type: object
    v2QueryInsightsResponse:
      properties:
        data:
          $ref: '#/components/schemas/v2QueryInsightsData'
        metadata:
          $ref: '#/components/schemas/v2ResponseMetadata'
      type: object
    v2InsightsDiagnosticSeverity:
      default: SEVERITY_UNSPECIFIED
      enum:
      - SEVERITY_UNSPECIFIED
      - ERROR
      - WARNING
      - INFO
      type: string
    v2InsightsEventSchema:
      properties:
        name:
          description: Event type name
          example: orders/payment.created
          type: string
        schema:
          description: JSON Schema describing the shape of this event's data, represented as a nested JSON object
          type: object
      type: object
    v2Page:
      properties:
        cursor:
          type: string
        hasMore:
          type: boolean
        limit:
          format: int32
          type: integer
      type: object
  securitySchemes:
    BearerAuth:
      description: 'Bearer token authentication. Format: `Bearer {key}`'
      in: header
      name: Authorization
      type: apiKey
x-provenance:
  method: harvested
  publisher: Inngest
  source: https://api-docs.inngest.com/api-specs/v2.json
  note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
    stamped by stamp-openapi-provenance.py (roadmap#793)