Avo

Avo API

Avo API as documented publicly: 7 operations. Contract generated from the documentation by API Evangelist (2026-10-29); not the provider's own document.

Operations 7

GET /mcp GET /mcp #
POST /oauth/register Dynamic client registration #
GET /workspaces GET /workspaces #
GET /workspaces/{workspaceid}/inspector/issues/{issueid}/variations The event shapes behind an issue, as JSON or CSV #
GET /workspaces/{workspaceid}/inspector/issues/v3/{issueid} A single issue #
POST /workspaces/{workspaceid}/branches/my-branch/import/v1 POST /workspaces/{workspaceid}/branches/my-branch/import/v1 #
GET /workspaces/{workspaceid}/export/v1 GET /workspaces/{workspaceid}/export/v1 #

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/avo-app:avo-app-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

avo-app-openapi-generated.yml Raw ↑
openapi: 3.1.0
info:
  title: Avo API
  version: '2026-10-29'
  description: 'GENERATED FROM DOCUMENTATION by API Evangelist on 2026-10-29: 7 operation(s) read from 10 public documentation page(s) (each operation
    names its page in x-source). This is not the provider''s published contract; Avo has published no machine-readable contract that the pipeline
    could find. Engine: local.'
  x-evidence-tiers:
    code-example: 11
    documentation: -4
    pages-with-code: 10
    pages-read: 10
  x-generated-from: documentation
  x-provenance: generated
  x-authored-by: API Evangelist
  x-generated: '2026-10-29'
  x-generator: generate-contract-from-docs.py
  x-engine: local
  x-sources:
  - https://www.avo.app/docs/reference/avo-mcp/overview
  - https://www.avo.app/docs/reference/avo-mcp/overview.md
  - https://www.avo.app/docs/reference/public-api/create-branch
  - https://www.avo.app/docs/reference/public-api/authentication
  - https://www.avo.app/docs/reference/public-api/inspector-issues
  - https://www.avo.app/docs/reference/public-api/export-branch-stats
  - https://www.avo.app/docs/reference/public-api/export-tracking-plan
  - https://www.avo.app/docs/reference/public-api/import-tracking-plan
  - https://www.avo.app/docs/reference/public-api/import-tracking-plan.md
  - https://www.avo.app/docs/publishing/exporting
servers:
- url: https://api.avo.app
paths:
  /mcp:
    get:
      operationId: get_mcp
      tags:
      - Mcp
      summary: GET /mcp
      x-source: https://www.avo.app/docs/reference/avo-mcp/overview
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: code-example
        language: httpie
        snippet: 'http https://mcp.avo.app/mcp '
  /oauth/register:
    post:
      operationId: post_oauth_register
      tags:
      - Oauth
      summary: Dynamic client registration
      x-source: https://www.avo.app/docs/reference/avo-mcp/overview
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /workspaces:
    get:
      operationId: get_workspaces
      tags:
      - Workspaces
      summary: GET /workspaces
      x-source: https://www.avo.app/docs/reference/public-api/authentication
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: code-example
        language: curl
        snippet: "curl -H \"authorization: Basic <Base64 encoded token>\" -X GET https://api.avo.app/workspaces/ < WorkspaceI d > /branches/ <\
          \ BranchI d > /export/v1 \n \U0001F4A1 You can find the <WorkspaceId> and <BranchId> in the URL of your Avo workspace: https://www.avo.app/schemas/<WorkspaceId>/branches/<BranchId>/\
          \ \n Creating Service Accounts \n Navigate to your Service Account Workspace Settings or open the settings cogw"
  /workspaces/{workspaceid}/inspector/issues/{issueid}/variations:
    get:
      operationId: get_workspaces_workspaceid_inspector_issues_issueid_variations
      tags:
      - Workspaces
      summary: The event shapes behind an issue, as JSON or CSV
      x-source: https://www.avo.app/docs/reference/public-api/inspector-issues
      parameters:
      - name: workspaceid
        in: path
        required: true
        schema:
          type: string
      - name: issueid
        in: path
        required: true
        schema:
          type: string
      - name: format
        in: query
        required: false
        schema:
          type: string
        description: json or csv, defaults to json
      - name: sourceId
        in: query
        required: false
        schema:
          type: string
        description: Filter by source ID
      - name: appVersion
        in: query
        required: false
        schema:
          type: string
        description: Filter by app version
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetWorkspacesWorkspaceidInspectorIssuesIssueidVariationsResp'
      x-evidence:
        kind: documentation
  /workspaces/{workspaceid}/inspector/issues/v3/{issueid}:
    get:
      operationId: get_workspaces_workspaceid_inspector_issues_v3_issueid
      tags:
      - Workspaces
      summary: A single issue
      x-source: https://www.avo.app/docs/reference/public-api/inspector-issues
      parameters:
      - name: workspaceid
        in: path
        required: true
        schema:
          type: string
      - name: issueid
        in: path
        required: true
        schema:
          type: string
      - name: time
        in: query
        required: false
        schema:
          type: string
        description: A number followed by h or d, such as 12h or 7d. Defaults to 24h.
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetWorkspacesWorkspaceidInspectorIssuesV3IssueidResponse'
      x-evidence:
        kind: documentation
  /workspaces/{workspaceid}/branches/my-branch/import/v1:
    post:
      operationId: post_workspaces_workspaceid_branches_my_branch_import_v1
      tags:
      - Workspaces
      summary: POST /workspaces/{workspaceid}/branches/my-branch/import/v1
      x-source: https://www.avo.app/docs/reference/public-api/import-tracking-plan
      parameters:
      - name: workspaceid
        in: path
        required: true
        schema:
          type: string
      - name: importMethod
        in: query
        required: false
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostWorkspacesWorkspaceidBranchesMyBranchImportV1Request'
      responses:
        '201':
          description: Success (shape read from the example response on the page)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostWorkspacesWorkspaceidBranchesMyBranchImportV1Response'
      x-evidence:
        kind: code-example
        language: curl
        snippet: "curl -X POST  \"https://api.avo.app/workspaces/:workspaceId/branches/my-branch/import/v1?importMethod=addAndUpdate\"  -H \"\
          Authorization: Basic <Base64 encoded token>\"  -H \"Content-Type: application/json\"  -d '{ \n \"schema\": { \n \"events\": { \n \"\
          Button Clicked\": { \n \"type\": \"object\", \n \"description\": \"User clicked a button\", \n \"properties\": { \n \"button_name\"\
          : { \n \"type\": \"string\", \n \"description\": \"Name"
  /workspaces/{workspaceid}/export/v1:
    get:
      operationId: get_workspaces_workspaceid_export_v1
      tags:
      - Workspaces
      summary: GET /workspaces/{workspaceid}/export/v1
      x-source: https://www.avo.app/docs/reference/public-api/export-branch-stats
      parameters:
      - name: workspaceid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: code-example
        language: curl
        snippet: 'curl -H "authorization: Basic <Base64 encoded token>" -X GET https://api.avo.app/workspaces/:workspaceId/export/v1 Create Branch
          Export Tracking Plan Avo is the analytics governance platform for product data that lets you define it consistently, implement it correctly
          and trust it everywhere. Using an AI agent? Connect it to the Avo MCP at https://mcp.avo.app/mcp and it can read and change your tr'
components:
  schemas:
    GetWorkspacesWorkspaceidInspectorIssuesIssueidVariationsResp:
      type: object
      properties:
        variations:
          type: array
          description: Array of variation objects
        variationsTruncated:
          type: boolean
    GetWorkspacesWorkspaceidInspectorIssuesV3IssueidResponse:
      type: object
      properties:
        issueId:
          type: string
        sharedIssueId:
          type: string
        schemaId:
          type: string
        sourceId:
          type: string
        eventName:
          type: string
        propertyName:
          type: string
        issueType:
          type: object
        oldestAppVersion:
          type: string
        newestAppVersion:
          type: string
        firstSeen:
          type: string
        lastSeen:
          type: string
        issueCount:
          type: number
        eventCount:
          type: number
        appVersions:
          type: object
        issueStatus:
          type: object
        regression:
          type: boolean
        branchIds:
          type: string
    PostWorkspacesWorkspaceidBranchesMyBranchImportV1Request:
      type: object
      properties:
        schema:
          type: object
          properties:
            events:
              type: object
              properties:
                Button Clicked:
                  type: object
                  properties:
                    type:
                      type: string
                    description:
                      type: string
                    properties:
                      type: object
                      properties:
                        button_name:
                          type: object
                          properties:
                            type:
                              type: string
                            description:
                              type: string
                            enum:
                              type: array
                              items: {}
                        screen:
                          type: object
                          properties:
                            type:
                              type: string
                    required:
                      type: array
                      items:
                        type: string
    PostWorkspacesWorkspaceidBranchesMyBranchImportV1Response:
      type: object
      properties:
        message:
          type: string
        result:
          type: object
          properties:
            newEvents:
              type: integer
            updatedEvents:
              type: integer
            newProperties:
              type: integer
            updatedProperties:
              type: integer
            newSources:
              type: integer
            newStakeholderDomains:
              type: integer
        warnings:
          type: array
          items: {}
  securitySchemes:
    basic:
      type: http
      scheme: basic
security:
- basic: []
tags:
- name: Mcp
- name: Oauth
- name: Workspaces