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

# Upload integration metadata

> Upload image and metadata for a branded mint. Returns URLs for the uploaded image and JSON metadata file that can be used when initializing integrations.



## OpenAPI

````yaml /api-reference/openapi.json post /integration/upload
openapi: 3.0.3
info:
  title: Reflect API
  description: >-
    Interact with the Reflect infrastructure via API. Retrieve stablecoin and
    protocol stats. Generate transactions for minting and redeeming stablecoins.
    Manage integrations and issue whitelabel stablecoins.


    ## Rate Limiting

    - **Unauthenticated users**: 100 requests per minute

    - **Authenticated integrators**: 500 requests per minute


    ## Authentication

    To access higher rate limits, include your API key in the `X-API-Key`
    header. API keys can be obtained through the integration management
    endpoints.
  version: 1.0.0
  contact:
    name: Reflect
    url: https://reflect.money
servers:
  - url: https://prod.api.reflect.money
    description: Production environment
  - url: https://dev.api.reflect.money
    description: Development environment (includes /tranches endpoints)
security: []
tags:
  - name: Health
    description: Health check endpoints
  - name: Stablecoin
    description: Reflect stablecoins interaction endpoints.
  - name: Integration
    description: Custom integration management endpoints.
  - name: Stats
    description: Protocol statistics endpoints
  - name: Events
    description: Protocol events endpoints
  - name: Tranches - Senior
    description: >-
      Senior tranche endpoints (development API only). Deposit and redeem
      underlying stablecoins, query tranche statistics and exchange rates.
  - name: Tranches - Junior
    description: >-
      Junior tranche endpoints (development API only). Deposit and withdraw
      assets, manage cooldowns, query tranche statistics and exchange rates.
  - name: Tranches
    description: General tranche endpoints (development API only).
paths:
  /integration/upload:
    post:
      tags:
        - Integration
      summary: Upload integration metadata
      description: >-
        Upload image and metadata for a branded mint. Returns URLs for the
        uploaded image and JSON metadata file that can be used when initializing
        integrations.
      parameters:
        - name: cluster
          in: query
          description: Solana cluster to use (defaults to mainnet)
          required: false
          schema:
            type: string
            enum:
              - mainnet
              - devnet
            default: mainnet
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                image:
                  type: string
                  format: binary
                  description: Image file (PNG, JPEG, etc.)
                brandedMint:
                  type: string
                  description: Branded mint Solana address
                  example: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
                metadata[name]:
                  type: string
                  description: Token name
                  example: My Token
                metadata[symbol]:
                  type: string
                  description: Token symbol
                  example: MTK
                metadata[description]:
                  type: string
                  description: Token description
                  example: A great token
              required:
                - image
                - brandedMint
                - metadata[name]
                - metadata[symbol]
                - metadata[description]
      responses:
        '200':
          description: Metadata uploaded successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  data:
                    type: object
                    properties:
                      imageUrl:
                        type: string
                        format: uri
                        description: URL of the uploaded image
                        example: >-
                          https://metadata-bucket.s3.region.amazonaws.com/images/abc123.png
                      jsonUrl:
                        type: string
                        format: uri
                        description: URL of the uploaded JSON metadata file
                        example: >-
                          https://metadata-bucket.s3.region.amazonaws.com/json/xyz789.json
                    required:
                      - imageUrl
                      - jsonUrl
                required:
                  - success
                  - data
        '400':
          description: Invalid request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequestErrorResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalServerErrorResponse'
components:
  schemas:
    BadRequestErrorResponse:
      type: object
      properties:
        success:
          type: boolean
          description: Whether the request was successful
          example: false
        message:
          type: string
          description: Error message describing what went wrong with the request
          example: 'Invalid request data: depositAmount must be positive'
      required:
        - success
        - message
    InternalServerErrorResponse:
      type: object
      properties:
        success:
          type: boolean
          description: Whether the request was successful
          example: false
        message:
          type: string
          description: Error message describing the server error
          example: Internal server error
      required:
        - success
        - message

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.