Skip to main content
POST
/
v1
/
auth
/
wallets
/
verify
Verify Wallet (beta)
curl --request POST \
  --url https://api.streambird.io/v1/auth/wallets/verify \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "wallet_type": "ethereum",
  "signature": "0xb27c94381c930151c4823fd4b7f0b45d700f0c9d30a7b98821413e07eef7604319a1dbc28dda881d0fc8d18b08aceeeb0fcdb80d6caec6f6e9901800c43894c31b",
  "public_address": "0xF7E9D631bfBd90C19691566Db4AB96697A2663C6"
}'
{
  "id": "wallet_24tdfcVDSJQpK5huDnZaqPP2aiI",
  "app_id": "app_24ydphdixx2ydhF0E5WUFUKWNqi",
  "user_id": "user_24wFP9pDa9YiMJLun94iKykoZs2",
  "public_address": "0xf7e9d631bfbd90c19691566db4ab96697a2663c6",
  "wallet_type": "ethereum",
  "is_default": false,
  "is_ready_only": true,
  "is_imported": true,
  "updated_at": 1644453920,
  "created_at": 1644453920
}

Authorizations

Authorization
string
header
required

Auth Platform API includes all the Auth related features. All Users, Phone Numbers, Emails, and OTPs are associated with an App as the container.

Endpoints only accept App's Secret API keys other than certain endpoints that are used client side or via SDK that accept the public_token.

Authentication using App Api Key

Header:

Authorization: Bearer {api_key}

Authenticated Request

curl \
-X GET https://api.streambird.io/v1/auth/users/user_24wFP9pDa9YiMJLun94iKykoZs2 \
-H "Authorization: Bearer sk_test_pRqweh3wvWmJAAVYv7Z0T5iPLzFM4ql0muoyQcjOxGeN3p1r"

Body

application/json
wallet_type
string
required

Determines the type of wallet to register. Possible values: ethereum, solana (more coming soon!).

Minimum length: 1
signature
string
required

Signed message using the associated private key of the wallet address. We expect ethereum signed message to be base64 encoded (e.g. 0x...) and solana signed message will be bs58 encoded.

Minimum length: 1
public_address
string
required

Public wallet address of the wallet.

Minimum length: 1
session_expires_in
number

Optional Extend the session expiration time to N minutes from now, must be between 5 to 525600 minutes (365 days). This parameter will create a new session if there is no existing session along with a session_token and session_jwt. However, if a valid session_token or session_jwt is sent in, it will extend that session by the minutes specified. If not sent in, no session will be created by default.

session_token
string

Optional Unique session token to verify.

session_jwt
string

Optional Unique Session JWT to verify.

Response

200 - application/json

Verify Wallet (beta) response

id
string
required
Minimum length: 1
app_id
string
required
Minimum length: 1
user_id
string
required
Minimum length: 1
public_address
string
required
Minimum length: 1
wallet_type
string
required
Minimum length: 1
is_default
boolean
required
is_ready_only
boolean
required
is_imported
boolean
required
updated_at
number
required
created_at
number
required
session_token
string
session_jwt
string
session
object