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

# Get app metadata

> Returns aggregated application metadata (auth, database, storage, functions, realtime, deployments). Use the `format` query parameter to choose between JSON and Markdown output.



## OpenAPI

````yaml https://raw.githubusercontent.com/InsForge/InsForge/main/openapi/metadata.yaml get /api/metadata
openapi: 3.0.3
info:
  title: Insforge Metadata API
  version: 1.0.0
servers: []
security: []
paths:
  /api/metadata:
    get:
      tags:
        - Admin
      summary: Get app metadata
      description: >-
        Returns aggregated application metadata (auth, database, storage,
        functions, realtime, deployments). Use the `format` query parameter to
        choose between JSON and Markdown output.
      parameters:
        - in: query
          name: format
          schema:
            type: string
            enum:
              - json
              - markdown
            default: json
          description: >-
            Response format. `json` returns structured JSON (default).
            `markdown` returns a human-readable Markdown document suitable for
            AI coding tools and developer onboarding.
      responses:
        '200':
          description: Application metadata
          content:
            application/json:
              schema:
                type: object
                properties:
                  auth:
                    type: object
                    properties:
                      oAuthProviders:
                        type: array
                        items:
                          type: string
                      requireEmailVerification:
                        type: boolean
                      disableSignup:
                        type: boolean
                  database:
                    type: object
                    properties:
                      tables:
                        type: array
                        items:
                          type: object
                          properties:
                            tableName:
                              type: string
                            recordCount:
                              type: integer
                      totalSizeInGB:
                        type: number
                      hint:
                        type: string
                  storage:
                    type: object
                    properties:
                      buckets:
                        type: array
                        items:
                          type: object
                          properties:
                            name:
                              type: string
                            public:
                              type: boolean
                            objectCount:
                              type: integer
                      totalSizeInGB:
                        type: number
                  functions:
                    type: array
                    items:
                      type: object
                      properties:
                        slug:
                          type: string
                        name:
                          type: string
                        status:
                          type: string
                        description:
                          type: string
                  realtime:
                    type: object
                    description: Optional; present when realtime is configured
                    properties:
                      channels:
                        type: array
                        items:
                          type: object
                          properties:
                            id:
                              type: string
                            pattern:
                              type: string
                  deployments:
                    type: object
                    description: Optional; present on cloud-hosted projects only
                    properties:
                      customSlug:
                        type: string
                        nullable: true
                  version:
                    type: string
              example:
                auth:
                  oAuthProviders:
                    - google
                    - github
                  requireEmailVerification: true
                  disableSignup: false
                database:
                  tables:
                    - tableName: users
                      recordCount: 150
                    - tableName: posts
                      recordCount: 1200
                  totalSizeInGB: 0.3
                storage:
                  buckets:
                    - name: avatars
                      public: true
                      objectCount: 42
                  totalSizeInGB: 0.5
                functions:
                  - slug: hello-world
                    name: hello-world
                    status: active
                    description: Test function
                version: 2.0.0
            text/markdown:
              schema:
                type: string
              example: |
                # Project Metadata
                > v2.0.0

                ## Auth
                - **OAuth providers**: google, github
                - **Email verification**: required
                - **Signup**: enabled
        '400':
          description: Invalid format parameter
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized — missing or invalid credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden — authenticated but not an admin
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
        - bearerAuth: []
        - apiKey: []
components:
  schemas:
    ErrorResponse:
      type: object
      required:
        - error
        - message
        - statusCode
      properties:
        error:
          type: string
          description: Error code for programmatic handling
        message:
          type: string
          description: Human-readable error message
        statusCode:
          type: integer
          description: HTTP status code
        nextAction:
          type: string
          description: Suggested action to resolve the error
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
    apiKey:
      type: apiKey
      in: header
      name: X-API-Key

````