Skip to content

Default protection status

GET
/domains/{domain}/rules/waf/shield/status
curl --request GET \
--url https://api.nsin.ir/domains/example.com/rules/waf/shield/status \
--header 'Authorization: Bearer <token>'

State of the default NSIN Shield rule — the critical-only WAF rule the platform creates for every domain on a plan that includes it. Requires domain.view.

domain
required
string

The domain name (for example example.com) — not a numeric id.

Example
example.com

Shield status.

Media type application/json

State of the domain’s default NSIN Shield rule.

object
plan_allows

The domain’s current plan includes default protection.

boolean
present

A managed shield rule exists for this domain (it may be disabled).

boolean
rule_id
integer
enabled
boolean
action_mode
string
Allowed values: enforce dry_run
dismissed

The rule was deleted by the owner and will not be re-created unless restored.

boolean
dismissed_at
string format: date-time
active

Present, enabled, and shipped to the edge.

boolean
default_action_mode

The mode a restored rule is created with.

string
Allowed values: enforce dry_run
Example
{
"action_mode": "enforce",
"default_action_mode": "enforce"
}

Missing, malformed, revoked or expired API key — or the owning account is inactive.

Media type application/json

The single error shape used by every endpoint.

object
error
required

Human-readable description of what went wrong.

string
Examples
Example invalidKey
{
"error": "invalid API key"
}

No such domain, or your role on it does not permit this operation. The rules endpoints deliberately answer 404 rather than 403 for an insufficient role, so they never confirm that a domain exists to someone who cannot use it.

Media type application/json

The single error shape used by every endpoint.

object
error
required

Human-readable description of what went wrong.

string
Examples
Example notFound
{
"error": "not found"
}

The key exceeded its request budget (300 requests per minute by default).

Media type application/json

The single error shape used by every endpoint.

object
error
required

Human-readable description of what went wrong.

string
Examples
Example limited
{
"error": "rate limit exceeded"
}