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

# Create new address for deposit

> Generate a new cryptocurrency deposit address for a specified currency and network via the V4 API.



## OpenAPI

````yaml /openapi/private/main_api_v4.yaml POST /api/v4/main-account/create-new-address
openapi: 3.0.3
info:
  title: WhiteBIT Private HTTP API V4
  description: |
    WhiteBIT Private HTTP API V4 for Main balance changes.

    Base URL: https://whitebit.com

    All endpoints return time in Unix-time format.
    All endpoints return either a JSON object or array.
    For receiving responses from API calls please use http method POST.
  version: 4.0.0
  contact:
    name: WhiteBIT Support
    email: support@whitebit.com
    url: https://whitebit.com
servers:
  - url: https://whitebit.com
    description: WhiteBIT Global Server
  - url: https://whitebit.eu
    description: WhiteBIT EU Server
security:
  - ApiKeyAuth: []
    PayloadAuth: []
    SignatureAuth: []
tags:
  - name: Main Account
    description: Main account balance and operations
  - name: Deposit
    description: Cryptocurrency and fiat deposit operations
  - name: Withdraw
    description: Cryptocurrency and fiat withdrawal operations
  - name: Transfer
    description: Balance transfer operations
  - name: Codes
    description: WhiteBIT codes operations
  - name: Crypto Lending - Fixed
    description: Fixed crypto lending plans
  - name: Crypto Lending - Flex
    description: Flexible crypto lending plans
  - name: Fees
    description: Fee information
  - name: Sub-Account
    description: Sub-account management
  - name: Sub-Account API Keys
    description: Sub-account API key management
  - name: Mining Pool
    description: Mining pool operations
  - name: Credit Line
    description: Credit line information
  - name: JWT
    description: JWT token management
paths:
  /api/v4/main-account/create-new-address:
    post:
      tags:
        - Deposit
      summary: Create new address for deposit
      description: >
        The endpoint creates a new address even when the last created address is
        not used. The endpoint is not available by default, contact
        support@whitebit.com to get permissions to use the endpoint.


        **Address types:**


        | Currency | Types               | Default |

        |----------|---------------------|---------|

        | BTC      | p2sh-segwit, bech32 | bech32  |

        | LTC      | p2sh-segwit, bech32 | bech32  |


        <Warning>

        Rate limit: 1000 requests/10 sec.

        </Warning>


        <Note>

        The API does not cache the response.

        </Note>
      operationId: createNewAddress
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - ticker
                - request
                - nonce
              properties:
                ticker:
                  type: string
                  description: Currency's ticker.
                  example: XLM
                network:
                  type: string
                  description: >
                    Currency's network (for multinetwork currencies). Example:
                    OMNI or TRC20 or ERC20. For USDT default network is
                    ERC20(ETH).
                  example: ERC20
                type:
                  type: string
                  description: >-
                    Address type, available for specific currencies list (see
                    address types table in endpoint description)
                  enum:
                    - p2sh-segwit
                    - bech32
                  example: bech32
                request:
                  type: string
                  description: Request signature
                  example: '{{request}}'
                nonce:
                  type: integer
                  description: Unique request identifier
                  example: 1594297865000
            examples:
              basic:
                summary: Basic request
                value:
                  ticker: XLM
                  request: '{{request}}'
                  nonce: 1594297865000
              multinetwork:
                summary: Multinetwork currency
                value:
                  ticker: USDT
                  network: ERC20
                  request: '{{request}}'
                  nonce: 1594297865000
              withAddressType:
                summary: BTC with specific address type
                value:
                  ticker: BTC
                  type: bech32
                  request: '{{request}}'
                  nonce: 1594297865000
      responses:
        '201':
          description: All validations succeeded and creating transaction is started
          content:
            application/json:
              schema:
                type: object
                properties:
                  account:
                    type: object
                    properties:
                      address:
                        type: string
                        description: Deposit address
                      memo:
                        type: string
                        description: Memo if currency requires memo
                  required:
                    type: object
                    properties:
                      fixedFee:
                        type: string
                        description: Fixed deposit fee
                      flexFee:
                        type: object
                        description: Flexible fee - is fee that use percent rate
                        properties:
                          maxFee:
                            type: string
                            description: Maximum fixed fee charged
                          minFee:
                            type: string
                            description: Minimum fixed fee charged
                          percent:
                            type: string
                            description: Percent of deposit as fee
                      maxAmount:
                        type: string
                        description: >-
                          Max amount of deposit accepted by the exchange.
                          Deposits exceeding this amount are rejected.
                      minAmount:
                        type: string
                        description: >-
                          Min amount of deposit accepted by the exchange.
                          Deposits below this amount are rejected.
              example:
                account:
                  address: GDTSOI56XNVAKJNJBLJGRNZIVOCIZJRBIDKTWSCYEYNFAZEMBLN75RMN
                  memo: '48565488244493'
                required:
                  fixedFee: '0'
                  flexFee:
                    maxFee: '0'
                    minFee: '0'
                    percent: '0'
                  maxAmount: '0'
                  minAmount: '1'
        '400':
          description: Request validation failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                missingTicker:
                  summary: Missing ticker field
                  value:
                    code: 0
                    message: Validation failed
                    errors:
                      ticker:
                        - The ticker field is required.
                invalidTicker:
                  summary: Invalid ticker
                  value:
                    code: 0
                    message: Validation failed
                    errors:
                      ticker:
                        - The selected ticker is invalid.
                unsupportedNetwork:
                  summary: Unsupported network
                  value:
                    code: 0
                    message: Validation failed
                    errors:
                      network:
                        - Unsupported network
                noDefaultNetwork:
                  summary: Network omitted and the currency has no default network
                  value:
                    code: 0
                    message: Validation failed
                    errors:
                      network:
                        - Cannot extract default network
                currencyNetworkMismatch:
                  summary: Currency/network combination is invalid
                  value:
                    code: 0
                    message: Validation failed
                    errors:
                      network:
                        - Cannot find currency for specified network
                invalidTypes:
                  summary: Invalid data types
                  value:
                    code: 0
                    message: Validation failed
                    errors:
                      network:
                        - The network must be a string.
                      ticker:
                        - The ticker must be a string.
        '422':
          description: >
            Inner validation failed. Returned with `code: 0`; the `errors` field
            carries the

            condition (the message is localized — match on the condition, not
            the exact string).


            By default a fresh address is generated even when a previous address
            exists for the

            currency/network. The cases below are the exceptions:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorInner'
              examples:
                notDepositable:
                  summary: Currency does not support deposits
                  value:
                    code: 0
                    message: Inner validation failed
                    errors:
                      ticker:
                        - Currency is not depositable
                fiatUnavailable:
                  summary: Fiat currency — address creation not allowed
                  value:
                    code: 0
                    message: Inner validation failed
                    errors:
                      ticker:
                        - Fiat currencies are unavailable for this action
                currencyUnavailable:
                  summary: >-
                    Currency not available to this account (region /
                    verification)
                  value:
                    code: 0
                    message: Inner validation failed
                    errors:
                      message:
                        - Currency is not available
                kycRequired:
                  summary: KYC verification required
                  value:
                    code: 0
                    message: Inner validation failed
                    errors:
                      error:
                        - KYC required
                addressInProgress:
                  summary: Address generation already in progress
                  value:
                    code: 0
                    message: Inner validation failed
                    errors:
                      message:
                        - Create address in process
                addressLimitReached:
                  summary: Per-currency address limit reached
                  value:
                    code: 0
                    message: Inner validation failed
                    errors:
                      message:
                        - Address limit reached
components:
  schemas:
    Error:
      type: object
      properties:
        code:
          type: integer
        message:
          type: string
        errors:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
    ErrorInner:
      type: object
      properties:
        code:
          type: integer
        message:
          type: string
        errors:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-TXC-APIKEY
      description: The public WhiteBIT API key.
    PayloadAuth:
      type: apiKey
      in: header
      name: X-TXC-PAYLOAD
      description: Base64-encoded JSON request body.
    SignatureAuth:
      type: apiKey
      in: header
      name: X-TXC-SIGNATURE
      description: >-
        HMAC-SHA512 signature of the payload, hex-encoded. Computed as
        hex(HMAC-SHA512(payload, api_secret)).

````