> ## Documentation Index
> Fetch the complete documentation index at: https://docs.davinci-app.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get programmatic API metadata

> Returns the current public programmatic API name, version, endpoint map, and authentication hint.



## OpenAPI

````yaml /openapi/davinci-public.v2.yaml get /api/v2/programmatic
openapi: 3.1.0
info:
  title: Davinci Public API
  version: 2.0.0
  description: >-
    Public Routing Server API contract for Davinci integrations and official
    SDKs.
servers:
  - url: https://davinci-app.com
    description: Production
security:
  - ApiKeyBearer: []
tags:
  - name: Meta
    description: API metadata and health checks.
  - name: Projects
    description: Read project metadata, trees, objects, and attached files.
paths:
  /api/v2/programmatic:
    get:
      tags:
        - Meta
      summary: Get programmatic API metadata
      description: >-
        Returns the current public programmatic API name, version, endpoint map,
        and authentication hint.
      operationId: getApiInfo
      responses:
        '200':
          description: Programmatic API metadata.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProgrammaticApiInfoEnvelope'
      x-codeSamples:
        - lang: typescript
          label: TypeScript SDK
          source: |
            import { DavinciClient } from '@celedon/davinci-sdk';

            const client = new DavinciClient({
              apiKey: process.env.DAVINCI_API_KEY!,
            });

            const info = await client.getInfo();
            console.log(info.version);
        - lang: python
          label: Python SDK
          source: |
            import os
            from davinci_sdk import DavinciClient

            with DavinciClient(api_key=os.environ["DAVINCI_API_KEY"]) as client:
                info = client.get_info()
                print(info.version)
components:
  schemas:
    ProgrammaticApiInfoEnvelope:
      allOf:
        - $ref: '#/components/schemas/SuccessEnvelope'
        - type: object
          properties:
            data:
              $ref: '#/components/schemas/ProgrammaticApiInfo'
    SuccessEnvelope:
      type: object
      required:
        - success
        - data
      properties:
        success:
          type: boolean
        data: {}
      additionalProperties: true
    ProgrammaticApiInfo:
      type: object
      required:
        - name
        - version
        - description
        - documentation
        - endpoints
        - authentication
      properties:
        name:
          type: string
        version:
          type: string
        description:
          type: string
        documentation:
          type: string
        endpoints:
          type: object
          additionalProperties:
            type: string
        authentication:
          type: string
      additionalProperties: true
  securitySchemes:
    ApiKeyBearer:
      type: http
      scheme: bearer
      bearerFormat: dav_ak_live_... or dav_ak_test_...
      x-default: dav_ak_live_your_token
      description: >-
        Personal access token. Programmatic reads require the projects:read
        scope.

````