Skip to content
Niu DocsNiu 牛元文档
Dashboard控制台

Set API key source policy

Generated from the checked-in source. Do not edit this reference by hand.

PUT /api/v1/organizations/{organization}/projects/{project}/keys/{key}/ip-policy

Owner or installation administrator only. Rotation preserves this policy. Does not cancel already admitted requests.

Operation: setKeyIpPolicy.

Use the credential and permission scope described above. Each object below is an alternative; schemes within one object are required together.

JSON
[
{
"bearerAuth": []
}
]

Set NIU_ORIGIN to your installation origin (without /v1). Replace path, query and header placeholders with the required values. Query examples use curl 7.87 or newer to encode values with --url-query. Use the credential scope described above; a bearer token must have the authority required by this operation.

Shell
curl --fail-with-body -X PUT "$NIU_ORIGIN/api/v1/organizations/{organization}/projects/{project}/keys/{key}/ip-policy" \
-H "Authorization: Bearer $NIU_BEARER_TOKEN" \
-H 'Content-Type: application/json' \
--data @request.json

Location: path. Required.

JSON
{
"type": "string",
"format": "uuid"
}

Location: path. Required.

JSON
{
"type": "string",
"format": "uuid"
}

Location: path. Required.

JSON
{
"type": "string",
"format": "uuid"
}

Required.

JSON
{
"type": "object",
"additionalProperties": false,
"required": [
"allowed_cidrs",
"expected_revision"
],
"properties": {
"allowed_cidrs": {
"type": [
"array",
"null"
],
"maxItems": 64,
"items": {
"type": "string",
"maxLength": 64
},
"description": "IPv4/IPv6 addresses or CIDRs, normalized to network CIDRs. Null permits all; empty denies all."
},
"expected_revision": {
"type": "string",
"pattern": "^[0-9]+$",
"description": "Zero for initial configuration; maximum 9223372036854775806."
}
}
}

New policy and immutable history committed atomically.

Content type: application/json.

JSON
{
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"revision"
],
"properties": {
"revision": {
"type": "string",
"pattern": "^[1-9][0-9]*$"
}
}
}
}
}

Invalid network or revision

Authentication required

Owner permission required

Workspace is outside operator scope, or key is absent from authorized workspace

Stale policy revision

Missing or invalid JSON fields

Owner or installation administrator only. Rotation preserves this policy. Does not cancel already admitted requests.

Supported scope: implemented