> ## Documentation Index
> Fetch the complete documentation index at: https://conductorone-docs-hidden-info-by-role.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Surface Provenance

> GetSurfaceProvenance cross-checks a surface's self-reported sources
 against the tool calls recorded in the conversation's LLM transcript.



## OpenAPI

````yaml https://spec.speakeasy.com/conductor-one/conductorone/my-source-with-code-samples get /api/v1/a2ui/conversations/{conversation_id}/surfaces/{surface_id}/provenance
openapi: 3.1.0
info:
  description: The C1 API is a HTTP API for managing C1 resources.
  title: C1 API
  version: 0.1.0-alpha
servers:
  - description: The C1 API server for the current tenant.
    url: https://{tenantDomain}.conductor.one
    variables:
      tenantDomain:
        default: example
        description: The domain of the tenant to use for this request.
security:
  - bearerAuth: []
    oauth: []
paths:
  /api/v1/a2ui/conversations/{conversation_id}/surfaces/{surface_id}/provenance:
    get:
      tags:
        - A 2 UI
      summary: Get Surface Provenance
      description: |-
        GetSurfaceProvenance cross-checks a surface's self-reported sources
         against the tool calls recorded in the conversation's LLM transcript.
      operationId: c1.api.a2ui.v1.A2UIService.GetSurfaceProvenance
      parameters:
        - in: path
          name: conversation_id
          required: true
          schema:
            description: The conversationId field.
            type: string
        - in: path
          name: surface_id
          required: true
          schema:
            description: The surfaceId field.
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/c1.api.a2ui.v1.A2UIServiceGetSurfaceProvenanceResponse
          description: >-
            A2UIServiceGetSurfaceProvenanceResponse returns the surface's
            sources with
             verification verdicts plus the transcript tool calls they were checked
             against.
components:
  schemas:
    c1.api.a2ui.v1.A2UIServiceGetSurfaceProvenanceResponse:
      description: >-
        A2UIServiceGetSurfaceProvenanceResponse returns the surface's sources
        with
         verification verdicts plus the transcript tool calls they were checked
         against.
      properties:
        programCommitId:
          description: >-
            The program's identity: code mode invokes by explicit commit, so the
            commit
             — not the function — is what a refresh re-executes.
          type: string
        programFunctionId:
          description: >-
            The program that produced a reporting surface. Flat rather than a
            nested
             ref: these five fields are read together by one drawer and nothing else,
             and a saved report's ProgramRef is the type worth converging on later.
             All empty for a surface carrying no report components, and for reports
             emitted before the report-program requirement was enabled for the tenant.
          type: string
        programInput:
          description: >-
            The JSON parameters the program ran with. Empty when the invocation
            has aged
             out of retention.
          type: string
        programInvocationId:
          description: The run that produced this surface.
          type: string
        programSource:
          description: >-
            The program's source, read from the pinned commit. Empty when the
            commit has
             aged out of code-mode retention — the report still renders, but what
             produced it is no longer recoverable.
          type: string
        sources:
          description: The sources field.
          items:
            $ref: '#/components/schemas/c1.api.a2ui.v1.A2UIProvenanceSource'
          type:
            - array
            - 'null'
        toolCalls:
          description: The toolCalls field.
          items:
            $ref: '#/components/schemas/c1.api.a2ui.v1.A2UIProvenanceToolCall'
          type:
            - array
            - 'null'
        transcriptAvailable:
          description: >-
            False when the backing session or its transcript steps are gone;
            sources
             are then all unverified.
          type: boolean
      title: A 2 Ui Service Get Surface Provenance Response
      type: object
      x-speakeasy-name-override: A2UIServiceGetSurfaceProvenanceResponse
    c1.api.a2ui.v1.A2UIProvenanceSource:
      description: |-
        A2UIProvenanceSource is one self-reported source chip from a reporting
         component, cross-checked against the transcript's tool calls.
      properties:
        componentId:
          description: The componentId field.
          type: string
        count:
          description: The count field.
          format: int64
          type: string
        kind:
          description: The kind field.
          type: string
        label:
          description: The label field.
          type: string
        matchedToolCall:
          description: >-
            Tool name from the transcript that matched the ref; empty when
            unverified.
          type: string
        ref:
          description: The ref field.
          type: string
        verified:
          description: True when a transcript tool call matches the ref.
          type: boolean
      title: A 2 Ui Provenance Source
      type: object
      x-speakeasy-name-override: A2UIProvenanceSource
    c1.api.a2ui.v1.A2UIProvenanceToolCall:
      description: A2UIProvenanceToolCall is one tool call extracted from the transcript.
      properties:
        calledAt:
          format: date-time
          type:
            - string
            - 'null'
        inputDigest:
          description: Leading characters of the tool input, whitespace-collapsed.
          type: string
        toolName:
          description: The toolName field.
          type: string
      title: A 2 Ui Provenance Tool Call
      type: object
      x-speakeasy-name-override: A2UIProvenanceToolCall
  securitySchemes:
    bearerAuth:
      scheme: bearer
      type: http
    oauth:
      description: >-
        This API uses OAuth2 with the Client Credential flow.

        Client Credentials must be sent in the BODY, not the headers.

        For an example of how to implement this, refer to the
        [c1TokenSource.Token()](https://github.com/ConductorOne/conductorone-sdk-go/blob/3375fe7c0126d17e7ec4e711693dee7b791023aa/token_source.go#L101-L187)
        function.
      flows:
        clientCredentials:
          scopes: {}
          tokenUrl: /auth/v1/token
      type: oauth2

````