Get wallet address information
For a client to request a grant from an authorization server, the client must first verify the validity of the wallet address and get the URL of the wallet’s authorization server.
These code snippets enable an authenticated client to verify a wallet address, get the basic information required to construct a new transaction, and discover the auth server’s URL. Note that unauthenticated clients can also call the Wallet Address API to get wallet address information.
Before you begin
We recommend creating a wallet account on the test wallet. Creating an account allows you to test your client against the Open Payments APIs by using an ILP-enabled wallet funded with play money.
Retrieve public information for a wallet address
Initial configuration
If you’re using JavaScript, only do the first step.
- Add
"type": "module"
topackage.json
. - Add the following to
tsconfig.json
{"compilerOptions": {"target": "ES2022","module": "ES2022"}}
Import dependencies
import { createAuthenticatedClient } from "@interledger/open-payments";
Copied! Initialize Open Payments client
const client = await createAuthenticatedClient({
walletAddressUrl: WALLET_ADDRESS,
privateKey: PRIVATE_KEY_PATH,
keyId: KEY_ID,
});
Copied! Get wallet address
const walletAddress = await client.walletAddress.get({
url: WALLET_ADDRESS,
});
Copied! Output
console.log("WALLET ADDRESS:", walletAddress);
Copied! For TypeScript, run tsx path/to/directory/index.ts
. View full TS source
For JavaScript, run node path/to/directory/index.js
. View full JS source
Import dependencies
use OpenPayments\AuthClient;
use OpenPayments\Config\Config;
Copied! Initialize Open Payments client
$config = new Config($WALLET_ADDRESS, $PRIVATE_KEY, $KEY_ID);
$opClient = new AuthClient($config);
Copied! Get wallet address
$wallet = $opClient->walletAddress()->get([
"url" => $config->getWalletAddressUrl(),
]);
Copied! Output wallet address
$output->writeln("WALLET ADDRESS " . print_r($wallet, true));
Copied!