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

# Get Discovery Snapshot

> GetDiscoverySnapshot returns the instance's latest self-reported
 vocabulary -- used by the authoring UI to build discovery-driven
 pickers (principals/scopes/destinations/postures/credentials/routes)
 independent of any policy read or write.



## OpenAPI

````yaml https://spec.speakeasy.com/conductor-one/conductorone/my-source-with-code-samples get /api/v1/tb-control-plane/discovery/{tb_instance_id}
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/tb-control-plane/discovery/{tb_instance_id}:
    get:
      tags:
        - Time Bandit Control Plane
      summary: Get Discovery Snapshot
      description: |-
        GetDiscoverySnapshot returns the instance's latest self-reported
         vocabulary -- used by the authoring UI to build discovery-driven
         pickers (principals/scopes/destinations/postures/credentials/routes)
         independent of any policy read or write.
      operationId: c1.api.tbcontrolplane.v1.TBControlPlaneService.GetDiscoverySnapshot
      parameters:
        - in: path
          name: tb_instance_id
          required: true
          schema:
            description: The tbInstanceId field.
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/c1.api.tbcontrolplane.v1.TBControlPlaneServiceGetDiscoverySnapshotResponse
          description: Successful response
components:
  schemas:
    c1.api.tbcontrolplane.v1.TBControlPlaneServiceGetDiscoverySnapshotResponse:
      description: The TBControlPlaneServiceGetDiscoverySnapshotResponse message.
      properties:
        snapshot:
          oneOf:
            - $ref: >-
                #/components/schemas/c1.models.tbcontrolplane.v1.TBDiscoverySnapshot
            - type: 'null'
      title: Tb Control Plane Service Get Discovery Snapshot Response
      type: object
      x-speakeasy-name-override: TBControlPlaneServiceGetDiscoverySnapshotResponse
    c1.models.tbcontrolplane.v1.TBDiscoverySnapshot:
      description: |-
        TBDiscoverySnapshot is one Time Bandit instance's self-reported
         vocabulary: the principals, ingress scopes, destinations, credential
         recipe names, posture names, and route names it knows about. Names
         only -- never token values or credential material.

         Dynamo-only: the control plane has no query pattern that needs
         Postgres (lookup is always a direct tenant_id+tb_instance_id get).
      properties:
        createdAt:
          format: date-time
          type:
            - string
            - 'null'
        credentials:
          description: The credentials field.
          items:
            type: string
          type:
            - array
            - 'null'
        destinations:
          additionalProperties:
            $ref: >-
              #/components/schemas/c1.models.tbcontrolplane.v1.TBDiscoveryDestinationTargets
          description: The destinations field.
          type: object
        ingressScopes:
          description: The ingressScopes field.
          items:
            type: string
          type:
            - array
            - 'null'
        postures:
          description: The postures field.
          items:
            type: string
          type:
            - array
            - 'null'
        principals:
          description: The principals field.
          items:
            type: string
          type:
            - array
            - 'null'
        reportedAt:
          format: date-time
          type:
            - string
            - 'null'
        routes:
          description: The routes field.
          items:
            type: string
          type:
            - array
            - 'null'
        tbInstanceId:
          description: The tbInstanceId field.
          type: string
        tenantId:
          description: The tenantId field.
          type: string
        updatedAt:
          format: date-time
          type:
            - string
            - 'null'
      title: Tb Discovery Snapshot
      type: object
      x-speakeasy-name-override: TBDiscoverySnapshot
    c1.models.tbcontrolplane.v1.TBDiscoveryDestinationTargets:
      description: |-
        TBDiscoveryDestinationTargets holds the destination-group values for one
         key of TBDiscoverySnapshot.destinations -- proto3 map values cannot be a
         bare `repeated string`.
      properties:
        values:
          description: The values field.
          items:
            type: string
          type:
            - array
            - 'null'
      title: Tb Discovery Destination Targets
      type: object
      x-speakeasy-name-override: TBDiscoveryDestinationTargets
  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

````