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

# Detect Address

> Get all possible address forms



## OpenAPI

````yaml GET /api/v2/detectAddress
openapi: 3.1.1
info:
  title: TON HTTP API C++
  description: >
    This API enables HTTP access to TON blockchain - getting accounts and
    wallets information, looking up blocks and transactions, sending messages to
    the blockchain, calling get methods of smart contracts, and more.


    In addition to REST API, all methods are available through [JSON-RPC
    endpoint](#json%20rpc)  with `method` equal to method name and `params`
    passed as a dictionary.


    The response contains a JSON object, which always has a boolean field `ok`
    and either `error` or `result`. If `ok` equals true, the request was
    successful and the result of the query can be found in the `result` field.
    In case of an unsuccessful request, `ok` equals false and the error is
    explained in the `error`.


    API Key should be sent either as `api_key` query parameter or `X-API-Key`
    header
  version: 2.1.1
servers:
  - url: https://toncenter.com
    description: Mainnet
  - url: https://testnet.toncenter.com
    description: Testnet
security: []
tags:
  - name: utils
    description: Some useful methods
  - name: accounts
    description: Information about accounts
  - name: blocks
    description: Information about blocks
  - name: transactions
    description: Fetching and locating transactions
  - name: configuration
    description: Information about blockchain config
  - name: run method
    description: Run get-method of smart contracts
  - name: send
    description: Send data to blockchain
  - name: rpc
    description: JSON-RPC and POST endpoints
paths:
  /api/v2/detectAddress:
    get:
      tags:
        - utils
      summary: Detect address
      description: Get all possible address forms
      operationId: detectAddress_get
      parameters:
        - $ref: '#/components/parameters/address'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
                    example: true
                  result:
                    title: DetectAddress
                    allOf:
                      - $ref: '#/components/schemas/DetectAddress'
                required:
                  - ok
                  - result
        default:
          $ref: '#/components/responses/default'
components:
  parameters:
    address:
      name: address
      in: query
      description: Identifier of target TON account in any form
      required: true
      schema:
        $ref: '#/components/schemas/TonAddr'
  schemas:
    DetectAddress:
      type: object
      additionalProperties: false
      description: Information about the address.
      properties:
        '@type':
          type: string
          enum:
            - ext.utils.detectedAddress
          default: ext.utils.detectedAddress
        raw_form:
          type: string
        bounceable:
          $ref: '#/components/schemas/DetectAddressBase64Variant'
        non_bounceable:
          $ref: '#/components/schemas/DetectAddressBase64Variant'
        given_type:
          type: string
          enum:
            - raw_form
            - friendly_bounceable
            - friendly_non_bounceable
        test_only:
          type: boolean
      required:
        - '@type'
        - raw_form
        - bounceable
        - non_bounceable
        - given_type
        - test_only
    TonAddr:
      type: string
      x-usrv-cpp-type: ton_http::types::ton_addr
    DetectAddressBase64Variant:
      type: object
      additionalProperties: false
      description: Base64 form of address variant
      properties:
        '@type':
          type: string
          enum:
            - ext.utils.detectedAddressVariant
          default: ext.utils.detectedAddressVariant
        b64:
          type: string
        b64url:
          type: string
      required:
        - '@type'
        - b64
        - b64url
    TonlibErrorResponse:
      type: object
      additionalProperties: false
      title: TonlibErrorResponse
      required:
        - ok
        - error
        - code
      properties:
        ok:
          type: boolean
          title: Ok
          default: false
        error:
          type: string
          title: Error description
        code:
          type: integer
          title: Error code
          minimum: 100
          maximum: 600
        '@extra':
          type: string
          title: Extra information
        jsonrpc:
          type: string
        id:
          type: string
  responses:
    default:
      description: Tonlib error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/TonlibErrorResponse'
          examples:
            '409':
              summary: Not a token
              value:
                ok: false
                code: 409
                error: Smart contract is not a Jetton or NFT
                '@extra': ...
            '422':
              summary: Request validation error
              value:
                ok: false
                code: 422
                error: ...
                '@extra': ...
            '429':
              summary: Ratelimit exceeded
              value:
                ok: false
                code: 429
                error: ...
                '@extra': ...
            '504':
              summary: Tonlib timeout
              value:
                ok: false
                code: 504
                error: ...
                '@extra': ...

````