Api reference
Check Wallet
Verify wallet existence and status on the blockchain.
Verify wallet existence and status on the blockchain.
Endpoint
POST /checkDescription
Checks if a wallet exists on the blockchain based on the provided salt or wallet address. This is useful for verifying wallet deployment status before attempting operations.
Request Body
{
"accounts": [
{
"salt": "example@gmail.com",
"walletCustody": 2
}
],
"settings": {
"rpc": "https://polygon-amoy.infura.io/v3/{key}",
"factory": "0x5102Aa0EA1f1A88a6125B74ADf673891EB6393cE",
"beaconAdminAddress": "0x183A1019242865C39f06C78716933259A161E99A",
"beaconAdminCreationCode": "0x60a0604052..."
}
}Request Parameters
accounts (array, required)
Array of account check requests.
salt(string, optional): The salt to check the wallet address. Required ifwalletis empty.wallet(string, optional): The wallet address to check. Required ifsaltis empty.walletCustody(integer, optional): The wallet custody classification (1-5). Only required if wallet address is empty.
settings (object, required)
Configuration settings for the check.
rpc(string, required): The RPC endpoint for the chainfactory(string, optional): The factory address of the provided chainbeaconAdminAddress(string, optional): The beacon admin address of the provided chainbeaconAdminCreationCode(string, optional): The beacon creation code of the provided chain
Response
[
{
"exists": true,
"wallet": "0x28097eF2268B553783D9c32A33ECb1bB78B209F3",
"salt": "example@gmail.com",
"error": null
}
]Response Fields
exists(boolean): Whether the account exists on the blockchainwallet(string): The wallet address checkedsalt(string): The salt used for the checkerror(string, nullable): Error message if check failed
Example Request
curl -X POST https://api.msa.omnes.tech/check \
-H "Content-Type: application/json" \
-d '{
"accounts": [
{
"salt": "user@example.com",
"walletCustody": 2
}
],
"settings": {
"rpc": "https://polygon-amoy.infura.io/v3/{key}",
"factory": "0x5102Aa0EA1f1A88a6125B74ADf673891EB6393cE",
"beaconAdminAddress": "0x183A1019242865C39f06C78716933259A161E99A",
"beaconAdminCreationCode": "0x60a0604052..."
}
}'const response = await fetch('https://api.msa.omnes.tech/check', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({
accounts: [
{
salt: 'user@example.com',
walletCustody: 2,
},
],
settings: {
rpc: 'https://polygon-amoy.infura.io/v3/{key}',
factory: '0x5102Aa0EA1f1A88a6125B74ADf673891EB6393cE',
beaconAdminAddress: '0x183A1019242865C39f06C78716933259A161E99A',
beaconAdminCreationCode: '0x60a0604052...',
},
}),
});
const result = await response.json();
console.log('Wallet exists:', result[0].exists);import requests
url = "https://api.msa.omnes.tech/check"
payload = {
"accounts": [
{
"salt": "user@example.com",
"walletCustody": 2
}
],
"settings": {
"rpc": "https://polygon-amoy.infura.io/v3/{key}",
"factory": "0x5102Aa0EA1f1A88a6125B74ADf673891EB6393cE",
"beaconAdminAddress": "0x183A1019242865C39f06C78716933259A161E99A",
"beaconAdminCreationCode": "0x60a0604052..."
}
}
response = requests.post(url, json=payload)
result = response.json()
print(f"Wallet exists: {result[0]['exists']}")Error Responses
400 Bad Request
Invalid request parameters.
{
"error": "invalid rpc"
}Use Cases
- Pre-creation verification: Check if a wallet already exists before attempting creation
- Status monitoring: Verify wallet deployment status
- Batch verification: Check multiple wallet addresses at once
- Address validation: Confirm wallet addresses are deployed
Best Practices
- Check before creating: Always verify wallet doesn't exist before creation
- Handle errors: Check for errors in the response array
- Use consistent parameters: Use the same salt and custody type used for prediction/creation
Related Endpoints
- Predict Wallet - Predict wallet address
- Create Wallet - Deploy new wallets
💡 Tip: Use this endpoint to verify wallet existence before attempting operations. This helps prevent errors and provides better user experience.