Technical Reference

API Reference

Minikit introduces a new api for verifying transactions.

Base URL

https://developer.worldcoin.org

Get Transaction

GET/api/v2/minikit/transaction/{transaction_id}?app_id=&type=

This endpoint lets you query your apps transactions for their current status. You will only be able to query for transactions of apps where you possess the api_key.

Query Params

  • Name
    app_id
    Type
    string
    Required
    REQUIRED
    Description

    The app_id corresponding to the transaction that is being queried.

  • Name
    type
    Type
    string
    Required
    REQUIRED
    Description

    The type is either payment (pay) or transaction (sendTransaction) depending on the command you used.

Request Headers

  • Name
    Authorization
    Type
    string
    Required
    REQUIRED
    Description

    The Authorization header should be the api_key for your app from the Developer Portal. Make sure to prefix it with Bearer {api_key}.

Request

GET
/api/v2/minikit/transaction/{transaction_id}?app_id=
curl -X GET "/api/v2/minikit/transaction/{transaction_id}" \
    -H "Authorization: Bearer {api_key}" 

Response

  • Name
    reference
    Type
    string
    Description

    The reference is your specified unique identifier for the transaction.

  • Name
    transaction_hash
    Type
    string
    Description

    The transaction_hash is the hash of the transaction on the blockchain.

  • Name
    transaction_status
    Type
    string
    Description

    The current transaction_status, can be either 'pending', 'mined', or 'failed'.

  • Name
    from
    Type
    string
    Description

    The from is the address of the sender.

  • Name
    chain
    Type
    string
    Description

    The chain is the name of the blockchain network.

  • Name
    timestamp
    Type
    string
    Description

    The timestamp is the time when the transaction was created, in ISO 8601 format.

  • Name
    token_amount
    Type
    string
    Description

    The token_amount is the amount of tokens transferred, in BigInt with 6 decimals.

  • Name
    token
    Type
    string
    Description

    The token is the type of token transferred.

  • Name
    to
    Type
    string
    Description

    The to is the address of the receiver.

  • Name
    app_id
    Type
    string
    Description

    The app_id is the identifier of the app initiating the transaction.

Response

GET
/api/v2/minikit/transaction/{transaction_id}?app_id=&type=
{
    "reference": "1fa38f30-8ee1-4e4b-9988-0517a774f96c",
    "transaction_hash": "0xfb25cb74b13d51deeb1a91460619c3d86a7637d40dd29831aa38dd6cbb05e880",
    "transaction_status": "pending | mined | failed",
    "from": "0x0c892815f0B058E69987920A23FBb33c834289cf",
    "chain": "optimism",
    "timestamp": "2024-01-01T00:00:00.000Z", // ISO 8601
    "token_amount": "100000000", // amount in BigInt with 6 decimals
    "token": "USDCE",
    "to": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
    "app_id": "app_9a73963d73efdf2e7d9472593dc9dffd"
}

Get Prices

GEThttps://app-backend.toolsforhumanity.com/public/v1/miniapps/prices?cryptoCurrencies=WLD,USDCE&fiatCurrencies=

This endpoint lets you query the latest prices of the Worldcoin token in various fiat currencies. We offer this as a service to make it easier to use WLD as a currency.

Query Params

  • Name
    fiatCurrencies
    Type
    string
    Required
    REQUIRED
    Description

    The fiatCurrencies is a comma-separated list of fiat currencies following ISO4217 currency code. eg. USD,EUR,JPY,ARS

  • Name
    cryptoCurrencies
    Type
    string
    Required
    REQUIRED
    Description

    The cryptoCurrencies is a comma-separated list of currencies we support. eg. USDCE,WLD

Request

GET
/api/v2/minikit/transaction/{transaction_id}?app_id=
curl -X GET "https://app-backend.toolsforhumanity.com/public/v1/prices/latest/wld?fiatCurrencies=USD"

Response (abridged)

Detailed are a just a few values in the return that could be confusing. See the response object in the bottom right column for the full list of fields

  • Name
    prices
    Type
    string
    Description

    The prices is an object where each key is the respective currency code

  • Name
    amount
    Type
    string
    Description

    The amount represents the non converted value for the price of 1 WLD for a given currency

  • Name
    decimals
    Type
    string
    Description

    The current decimals, should be used to calculate the converted price. ie an amount of 1000000 with 6 decimals would mean a price of $1.00 via, 1000000 * 10^-6

Response

GET
/api/v2/minikit/transaction/{transaction_id}?app_id=
{
    "result": {
        "prices": {
            "WLD": {
                "USD": {
                    "asset": "USD",
                    "amount": "1510763",
                    "decimals": 6,
                    "symbol": "USD"
                },
            },
            "USDCE": {
                "USD": {
                    "asset": "USD",
                    "amount": "1000058",
                    "decimals": 6,
                    "symbol": "USD"
                },
            }
        }
    }
}