Coins.ph Account API

Account management APIs.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/coinsph-account-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

coinsph-account-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: TRADING Account API
  version: 1.0.0
  description: API reference for Account management — Coins.ph
servers:
- url: https://api.pro.coins.ph
  description: Production
- url: https://api.9001.pl-qa.coinsxyz.me
  description: Sandbox
tags:
- name: Account
  description: Account management APIs.
paths:
  /openapi/account/v3/crypto-accounts:
    get:
      tags:
      - Account
      summary: Query Balance - Crypto Accounts (USER_DATA)
      description: 'Retrieve the current cryptocurrency balance for a specific currency or all supported

        cryptocurrencies. Use this endpoint to query available and pending balances across

        different crypto assets.


        ---


        ## Additional Info


        **Rate Limit** [📖 Learn More](https://api.docs.coins.ph/reference/general#api-limit-introduction)


        Weight: 1


        **Pending Balance Explained**


        The `pending_balance` represents funds that are not immediately available for trading or

        withdrawal. This typically includes Deposit Confirmations, Pending Withdrawals,

        Processing Transactions, and Order-Related Locks.


        **Use Cases** [🧩 SDK](https://api.docs.coins.ph/reference/general#sdk)


        - **Deposit Tracking** — Monitor pending balance to track deposit confirmations.

        - **Withdrawal Verification** — Check pending balance before initiating new withdrawals.


        **Best Practices**


        - Use specific currency parameter when checking single asset.

        - Cache results appropriately (30–60 seconds for pending balance).

        - Don''t poll more frequently than necessary (respect rate limits).

        - Use WebSocket for real-time balance updates if available.

        '
      operationId: query_crypto_account_balance
      parameters:
      - in: header
        name: X-COINS-APIKEY
        required: true
        schema:
          type: string
          example: VGkCt1GWUqWsxsCtsTvqLP7xNxOikd6wd7uPbnMIk8RUHQZ2bNd4Gcmq6NgQ6VlK
        description: API key for authentication.
      - in: query
        name: currency
        required: false
        schema:
          type: string
          example: BTC
        description: 'The currency symbol for which the balance is being queried. If not provided, returns balances for all supported cryptocurrencies. Use standard cryptocurrency symbols (e.g., ''BTC'', ''ETH'', ''USDT''). Case-insensitive.

          '
      - in: query
        name: recvWindow
        required: false
        schema:
          type: integer
          format: int64
          minimum: 0
          maximum: 60000
        description: 'Request validity window in milliseconds. Default: 5000, Maximum: 60000.'
      - in: query
        name: timestamp
        required: true
        schema:
          type: integer
          format: int64
          minimum: 0
          example: 1499827319559
        description: Unix timestamp in milliseconds.
      - in: query
        name: signature
        required: true
        schema:
          type: string
        description: HMAC SHA256 signature of the request parameters [📖 Learn More](https://api.docs.coins.ph/reference/general#signed-endpoint-examples-for-post-openapiv1order)
      x-codeSamples:
      - lang: Shell
        label: Query specific currency (BTC)
        source: 'curl --get --location ''https://api.pro.coins.ph/openapi/account/v3/crypto-accounts'' \

          --header ''X-COINS-APIKEY: <your api key>'' \

          --data-urlencode ''currency=BTC'' \

          --data-urlencode ''recvWindow=60000'' \

          --data-urlencode ''timestamp=1707273549694'' \

          --data-urlencode ''signature=<calculated_signature>''

          '
      - lang: Shell
        label: Query all cryptocurrencies
        source: 'curl --get --location ''https://api.pro.coins.ph/openapi/account/v3/crypto-accounts'' \

          --header ''X-COINS-APIKEY: <your api key>'' \

          --data-urlencode ''recvWindow=60000'' \

          --data-urlencode ''timestamp=1707273549694'' \

          --data-urlencode ''signature=<calculated_signature>''

          '
      responses:
        '200':
          description: Cryptocurrency account balance returned successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  crypto-accounts:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          description: Account identifier.
                          example: '1451431230880900352'
                        name:
                          type: string
                          description: Cryptocurrency symbol (display name).
                          example: BTC
                        currency:
                          type: string
                          description: Cryptocurrency symbol.
                          example: BTC
                        balance:
                          type: string
                          description: Available balance.
                          example: '1'
                        pending_balance:
                          type: string
                          description: 'Funds in pending transactions, awaiting confirmation, or temporarily locked. Not immediately available for trading or withdrawal.

                            '
                          example: '0'
              examples:
                single_currency:
                  summary: Single Currency Balance (BTC)
                  value:
                    crypto-accounts:
                    - id: '1451431230880900352'
                      name: BTC
                      currency: BTC
                      balance: '1'
                      pending_balance: '0'
                multiple_currencies:
                  summary: Multiple Cryptocurrency Balances
                  value:
                    crypto-accounts:
                    - id: '1451431230880900352'
                      name: PHP
                      currency: PHP
                      balance: '100'
                      pending_balance: '1'
                    - id: '1451431230880900352'
                      name: BTC
                      currency: BTC
                      balance: '1'
                      pending_balance: '0'
        default:
          description: 'API error response. The `code` field contains the internal API error code (not an HTTP status code).


            | Code | Description |

            |---|---|

            | -1121 | Invalid currency symbol. |


            For the full list of error codes, see [Error Codes](https://api.docs.coins.ph/reference/error-codes).

            '
  /openapi/v1/account:
    get:
      tags:
      - Account
      summary: Account Information (USER_DATA)
      description: "Retrieve comprehensive information about trading account, including permissions,\nbalances, withdrawal limits (daily, monthly, annual), fee tier, and configuration settings.\nUse this endpoint to get a complete snapshot of account's current state for portfolio\nmanagement, compliance checks, and monitoring.\n\n**Permission Flags**\n\n- **canDeposit**: `true` = Account can receive deposits; `false` = Deposits are blocked\n  (reasons: pending verification, compliance hold, security review).\n- **canTrade**: `true` = Account can execute buy/sell orders; `false` = Trading is restricted\n  (reasons: KYC incomplete, account suspension, regulatory restrictions).\n- **canWithdraw**: `true` = Account can withdraw funds; `false` = Withdrawals are blocked\n  (reasons: security review, 2FA setup required, compliance hold).\n\n---\n\n## Additional Info\n\n**Rate Limit** [\U0001F4D6 Learn More](https://api.docs.coins.ph/reference/general#api-limit-introduction)\n\nWeight: 10\n\n**Use Cases** [\U0001F9E9 SDK](https://api.docs.coins.ph/reference/general#sdk)\n\n- **Withdrawal Validation** — Check if withdrawal amount is within limits before submission.\n- **Trading Permission Check** — Verify account can trade before placing orders.\n- **Compliance Monitoring** — Track transaction limits for regulatory compliance.\n- **Balance Verification** — Confirm available balance before placing trades.\n\n**Best Practices**\n\n- Cache account information and refresh after transactions.\n- Use `updateTime` to track data freshness.\n- Always check `canTrade` before placing orders.\n- Always check `canWithdraw` before initiating withdrawals.\n- Check all three limit tiers (daily, monthly, annual).\n"
      operationId: get_account_information
      parameters:
      - in: header
        name: X-COINS-APIKEY
        required: true
        schema:
          type: string
          example: VGkCt1GWUqWsxsCtsTvqLP7xNxOikd6wd7uPbnMIk8RUHQZ2bNd4Gcmq6NgQ6VlK
        description: API key for authentication.
      - in: query
        name: recvWindow
        required: false
        schema:
          type: integer
          format: int64
          minimum: 0
          maximum: 60000
        description: 'Request validity window in milliseconds. Default: 5000, Maximum: 60000.'
      - in: query
        name: timestamp
        required: true
        schema:
          type: integer
          format: int64
          minimum: 0
          example: 1499827319559
        description: Unix timestamp in milliseconds.
      - in: query
        name: signature
        required: true
        schema:
          type: string
        description: HMAC SHA256 signature of the request parameters [📖 Learn More](https://api.docs.coins.ph/reference/general#signed-endpoint-examples-for-post-openapiv1order)
      x-codeSamples:
      - lang: Shell
        label: Get account information
        source: 'curl --get --location ''https://api.pro.coins.ph/openapi/v1/account'' \

          --header ''X-COINS-APIKEY: <your api key>'' \

          --data-urlencode ''recvWindow=60000'' \

          --data-urlencode ''timestamp=1707273549694'' \

          --data-urlencode ''signature=<calculated_signature>''

          '
      responses:
        '200':
          description: Account information returned successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  accountType:
                    type: string
                    description: Type of trading account. Currently only "SPOT" is supported.
                    example: SPOT
                  canDeposit:
                    type: boolean
                    description: Whether the account is allowed to deposit funds.
                    example: true
                  canTrade:
                    type: boolean
                    description: Whether the account is allowed to execute trades.
                    example: true
                  canWithdraw:
                    type: boolean
                    description: Whether the account is allowed to withdraw funds.
                    example: true
                  enableWithdrawWhitelist:
                    type: boolean
                    description: Whether the account's withdrawal address whitelist feature is enabled.
                    example: false
                  email:
                    type: string
                    description: Email address associated with the account.
                    example: test@coins.ph
                  feeTier:
                    type: integer
                    description: Current trading fee tier level for the account.
                    example: 0
                  balances:
                    type: array
                    description: Balance details for all assets.
                    items:
                      type: object
                      properties:
                        asset:
                          type: string
                          description: Asset currency (e.g., PHP, BTC).
                          example: PHP
                        free:
                          type: string
                          description: Available balance for trading or withdrawal.
                          example: '100'
                        locked:
                          type: string
                          description: Balance locked in pending orders or operations.
                          example: '0'
                  token:
                    type: string
                    description: Fiat currency token.
                    example: PHP
                  daily:
                    type: object
                    description: Daily transaction limits.
                    properties:
                      cashInLimit:
                        type: string
                        example: '500000'
                      cashInRemaining:
                        type: string
                        example: '499994'
                      cashOutLimit:
                        type: string
                        example: '500000'
                      cashOutRemaining:
                        type: string
                        example: '500000'
                      totalWithdrawLimit:
                        type: string
                        example: '500000'
                      totalWithdrawRemaining:
                        type: string
                        example: '500000'
                  monthly:
                    type: object
                    description: Monthly transaction limits.
                    properties:
                      cashInLimit:
                        type: string
                        example: '10000000'
                      cashInRemaining:
                        type: string
                        example: '9999157'
                      cashOutLimit:
                        type: string
                        example: '10000000'
                      cashOutRemaining:
                        type: string
                        example: '10000000'
                      totalWithdrawLimit:
                        type: string
                        example: '10000000'
                      totalWithdrawRemaining:
                        type: string
                        example: '10000000'
                  annually:
                    type: object
                    description: Annual transaction limits.
                    properties:
                      cashInLimit:
                        type: string
                        example: '120000000'
                      cashInRemaining:
                        type: string
                        example: '119998487.97'
                      cashOutLimit:
                        type: string
                        example: '120000000'
                      cashOutRemaining:
                        type: string
                        example: '120000000'
                      totalWithdrawLimit:
                        type: string
                        example: '120000000'
                      totalWithdrawRemaining:
                        type: string
                        example: '120000000'
                  p2pDaily:
                    type: object
                    description: Daily P2P transaction limits.
                    properties:
                      cashInLimit:
                        type: string
                        description: Fiat cash-in limit (Deposit). Corresponds to fiatInLimit.
                        example: '500000'
                      cashInRemaining:
                        type: string
                        description: Remaining fiat cash-in quota. Calculated as fiatInLimit - fiatInUsed - fiatInDailyLocked, where fiatInDailyLocked is the amount of PENDING deposit orders (in-transit funds) deducted from the available quota.
                        example: '499994'
                      cashOutLimit:
                        type: string
                        description: Fiat cash-out limit (Withdraw fiat). Corresponds to fiatOutLimit.
                        example: '500000'
                      cashOutRemaining:
                        type: string
                        description: Remaining fiat cash-out quota. Calculated as fiatOutLimit - fiatOutOccupied.
                        example: '500000'
                      totalWithdrawLimit:
                        type: string
                        description: Total withdrawal limit (fiat + crypto combined). Corresponds to allOutLimit.
                        example: '500000'
                      totalWithdrawRemaining:
                        type: string
                        description: Remaining total withdrawal quota. Calculated as allOutLimit - allOutOccupied.
                        example: '500000'
                  p2pMonthly:
                    type: object
                    description: Monthly P2P transaction limits.
                    properties:
                      cashInLimit:
                        type: string
                        description: Fiat cash-in limit (Deposit). Corresponds to fiatInLimit.
                        example: '10000000'
                      cashInRemaining:
                        type: string
                        description: Remaining fiat cash-in quota. Calculated as fiatInLimit - fiatInUsed - fiatInDailyLocked, where fiatInDailyLocked is the amount of PENDING deposit orders (in-transit funds) deducted from the available quota.
                        example: '9999157'
                      cashOutLimit:
                        type: string
                        description: Fiat cash-out limit (Withdraw fiat). Corresponds to fiatOutLimit.
                        example: '10000000'
                      cashOutRemaining:
                        type: string
                        description: Remaining fiat cash-out quota. Calculated as fiatOutLimit - fiatOutOccupied.
                        example: '10000000'
                      totalWithdrawLimit:
                        type: string
                        description: Total withdrawal limit (fiat + crypto combined). Corresponds to allOutLimit.
                        example: '10000000'
                      totalWithdrawRemaining:
                        type: string
                        description: Remaining total withdrawal quota. Calculated as allOutLimit - allOutOccupied.
                        example: '10000000'
                  p2pAnnually:
                    type: object
                    description: Annual P2P transaction limits.
                    properties:
                      cashInLimit:
                        type: string
                        description: Fiat cash-in limit (Deposit). Corresponds to fiatInLimit.
                        example: '120000000'
                      cashInRemaining:
                        type: string
                        description: Remaining fiat cash-in quota. Calculated as fiatInLimit - fiatInUsed - fiatInDailyLocked, where fiatInDailyLocked is the amount of PENDING deposit orders (in-transit funds) deducted from the available quota.
                        example: '119998577'
                      cashOutLimit:
                        type: string
                        description: Fiat cash-out limit (Withdraw fiat). Corresponds to fiatOutLimit.
                        example: '120000000'
                      cashOutRemaining:
                        type: string
                        description: Remaining fiat cash-out quota. Calculated as fiatOutLimit - fiatOutOccupied.
                        example: '119999488'
                      totalWithdrawLimit:
                        type: string
                        description: Total withdrawal limit (fiat + crypto combined). Corresponds to allOutLimit.
                        example: '120000000'
                      totalWithdrawRemaining:
                        type: string
                        description: Remaining total withdrawal quota. Calculated as allOutLimit - allOutOccupied.
                        example: '119998487.97'
                  updateTime:
                    type: integer
                    format: int64
                    description: Unix timestamp (ms) of the last account update.
                    example: 1707273549694
              examples:
                success_full:
                  summary: Complete Account Information
                  value:
                    accountType: SPOT
                    canDeposit: true
                    canTrade: true
                    canWithdraw: true
                    email: test@coins.ph
                    feeTier: 0
                    balances:
                    - asset: PHP
                      free: '100'
                      locked: '0'
                    - asset: BTC
                      free: '0.00123456'
                      locked: '0'
                    - asset: ETH
                      free: '0.5'
                      locked: '0.1'
                    token: PHP
                    daily:
                      cashInLimit: '500000'
                      cashInRemaining: '499994'
                      cashOutLimit: '500000'
                      cashOutRemaining: '500000'
                      totalWithdrawLimit: '500000'
                      totalWithdrawRemaining: '500000'
                    monthly:
                      cashInLimit: '10000000'
                      cashInRemaining: '9999157'
                      cashOutLimit: '10000000'
                      cashOutRemaining: '10000000'
                      totalWithdrawLimit: '10000000'
                      totalWithdrawRemaining: '10000000'
                    annually:
                      cashInLimit: '120000000'
                      cashInRemaining: '119998487.97'
                      cashOutLimit: '120000000'
                      cashOutRemaining: '120000000'
                      totalWithdrawLimit: '120000000'
                      totalWithdrawRemaining: '120000000'
                    p2pDaily:
                      cashInLimit: '500000'
                      cashInRemaining: '499994'
                      cashOutLimit: '500000'
                      cashOutRemaining: '500000'
                      totalWithdrawLimit: '500000'
                      totalWithdrawRemaining: '500000'
                    p2pMonthly:
                      cashInLimit: '10000000'
                      cashInRemaining: '9999157'
                      cashOutLimit: '10000000'
                      cashOutRemaining: '10000000'
                      totalWithdrawLimit: '10000000'
                      totalWithdrawRemaining: '10000000'
                    p2pAnnually:
                      cashInLimit: '120000000'
                      cashInRemaining: '119998577'
                      cashOutLimit: '120000000'
                      cashOutRemaining: '119999488'
                      totalWithdrawLimit: '120000000'
                      totalWithdrawRemaining: '119998487.97'
                    updateTime: 1707273549694
                success_restricted:
                  summary: Account with Restricted Permissions
                  value:
                    accountType: SPOT
                    canDeposit: true
                    canTrade: false
                    canWithdraw: false
                    email: restricted@example.com
                    feeTier: 0
                    balances:
                    - asset: PHP
                      free: '1000'
                      locked: '0'
                    token: PHP
                    daily:
                      cashInLimit: '100000'
                      cashInRemaining: '100000'
                      cashOutLimit: '0'
                      cashOutRemaining: '0'
                      totalWithdrawLimit: '0'
                      totalWithdrawRemaining: '0'
                    monthly:
                      cashInLimit: '1000000'
                      cashInRemaining: '1000000'
                      cashOutLimit: '0'
                      cashOutRemaining: '0'
                      totalWithdrawLimit: '0'
                      totalWithdrawRemaining: '0'
                    annually:
                      cashInLimit: '12000000'
                      cashInRemaining: '12000000'
                      cashOutLimit: '0'
                      cashOutRemaining: '0'
                      totalWithdrawLimit: '0'
                      totalWithdrawRemaining: '0'
                    p2pDaily:
                      cashInLimit: '500000'
                      cashInRemaining: '500000'
                      cashOutLimit: '0'
                      cashOutRemaining: '0'
                      totalWithdrawLimit: '0'
                      totalWithdrawRemaining: '0'
                    p2pMonthly:
                      cashInLimit: '10000000'
                      cashInRemaining: '10000000'
                      cashOutLimit: '0'
                      cashOutRemaining: '0'
                      totalWithdrawLimit: '0'
                      totalWithdrawRemaining: '0'
                    p2pAnnually:
                      cashInLimit: '120000000'
                      cashInRemaining: '120000000'
                      cashOutLimit: '0'
                      cashOutRemaining: '0'
                      totalWithdrawLimit: '0'
                      totalWithdrawRemaining: '0'
                    updateTime: 1707273549694
        default:
          description: 'API error response. The `code` field contains the internal API error code (not an HTTP status code).


            | Code | Description |

            |---|---|

            | -1022 | Signature for this request is not valid. |

            | -1002 | Unauthorized. API key does not have permission. |


            For the full list of error codes, see [Error Codes](https://api.docs.coins.ph/reference/error-codes).

            '
components:
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-COINS-APIKEY
x-readme:
  proxy-enabled: false