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

# Deploy Drop



## OpenAPI

````yaml POST /v1/project-wallet/drops/deploy
openapi: 3.0.0
info:
  title: Lootex Plus API - V1
  description: V1 endpoints
  version: 0.0.1
  contact: {}
servers:
  - url: https://api.lootexplus.com
security: []
tags: []
paths:
  /v1/project-wallet/drops/deploy:
    post:
      tags:
        - V1
      summary: Deploy a new NFT drop using server wallet
      operationId: ServerWalletDropsController_deployDrop
      parameters: []
      requestBody:
        required: true
        description: Deploy drop data
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeployDropDto'
      responses:
        '201':
          description: Drop deployed successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeployDropResponseDto'
      security:
        - bearer: []
components:
  schemas:
    DeployDropDto:
      type: object
      properties:
        chainId:
          type: number
          description: Blockchain chain ID
          example: 1868
          default: 1868
        name:
          type: string
          description: Name of the NFT drop
          example: My NFT Drop
        description:
          type: string
          description: Drop description
          example: This is a description of the NFT drop
        symbol:
          type: string
          description: Symbol of the NFT drop
          example: DEMO
          default: DEMO
        totalSupply:
          type: number
          description: Total supply of the NFT drop
          example: 1000
          default: 1000
        unitPrice:
          type: number
          description: Unit price of the NFT drop
          example: 0
          default: 0
        startTime:
          format: date-time
          type: string
          description: Start time of the NFT drop
          example: '2025-01-01T00:00:00Z'
        limitPerWallet:
          type: number
          description: Limit per wallet
          default: 0
        whitelist:
          type: string
          description: Whitelist
          example: |-
            0xfb43B1aCdcC86FEbDd7Ad80fff571C8F912423D9,20,0.00001
            0xfBf3736070C6fa64D818dEc78166a553D07cEcF8,20,0.00001
            0xDdBECdfE4E43260fdA3721c20c4022cceF4AED19,20,0.00001
        currencyAddress:
          type: string
          description: >-
            ERC20 currency address. If not provided, the default currency is
            ETH.
        creatorFeeAddress:
          type: string
          description: Creator fee recipient address
        creatorFeeBps:
          type: number
          description: Creator fee basis points (0-10000)
          default: 0
        projectId:
          type: string
          description: Project ID
          example: '123'
        mode:
          type: string
          description: Mode of the NFT drop. Default to STANDARD.
          example: standard
          default: standard
          enum:
            - standard
            - badge
        metadataStorageType:
          type: string
          description: Type of metadata storage. Default to S3.
          example: s3
          default: s3
          enum:
            - s3
            - metadata-api
            - self-hosted
        baseUri:
          type: string
          description: >-
            Base URI for the NFT drop. Required if `metadataStorageType` is
            `self-hosted`.
          example: https://my-nft-drop.com/metadata/
        defaultTokenMetadata:
          description: >-
            Default token metadata for the NFT drop. Required if
            `metadataStorageType` is `s3` or `metadata-api`.
          allOf:
            - $ref: '#/components/schemas/SetTokenMetadataDto'
      required:
        - chainId
        - name
        - mode
        - defaultTokenMetadata
    DeployDropResponseDto:
      type: object
      properties:
        drop:
          description: The drop that was deployed
          allOf:
            - $ref: '#/components/schemas/Drop'
        transactions:
          description: The transactions that were sent to deploy the drop
          type: array
          items:
            $ref: '#/components/schemas/Transaction'
      required:
        - drop
        - transactions
    SetTokenMetadataDto:
      type: object
      properties:
        name:
          type: string
          description: Token name
          example: 'Cool NFT #1'
        description:
          type: string
          description: Token description
          example: This is a really cool NFT
        image:
          type: string
          description: Token image URL
          example: https://example.com/image.png
        animationUrl:
          type: string
          description: Animation URL for the token
          example: https://example.com/animation.mp4
        externalUrl:
          type: string
          description: External URL for the token
          example: https://example.com
        attributes:
          description: Token attributes
          type: array
          items:
            $ref: '#/components/schemas/TokenAttribute'
        properties:
          type: object
          description: Additional properties
          example:
            category: art
      required:
        - name
    Drop:
      type: object
      properties:
        id:
          type: string
          description: Drop ID
        chainId:
          type: number
          description: Drop chain ID
        contractAddress:
          type: string
          description: Drop contract address
        name:
          type: string
          description: Drop name
        symbol:
          type: string
          description: Drop symbol
        description:
          type: string
          description: Drop description
        ownerAddress:
          type: string
          description: Drop owner address
        blindboxKey:
          type: string
          description: Drop blindbox key
        imageUrl:
          type: string
          description: Drop image URL
        baseUri:
          type: string
          description: Drop base URI
        creatorFeeAddress:
          type: string
          description: Drop creator fee address
        creatorFeeBps:
          type: number
          description: Drop creator fee BPS
        projectId:
          type: string
          description: Drop project ID
        metadataRepoId:
          type: string
          description: Drop metadata repo ID
        createdAt:
          format: date-time
          type: string
          description: Drop created at
        updatedAt:
          format: date-time
          type: string
          description: Drop updated at
      required:
        - id
        - chainId
        - contractAddress
        - name
        - symbol
        - description
        - ownerAddress
        - blindboxKey
        - imageUrl
        - baseUri
        - creatorFeeAddress
        - creatorFeeBps
        - projectId
        - metadataRepoId
        - createdAt
        - updatedAt
    Transaction:
      type: object
      properties:
        id:
          type: string
          description: The unique identifier of the transaction
          example: 123e4567-e89b-12d3-a456-426614174000
        jobId:
          type: string
          description: The job ID of the transaction
          example: 123e4567-e89b-12d3-a456-426614174000
        status:
          type: string
          description: The status of the transaction
          example: pending
        projectId:
          type: string
          description: The project ID of the transaction
          example: 123e4567-e89b-12d3-a456-426614174000
        transactionHash:
          type: string
          description: The transaction hash of the transaction
          example: 0x123e4567-e89b-12d3-a456-426614174000
        chainId:
          type: number
          description: The chain ID of the transaction
          example: 1
        from:
          type: string
          description: The from address of the transaction
          example: 0x123e4567-e89b-12d3-a456-426614174000
        to:
          type: string
          description: The to address of the transaction
          example: 0x123e4567-e89b-12d3-a456-426614174000
        value:
          type: string
          description: The value of the transaction
          example: '1000000000000000000'
        data:
          type: string
          description: The data of the transaction
          example: 0x
        gasUsed:
          type: string
          description: The gas used of the transaction
          example: '1000000000000000000'
        gasPrice:
          type: string
          description: The gas price of the transaction
          example: '1000000000000000000'
        totalGasFee:
          type: string
          description: The total gas fee of the transaction
          example: '1000000000000000000'
        metadata:
          type: string
          description: The metadata of the transaction
          example: '{}  '
        createdAt:
          format: date-time
          type: string
          description: The date when the transaction was created
          example: '2024-03-20T12:00:00Z'
        updatedAt:
          format: date-time
          type: string
          description: The date when the transaction was last updated
          example: '2024-03-20T12:00:00Z'
      required:
        - id
        - jobId
        - status
        - projectId
        - transactionHash
        - chainId
        - from
        - to
        - value
        - data
        - gasUsed
        - gasPrice
        - totalGasFee
        - metadata
        - createdAt
        - updatedAt
    TokenAttribute:
      type: object
      properties:
        trait_type:
          type: string
          description: Attribute trait type
          example: Background
        value:
          type: object
          description: Attribute value
          example: Blue
        display_type:
          type: string
          description: Display type for the attribute
          example: string
      required:
        - trait_type
        - value
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http
      description: Secret key for authentication

````