Networking

Generated networking operations.

GET/v1/networking/certificateRead network certificateadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
get_networking_certificate

Responses

200Successapplication/json

Example
{
  "authorityId": "id_8h2k4q",
  "config": {
    "enabled": true,
    "publicAddress": "string",
    "publicPort": 0,
    "revision": "r12"
  },
  "configured": true,
  "dnsName": "Fargo",
  "environment": "string",
  "errorCode": "string",
  "issuer": "string",
  "listenPort": 0,
  "listenerBound": true,
  "namespace": "Fargo",
  "nextAttemptAt": "2026-10-18T19:30:00Z",
  "notAfter": "2026-10-18T19:30:00Z",
  "orderState": "string",
  "publiclyTrusted": true,
  "reachability": "string",
  "renewAt": "2026-10-18T19:30:00Z",
  "routeErrorCode": "string",
  "routeHostname": "Fargo",
  "routeUrl": "https://example.com/…",
  "state": "string",
  "tlsReady": true
}
Schema
  • authorityIdstringrequired
  • configobjectrequired
    • enabledbooleanrequired
    • publicAddressstringrequired
    • publicPortintegerrequired
    • revisionstringrequired
  • configuredbooleanrequired
  • dnsNamestring
  • environmentstringrequired
  • errorCodestring
  • issuerstring
  • listenPortintegerrequired
  • listenerBoundbooleanrequired
  • namespacestring
  • nextAttemptAtstring (date-time)
  • notAfterstring (date-time)
  • orderStatestring
  • publiclyTrustedbooleanrequired
  • reachabilitystringrequired
  • renewAtstring (date-time)
  • routeErrorCodestring
  • routeHostnamestring
  • routeUrlstring
  • statestringrequired
  • tlsReadybooleanrequired

defaultRequest refused or unavailableapplication/json

Example
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
Schema
  • errorobjectrequired
    • codestringrequired
    • messagestringrequired

Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busy

Example request

curl -X GET "http://127.0.0.1:32500/v1/networking/certificate" \
  -H "Authorization: Bearer $PORTICO_API_KEY"
POST/v1/networking/certificate/configRun network certificate configadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
post_networking_certificate_config
Max body
64 KiB

Request body application/json · required

Example
{
  "authorityId": "id_8h2k4q",
  "config": {
    "enabled": true,
    "publicAddress": "string",
    "publicPort": 0,
    "revision": "r12"
  }
}
Schema
  • authorityIdstringrequired
  • configobjectrequired
    • enabledbooleanrequired
    • publicAddressstringrequired
    • publicPortintegerrequired
    • revisionstringrequired

Responses

200Successapplication/json

Example
{
  "authorityId": "id_8h2k4q",
  "config": {
    "enabled": true,
    "publicAddress": "string",
    "publicPort": 0,
    "revision": "r12"
  },
  "configured": true,
  "dnsName": "Fargo",
  "environment": "string",
  "errorCode": "string",
  "issuer": "string",
  "listenPort": 0,
  "listenerBound": true,
  "namespace": "Fargo",
  "nextAttemptAt": "2026-10-18T19:30:00Z",
  "notAfter": "2026-10-18T19:30:00Z",
  "orderState": "string",
  "publiclyTrusted": true,
  "reachability": "string",
  "renewAt": "2026-10-18T19:30:00Z",
  "routeErrorCode": "string",
  "routeHostname": "Fargo",
  "routeUrl": "https://example.com/…",
  "state": "string",
  "tlsReady": true
}
Schema
  • authorityIdstringrequired
  • configobjectrequired
    • enabledbooleanrequired
    • publicAddressstringrequired
    • publicPortintegerrequired
    • revisionstringrequired
  • configuredbooleanrequired
  • dnsNamestring
  • environmentstringrequired
  • errorCodestring
  • issuerstring
  • listenPortintegerrequired
  • listenerBoundbooleanrequired
  • namespacestring
  • nextAttemptAtstring (date-time)
  • notAfterstring (date-time)
  • orderStatestring
  • publiclyTrustedbooleanrequired
  • reachabilitystringrequired
  • renewAtstring (date-time)
  • routeErrorCodestring
  • routeHostnamestring
  • routeUrlstring
  • statestringrequired
  • tlsReadybooleanrequired

defaultRequest refused or unavailableapplication/json

Example
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
Schema
  • errorobjectrequired
    • codestringrequired
    • messagestringrequired

Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busywriter_capacity

Example request

curl -X POST "http://127.0.0.1:32500/v1/networking/certificate/config" \
  -H "Authorization: Bearer $PORTICO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"authorityId":"id_8h2k4q","config":{"enabled":true,"publicAddress":"string","publicPort":0,"revision":"r12"}}'
POST/v1/networking/certificate/retryRun network certificate retryadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
post_networking_certificate_retry

Responses

200Successapplication/json

Example
{
  "authorityId": "id_8h2k4q",
  "config": {
    "enabled": true,
    "publicAddress": "string",
    "publicPort": 0,
    "revision": "r12"
  },
  "configured": true,
  "dnsName": "Fargo",
  "environment": "string",
  "errorCode": "string",
  "issuer": "string",
  "listenPort": 0,
  "listenerBound": true,
  "namespace": "Fargo",
  "nextAttemptAt": "2026-10-18T19:30:00Z",
  "notAfter": "2026-10-18T19:30:00Z",
  "orderState": "string",
  "publiclyTrusted": true,
  "reachability": "string",
  "renewAt": "2026-10-18T19:30:00Z",
  "routeErrorCode": "string",
  "routeHostname": "Fargo",
  "routeUrl": "https://example.com/…",
  "state": "string",
  "tlsReady": true
}
Schema
  • authorityIdstringrequired
  • configobjectrequired
    • enabledbooleanrequired
    • publicAddressstringrequired
    • publicPortintegerrequired
    • revisionstringrequired
  • configuredbooleanrequired
  • dnsNamestring
  • environmentstringrequired
  • errorCodestring
  • issuerstring
  • listenPortintegerrequired
  • listenerBoundbooleanrequired
  • namespacestring
  • nextAttemptAtstring (date-time)
  • notAfterstring (date-time)
  • orderStatestring
  • publiclyTrustedbooleanrequired
  • reachabilitystringrequired
  • renewAtstring (date-time)
  • routeErrorCodestring
  • routeHostnamestring
  • routeUrlstring
  • statestringrequired
  • tlsReadybooleanrequired

defaultRequest refused or unavailableapplication/json

Example
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
Schema
  • errorobjectrequired
    • codestringrequired
    • messagestringrequired

Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busywriter_capacity

Example request

curl -X POST "http://127.0.0.1:32500/v1/networking/certificate/retry" \
  -H "Authorization: Bearer $PORTICO_API_KEY"
GET/v1/networking/claimRead network claimsession
Audience
Clients · Native API
Authorization
Session only; API keys and personal access tokens are refused
OpenAPI operation ID
get_networking_claim

Responses

200Successapplication/json

Example
{
  "accountId": "id_8h2k4q",
  "actions": [
    "string"
  ],
  "approvalRequest": {
    "currentOwnerAccountId": "id_8h2k4q",
    "expectedRevision": "r12",
    "localGeneration": "string",
    "name": "Fargo",
    "operationId": "id_8h2k4q",
    "previousOwnerRole": "string",
    "publicKey": "string",
    "purpose": "string",
    "returnRegistrationId": "id_8h2k4q",
    "serverId": "id_8h2k4q"
  },
  "approvalRequired": true,
  "approvalUrl": "https://example.com/…",
  "claimCode": "string",
  "identity": {
    "localGeneration": "string",
    "serverId": "id_8h2k4q"
  },
  "installationAcknowledged": true,
  "operation": {
    "localGeneration": "string",
    "operationId": "id_8h2k4q",
    "revision": "r12"
  },
  "ownerContinuation": {
    "claim": {
      "payload": "string",
      "signature": "string"
    },
    "expiresAt": "2026-10-18T19:30:00Z",
    "phase": "string",
    "returnRegistration": {
      "id": "id_8h2k4q",
      "origin": "string"
    },
    "start": {
      "payload": "string",
      "signature": "string"
    },
    "transactionId": "id_8h2k4q"
  },
  "setupContinuation": {
    "claim": {
      "payload": "string",
      "signature": "string"
    },
    "expiresAt": "2026-10-18T19:30:00Z",
    "phase": "string",
    "start": {
      "payload": "string",
      "signature": "string"
    },
    "transactionId": "id_8h2k4q"
  },
  "state": "string"
}
Schema
  • accountIdstring
  • actionsarray of stringrequired
  • approvalRequestobject
    • currentOwnerAccountIdstringrequired
    • expectedRevisionstringrequired
    • localGenerationstringrequired
    • namestringrequired
    • operationIdstringrequired
    • previousOwnerRolestringrequired
    • publicKeystringrequired
    • purposestringrequired
    • returnRegistrationIdstringrequired
    • serverIdstringrequired
  • approvalRequiredbooleanrequired
  • approvalUrlstring
  • claimCodestring
  • identityobjectrequired
    • localGenerationstringrequired
    • serverIdstringrequired
  • installationAcknowledgedbooleanrequired
  • operationobject
    • localGenerationstringrequired
    • operationIdstringrequired
    • revisionstringrequired
  • ownerContinuationobject
    • claimobject
      • payloadstringrequired
      • signaturestringrequired
    • expiresAtstringrequired
    • phasestringrequired
    • returnRegistrationobject
      • idstringrequired
      • originstringrequired
    • startobject
      • payloadstringrequired
      • signaturestringrequired
    • transactionIdstringrequired
  • setupContinuationobject
    • claimobject
      • payloadstringrequired
      • signaturestringrequired
    • expiresAtstringrequired
    • phasestringrequired
    • startobject
      • payloadstringrequired
      • signaturestringrequired
    • transactionIdstringrequired
  • statestringrequired

defaultRequest refused or unavailableapplication/json

Example
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
Schema
  • errorobjectrequired
    • codestringrequired
    • messagestringrequired

Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busy

Example request

curl -X GET "http://127.0.0.1:32500/v1/networking/claim" \
  -H "Authorization: Bearer $PORTICO_ACCESS_TOKEN"
POST/v1/networking/claim/approveRun network claim approvesession
Audience
Clients · Native API
Authorization
Session only; API keys and personal access tokens are refused
OpenAPI operation ID
post_networking_claim_approve
Max body
64 KiB

Request body application/json · required

Example
{
  "approvalEnvelope": "string",
  "expected": {
    "localGeneration": "string",
    "operationId": "id_8h2k4q",
    "revision": "r12"
  }
}
Schema
  • approvalEnvelopestring
  • expectedobjectrequired
    • localGenerationstringrequired
    • operationIdstringrequired
    • revisionstringrequired

Responses

200Successapplication/json

Example
{
  "accountId": "id_8h2k4q",
  "actions": [
    "string"
  ],
  "approvalRequest": {
    "currentOwnerAccountId": "id_8h2k4q",
    "expectedRevision": "r12",
    "localGeneration": "string",
    "name": "Fargo",
    "operationId": "id_8h2k4q",
    "previousOwnerRole": "string",
    "publicKey": "string",
    "purpose": "string",
    "returnRegistrationId": "id_8h2k4q",
    "serverId": "id_8h2k4q"
  },
  "approvalRequired": true,
  "approvalUrl": "https://example.com/…",
  "claimCode": "string",
  "identity": {
    "localGeneration": "string",
    "serverId": "id_8h2k4q"
  },
  "installationAcknowledged": true,
  "operation": {
    "localGeneration": "string",
    "operationId": "id_8h2k4q",
    "revision": "r12"
  },
  "ownerContinuation": {
    "claim": {
      "payload": "string",
      "signature": "string"
    },
    "expiresAt": "2026-10-18T19:30:00Z",
    "phase": "string",
    "returnRegistration": {
      "id": "id_8h2k4q",
      "origin": "string"
    },
    "start": {
      "payload": "string",
      "signature": "string"
    },
    "transactionId": "id_8h2k4q"
  },
  "setupContinuation": {
    "claim": {
      "payload": "string",
      "signature": "string"
    },
    "expiresAt": "2026-10-18T19:30:00Z",
    "phase": "string",
    "start": {
      "payload": "string",
      "signature": "string"
    },
    "transactionId": "id_8h2k4q"
  },
  "state": "string"
}
Schema
  • accountIdstring
  • actionsarray of stringrequired
  • approvalRequestobject
    • currentOwnerAccountIdstringrequired
    • expectedRevisionstringrequired
    • localGenerationstringrequired
    • namestringrequired
    • operationIdstringrequired
    • previousOwnerRolestringrequired
    • publicKeystringrequired
    • purposestringrequired
    • returnRegistrationIdstringrequired
    • serverIdstringrequired
  • approvalRequiredbooleanrequired
  • approvalUrlstring
  • claimCodestring
  • identityobjectrequired
    • localGenerationstringrequired
    • serverIdstringrequired
  • installationAcknowledgedbooleanrequired
  • operationobject
    • localGenerationstringrequired
    • operationIdstringrequired
    • revisionstringrequired
  • ownerContinuationobject
    • claimobject
      • payloadstringrequired
      • signaturestringrequired
    • expiresAtstringrequired
    • phasestringrequired
    • returnRegistrationobject
      • idstringrequired
      • originstringrequired
    • startobject
      • payloadstringrequired
      • signaturestringrequired
    • transactionIdstringrequired
  • setupContinuationobject
    • claimobject
      • payloadstringrequired
      • signaturestringrequired
    • expiresAtstringrequired
    • phasestringrequired
    • startobject
      • payloadstringrequired
      • signaturestringrequired
    • transactionIdstringrequired
  • statestringrequired

defaultRequest refused or unavailableapplication/json

Example
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
Schema
  • errorobjectrequired
    • codestringrequired
    • messagestringrequired

Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busywriter_capacity

Example request

curl -X POST "http://127.0.0.1:32500/v1/networking/claim/approve" \
  -H "Authorization: Bearer $PORTICO_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"approvalEnvelope":"string","expected":{"localGeneration":"string","operationId":"id_8h2k4q","revision":"r12"}}'
POST/v1/networking/claim/await-approvalRun network claim await approvalsession
Audience
Clients · Native API
Authorization
Session only; API keys and personal access tokens are refused
OpenAPI operation ID
post_networking_claim_await_approval
Max body
64 KiB

Request body application/json · required

Example
{
  "expected": {
    "localGeneration": "string",
    "operationId": "id_8h2k4q",
    "revision": "r12"
  }
}
Schema
  • expectedobjectrequired
    • localGenerationstringrequired
    • operationIdstringrequired
    • revisionstringrequired

Responses

200Successapplication/json

Example
{
  "accountId": "id_8h2k4q",
  "actions": [
    "string"
  ],
  "approvalRequest": {
    "currentOwnerAccountId": "id_8h2k4q",
    "expectedRevision": "r12",
    "localGeneration": "string",
    "name": "Fargo",
    "operationId": "id_8h2k4q",
    "previousOwnerRole": "string",
    "publicKey": "string",
    "purpose": "string",
    "returnRegistrationId": "id_8h2k4q",
    "serverId": "id_8h2k4q"
  },
  "approvalRequired": true,
  "approvalUrl": "https://example.com/…",
  "claimCode": "string",
  "identity": {
    "localGeneration": "string",
    "serverId": "id_8h2k4q"
  },
  "installationAcknowledged": true,
  "operation": {
    "localGeneration": "string",
    "operationId": "id_8h2k4q",
    "revision": "r12"
  },
  "ownerContinuation": {
    "claim": {
      "payload": "string",
      "signature": "string"
    },
    "expiresAt": "2026-10-18T19:30:00Z",
    "phase": "string",
    "returnRegistration": {
      "id": "id_8h2k4q",
      "origin": "string"
    },
    "start": {
      "payload": "string",
      "signature": "string"
    },
    "transactionId": "id_8h2k4q"
  },
  "setupContinuation": {
    "claim": {
      "payload": "string",
      "signature": "string"
    },
    "expiresAt": "2026-10-18T19:30:00Z",
    "phase": "string",
    "start": {
      "payload": "string",
      "signature": "string"
    },
    "transactionId": "id_8h2k4q"
  },
  "state": "string"
}
Schema
  • accountIdstring
  • actionsarray of stringrequired
  • approvalRequestobject
    • currentOwnerAccountIdstringrequired
    • expectedRevisionstringrequired
    • localGenerationstringrequired
    • namestringrequired
    • operationIdstringrequired
    • previousOwnerRolestringrequired
    • publicKeystringrequired
    • purposestringrequired
    • returnRegistrationIdstringrequired
    • serverIdstringrequired
  • approvalRequiredbooleanrequired
  • approvalUrlstring
  • claimCodestring
  • identityobjectrequired
    • localGenerationstringrequired
    • serverIdstringrequired
  • installationAcknowledgedbooleanrequired
  • operationobject
    • localGenerationstringrequired
    • operationIdstringrequired
    • revisionstringrequired
  • ownerContinuationobject
    • claimobject
      • payloadstringrequired
      • signaturestringrequired
    • expiresAtstringrequired
    • phasestringrequired
    • returnRegistrationobject
      • idstringrequired
      • originstringrequired
    • startobject
      • payloadstringrequired
      • signaturestringrequired
    • transactionIdstringrequired
  • setupContinuationobject
    • claimobject
      • payloadstringrequired
      • signaturestringrequired
    • expiresAtstringrequired
    • phasestringrequired
    • startobject
      • payloadstringrequired
      • signaturestringrequired
    • transactionIdstringrequired
  • statestringrequired

defaultRequest refused or unavailableapplication/json

Example
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
Schema
  • errorobjectrequired
    • codestringrequired
    • messagestringrequired

Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busywriter_capacity

Example request

curl -X POST "http://127.0.0.1:32500/v1/networking/claim/await-approval" \
  -H "Authorization: Bearer $PORTICO_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"expected":{"localGeneration":"string","operationId":"id_8h2k4q","revision":"r12"}}'
POST/v1/networking/claim/cancelRun network claim cancelsession
Audience
Clients · Native API
Authorization
Session only; API keys and personal access tokens are refused
OpenAPI operation ID
post_networking_claim_cancel
Max body
64 KiB

Request body application/json · required

Example
{
  "approvalEnvelope": "string",
  "expected": {
    "localGeneration": "string",
    "operationId": "id_8h2k4q",
    "revision": "r12"
  }
}
Schema
  • approvalEnvelopestring
  • expectedobjectrequired
    • localGenerationstringrequired
    • operationIdstringrequired
    • revisionstringrequired

Responses

200Successapplication/json

Example
{
  "accountId": "id_8h2k4q",
  "actions": [
    "string"
  ],
  "approvalRequest": {
    "currentOwnerAccountId": "id_8h2k4q",
    "expectedRevision": "r12",
    "localGeneration": "string",
    "name": "Fargo",
    "operationId": "id_8h2k4q",
    "previousOwnerRole": "string",
    "publicKey": "string",
    "purpose": "string",
    "returnRegistrationId": "id_8h2k4q",
    "serverId": "id_8h2k4q"
  },
  "approvalRequired": true,
  "approvalUrl": "https://example.com/…",
  "claimCode": "string",
  "identity": {
    "localGeneration": "string",
    "serverId": "id_8h2k4q"
  },
  "installationAcknowledged": true,
  "operation": {
    "localGeneration": "string",
    "operationId": "id_8h2k4q",
    "revision": "r12"
  },
  "ownerContinuation": {
    "claim": {
      "payload": "string",
      "signature": "string"
    },
    "expiresAt": "2026-10-18T19:30:00Z",
    "phase": "string",
    "returnRegistration": {
      "id": "id_8h2k4q",
      "origin": "string"
    },
    "start": {
      "payload": "string",
      "signature": "string"
    },
    "transactionId": "id_8h2k4q"
  },
  "setupContinuation": {
    "claim": {
      "payload": "string",
      "signature": "string"
    },
    "expiresAt": "2026-10-18T19:30:00Z",
    "phase": "string",
    "start": {
      "payload": "string",
      "signature": "string"
    },
    "transactionId": "id_8h2k4q"
  },
  "state": "string"
}
Schema
  • accountIdstring
  • actionsarray of stringrequired
  • approvalRequestobject
    • currentOwnerAccountIdstringrequired
    • expectedRevisionstringrequired
    • localGenerationstringrequired
    • namestringrequired
    • operationIdstringrequired
    • previousOwnerRolestringrequired
    • publicKeystringrequired
    • purposestringrequired
    • returnRegistrationIdstringrequired
    • serverIdstringrequired
  • approvalRequiredbooleanrequired
  • approvalUrlstring
  • claimCodestring
  • identityobjectrequired
    • localGenerationstringrequired
    • serverIdstringrequired
  • installationAcknowledgedbooleanrequired
  • operationobject
    • localGenerationstringrequired
    • operationIdstringrequired
    • revisionstringrequired
  • ownerContinuationobject
    • claimobject
      • payloadstringrequired
      • signaturestringrequired
    • expiresAtstringrequired
    • phasestringrequired
    • returnRegistrationobject
      • idstringrequired
      • originstringrequired
    • startobject
      • payloadstringrequired
      • signaturestringrequired
    • transactionIdstringrequired
  • setupContinuationobject
    • claimobject
      • payloadstringrequired
      • signaturestringrequired
    • expiresAtstringrequired
    • phasestringrequired
    • startobject
      • payloadstringrequired
      • signaturestringrequired
    • transactionIdstringrequired
  • statestringrequired

defaultRequest refused or unavailableapplication/json

Example
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
Schema
  • errorobjectrequired
    • codestringrequired
    • messagestringrequired

Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busywriter_capacity

Example request

curl -X POST "http://127.0.0.1:32500/v1/networking/claim/cancel" \
  -H "Authorization: Bearer $PORTICO_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"approvalEnvelope":"string","expected":{"localGeneration":"string","operationId":"id_8h2k4q","revision":"r12"}}'
POST/v1/networking/claim/continueRun network claim continuesession
Audience
Clients · Native API
Authorization
Session only; API keys and personal access tokens are refused
OpenAPI operation ID
post_networking_claim_continue
Max body
64 KiB

Request body application/json · required

Example
{
  "approvalEnvelope": "string",
  "expected": {
    "localGeneration": "string",
    "operationId": "id_8h2k4q",
    "revision": "r12"
  }
}
Schema
  • approvalEnvelopestring
  • expectedobjectrequired
    • localGenerationstringrequired
    • operationIdstringrequired
    • revisionstringrequired

Responses

200Successapplication/json

Example
{
  "accountId": "id_8h2k4q",
  "actions": [
    "string"
  ],
  "approvalRequest": {
    "currentOwnerAccountId": "id_8h2k4q",
    "expectedRevision": "r12",
    "localGeneration": "string",
    "name": "Fargo",
    "operationId": "id_8h2k4q",
    "previousOwnerRole": "string",
    "publicKey": "string",
    "purpose": "string",
    "returnRegistrationId": "id_8h2k4q",
    "serverId": "id_8h2k4q"
  },
  "approvalRequired": true,
  "approvalUrl": "https://example.com/…",
  "claimCode": "string",
  "identity": {
    "localGeneration": "string",
    "serverId": "id_8h2k4q"
  },
  "installationAcknowledged": true,
  "operation": {
    "localGeneration": "string",
    "operationId": "id_8h2k4q",
    "revision": "r12"
  },
  "ownerContinuation": {
    "claim": {
      "payload": "string",
      "signature": "string"
    },
    "expiresAt": "2026-10-18T19:30:00Z",
    "phase": "string",
    "returnRegistration": {
      "id": "id_8h2k4q",
      "origin": "string"
    },
    "start": {
      "payload": "string",
      "signature": "string"
    },
    "transactionId": "id_8h2k4q"
  },
  "setupContinuation": {
    "claim": {
      "payload": "string",
      "signature": "string"
    },
    "expiresAt": "2026-10-18T19:30:00Z",
    "phase": "string",
    "start": {
      "payload": "string",
      "signature": "string"
    },
    "transactionId": "id_8h2k4q"
  },
  "state": "string"
}
Schema
  • accountIdstring
  • actionsarray of stringrequired
  • approvalRequestobject
    • currentOwnerAccountIdstringrequired
    • expectedRevisionstringrequired
    • localGenerationstringrequired
    • namestringrequired
    • operationIdstringrequired
    • previousOwnerRolestringrequired
    • publicKeystringrequired
    • purposestringrequired
    • returnRegistrationIdstringrequired
    • serverIdstringrequired
  • approvalRequiredbooleanrequired
  • approvalUrlstring
  • claimCodestring
  • identityobjectrequired
    • localGenerationstringrequired
    • serverIdstringrequired
  • installationAcknowledgedbooleanrequired
  • operationobject
    • localGenerationstringrequired
    • operationIdstringrequired
    • revisionstringrequired
  • ownerContinuationobject
    • claimobject
      • payloadstringrequired
      • signaturestringrequired
    • expiresAtstringrequired
    • phasestringrequired
    • returnRegistrationobject
      • idstringrequired
      • originstringrequired
    • startobject
      • payloadstringrequired
      • signaturestringrequired
    • transactionIdstringrequired
  • setupContinuationobject
    • claimobject
      • payloadstringrequired
      • signaturestringrequired
    • expiresAtstringrequired
    • phasestringrequired
    • startobject
      • payloadstringrequired
      • signaturestringrequired
    • transactionIdstringrequired
  • statestringrequired

defaultRequest refused or unavailableapplication/json

Example
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
Schema
  • errorobjectrequired
    • codestringrequired
    • messagestringrequired

Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busywriter_capacity

Example request

curl -X POST "http://127.0.0.1:32500/v1/networking/claim/continue" \
  -H "Authorization: Bearer $PORTICO_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"approvalEnvelope":"string","expected":{"localGeneration":"string","operationId":"id_8h2k4q","revision":"r12"}}'
POST/v1/networking/claim/endpointRun network claim endpointsession
Audience
Clients · Native API
Authorization
Session only; API keys and personal access tokens are refused
OpenAPI operation ID
post_networking_claim_endpoint
Max body
64 KiB

Request body application/json · required

Example
{
  "baseUrl": "https://example.com/…",
  "expected": {
    "localGeneration": "string",
    "operationId": "id_8h2k4q",
    "revision": "r12"
  }
}
Schema
  • baseUrlstringrequired
  • expectedobjectrequired
    • localGenerationstringrequired
    • operationIdstringrequired
    • revisionstringrequired

Responses

200Successapplication/json

Example
{
  "baseUrl": "https://example.com/…",
  "verifiedAt": "2026-10-18T19:30:00Z"
}
Schema
  • baseUrlstringrequired
  • verifiedAtstring (date-time)required

defaultRequest refused or unavailableapplication/json

Example
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
Schema
  • errorobjectrequired
    • codestringrequired
    • messagestringrequired

Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busywriter_capacity

Example request

curl -X POST "http://127.0.0.1:32500/v1/networking/claim/endpoint" \
  -H "Authorization: Bearer $PORTICO_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"baseUrl":"https://example.com/…","expected":{"localGeneration":"string","operationId":"id_8h2k4q","revision":"r12"}}'
POST/v1/networking/claim/prepareRun network claim preparesession
Audience
Clients · Native API
Authorization
Session only; API keys and personal access tokens are refused
OpenAPI operation ID
post_networking_claim_prepare
Max body
64 KiB

Request body application/json · required

Example
{
  "accountId": "id_8h2k4q",
  "expected": {
    "localGeneration": "string",
    "serverId": "id_8h2k4q"
  },
  "previousOwnerRole": "admin",
  "purpose": "setup",
  "returnRegistrationId": "id_8h2k4q"
}
Schema
  • accountIdstringlength 0–128pattern ^[A-Za-z0-9_-]*$
  • expectedobjectrequired
    • localGenerationstringrequiredpattern ^(0|[1-9][0-9]*)$
    • serverIdstringrequiredlength 1–128pattern ^[A-Za-z0-9_-]+$
  • previousOwnerRolestringone of "admin", "member", "remove"
  • purposestringone of "setup", "switch", "change-owner"
  • returnRegistrationIdstringlength 0–128pattern ^[A-Za-z0-9_-]*$

Responses

200Successapplication/json

Example
{
  "accountId": "id_8h2k4q",
  "actions": [
    "string"
  ],
  "approvalRequest": {
    "currentOwnerAccountId": "id_8h2k4q",
    "expectedRevision": "r12",
    "localGeneration": "string",
    "name": "Fargo",
    "operationId": "id_8h2k4q",
    "previousOwnerRole": "string",
    "publicKey": "string",
    "purpose": "string",
    "returnRegistrationId": "id_8h2k4q",
    "serverId": "id_8h2k4q"
  },
  "approvalRequired": true,
  "approvalUrl": "https://example.com/…",
  "claimCode": "string",
  "identity": {
    "localGeneration": "string",
    "serverId": "id_8h2k4q"
  },
  "installationAcknowledged": true,
  "operation": {
    "localGeneration": "string",
    "operationId": "id_8h2k4q",
    "revision": "r12"
  },
  "ownerContinuation": {
    "claim": {
      "payload": "string",
      "signature": "string"
    },
    "expiresAt": "2026-10-18T19:30:00Z",
    "phase": "string",
    "returnRegistration": {
      "id": "id_8h2k4q",
      "origin": "string"
    },
    "start": {
      "payload": "string",
      "signature": "string"
    },
    "transactionId": "id_8h2k4q"
  },
  "setupContinuation": {
    "claim": {
      "payload": "string",
      "signature": "string"
    },
    "expiresAt": "2026-10-18T19:30:00Z",
    "phase": "string",
    "start": {
      "payload": "string",
      "signature": "string"
    },
    "transactionId": "id_8h2k4q"
  },
  "state": "string"
}
Schema
  • accountIdstring
  • actionsarray of stringrequired
  • approvalRequestobject
    • currentOwnerAccountIdstringrequired
    • expectedRevisionstringrequired
    • localGenerationstringrequired
    • namestringrequired
    • operationIdstringrequired
    • previousOwnerRolestringrequired
    • publicKeystringrequired
    • purposestringrequired
    • returnRegistrationIdstringrequired
    • serverIdstringrequired
  • approvalRequiredbooleanrequired
  • approvalUrlstring
  • claimCodestring
  • identityobjectrequired
    • localGenerationstringrequired
    • serverIdstringrequired
  • installationAcknowledgedbooleanrequired
  • operationobject
    • localGenerationstringrequired
    • operationIdstringrequired
    • revisionstringrequired
  • ownerContinuationobject
    • claimobject
      • payloadstringrequired
      • signaturestringrequired
    • expiresAtstringrequired
    • phasestringrequired
    • returnRegistrationobject
      • idstringrequired
      • originstringrequired
    • startobject
      • payloadstringrequired
      • signaturestringrequired
    • transactionIdstringrequired
  • setupContinuationobject
    • claimobject
      • payloadstringrequired
      • signaturestringrequired
    • expiresAtstringrequired
    • phasestringrequired
    • startobject
      • payloadstringrequired
      • signaturestringrequired
    • transactionIdstringrequired
  • statestringrequired

defaultRequest refused or unavailableapplication/json

Example
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
Schema
  • errorobjectrequired
    • codestringrequired
    • messagestringrequired

Error codesinvalid_requestunauthorizednot_permittednot_foundclaim_move_requiredinternaldatabase_busywriter_capacity

Example request

curl -X POST "http://127.0.0.1:32500/v1/networking/claim/prepare" \
  -H "Authorization: Bearer $PORTICO_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "accountId": "id_8h2k4q",
  "expected": {
    "localGeneration": "string",
    "serverId": "id_8h2k4q"
  },
  "previousOwnerRole": "admin",
  "purpose": "setup",
  "returnRegistrationId": "id_8h2k4q"
}'
POST/v1/networking/claim/web-approvalRun network claim web approvalsession
Audience
Clients · Native API
Authorization
Session only; API keys and personal access tokens are refused
OpenAPI operation ID
post_networking_claim_web_approval
Max body
64 KiB

Parameters

NameInTypeDescription
X-Portico-Installation-Idheaderstring

Request body application/json · required

Example
{
  "approvalEnvelope": "string",
  "expected": {
    "localGeneration": "string",
    "operationId": "id_8h2k4q",
    "revision": "r12"
  },
  "ownerStart": {
    "codeChallenge": "string",
    "installationId": "id_8h2k4q",
    "state": "string"
  }
}
Schema
  • approvalEnvelopestring
  • expectedobjectrequired
    • localGenerationstringrequired
    • operationIdstringrequired
    • revisionstringrequired
  • ownerStartobject
    • codeChallengestringrequiredlength 43–43pattern ^[A-Za-z0-9_-]{42}[AEIMQUYcgkosw048]$
    • installationIdstringrequiredlength 32–128pattern ^[A-Za-z0-9_-]+$
    • statestringrequiredlength 43–43pattern ^[A-Za-z0-9_-]{42}[AEIMQUYcgkosw048]$

Responses

200Successapplication/json

Example
{
  "accountId": "id_8h2k4q",
  "actions": [
    "string"
  ],
  "approvalRequest": {
    "currentOwnerAccountId": "id_8h2k4q",
    "expectedRevision": "r12",
    "localGeneration": "string",
    "name": "Fargo",
    "operationId": "id_8h2k4q",
    "previousOwnerRole": "string",
    "publicKey": "string",
    "purpose": "string",
    "returnRegistrationId": "id_8h2k4q",
    "serverId": "id_8h2k4q"
  },
  "approvalRequired": true,
  "approvalUrl": "https://example.com/…",
  "claimCode": "string",
  "identity": {
    "localGeneration": "string",
    "serverId": "id_8h2k4q"
  },
  "installationAcknowledged": true,
  "operation": {
    "localGeneration": "string",
    "operationId": "id_8h2k4q",
    "revision": "r12"
  },
  "ownerContinuation": {
    "claim": {
      "payload": "string",
      "signature": "string"
    },
    "expiresAt": "2026-10-18T19:30:00Z",
    "phase": "string",
    "returnRegistration": {
      "id": "id_8h2k4q",
      "origin": "string"
    },
    "start": {
      "payload": "string",
      "signature": "string"
    },
    "transactionId": "id_8h2k4q"
  },
  "setupContinuation": {
    "claim": {
      "payload": "string",
      "signature": "string"
    },
    "expiresAt": "2026-10-18T19:30:00Z",
    "phase": "string",
    "start": {
      "payload": "string",
      "signature": "string"
    },
    "transactionId": "id_8h2k4q"
  },
  "state": "string"
}
Schema
  • accountIdstring
  • actionsarray of stringrequired
  • approvalRequestobject
    • currentOwnerAccountIdstringrequired
    • expectedRevisionstringrequired
    • localGenerationstringrequired
    • namestringrequired
    • operationIdstringrequired
    • previousOwnerRolestringrequired
    • publicKeystringrequired
    • purposestringrequired
    • returnRegistrationIdstringrequired
    • serverIdstringrequired
  • approvalRequiredbooleanrequired
  • approvalUrlstring
  • claimCodestring
  • identityobjectrequired
    • localGenerationstringrequired
    • serverIdstringrequired
  • installationAcknowledgedbooleanrequired
  • operationobject
    • localGenerationstringrequired
    • operationIdstringrequired
    • revisionstringrequired
  • ownerContinuationobject
    • claimobject
      • payloadstringrequired
      • signaturestringrequired
    • expiresAtstringrequired
    • phasestringrequired
    • returnRegistrationobject
      • idstringrequired
      • originstringrequired
    • startobject
      • payloadstringrequired
      • signaturestringrequired
    • transactionIdstringrequired
  • setupContinuationobject
    • claimobject
      • payloadstringrequired
      • signaturestringrequired
    • expiresAtstringrequired
    • phasestringrequired
    • startobject
      • payloadstringrequired
      • signaturestringrequired
    • transactionIdstringrequired
  • statestringrequired

defaultRequest refused or unavailableapplication/json

Example
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
Schema
  • errorobjectrequired
    • codestringrequired
    • messagestringrequired

Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busywriter_capacity

Example request

curl -X POST "http://127.0.0.1:32500/v1/networking/claim/web-approval" \
  -H "Authorization: Bearer $PORTICO_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "approvalEnvelope": "string",
  "expected": {
    "localGeneration": "string",
    "operationId": "id_8h2k4q",
    "revision": "r12"
  },
  "ownerStart": {
    "codeChallenge": "string",
    "installationId": "id_8h2k4q",
    "state": "string"
  }
}'
GET/v1/networking/connectionRead the current connection and advertised addressesopen
Audience
Clients · Native API
Authorization
No credential needed
OpenAPI operation ID
get_connection

Responses

200Successapplication/json

Example
{
  "accessUrls": [
    "https://example.com/…"
  ],
  "clientAddress": "string",
  "lanNetworks": [
    "string"
  ],
  "plainHttpOutsideHome": true,
  "remote": true,
  "secure": true,
  "secureConnections": "string"
}
Schema
  • accessUrlsarray of stringrequired
  • clientAddressstringrequired
  • lanNetworksarray of stringrequired
  • plainHttpOutsideHomebooleanrequired
  • remotebooleanrequired
  • securebooleanrequired
  • secureConnectionsstringrequired

defaultRequest refused or unavailableapplication/json

Example
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
Schema
  • errorobjectrequired
    • codestringrequired
    • messagestringrequired

Error codesinternaldatabase_busy

Example request

curl -X GET "http://127.0.0.1:32500/v1/networking/connection"
POST/v1/networking/endpoint-proofRun network endpoint proofsession
Audience
Clients · Native API
Authorization
No credential needed
OpenAPI operation ID
post_networking_endpoint_proof
Max body
64 KiB

Request body application/json · required

Example
{
  "accountId": "id_8h2k4q",
  "baseUrl": "https://example.com/…",
  "claimGeneration": "string",
  "credentialGeneration": "string",
  "expiresAt": "2026-10-18T19:30:00Z",
  "kind": "string",
  "nonce": "string",
  "operationId": "id_8h2k4q",
  "registrationId": "id_8h2k4q",
  "serverId": "id_8h2k4q"
}
Schema
  • accountIdstringrequired
  • baseUrlstringrequired
  • claimGenerationstringrequired
  • credentialGenerationstringrequired
  • expiresAtstringrequired
  • kindstringrequired
  • noncestringrequired
  • operationIdstringrequired
  • registrationIdstringrequired
  • serverIdstringrequired

Responses

200Successapplication/json

Example
{
  "payload": "string",
  "signature": "string"
}
Schema
  • payloadstringrequired
  • signaturestringrequired

defaultRequest refused or unavailableapplication/json

Example
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
Schema
  • errorobjectrequired
    • codestringrequired
    • messagestringrequired

Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busywriter_capacity

Example request

curl -X POST "http://127.0.0.1:32500/v1/networking/endpoint-proof" \
  -H "Content-Type: application/json" \
  -d '{
  "accountId": "id_8h2k4q",
  "baseUrl": "https://example.com/…",
  "claimGeneration": "string",
  "credentialGeneration": "string",
  "expiresAt": "2026-10-18T19:30:00Z",
  "kind": "string",
  "nonce": "string",
  "operationId": "id_8h2k4q",
  "registrationId": "id_8h2k4q",
  "serverId": "id_8h2k4q"
}'
POST/v1/networking/identity-proofProve this server's pinned identity on the requested originsession
Audience
Clients · Native API
Authorization
No credential needed
OpenAPI operation ID
prove_network_identity
Max body
4 KiB

Request body application/json · required

Example
{
  "baseUrl": "https://example.com/…",
  "nonce": "string"
}
Schema
  • baseUrlstringrequired
  • noncestringrequired

Responses

200Successapplication/json

Example
{
  "payload": "string",
  "signature": "string"
}
Schema
  • payloadstringrequired
  • signaturestringrequired

defaultRequest refused or unavailableapplication/json

Example
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
Schema
  • errorobjectrequired
    • codestringrequired
    • messagestringrequired

Error codesinvalid_requestrate_limitedinternaldatabase_busywriter_capacity

Example request

curl -X POST "http://127.0.0.1:32500/v1/networking/identity-proof" \
  -H "Content-Type: application/json" \
  -d '{"baseUrl":"https://example.com/…","nonce":"string"}'
GET/v1/networking/remoteRead network remoteadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
get_networking_remote

Responses

200Successapplication/json

Example
{
  "authorityId": "id_8h2k4q",
  "candidates": [
    {
      "address": "string",
      "baseUrl": "https://example.com/…",
      "class": "string",
      "insecure": true,
      "port": 0,
      "state": "string",
      "verifiedAt": "2026-10-18T19:30:00Z"
    }
  ],
  "checkedAt": "2026-10-18T19:30:00Z",
  "config": {
    "enabled": true,
    "gateway": "string",
    "ipv6Open": true,
    "lanSharing": true,
    "mapping": true,
    "natpmp": true,
    "pcp": true,
    "publicPort": 0,
    "revision": "r12",
    "upnp": true
  },
  "errorCode": "string",
  "generation": "string",
  "ipv6": "string",
  "mappings": [
    {
      "errorCode": "string",
      "expiresAt": "2026-10-18T19:30:00Z",
      "externalPort": 0,
      "protocol": "string",
      "state": "string"
    }
  ],
  "nextAttempt": "2026-10-18T19:30:00Z",
  "state": "string",
  "topology": {
    "bind": "string",
    "errorCode": "string",
    "gateway": "string",
    "incomplete": true,
    "lan": [
      "string"
    ],
    "localAddress": "string",
    "public": [
      "string"
    ]
  },
  "warnings": [
    {
      "baseUrl": "https://example.com/…",
      "code": "string",
      "message": "string",
      "port": 0
    }
  ]
}
Schema
  • authorityIdstringrequired
  • candidatesarray of objectrequired
    • addressstring
    • baseUrlstringrequired
    • classstringrequired
    • insecurebooleanrequired
    • portinteger
    • statestringrequired
    • verifiedAtstring (date-time)
  • checkedAtstring (date-time)
  • configobjectrequired
    • enabledbooleanrequired
    • gatewaystringrequired
    • ipv6Openbooleanrequired
    • lanSharingbooleanrequired
    • mappingbooleanrequired
    • natpmpbooleanrequired
    • pcpbooleanrequired
    • publicPortintegerrequired
    • revisionstringrequired
    • upnpbooleanrequired
  • errorCodestring
  • generationstringrequired
  • ipv6string
  • mappingsarray of objectrequired
    • errorCodestring
    • expiresAtstring (date-time)required
    • externalPortintegerrequired
    • protocolstringrequired
    • statestringrequired
  • nextAttemptstring (date-time)
  • statestringrequired
  • topologyobjectrequired
    • bindstringrequired
    • errorCodestring
    • gatewaystring
    • incompleteboolean
    • lanarray of stringrequired
    • localAddressstring
    • publicarray of stringrequired
  • warningsarray of objectrequired
    • baseUrlstring
    • codestringrequired
    • messagestringrequired
    • portintegerrequired

defaultRequest refused or unavailableapplication/json

Example
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
Schema
  • errorobjectrequired
    • codestringrequired
    • messagestringrequired

Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busy

Example request

curl -X GET "http://127.0.0.1:32500/v1/networking/remote" \
  -H "Authorization: Bearer $PORTICO_API_KEY"
POST/v1/networking/remote/checkRun network remote checkadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
post_networking_remote_check

Responses

200Successapplication/json

Example
{
  "authorityId": "id_8h2k4q",
  "candidates": [
    {
      "address": "string",
      "baseUrl": "https://example.com/…",
      "class": "string",
      "insecure": true,
      "port": 0,
      "state": "string",
      "verifiedAt": "2026-10-18T19:30:00Z"
    }
  ],
  "checkedAt": "2026-10-18T19:30:00Z",
  "config": {
    "enabled": true,
    "gateway": "string",
    "ipv6Open": true,
    "lanSharing": true,
    "mapping": true,
    "natpmp": true,
    "pcp": true,
    "publicPort": 0,
    "revision": "r12",
    "upnp": true
  },
  "errorCode": "string",
  "generation": "string",
  "ipv6": "string",
  "mappings": [
    {
      "errorCode": "string",
      "expiresAt": "2026-10-18T19:30:00Z",
      "externalPort": 0,
      "protocol": "string",
      "state": "string"
    }
  ],
  "nextAttempt": "2026-10-18T19:30:00Z",
  "state": "string",
  "topology": {
    "bind": "string",
    "errorCode": "string",
    "gateway": "string",
    "incomplete": true,
    "lan": [
      "string"
    ],
    "localAddress": "string",
    "public": [
      "string"
    ]
  },
  "warnings": [
    {
      "baseUrl": "https://example.com/…",
      "code": "string",
      "message": "string",
      "port": 0
    }
  ]
}
Schema
  • authorityIdstringrequired
  • candidatesarray of objectrequired
    • addressstring
    • baseUrlstringrequired
    • classstringrequired
    • insecurebooleanrequired
    • portinteger
    • statestringrequired
    • verifiedAtstring (date-time)
  • checkedAtstring (date-time)
  • configobjectrequired
    • enabledbooleanrequired
    • gatewaystringrequired
    • ipv6Openbooleanrequired
    • lanSharingbooleanrequired
    • mappingbooleanrequired
    • natpmpbooleanrequired
    • pcpbooleanrequired
    • publicPortintegerrequired
    • revisionstringrequired
    • upnpbooleanrequired
  • errorCodestring
  • generationstringrequired
  • ipv6string
  • mappingsarray of objectrequired
    • errorCodestring
    • expiresAtstring (date-time)required
    • externalPortintegerrequired
    • protocolstringrequired
    • statestringrequired
  • nextAttemptstring (date-time)
  • statestringrequired
  • topologyobjectrequired
    • bindstringrequired
    • errorCodestring
    • gatewaystring
    • incompleteboolean
    • lanarray of stringrequired
    • localAddressstring
    • publicarray of stringrequired
  • warningsarray of objectrequired
    • baseUrlstring
    • codestringrequired
    • messagestringrequired
    • portintegerrequired

defaultRequest refused or unavailableapplication/json

Example
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
Schema
  • errorobjectrequired
    • codestringrequired
    • messagestringrequired

Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busywriter_capacity

Example request

curl -X POST "http://127.0.0.1:32500/v1/networking/remote/check" \
  -H "Authorization: Bearer $PORTICO_API_KEY"
POST/v1/networking/remote/configRun network remote configadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
post_networking_remote_config
Max body
64 KiB

Parameters

NameInTypeDescription
Idempotency-Keyheaderstring
Portico-Mutation-Rootheaderstring

Request body application/json · required

Example
{
  "authorityId": "id_8h2k4q",
  "config": {
    "enabled": true,
    "gateway": "string",
    "ipv6Open": true,
    "lanSharing": true,
    "mapping": true,
    "natpmp": true,
    "pcp": true,
    "publicPort": 0,
    "revision": "r12",
    "upnp": true
  }
}
Schema
  • authorityIdstringrequired
  • configobjectrequired
    • enabledbooleanrequired
    • gatewaystringrequired
    • ipv6Openbooleanrequired
    • lanSharingbooleanrequired
    • mappingbooleanrequired
    • natpmpbooleanrequired
    • pcpbooleanrequired
    • publicPortintegerrequired
    • revisionstringrequired
    • upnpbooleanrequired

Responses

200Successapplication/json

Example
{
  "authorityId": "id_8h2k4q",
  "candidates": [
    {
      "address": "string",
      "baseUrl": "https://example.com/…",
      "class": "string",
      "insecure": true,
      "port": 0,
      "state": "string",
      "verifiedAt": "2026-10-18T19:30:00Z"
    }
  ],
  "checkedAt": "2026-10-18T19:30:00Z",
  "config": {
    "enabled": true,
    "gateway": "string",
    "ipv6Open": true,
    "lanSharing": true,
    "mapping": true,
    "natpmp": true,
    "pcp": true,
    "publicPort": 0,
    "revision": "r12",
    "upnp": true
  },
  "errorCode": "string",
  "generation": "string",
  "ipv6": "string",
  "mappings": [
    {
      "errorCode": "string",
      "expiresAt": "2026-10-18T19:30:00Z",
      "externalPort": 0,
      "protocol": "string",
      "state": "string"
    }
  ],
  "nextAttempt": "2026-10-18T19:30:00Z",
  "state": "string",
  "topology": {
    "bind": "string",
    "errorCode": "string",
    "gateway": "string",
    "incomplete": true,
    "lan": [
      "string"
    ],
    "localAddress": "string",
    "public": [
      "string"
    ]
  },
  "warnings": [
    {
      "baseUrl": "https://example.com/…",
      "code": "string",
      "message": "string",
      "port": 0
    }
  ]
}
Schema
  • authorityIdstringrequired
  • candidatesarray of objectrequired
    • addressstring
    • baseUrlstringrequired
    • classstringrequired
    • insecurebooleanrequired
    • portinteger
    • statestringrequired
    • verifiedAtstring (date-time)
  • checkedAtstring (date-time)
  • configobjectrequired
    • enabledbooleanrequired
    • gatewaystringrequired
    • ipv6Openbooleanrequired
    • lanSharingbooleanrequired
    • mappingbooleanrequired
    • natpmpbooleanrequired
    • pcpbooleanrequired
    • publicPortintegerrequired
    • revisionstringrequired
    • upnpbooleanrequired
  • errorCodestring
  • generationstringrequired
  • ipv6string
  • mappingsarray of objectrequired
    • errorCodestring
    • expiresAtstring (date-time)required
    • externalPortintegerrequired
    • protocolstringrequired
    • statestringrequired
  • nextAttemptstring (date-time)
  • statestringrequired
  • topologyobjectrequired
    • bindstringrequired
    • errorCodestring
    • gatewaystring
    • incompleteboolean
    • lanarray of stringrequired
    • localAddressstring
    • publicarray of stringrequired
  • warningsarray of objectrequired
    • baseUrlstring
    • codestringrequired
    • messagestringrequired
    • portintegerrequired

defaultRequest refused or unavailableapplication/json

Example
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
Schema
  • errorobjectrequired
    • codestringrequired
    • messagestringrequired

Error codesinvalid_requestunauthorizednot_permittednot_foundinternalidempotency_conflictreceipt_expiredinvalid_mutation_keydatabase_busywriter_capacity

Example request

curl -X POST "http://127.0.0.1:32500/v1/networking/remote/config" \
  -H "Authorization: Bearer $PORTICO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "authorityId": "id_8h2k4q",
  "config": {
    "enabled": true,
    "gateway": "string",
    "ipv6Open": true,
    "lanSharing": true,
    "mapping": true,
    "natpmp": true,
    "pcp": true,
    "publicPort": 0,
    "revision": "r12",
    "upnp": true
  }
}'