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

# Register a new vault with its on-chain LUT

> Verifies the vault and LUT exist on-chain, then registers the vault product and LUT entry. Private (authorized) API access only, please add a basic auth header to your request.



## OpenAPI

````yaml kamino-api.json POST /luts/managed/new-vault
openapi: 3.1.0
info:
  version: 1.0.0
  title: Kamino Public API
  description: >
    The Kamino API provides a comprehensive way to interact with Kamino without
    reading directly from the blockchain.


    The API also provides the ability to fetch data that might not be available
    from just reading the chain.


    The API is rate-limited for unauthenticated users. If you feel you need to
    make more requests or run into rate-limit issues, please reach out.
servers:
  - url: https://api.kamino.finance
security: []
paths:
  /luts/managed/new-vault:
    post:
      tags:
        - Lookup Tables
      summary: Register a new vault with its on-chain LUT
      description: >-
        Verifies the vault and LUT exist on-chain, then registers the vault
        product and LUT entry. Private (authorized) API access only, please add
        a basic auth header to your request.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                vaultAddress:
                  allOf:
                    - $ref: '#/components/schemas/AddressBase58'
                    - description: Vault account address
                      example: 6KhEbVjFg8bNkpTSyEfGJhMGtv2bRQiAKKbKZLPvrBFm
                lutAddress:
                  allOf:
                    - $ref: '#/components/schemas/AddressBase58'
                    - description: Lookup table address
                      example: 3Kz4sMiBCxg7JdCCjwRTHtFsQRqJCSKh5pVERhPfMzYF
              required:
                - vaultAddress
                - lutAddress
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NewVaultResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    description: High-level error message describing the failure
                    example: Invalid query params
                  details:
                    type: array
                    items:
                      type: object
                      additionalProperties: {}
                    description: >-
                      Detailed validation issues (present only for validation
                      errors)
                required:
                  - error
                description: Bad request response (400)
                example:
                  error: Invalid query request
                  details:
                    - code: invalid_union
                      errors:
                        - - code: custom
                            path: []
                            message: Invalid date string
                        - - expected: number
                            code: invalid_type
                            path: []
                            message: 'Invalid input: expected number, received string'
                      path:
                        - start
                      message: Invalid input
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    description: Error message describing why it was not authorized
                    example: >-
                      Not authorized for this request. Please include the basic
                      auth headers.
                required:
                  - error
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                properties:
                  metadata:
                    type: string
                    description: Error message describing why it was not found
                    example: Account could not be found
                required:
                  - metadata
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    AddressBase58:
      type: string
      description: Valid base58-encoded address
      example: VEG1EMtttdHunMbSza8uoms1R18VXmYSph2bBpHcSJd
    NewVaultResponse:
      type: object
      properties:
        productId:
          type: number
          description: The created/existing product ID
          example: 1
        vaultAddress:
          allOf:
            - $ref: '#/components/schemas/AddressBase58'
            - description: Vault account address
              example: 6KhEbVjFg8bNkpTSyEfGJhMGtv2bRQiAKKbKZLPvrBFm
        lutAddress:
          allOf:
            - $ref: '#/components/schemas/AddressBase58'
            - description: Lookup table address
              example: 3Kz4sMiBCxg7JdCCjwRTHtFsQRqJCSKh5pVERhPfMzYF
        lutEntryId:
          type: number
          description: The created/existing LUT entry ID
          example: 1
      required:
        - productId
        - vaultAddress
        - lutAddress
        - lutEntryId
    Error:
      type: object
      properties:
        error:
          type: string
          description: Error message for internal server failure
          example: An internal error occurred
      required:
        - error
      description: Internal server error response (500)
      example:
        error: An internal error occurred

````