Data
Read-only endpoints to show your app's users, roles and activity in your own backend or admin panel. They only return data from the app that owns the token.
Send an access token in every request: Authorization: Bearer <accessToken>. Lists are paginated and errors follow the common format.
Get the app
Returns your app's domain and the login widget configuration you set in the Dashboard: texts in each language, login providers, modules and their parameters. Without a custom configuration you get the default one.
Request
curl https://wss.block-auth.io/api/app \
-H 'Authorization: Bearer your_access_token'
Response
{
"success": true,
"message": {
"domain": "your-app.com",
"config": {
"content": {
"title": { "en": "…", "es": "…" }
},
"google": { "enabled": true }
},
"modules": {
"kyc": { "enabled": false, "mode": "none" }
},
"params": {}
}
}
Get a user
Returns the profile of one user who has signed into your app, with their roles.
Personal fields (name, document, email, phone, postal address, birth data…) are null unless your app requests them in the Dashboard and the user agreed to share them.
Query
- Name
address- Type
- string
- Description
The user's address, as you got it from the login.
Errors
L1 User not found if the address doesn't exist, and User not signed yet if it never signed into your app.
Request
curl 'https://wss.block-auth.io/api/user?address=0x7F85…46D8' \
-H 'Authorization: Bearer your_access_token'
Response
{
"success": true,
"message": {
"items": [
{
"address": "0x7F85…46D8",
"did": "0x7F85…46D8",
"alias": "alice",
"firstname": null,
"email": "alice@example.com",
"roles": [
{ "slug": "acme-x7k2p9", "name": "Admin" }
]
}
]
}
}
List users
Users who have signed into your app, newest first.
Query
- Name
page- Type
- number
- Description
Page to return, from 1. Default
1.
- Name
limit- Type
- number
- Description
Results per page, 1 to 100. Default
100.
- Name
search- Type
- string
- Description
Part of an address.
- Name
fromServices- Type
- string
- Description
Only users who logged in with these methods, separated by commas:
blockauth,google,microsoft,metamask,phantom.
Each item
- Name
id- Type
- number
- Description
ID of the user in your app.
- Name
user_address- Type
- string
- Description
The user's address.
- Name
user_first_used_at- Type
- string
- Description
First login in your app (UTC).
- Name
user_last_used_at- Type
- string
- Description
Last login in your app (UTC).
- Name
user_total_txns- Type
- number
- Description
Number of operations of the user in your app.
- Name
user_services_names- Type
- array
- Description
Login methods the user has used.
- Name
roles- Type
- array
- Description
The user's roles, as
{ slug, name }.
Request
curl 'https://wss.block-auth.io/api/users?page=1&limit=20&fromServices=blockauth,google' \
-H 'Authorization: Bearer your_access_token'
Response
{
"success": true,
"message": {
"pages": 1,
"total": 1,
"items": [
{
"id": 42,
"user_address": "0x7F85…46D8",
"app_name": "My app",
"user_total_txns": 12,
"user_first_used_at": "2026-09-02T10:14:00.000Z",
"user_last_used_at": "2026-11-10T08:31:00.000Z",
"user_services_names": ["blockauth"],
"roles": [
{ "app_user_id": 42, "rol_id": 3, "slug": "acme-x7k2p9", "name": "Admin" }
]
}
]
}
}
List roles
The roles you created in the Dashboard for your users. Use the slug in your code: the name is only for display. See Roles to use them in your UI.
Query
- Name
page- Type
- number
- Description
Page to return, from 1. Default
1.
- Name
limit- Type
- number
- Description
Results per page, 1 to 100. Default
100.
- Name
search- Type
- string
- Description
Part of the name, slug or description.
Request
curl 'https://wss.block-auth.io/api/roles?page=1&limit=100' \
-H 'Authorization: Bearer your_access_token'
Response
{
"success": true,
"message": {
"pages": 1,
"total": 1,
"items": [
{
"id": 3,
"slug": "acme-x7k2p9",
"name": "Admin",
"description": "Full access",
"public": 0
}
]
}
}
List activity
Logins, logouts and other operations of your users in your app, newest first, with their state on the Block-Auth chain.
Query
- Name
page- Type
- number
- Description
Page to return, from 1. Default
1.
- Name
limit- Type
- number
- Description
Results per page, 1 to 100. Default
100.
- Name
methods[]- Type
- string
- Description
Only these operations, for example
signinorsignout. Repeat the parameter for several values.
- Name
states[]- Type
- string
- Description
Only these states:
initial,pending,approved,cancelled. Repeat the parameter for several values.
- Name
fromServices- Type
- string
- Description
Only these login methods, separated by commas.
Each item
- Name
id- Type
- number
- Description
ID of the entry.
- Name
method- Type
- string
- Description
The operation, for example
signin.
- Name
state- Type
- string
- Description
initial,pending,approvedorcancelled.
- Name
hash- Type
- string
- Description
Transaction hash on the Block-Auth chain, when there is one. Look it up in the Explorer.
- Name
fromService- Type
- string
- Description
Login method used, for example
blockauth.
- Name
created_at- Type
- string
- Description
When it happened (UTC).
Request
curl -g 'https://wss.block-auth.io/api/logs?page=1&limit=20&methods[]=signin&states[]=approved' \
-H 'Authorization: Bearer your_access_token'
Response
{
"success": true,
"message": {
"pages": 1,
"total": 1,
"items": [
{
"id": 981,
"method": "signin",
"state": "approved",
"hash": "0x5c1e…a07b",
"block_number": 120345,
"fromService": "blockauth",
"app_name": "My app",
"app_domain": "your-app.com",
"created_at": "2026-11-10T08:31:00.000Z"
}
]
}
}

