Fetching User Details from the Server
You can query user details through the thirdweb SDK using a wallet address, email, phone number, or user ID. This function requires a secret key to be present on the thirdweb client and should only be used on the server.
To get the user details, you can make a GET
request to the following endpoint:
https://embedded-wallet.thirdweb.com/api/2023-11-30/embedded-wallet/user-details
You can specify the query parameter queryBy
to query by different user identifiers:
queryBy
: The parameter to query by. Can be one ofwalletAddress
,email
,phone
,externalWalletAddress
, orid
.
You can then specify the value to query by, matching the queryBy parameter:
walletAddress
: The user's wallet address that thirdweb has generated for thememail
: The user's email addressphone
: The user's phone numberexternalWalletAddress
: The user's wallet address that used to login via SIWEid
: The user's ID (for custom auth)
You need to include your ThirdWeb Client Secret in the Authorization header.
If you are an ecosystem owner, you have to include the x-ecosystem-id
header and optionally the x-ecosystem-partner-id
header if the ecosystem is set to partners only.
Here's an example curl command to fetch user details by email:
Here's an example curl command to fetch user details by address:
Here's an example curl command to fetch the user details for an ecosystem owner:
In both examples, replace YOUR_THIRD_WEB_CLIENT_SECRET
with your actual ThirdWeb Client Secret.
Replace YOUR_ECOSYSTEM_ID
and YOUR_PARTNER_ID
with your actual ecosystem ID and partner ID respectively. The partner ID can be one you set up for yourself as the ecosystem owner.
The API returns a JSON array with the following structure for each user:
Note: The details
object in linkedAccounts
will contain different fields based on the account type.
Remember to handle the response appropriately in your chosen programming language, including error cases and parsing the JSON response.