Who pays for this domain, and what they have
Auth: Authorization: Bearer nsin_… or X-Api-Key: nsin_… — see API keys.
The wallet a purchase or a renewal on this domain will actually spend,
and its balance. The panel shows this on the purchase dialog, and any
integration that spends on a shared domain should: the owner's
nomination of a paying member (made in the panel) takes effect with no
consent step, so whoever clicks Buy must see whose money is about to move — and
an insufficient balance should be visible up front rather than arriving
as a surprise 402.
Requires billing on the domain, or being the nominated payer yourself.
Someone being charged can always see what for, whatever their role.
Path parameters
- domainstringrequiredpath
The domain name (for example
example.com) — not a numeric id.
Responses
200The domain's payer.
Content type: application/json
- user_idinteger
- namestring
Display name, falling back to the email address.
- emailstring
- is_ownerboolean
True when the payer is the domain owner.
- is_selfboolean
True when the payer is the account this key belongs to.
- balance_rialsinteger (int64)
The payer's wallet balance in rials — disclosed only through this gate, and only for this domain's payer.
{
"user_id": 0,
"name": "string",
"email": "string",
"is_owner": true,
"is_self": true,
"balance_rials": 0
}400Missing domain.
Content type: application/json
- errorstringrequired
Human-readable description of what went wrong.
{
"error": "read-only API key"
}401Missing, malformed, revoked or expired API key. (A valid key whose
account has been deactivated gets 403 account is inactive instead.)
Content type: application/json
- errorstringrequired
Human-readable description of what went wrong.
{
"error": "invalid API key"
}404No such domain, or it is not visible to this account. Domains you cannot access are reported as not found rather than forbidden.
Content type: application/json
- errorstringrequired
Human-readable description of what went wrong.
{
"error": "read-only API key"
}429The key exceeded its request budget (300 requests per minute by default).
Content type: application/json
- errorstringrequired
Human-readable description of what went wrong.
{
"error": "rate limit exceeded"
}Example request
curl -X GET "https://api.nsin.ir/domains/example.com/payer" \
-H "Authorization: Bearer $NSIN_API_KEY"