Voyant.io Context Graph API

Ontology and provenance tracking. Explore relationships between entities in your context graph.

Operations 14

GET /api/context-graph/ Get Context Graph Ontology #
GET /api/context-graph Get Context Graph Ontology #
GET /api/context-graph/context.jsonld Get Jsonld Context #
GET /api/context-graph/claims Get Claim Types #
GET /api/context-graph/claims/{claim_id} Get Claim Type #
GET /api/context-graph/schema Get Schema #
POST /api/context-graph/mutations Create Mutation #
GET /api/context-graph/mutations List Mutations #
GET /api/context-graph/mutations/{mutation_id} Get Mutation #
POST /api/context-graph/provenance Create Provenance #
GET /api/context-graph/entities/{entity_type}/{entity_id}/provenance Get Entity Provenance #
POST /api/context-graph/policies Create Policy #
GET /api/context-graph/policies List Policies #
GET /api/context-graph/policies/{policy_id} Get Policy #

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/voyant-context-graph-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

voyant-context-graph-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: VoyantIO Context Graph API
  description: '

    ## Brand Context Intelligence Platform


    VoyantIO provides AI-powered brand context management for GTM teams.


    ### Core Capabilities


    - **Context Streams** - Centralized brand knowledge that any AI tool can use

    - **Telemetry** - Visitor tracking with IP geolocation and company enrichment

    - **Signals** - Social listening across 10+ platforms: GitHub, Reddit, HackerNews, LinkedIn, Twitter/X, Discord, ProductHunt, YouTube, G2, Slack, and government sources

    - **Target Graph** - Account and contact intelligence with engagement tracking

    - **RAG** - Retrieval-augmented content generation with brand awareness


    ### Authentication


    Most endpoints require a Bearer token from Clerk authentication.

    Public endpoints (telemetry ingestion, well-known files) are clearly marked.


    ### Rate Limits


    - Telemetry ingestion: 100 req/min per IP

    - API endpoints: 1000 req/min per org

    '
  version: 1.0.0
servers:
- url: https://voice-forge-production.up.railway.app
  description: Production
tags:
- name: context-graph
  description: Ontology and provenance tracking. Explore relationships between entities in your context graph.
paths:
  /api/context-graph/:
    get:
      tags:
      - context-graph
      summary: Get Context Graph Ontology
      description: 'Get the Context Graph ontology.


        Supports content negotiation:

        - text/html: Human-readable documentation

        - application/ld+json: JSON-LD context

        - application/json: JSON schema'
      operationId: get_context_graph_ontology_api_context_graph__get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
  /api/context-graph:
    get:
      tags:
      - context-graph
      summary: Get Context Graph Ontology
      description: 'Get the Context Graph ontology.


        Supports content negotiation:

        - text/html: Human-readable documentation

        - application/ld+json: JSON-LD context

        - application/json: JSON schema'
      operationId: get_context_graph_ontology_api_context_graph_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
  /api/context-graph/context.jsonld:
    get:
      tags:
      - context-graph
      summary: Get Jsonld Context
      description: 'Get the JSON-LD context file.


        Use this in your JSON-LD documents:

        {"@context": "https://voyant.io/context-graph/context.jsonld", ...}'
      operationId: get_jsonld_context_api_context_graph_context_jsonld_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
  /api/context-graph/claims:
    get:
      tags:
      - context-graph
      summary: Get Claim Types
      description: Get all supported claim types.
      operationId: get_claim_types_api_context_graph_claims_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
  /api/context-graph/claims/{claim_id}:
    get:
      tags:
      - context-graph
      summary: Get Claim Type
      description: Get a specific claim type definition.
      operationId: get_claim_type_api_context_graph_claims__claim_id__get
      parameters:
      - name: claim_id
        in: path
        required: true
        schema:
          type: string
          title: Claim Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/context-graph/schema:
    get:
      tags:
      - context-graph
      summary: Get Schema
      description: Get the full ontology schema.
      operationId: get_schema_api_context_graph_schema_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
  /api/context-graph/mutations:
    post:
      tags:
      - context-graph
      summary: Create Mutation
      description: 'Create a new context mutation with attestations.


        This is the primary API for tracking context changes with provenance.'
      operationId: create_mutation_api_context_graph_mutations_post
      security:
      - HTTPBearer: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MutationCreate'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    get:
      tags:
      - context-graph
      summary: List Mutations
      description: List context mutations for the organization.
      operationId: list_mutations_api_context_graph_mutations_get
      security:
      - HTTPBearer: []
      parameters:
      - name: entity_type
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Filter by entity type
          title: Entity Type
        description: Filter by entity type
      - name: entity_id
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Filter by entity ID
          title: Entity Id
        description: Filter by entity ID
      - name: limit
        in: query
        required: false
        schema:
          type: integer
          maximum: 200
          minimum: 1
          default: 50
          title: Limit
      - name: offset
        in: query
        required: false
        schema:
          type: integer
          minimum: 0
          default: 0
          title: Offset
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/context-graph/mutations/{mutation_id}:
    get:
      tags:
      - context-graph
      summary: Get Mutation
      description: Get a specific mutation by ID.
      operationId: get_mutation_api_context_graph_mutations__mutation_id__get
      security:
      - HTTPBearer: []
      parameters:
      - name: mutation_id
        in: path
        required: true
        schema:
          type: string
          title: Mutation Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/context-graph/provenance:
    post:
      tags:
      - context-graph
      summary: Create Provenance
      description: Create a provenance relationship between entities.
      operationId: create_provenance_api_context_graph_provenance_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProvenanceCreate'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
      - HTTPBearer: []
  /api/context-graph/entities/{entity_type}/{entity_id}/provenance:
    get:
      tags:
      - context-graph
      summary: Get Entity Provenance
      description: 'Get the provenance graph for an entity.


        Returns all derivation relationships up to the specified depth.'
      operationId: get_entity_provenance_api_context_graph_entities__entity_type___entity_id__provenance_get
      security:
      - HTTPBearer: []
      parameters:
      - name: entity_type
        in: path
        required: true
        schema:
          type: string
          title: Entity Type
      - name: entity_id
        in: path
        required: true
        schema:
          type: string
          title: Entity Id
      - name: direction
        in: query
        required: false
        schema:
          type: string
          description: up (ancestors), down (descendants), or both
          default: both
          title: Direction
        description: up (ancestors), down (descendants), or both
      - name: depth
        in: query
        required: false
        schema:
          type: integer
          maximum: 20
          minimum: 1
          description: How many levels to traverse
          default: 5
          title: Depth
        description: How many levels to traverse
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/context-graph/policies:
    post:
      tags:
      - context-graph
      summary: Create Policy
      description: Create a governance policy for context changes.
      operationId: create_policy_api_context_graph_policies_post
      security:
      - HTTPBearer: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GovernancePolicyCreate'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    get:
      tags:
      - context-graph
      summary: List Policies
      description: List governance policies for the organization.
      operationId: list_policies_api_context_graph_policies_get
      security:
      - HTTPBearer: []
      parameters:
      - name: active_only
        in: query
        required: false
        schema:
          type: boolean
          description: Only return active policies
          default: true
          title: Active Only
        description: Only return active policies
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/context-graph/policies/{policy_id}:
    get:
      tags:
      - context-graph
      summary: Get Policy
      description: Get a specific governance policy.
      operationId: get_policy_api_context_graph_policies__policy_id__get
      security:
      - HTTPBearer: []
      parameters:
      - name: policy_id
        in: path
        required: true
        schema:
          type: string
          title: Policy Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    GovernancePolicyCreate:
      properties:
        name:
          type: string
          title: Name
        description:
          anyOf:
          - type: string
          - type: 'null'
          title: Description
        version:
          type: string
          title: Version
          default: '1.0'
        applies_to_entity_types:
          items:
            type: string
          type: array
          title: Applies To Entity Types
        applies_to_field_paths:
          items:
            type: string
          type: array
          title: Applies To Field Paths
        required_claim_types:
          items:
            type: string
          type: array
          title: Required Claim Types
        required_actor_roles:
          items:
            type: string
          type: array
          title: Required Actor Roles
        min_attestations:
          type: integer
          minimum: 1.0
          title: Min Attestations
          default: 1
        validation_schema:
          anyOf:
          - additionalProperties: true
            type: object
          - type: 'null'
          title: Validation Schema
        is_active:
          type: boolean
          title: Is Active
          default: true
      type: object
      required:
      - name
      title: GovernancePolicyCreate
      description: Create a governance policy
    ProvenanceCreate:
      properties:
        source_entity_type:
          type: string
          title: Source Entity Type
        source_entity_id:
          type: string
          title: Source Entity Id
        source_entity_uri:
          anyOf:
          - type: string
          - type: 'null'
          title: Source Entity Uri
        source_version:
          anyOf:
          - type: string
          - type: 'null'
          title: Source Version
        derived_entity_type:
          type: string
          title: Derived Entity Type
        derived_entity_id:
          type: string
          title: Derived Entity Id
        derived_entity_uri:
          anyOf:
          - type: string
          - type: 'null'
          title: Derived Entity Uri
        relationship_type:
          type: string
          title: Relationship Type
          description: derived, informed, supersedes
          default: derived
        transformation:
          anyOf:
          - type: string
          - type: 'null'
          title: Transformation
          description: How the derivation was performed
        transformation_agent:
          anyOf:
          - type: string
          - type: 'null'
          title: Transformation Agent
          description: Who/what performed the transformation
      type: object
      required:
      - source_entity_type
      - source_entity_id
      - derived_entity_type
      - derived_entity_id
      title: ProvenanceCreate
      description: Create a provenance relationship between entities
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    MutationCreate:
      properties:
        entity_type:
          type: string
          title: Entity Type
          description: 'Type: persona, product, use_case, etc.'
        entity_id:
          type: string
          title: Entity Id
          description: ID of the mutated entity
        entity_uri:
          anyOf:
          - type: string
          - type: 'null'
          title: Entity Uri
          description: Full URI for linked data
        field_path:
          anyOf:
          - type: string
          - type: 'null'
          title: Field Path
          description: JSON path to the changed field
        previous_value:
          anyOf:
          - {}
          - type: 'null'
          title: Previous Value
        new_value:
          anyOf:
          - {}
          - type: 'null'
          title: New Value
        mutation_type:
          type: string
          title: Mutation Type
          description: create, update, delete, merge, split
          default: update
        semantic_delta:
          anyOf:
          - type: string
          - type: 'null'
          title: Semantic Delta
          description: Human-readable description of what changed
        attestations:
          items:
            $ref: '#/components/schemas/AttestationCreate'
          type: array
          title: Attestations
      type: object
      required:
      - entity_type
      - entity_id
      title: MutationCreate
      description: Create a new context mutation with attestations
    AttestationCreate:
      properties:
        claim_type:
          type: string
          title: Claim Type
          description: 'Claim type: authored, reviewed, rationale, etc.'
        claim_payload:
          anyOf:
          - additionalProperties: true
            type: object
          - type: 'null'
          title: Claim Payload
          description: Structured claim data
        actor_id:
          type: string
          title: Actor Id
          description: User ID, agent ID, or system ID
        actor_type:
          type: string
          title: Actor Type
          description: human, ai_agent, system, integration
          default: human
        actor_name:
          anyOf:
          - type: string
          - type: 'null'
          title: Actor Name
          description: Display name
        actor_role:
          anyOf:
          - type: string
          - type: 'null'
          title: Actor Role
          description: Role at time of attestation
        confidence:
          anyOf:
          - type: number
            maximum: 1.0
            minimum: 0.0
          - type: 'null'
          title: Confidence
          description: Confidence level
        evidence:
          anyOf:
          - items:
              $ref: '#/components/schemas/AttestationEvidenceCreate'
            type: array
          - type: 'null'
          title: Evidence
      type: object
      required:
      - claim_type
      - actor_id
      title: AttestationCreate
      description: A signed claim about context
    AttestationEvidenceCreate:
      properties:
        evidence_type:
          type: string
          title: Evidence Type
          description: 'Type: document, url, analysis, conversation'
        evidence_uri:
          anyOf:
          - type: string
          - type: 'null'
          title: Evidence Uri
          description: URI to the evidence
        evidence_hash:
          anyOf:
          - type: string
          - type: 'null'
          title: Evidence Hash
          description: Content hash for verification
        title:
          anyOf:
          - type: string
          - type: 'null'
          title: Title
        description:
          anyOf:
          - type: string
          - type: 'null'
          title: Description
        content_excerpt:
          anyOf:
          - type: string
          - type: 'null'
          title: Content Excerpt
          description: Relevant excerpt from the evidence
      type: object
      required:
      - evidence_type
      title: AttestationEvidenceCreate
      description: Evidence supporting an attestation
  securitySchemes:
    HTTPBearer:
      type: http
      scheme: bearer