Admin Access

Generated admin access operations.

GET/v1/admin/access/devicesList members' devicesadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
get_admin_access_devices

Parameters

NameInTypeDescription
cursorquerystring
limitqueryinteger | ""1–100
accountquerystring
sortquerystring

Responses

200Successapplication/json

Example
{
  "items": [
    {
      "accountId": "id_8h2k4q",
      "app": "string",
      "appVersion": "string",
      "firstSeenAt": "2026-10-18T19:30:00Z",
      "id": "id_8h2k4q",
      "lastNetwork": "string",
      "lastSeenAt": "2026-10-18T19:30:00Z",
      "liveState": "string",
      "name": "Fargo",
      "platform": "string",
      "profileId": "id_8h2k4q",
      "profileName": "Fargo",
      "revision": 0,
      "sessionCount": 0,
      "username": "Fargo"
    }
  ],
  "limit": 0,
  "nextCursor": "eyJvIjoyMH0"
}
Schema
  • itemsarray of objectrequired
    • accountIdstringrequired
    • appstringrequired
    • appVersionstringrequired
    • firstSeenAtstringrequired
    • idstringrequired
    • lastNetworkstringrequired
    • lastSeenAtstringrequired
    • liveStatestringrequired
    • namestringrequired
    • platformstringrequired
    • profileIdstring
    • profileNamestring
    • revisionintegerrequired
    • sessionCountinteger
    • usernamestringrequired
  • limitintegerrequired
  • nextCursorstring

defaultRequest refused or unavailableapplication/json

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

Error codesunauthorizednot_permittedinvalid_requestinternaldatabase_busy

Example request

curl -X GET "http://127.0.0.1:32500/v1/admin/access/devices" \
  -H "Authorization: Bearer $PORTICO_API_KEY"
GET/v1/admin/access/devices/{id}Read one member's device as the devices list shows itadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
get_admin_access_device

Parameters

NameInTypeDescription
idrequiredpathstring

Responses

200Successapplication/json

Example
{
  "accountId": "id_8h2k4q",
  "app": "string",
  "appVersion": "string",
  "firstSeenAt": "2026-10-18T19:30:00Z",
  "id": "id_8h2k4q",
  "lastNetwork": "string",
  "lastSeenAt": "2026-10-18T19:30:00Z",
  "liveState": "string",
  "name": "Fargo",
  "platform": "string",
  "profileId": "id_8h2k4q",
  "profileName": "Fargo",
  "revision": 0,
  "sessionCount": 0,
  "username": "Fargo"
}
Schema
  • accountIdstringrequired
  • appstringrequired
  • appVersionstringrequired
  • firstSeenAtstringrequired
  • idstringrequired
  • lastNetworkstringrequired
  • lastSeenAtstringrequired
  • liveStatestringrequired
  • namestringrequired
  • platformstringrequired
  • profileIdstring
  • profileNamestring
  • revisionintegerrequired
  • sessionCountinteger
  • usernamestringrequired

defaultRequest refused or unavailableapplication/json

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

Error codesunauthorizednot_permittedinvalid_requestnot_foundinternaldatabase_busy

Example request

curl -X GET "http://127.0.0.1:32500/v1/admin/access/devices/{id}" \
  -H "Authorization: Bearer $PORTICO_API_KEY"
GET/v1/admin/access/eventsRead the latest eligible maintenance events for an administratoradmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
get_admin_access_events

Responses

200Successapplication/json

Example
{
  "items": [
    {
      "at": "2026-10-18T19:30:00Z",
      "code": "alert.acknowledge"
    }
  ],
  "limit": 8
}
Schema
  • itemsarray of objectrequired0–8 items
    • atstringrequired

      RFC 3339 UTC instant; empty when absent.

    • codestringrequiredone of "alert.acknowledge", "downloads.settings", "job.cancel", "job.pause", "job.resume", "job.retry", "optimization.cancel", "optimization.delete", "optimization.request", "optimization.retry", "schedule.apply", "settings.apply"
  • limit8required

defaultRequest refused or unavailableapplication/json

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

Error codesunauthorizednot_permittedinternaltimeoutdatabase_busy

Example request

curl -X GET "http://127.0.0.1:32500/v1/admin/access/events" \
  -H "Authorization: Bearer $PORTICO_API_KEY"
GET/v1/admin/access/invitationsRead server access invitationsadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
get_admin_access_invitations

Parameters

NameInTypeDescription
cursorquerystring
limitqueryinteger | ""1–100
statequerystring
qquerystring
sortquerystring
directionquerystring

Responses

200Successapplication/json

Example
{
  "items": [
    {
      "acceptedAt": "2026-10-18T19:30:00Z",
      "access": {
        "accessTokens": true,
        "allowRemote": true,
        "maxContentRating": "string",
        "maxStreams": 1800000,
        "maxStreamsMode": "inherit"
      },
      "accountId": "id_8h2k4q",
      "allowedLibraries": [
        "string"
      ],
      "code": "string",
      "createdAt": "2026-10-18T19:30:00Z",
      "expiresAt": "2026-10-18T19:30:00Z",
      "id": "id_8h2k4q",
      "notes": "string",
      "porticoUsername": "Fargo",
      "revision": 0,
      "role": "string",
      "serverId": "id_8h2k4q",
      "state": "string"
    }
  ],
  "limit": 0,
  "matchedCount": 0,
  "nextCursor": "eyJvIjoyMH0",
  "totalCount": 0
}
Schema
  • itemsarray of objectrequired
    • acceptedAtstring
    • accessobjectrequired
      • accessTokensbooleanrequired
      • allowRemotebooleanrequired
      • maxContentRatingstringrequired
      • maxStreamsintegerrequired
      • maxStreamsModestringrequiredone of "inherit", "unlimited", "limit"
    • accountIdstring
    • allowedLibrariesarray of stringrequired
    • codestring
    • createdAtstringrequired
    • expiresAtstringrequired
    • idstringrequired
    • notesstringlength 0–500
    • porticoUsernamestring
    • revisionintegerrequired
    • rolestringrequired
    • serverIdstring
    • statestringrequired
  • limitintegerrequired
  • matchedCountintegerrequired
  • nextCursorstring
  • totalCountintegerrequired

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/admin/access/invitations" \
  -H "Authorization: Bearer $PORTICO_API_KEY"
POST/v1/admin/access/invitationsRun server access invitationsadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
post_admin_access_invitations
Max body
64 KiB

Request body application/json · required

Example
{
  "access": {
    "accessTokens": true,
    "allowRemote": true,
    "maxContentRating": "string",
    "maxStreams": 1800000,
    "maxStreamsMode": "inherit"
  },
  "allowedLibraries": [
    "string"
  ],
  "expiresInHours": 0,
  "notes": "string",
  "operationId": "id_8h2k4q",
  "porticoUsername": "Fargo",
  "role": "string"
}
Schema
  • accessobject
    • accessTokensbooleanrequired
    • allowRemotebooleanrequired
    • maxContentRatingstringrequired
    • maxStreamsintegerrequired
    • maxStreamsModestringrequiredone of "inherit", "unlimited", "limit"
  • allowedLibrariesarray of stringrequired
  • expiresInHoursintegerrequired
  • notesstringlength 0–500
  • operationIdstringrequired
  • porticoUsernamestring
  • rolestringrequired

Responses

201Successapplication/json

Example
{
  "acceptedAt": "2026-10-18T19:30:00Z",
  "access": {
    "accessTokens": true,
    "allowRemote": true,
    "maxContentRating": "string",
    "maxStreams": 1800000,
    "maxStreamsMode": "inherit"
  },
  "accountId": "id_8h2k4q",
  "allowedLibraries": [
    "string"
  ],
  "code": "string",
  "createdAt": "2026-10-18T19:30:00Z",
  "expiresAt": "2026-10-18T19:30:00Z",
  "id": "id_8h2k4q",
  "notes": "string",
  "porticoUsername": "Fargo",
  "revision": 0,
  "role": "string",
  "serverId": "id_8h2k4q",
  "state": "string"
}
Schema
  • acceptedAtstring
  • accessobjectrequired
    • accessTokensbooleanrequired
    • allowRemotebooleanrequired
    • maxContentRatingstringrequired
    • maxStreamsintegerrequired
    • maxStreamsModestringrequiredone of "inherit", "unlimited", "limit"
  • accountIdstring
  • allowedLibrariesarray of stringrequired
  • codestring
  • createdAtstringrequired
  • expiresAtstringrequired
  • idstringrequired
  • notesstringlength 0–500
  • porticoUsernamestring
  • revisionintegerrequired
  • rolestringrequired
  • serverIdstring
  • 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/admin/access/invitations" \
  -H "Authorization: Bearer $PORTICO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "access": {
    "accessTokens": true,
    "allowRemote": true,
    "maxContentRating": "string",
    "maxStreams": 1800000,
    "maxStreamsMode": "inherit"
  },
  "allowedLibraries": [
    "string"
  ],
  "expiresInHours": 0,
  "notes": "string",
  "operationId": "id_8h2k4q",
  "porticoUsername": "Fargo",
  "role": "string"
}'
GET/v1/admin/access/invitations/{id}Read one invitation as the invitations list shows itadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
get_admin_access_invitation

Parameters

NameInTypeDescription
idrequiredpathstring

Responses

200Successapplication/json

Example
{
  "acceptedAt": "2026-10-18T19:30:00Z",
  "access": {
    "accessTokens": true,
    "allowRemote": true,
    "maxContentRating": "string",
    "maxStreams": 1800000,
    "maxStreamsMode": "inherit"
  },
  "accountId": "id_8h2k4q",
  "allowedLibraries": [
    "string"
  ],
  "code": "string",
  "createdAt": "2026-10-18T19:30:00Z",
  "expiresAt": "2026-10-18T19:30:00Z",
  "id": "id_8h2k4q",
  "notes": "string",
  "porticoUsername": "Fargo",
  "revision": 0,
  "role": "string",
  "serverId": "id_8h2k4q",
  "state": "string"
}
Schema
  • acceptedAtstring
  • accessobjectrequired
    • accessTokensbooleanrequired
    • allowRemotebooleanrequired
    • maxContentRatingstringrequired
    • maxStreamsintegerrequired
    • maxStreamsModestringrequiredone of "inherit", "unlimited", "limit"
  • accountIdstring
  • allowedLibrariesarray of stringrequired
  • codestring
  • createdAtstringrequired
  • expiresAtstringrequired
  • idstringrequired
  • notesstringlength 0–500
  • porticoUsernamestring
  • revisionintegerrequired
  • rolestringrequired
  • serverIdstring
  • 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/admin/access/invitations/{id}" \
  -H "Authorization: Bearer $PORTICO_API_KEY"
PUT/v1/admin/access/invitations/{id}Manage invitation or private person notesadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
put_admin_access_invitation
Max body
8 KiB

Parameters

NameInTypeDescription
idrequiredpathstring

Request body application/json · required

Example
{
  "access": {
    "accessTokens": true,
    "allowRemote": true,
    "maxContentRating": "string",
    "maxStreams": 1800000,
    "maxStreamsMode": "inherit"
  },
  "allowedLibraries": [
    "string"
  ],
  "expectedRevision": 0,
  "expiresAt": "2026-10-18T19:30:00Z",
  "notes": "string",
  "operationId": "id_8h2k4q",
  "role": "string"
}
Schema
  • accessobject
    • accessTokensbooleanrequired
    • allowRemotebooleanrequired
    • maxContentRatingstringrequired
    • maxStreamsintegerrequired
    • maxStreamsModestringrequiredone of "inherit", "unlimited", "limit"
  • allowedLibrariesarray of stringrequired
  • expectedRevisionintegerrequired
  • expiresAtstringrequired
  • notesstringlength 0–500
  • operationIdstringrequired
  • rolestringrequired

Responses

200Successapplication/json

Example
{
  "acceptedAt": "2026-10-18T19:30:00Z",
  "access": {
    "accessTokens": true,
    "allowRemote": true,
    "maxContentRating": "string",
    "maxStreams": 1800000,
    "maxStreamsMode": "inherit"
  },
  "accountId": "id_8h2k4q",
  "allowedLibraries": [
    "string"
  ],
  "code": "string",
  "createdAt": "2026-10-18T19:30:00Z",
  "expiresAt": "2026-10-18T19:30:00Z",
  "id": "id_8h2k4q",
  "notes": "string",
  "porticoUsername": "Fargo",
  "revision": 0,
  "role": "string",
  "serverId": "id_8h2k4q",
  "state": "string"
}
Schema
  • acceptedAtstring
  • accessobjectrequired
    • accessTokensbooleanrequired
    • allowRemotebooleanrequired
    • maxContentRatingstringrequired
    • maxStreamsintegerrequired
    • maxStreamsModestringrequiredone of "inherit", "unlimited", "limit"
  • accountIdstring
  • allowedLibrariesarray of stringrequired
  • codestring
  • createdAtstringrequired
  • expiresAtstringrequired
  • idstringrequired
  • notesstringlength 0–500
  • porticoUsernamestring
  • revisionintegerrequired
  • rolestringrequired
  • serverIdstring
  • 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 PUT "http://127.0.0.1:32500/v1/admin/access/invitations/{id}" \
  -H "Authorization: Bearer $PORTICO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "access": {
    "accessTokens": true,
    "allowRemote": true,
    "maxContentRating": "string",
    "maxStreams": 1800000,
    "maxStreamsMode": "inherit"
  },
  "allowedLibraries": [
    "string"
  ],
  "expectedRevision": 0,
  "expiresAt": "2026-10-18T19:30:00Z",
  "notes": "string",
  "operationId": "id_8h2k4q",
  "role": "string"
}'
POST/v1/admin/access/invitations/{id}/linkManage invitation or private person notesadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
post_admin_access_invitation_link
Max body
8 KiB

Parameters

NameInTypeDescription
idrequiredpathstring

Request body application/json · required

Example
{
  "expectedRevision": 0
}
Schema
  • expectedRevisionintegerrequired

Responses

200Successapplication/json

Example
{
  "code": "string",
  "expiresAt": "2026-10-18T19:30:00Z",
  "serverId": "id_8h2k4q"
}
Schema
  • codestringrequired
  • expiresAtstringrequired
  • serverIdstring

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/admin/access/invitations/{id}/link" \
  -H "Authorization: Bearer $PORTICO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"expectedRevision":0}'
POST/v1/admin/access/invitations/{id}/revokeRun server access invitations revokeadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
post_admin_access_invitations_id_revoke
Max body
64 KiB

Parameters

NameInTypeDescription
idrequiredpathstring

Request body application/json · required

Example
{
  "expectedRevision": 0,
  "operationId": "id_8h2k4q"
}
Schema
  • expectedRevisionintegerrequired
  • operationIdstringrequired

Responses

200Successapplication/json

Example
{
  "acceptedAt": "2026-10-18T19:30:00Z",
  "access": {
    "accessTokens": true,
    "allowRemote": true,
    "maxContentRating": "string",
    "maxStreams": 1800000,
    "maxStreamsMode": "inherit"
  },
  "accountId": "id_8h2k4q",
  "allowedLibraries": [
    "string"
  ],
  "code": "string",
  "createdAt": "2026-10-18T19:30:00Z",
  "expiresAt": "2026-10-18T19:30:00Z",
  "id": "id_8h2k4q",
  "notes": "string",
  "porticoUsername": "Fargo",
  "revision": 0,
  "role": "string",
  "serverId": "id_8h2k4q",
  "state": "string"
}
Schema
  • acceptedAtstring
  • accessobjectrequired
    • accessTokensbooleanrequired
    • allowRemotebooleanrequired
    • maxContentRatingstringrequired
    • maxStreamsintegerrequired
    • maxStreamsModestringrequiredone of "inherit", "unlimited", "limit"
  • accountIdstring
  • allowedLibrariesarray of stringrequired
  • codestring
  • createdAtstringrequired
  • expiresAtstringrequired
  • idstringrequired
  • notesstringlength 0–500
  • porticoUsernamestring
  • revisionintegerrequired
  • rolestringrequired
  • serverIdstring
  • 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/admin/access/invitations/{id}/revoke" \
  -H "Authorization: Bearer $PORTICO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"expectedRevision":0,"operationId":"id_8h2k4q"}'
POST/v1/admin/access/invitations/{id}/short-codeIssue a one-time display short invitation codeadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
post_admin_access_invitation_short_code
Max body
4 KiB

Parameters

NameInTypeDescription
idrequiredpathstring

Request body application/json · required

Example
{
  "expectedRevision": 0,
  "operationId": "id_8h2k4q"
}
Schema
  • expectedRevisionintegerrequired
  • operationIdstringrequired

Responses

200Successapplication/json

Example
{
  "expiresAt": "2026-10-18T19:30:00Z",
  "serverId": "id_8h2k4q",
  "shortCode": "string"
}
Schema
  • expiresAtstringrequired
  • serverIdstringrequired
  • shortCodestring

defaultRequest refused or unavailableapplication/json

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

Error codesinvalid_requestunauthorizednot_permittednot_foundrevision_mismatchinvitation_not_foundidempotency_key_reusedinternaldatabase_busywriter_capacity

Example request

curl -X POST "http://127.0.0.1:32500/v1/admin/access/invitations/{id}/short-code" \
  -H "Authorization: Bearer $PORTICO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"expectedRevision":0,"operationId":"id_8h2k4q"}'
GET/v1/admin/access/membersRead server access membersadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
get_admin_access_members

Parameters

NameInTypeDescription
cursorquerystring
limitqueryinteger | ""1–100
qquerystring
rolequerystring
statusquerystring
sortquerystring
directionquerystring

Responses

200Successapplication/json

Example
{
  "items": [
    {
      "accountId": "id_8h2k4q",
      "allowedLibraries": [
        "string"
      ],
      "disabled": true,
      "effectiveMaxStreams": 1800000,
      "email": "sam@example.com",
      "hasMoveCode": true,
      "lastActiveAt": "2026-10-18T19:30:00Z",
      "libraryNames": [
        "Fargo"
      ],
      "limitsRevision": 0,
      "liveState": "string",
      "maxStreams": 1800000,
      "maxStreamsMode": "inherit",
      "profileCount": 0,
      "profileNames": [
        "Fargo"
      ],
      "revision": 0,
      "role": "string",
      "serverMaxStreams": 1800000,
      "status": "string",
      "username": "Fargo"
    }
  ],
  "limit": 0,
  "matchedCount": 0,
  "nextCursor": "eyJvIjoyMH0",
  "totalCount": 0
}
Schema
  • itemsarray of objectrequired
    • accountIdstringrequired
    • allowedLibrariesarray of stringrequired
    • disabledbooleanrequired
    • effectiveMaxStreamsinteger | any | nullrequired
    • emailstring
    • hasMoveCodebooleanrequired
    • lastActiveAtstring
    • libraryNamesarray of stringrequired
    • limitsRevisionintegerrequired
    • liveStatestringrequired
    • maxStreamsintegerrequired
    • maxStreamsModestringrequiredone of "inherit", "unlimited", "limit"
    • profileCountintegerrequired
    • profileNamesarray of stringrequired
    • revisionintegerrequired
    • rolestringrequired
    • serverMaxStreamsinteger | any | nullrequired
    • statusstringrequired
    • usernamestringrequired
  • limitintegerrequired
  • matchedCountintegerrequired
  • nextCursorstring
  • totalCountintegerrequired

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/admin/access/members" \
  -H "Authorization: Bearer $PORTICO_API_KEY"
GET/v1/admin/access/members/{id}Read one member as the members list shows itadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
get_admin_access_member

Parameters

NameInTypeDescription
idrequiredpathstring

Responses

200Successapplication/json

Example
{
  "accountId": "id_8h2k4q",
  "allowedLibraries": [
    "string"
  ],
  "disabled": true,
  "disabledAt": "2026-10-18T19:30:00Z",
  "disabledReason": "string",
  "displayName": "Fargo",
  "effectiveMaxStreams": 1800000,
  "email": "sam@example.com",
  "hostedAccountId": "id_8h2k4q",
  "joinedAt": "2026-10-18T19:30:00Z",
  "joinedVia": "string",
  "lastActiveAt": "2026-10-18T19:30:00Z",
  "limits": {
    "accessTokens": true,
    "allowRemote": true,
    "allowUnrated": true,
    "awayQuality": "server",
    "channelPolicy": {
      "channels": [
        "string"
      ],
      "mode": "string"
    },
    "conversion": "string",
    "maxContentRating": "string",
    "maxProfiles": 0,
    "maxStreams": 1800000,
    "maxStreamsMode": "inherit",
    "maximumAge": 0,
    "ratingSystem": "string",
    "remoteBitrateKbps": 0,
    "schedule": {
      "timezone": "2026-10-18T19:30:00Z",
      "windows": [
        {
          "days": [],
          "endMinute": 0,
          "startMinute": 0
        }
      ]
    },
    "tagPolicy": {
      "deniedLabels": [
        "string"
      ]
    }
  },
  "limitsRevision": 0,
  "liveState": "string",
  "notes": "string",
  "profileId": "id_8h2k4q",
  "profileNames": [
    "Fargo"
  ],
  "revision": 0,
  "role": "string",
  "serverMaxStreams": 1800000,
  "username": "Fargo"
}
Schema
  • accountIdstringrequired
  • allowedLibrariesarray of stringrequired
  • disabledbooleanrequired
  • disabledAtstring
  • disabledReasonstring
  • displayNamestringrequired
  • effectiveMaxStreamsinteger | any | nullrequired
  • emailstring
  • hostedAccountIdstring
  • joinedAtstring
  • joinedViastring
  • lastActiveAtstring
  • limitsobjectrequired
    • accessTokensbooleanrequired
    • allowRemotebooleanrequired
    • allowUnratedbooleanrequired
    • awayQualitystringone of "server", "2160p", "1080p-high", "1080p-low", "720p-high", "720p-low", "480p", "240p"
    • channelPolicyobjectrequired
      • channelsarray of stringrequired
      • modestringrequired
    • conversionstringrequired
    • maxContentRatingstringrequired
    • maxProfilesintegerrequired
    • maxStreamsintegerrequired
    • maxStreamsModestringrequiredone of "inherit", "unlimited", "limit"
    • maximumAgeintegerrequired
    • ratingSystemstringrequired
    • remoteBitrateKbpsintegerrequired
    • scheduleobjectrequired
      • timezonestringrequired
      • windowsarray of objectrequired
        • daysarray of integerrequired
        • endMinuteintegerrequired
        • startMinuteintegerrequired
    • tagPolicyobjectrequired
      • deniedLabelsarray of stringrequired
  • limitsRevisionintegerrequired
  • liveStatestringrequired
  • notesstring
  • profileIdstringrequired
  • profileNamesarray of stringrequired
  • revisionintegerrequired
  • rolestringrequired
  • serverMaxStreamsinteger | any | nullrequired
  • usernamestringrequired

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/admin/access/members/{id}" \
  -H "Authorization: Bearer $PORTICO_API_KEY"
GET/v1/admin/access/members/{id}/limitsRead server access members limitsadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
get_admin_access_members_id_limits

Parameters

NameInTypeDescription
idrequiredpathstring

Responses

200Successapplication/json

Example
{
  "accountId": "id_8h2k4q",
  "effectiveMaxStreams": 1800000,
  "limits": {
    "accessTokens": true,
    "allowRemote": true,
    "allowUnrated": true,
    "awayQuality": "server",
    "channelPolicy": {
      "channels": [
        "string"
      ],
      "mode": "string"
    },
    "conversion": "string",
    "maxContentRating": "string",
    "maxProfiles": 0,
    "maxStreams": 1800000,
    "maxStreamsMode": "inherit",
    "maximumAge": 0,
    "ratingSystem": "string",
    "remoteBitrateKbps": 0,
    "schedule": {
      "timezone": "2026-10-18T19:30:00Z",
      "windows": [
        {
          "days": [],
          "endMinute": 0,
          "startMinute": 0
        }
      ]
    },
    "tagPolicy": {
      "deniedLabels": [
        "string"
      ]
    }
  },
  "revision": 0,
  "serverMaxStreams": 1800000,
  "updatedAt": "2026-10-18T19:30:00Z"
}
Schema
  • accountIdstringrequired
  • effectiveMaxStreamsinteger | any | nullrequired
  • limitsobjectrequired
    • accessTokensbooleanrequired
    • allowRemotebooleanrequired
    • allowUnratedbooleanrequired
    • awayQualitystringone of "server", "2160p", "1080p-high", "1080p-low", "720p-high", "720p-low", "480p", "240p"
    • channelPolicyobjectrequired
      • channelsarray of stringrequired
      • modestringrequired
    • conversionstringrequired
    • maxContentRatingstringrequired
    • maxProfilesintegerrequired
    • maxStreamsintegerrequired
    • maxStreamsModestringrequiredone of "inherit", "unlimited", "limit"
    • maximumAgeintegerrequired
    • ratingSystemstringrequired
    • remoteBitrateKbpsintegerrequired
    • scheduleobjectrequired
      • timezonestringrequired
      • windowsarray of objectrequired
        • daysarray of integerrequired
        • endMinuteintegerrequired
        • startMinuteintegerrequired
    • tagPolicyobjectrequired
      • deniedLabelsarray of stringrequired
  • revisionintegerrequired
  • serverMaxStreamsinteger | any | nullrequired
  • updatedAtstring

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/admin/access/members/{id}/limits" \
  -H "Authorization: Bearer $PORTICO_API_KEY"
PUT/v1/admin/access/members/{id}/limitsSave server access members limitsadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
put_admin_access_members_id_limits
Max body
64 KiB

Parameters

NameInTypeDescription
idrequiredpathstring

Request body application/json · required

Example
{
  "expectedRevision": 0,
  "limits": {
    "accessTokens": true,
    "allowRemote": true,
    "allowUnrated": true,
    "awayQuality": "server",
    "channelPolicy": {
      "channels": [
        "string"
      ],
      "mode": "string"
    },
    "conversion": "string",
    "maxContentRating": "string",
    "maxProfiles": 0,
    "maxStreams": 1800000,
    "maxStreamsMode": "inherit",
    "maximumAge": 0,
    "ratingSystem": "string",
    "remoteBitrateKbps": 0,
    "schedule": {
      "timezone": "2026-10-18T19:30:00Z",
      "windows": [
        {
          "days": [],
          "endMinute": 0,
          "startMinute": 0
        }
      ]
    },
    "tagPolicy": {
      "deniedLabels": [
        "string"
      ]
    }
  },
  "operationId": "id_8h2k4q"
}
Schema
  • expectedRevisionintegerrequired
  • limitsobjectrequired
    • accessTokensbooleanrequired
    • allowRemotebooleanrequired
    • allowUnratedbooleanrequired
    • awayQualitystringone of "server", "2160p", "1080p-high", "1080p-low", "720p-high", "720p-low", "480p", "240p"
    • channelPolicyobjectrequired
      • channelsarray of stringrequired
      • modestringrequired
    • conversionstringrequired
    • maxContentRatingstringrequired
    • maxProfilesintegerrequired
    • maxStreamsintegerrequired
    • maxStreamsModestringrequiredone of "inherit", "unlimited", "limit"
    • maximumAgeintegerrequired
    • ratingSystemstringrequired
    • remoteBitrateKbpsintegerrequired
    • scheduleobjectrequired
      • timezonestringrequired
      • windowsarray of objectrequired
        • daysarray of integerrequired
        • endMinuteintegerrequired
        • startMinuteintegerrequired
    • tagPolicyobjectrequired
      • deniedLabelsarray of stringrequired
  • operationIdstringrequired

Responses

200Successapplication/json

Example
{
  "accountId": "id_8h2k4q",
  "effectiveMaxStreams": 1800000,
  "limits": {
    "accessTokens": true,
    "allowRemote": true,
    "allowUnrated": true,
    "awayQuality": "server",
    "channelPolicy": {
      "channels": [
        "string"
      ],
      "mode": "string"
    },
    "conversion": "string",
    "maxContentRating": "string",
    "maxProfiles": 0,
    "maxStreams": 1800000,
    "maxStreamsMode": "inherit",
    "maximumAge": 0,
    "ratingSystem": "string",
    "remoteBitrateKbps": 0,
    "schedule": {
      "timezone": "2026-10-18T19:30:00Z",
      "windows": [
        {
          "days": [],
          "endMinute": 0,
          "startMinute": 0
        }
      ]
    },
    "tagPolicy": {
      "deniedLabels": [
        "string"
      ]
    }
  },
  "revision": 0,
  "serverMaxStreams": 1800000,
  "updatedAt": "2026-10-18T19:30:00Z"
}
Schema
  • accountIdstringrequired
  • effectiveMaxStreamsinteger | any | nullrequired
  • limitsobjectrequired
    • accessTokensbooleanrequired
    • allowRemotebooleanrequired
    • allowUnratedbooleanrequired
    • awayQualitystringone of "server", "2160p", "1080p-high", "1080p-low", "720p-high", "720p-low", "480p", "240p"
    • channelPolicyobjectrequired
      • channelsarray of stringrequired
      • modestringrequired
    • conversionstringrequired
    • maxContentRatingstringrequired
    • maxProfilesintegerrequired
    • maxStreamsintegerrequired
    • maxStreamsModestringrequiredone of "inherit", "unlimited", "limit"
    • maximumAgeintegerrequired
    • ratingSystemstringrequired
    • remoteBitrateKbpsintegerrequired
    • scheduleobjectrequired
      • timezonestringrequired
      • windowsarray of objectrequired
        • daysarray of integerrequired
        • endMinuteintegerrequired
        • startMinuteintegerrequired
    • tagPolicyobjectrequired
      • deniedLabelsarray of stringrequired
  • revisionintegerrequired
  • serverMaxStreamsinteger | any | nullrequired
  • updatedAtstring

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 PUT "http://127.0.0.1:32500/v1/admin/access/members/{id}/limits" \
  -H "Authorization: Bearer $PORTICO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "expectedRevision": 0,
  "limits": {
    "accessTokens": true,
    "allowRemote": true,
    "allowUnrated": true,
    "awayQuality": "server",
    "channelPolicy": {
      "channels": [
        "string"
      ],
      "mode": "string"
    },
    "conversion": "string",
    "maxContentRating": "string",
    "maxProfiles": 0,
    "maxStreams": 1800000,
    "maxStreamsMode": "inherit",
    "maximumAge": 0,
    "ratingSystem": "string",
    "remoteBitrateKbps": 0,
    "schedule": {
      "timezone": "2026-10-18T19:30:00Z",
      "windows": [
        {
          "days": [],
          "endMinute": 0,
          "startMinute": 0
        }
      ]
    },
    "tagPolicy": {
      "deniedLabels": [
        "string"
      ]
    }
  },
  "operationId": "id_8h2k4q"
}'
PUT/v1/admin/access/members/{id}/notesManage invitation or private person notesadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
put_admin_access_member_notes
Max body
8 KiB

Parameters

NameInTypeDescription
idrequiredpathstring

Request body application/json · required

Example
{
  "expectedRevision": 0,
  "notes": "string",
  "operationId": "id_8h2k4q"
}
Schema
  • expectedRevisionintegerrequired
  • notesstring
  • operationIdstringrequired

Responses

200Successapplication/json

Example
{
  "accountId": "id_8h2k4q",
  "allowedLibraries": [
    "string"
  ],
  "disabled": true,
  "disabledAt": "2026-10-18T19:30:00Z",
  "disabledReason": "string",
  "displayName": "Fargo",
  "effectiveMaxStreams": 1800000,
  "email": "sam@example.com",
  "hostedAccountId": "id_8h2k4q",
  "joinedAt": "2026-10-18T19:30:00Z",
  "joinedVia": "string",
  "lastActiveAt": "2026-10-18T19:30:00Z",
  "limits": {
    "accessTokens": true,
    "allowRemote": true,
    "allowUnrated": true,
    "awayQuality": "server",
    "channelPolicy": {
      "channels": [
        "string"
      ],
      "mode": "string"
    },
    "conversion": "string",
    "maxContentRating": "string",
    "maxProfiles": 0,
    "maxStreams": 1800000,
    "maxStreamsMode": "inherit",
    "maximumAge": 0,
    "ratingSystem": "string",
    "remoteBitrateKbps": 0,
    "schedule": {
      "timezone": "2026-10-18T19:30:00Z",
      "windows": [
        {
          "days": [],
          "endMinute": 0,
          "startMinute": 0
        }
      ]
    },
    "tagPolicy": {
      "deniedLabels": [
        "string"
      ]
    }
  },
  "limitsRevision": 0,
  "liveState": "string",
  "notes": "string",
  "profileId": "id_8h2k4q",
  "profileNames": [
    "Fargo"
  ],
  "revision": 0,
  "role": "string",
  "serverMaxStreams": 1800000,
  "username": "Fargo"
}
Schema
  • accountIdstringrequired
  • allowedLibrariesarray of stringrequired
  • disabledbooleanrequired
  • disabledAtstring
  • disabledReasonstring
  • displayNamestringrequired
  • effectiveMaxStreamsinteger | any | nullrequired
  • emailstring
  • hostedAccountIdstring
  • joinedAtstring
  • joinedViastring
  • lastActiveAtstring
  • limitsobjectrequired
    • accessTokensbooleanrequired
    • allowRemotebooleanrequired
    • allowUnratedbooleanrequired
    • awayQualitystringone of "server", "2160p", "1080p-high", "1080p-low", "720p-high", "720p-low", "480p", "240p"
    • channelPolicyobjectrequired
      • channelsarray of stringrequired
      • modestringrequired
    • conversionstringrequired
    • maxContentRatingstringrequired
    • maxProfilesintegerrequired
    • maxStreamsintegerrequired
    • maxStreamsModestringrequiredone of "inherit", "unlimited", "limit"
    • maximumAgeintegerrequired
    • ratingSystemstringrequired
    • remoteBitrateKbpsintegerrequired
    • scheduleobjectrequired
      • timezonestringrequired
      • windowsarray of objectrequired
        • daysarray of integerrequired
        • endMinuteintegerrequired
        • startMinuteintegerrequired
    • tagPolicyobjectrequired
      • deniedLabelsarray of stringrequired
  • limitsRevisionintegerrequired
  • liveStatestringrequired
  • notesstring
  • profileIdstringrequired
  • profileNamesarray of stringrequired
  • revisionintegerrequired
  • rolestringrequired
  • serverMaxStreamsinteger | any | nullrequired
  • usernamestringrequired

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 PUT "http://127.0.0.1:32500/v1/admin/access/members/{id}/notes" \
  -H "Authorization: Bearer $PORTICO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"expectedRevision":0,"notes":"string","operationId":"id_8h2k4q"}'
GET/v1/admin/access/members/{id}/profilesRead another person's profiles to manage themadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
get_admin_access_members_id_profiles

Parameters

NameInTypeDescription
idrequiredpathstring

Responses

200Successapplication/json

Example
{
  "accountId": "id_8h2k4q",
  "items": [
    {
      "allowedLibraries": [
        "string"
      ],
      "art": "string",
      "avatar": {
        "profileId": "id_8h2k4q",
        "sourceMime": "string",
        "updatedAt": "2026-10-18T19:30:00Z",
        "url": "https://example.com/…",
        "version": 0
      },
      "id": "id_8h2k4q",
      "name": "Fargo",
      "pinRequired": true,
      "pinRevision": 0,
      "position": 0,
      "primary": true,
      "restrictions": {
        "allowDownloads": true,
        "allowDvr": true,
        "allowLiveTv": true,
        "allowUnrated": true,
        "allowWatchTogether": true,
        "blockedLabels": [
          "string"
        ],
        "maximumAge": 0,
        "maximumAgeRating": "string",
        "profileId": "id_8h2k4q",
        "ratingSystem": "string",
        "revision": 0
      },
      "revision": 0
    }
  ]
}
Schema
  • accountIdstringrequired
  • itemsarray of objectrequired
    • allowedLibrariesarray of stringrequired
    • artstringrequired
    • avatarobject
      • profileIdstringrequired
      • sourceMimestringrequired
      • updatedAtstringrequired
      • urlstringrequired
      • versionintegerrequired
    • idstringrequired
    • namestringrequired
    • pinRequiredbooleanrequired
    • pinRevisionintegerrequired
    • positionintegerrequired
    • primarybooleanrequired
    • restrictionsobjectrequired
      • allowDownloadsbooleanrequired
      • allowDvrbooleanrequired
      • allowLiveTvbooleanrequired
      • allowUnratedbooleanrequired
      • allowWatchTogetherbooleanrequired
      • blockedLabelsarray of stringrequired
      • maximumAgeintegerrequired
      • maximumAgeRatingstringrequired
      • profileIdstringrequired
      • ratingSystemstringrequired
      • revisionintegerrequired
    • revisionintegerrequired

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/admin/access/members/{id}/profiles" \
  -H "Authorization: Bearer $PORTICO_API_KEY"
PATCH/v1/admin/access/members/{id}/profiles/{profileId}Rename or recolour another person's profileadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
patch_admin_access_members_id_profiles_profile
Max body
4 KiB

Parameters

NameInTypeDescription
idrequiredpathstring
profileIdrequiredpathstring

Request body application/json · required

Example
{
  "art": "string",
  "expectedRevision": 0,
  "name": "Fargo"
}
Schema
  • artstring
  • expectedRevisionintegerrequired
  • namestring

Responses

200Successapplication/json

Example
{
  "allowedLibraries": [
    "string"
  ],
  "art": "string",
  "avatar": {
    "profileId": "id_8h2k4q",
    "sourceMime": "string",
    "updatedAt": "2026-10-18T19:30:00Z",
    "url": "https://example.com/…",
    "version": 0
  },
  "id": "id_8h2k4q",
  "name": "Fargo",
  "pinRequired": true,
  "pinRevision": 0,
  "position": 0,
  "primary": true,
  "restrictions": {
    "allowDownloads": true,
    "allowDvr": true,
    "allowLiveTv": true,
    "allowUnrated": true,
    "allowWatchTogether": true,
    "blockedLabels": [
      "string"
    ],
    "maximumAge": 0,
    "maximumAgeRating": "string",
    "profileId": "id_8h2k4q",
    "ratingSystem": "string",
    "revision": 0
  },
  "revision": 0
}
Schema
  • allowedLibrariesarray of stringrequired
  • artstringrequired
  • avatarobject
    • profileIdstringrequired
    • sourceMimestringrequired
    • updatedAtstringrequired
    • urlstringrequired
    • versionintegerrequired
  • idstringrequired
  • namestringrequired
  • pinRequiredbooleanrequired
  • pinRevisionintegerrequired
  • positionintegerrequired
  • primarybooleanrequired
  • restrictionsobjectrequired
    • allowDownloadsbooleanrequired
    • allowDvrbooleanrequired
    • allowLiveTvbooleanrequired
    • allowUnratedbooleanrequired
    • allowWatchTogetherbooleanrequired
    • blockedLabelsarray of stringrequired
    • maximumAgeintegerrequired
    • maximumAgeRatingstringrequired
    • profileIdstringrequired
    • ratingSystemstringrequired
    • revisionintegerrequired
  • revisionintegerrequired

defaultRequest refused or unavailableapplication/json

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

Error codesinvalid_requestunauthorizednot_permittednot_foundrevision_mismatchinternaldatabase_busywriter_capacity

Example request

curl -X PATCH "http://127.0.0.1:32500/v1/admin/access/members/{id}/profiles/{profileId}" \
  -H "Authorization: Bearer $PORTICO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"art":"string","expectedRevision":0,"name":"Fargo"}'
DELETE/v1/admin/access/members/{id}/profiles/{profileId}/avatarDelete another person's profile pictureadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
delete_admin_access_members_id_profiles_profile_avatar
Max body
4 KiB

Parameters

NameInTypeDescription
idrequiredpathstring
profileIdrequiredpathstring

Request body application/json · required

Example
{
  "expectedRevision": 0
}
Schema
  • expectedRevisionintegerrequired

Responses

200Successapplication/json

Example
{
  "allowedLibraries": [
    "string"
  ],
  "art": "string",
  "avatar": {
    "profileId": "id_8h2k4q",
    "sourceMime": "string",
    "updatedAt": "2026-10-18T19:30:00Z",
    "url": "https://example.com/…",
    "version": 0
  },
  "id": "id_8h2k4q",
  "name": "Fargo",
  "pinRequired": true,
  "pinRevision": 0,
  "position": 0,
  "primary": true,
  "restrictions": {
    "allowDownloads": true,
    "allowDvr": true,
    "allowLiveTv": true,
    "allowUnrated": true,
    "allowWatchTogether": true,
    "blockedLabels": [
      "string"
    ],
    "maximumAge": 0,
    "maximumAgeRating": "string",
    "profileId": "id_8h2k4q",
    "ratingSystem": "string",
    "revision": 0
  },
  "revision": 0
}
Schema
  • allowedLibrariesarray of stringrequired
  • artstringrequired
  • avatarobject
    • profileIdstringrequired
    • sourceMimestringrequired
    • updatedAtstringrequired
    • urlstringrequired
    • versionintegerrequired
  • idstringrequired
  • namestringrequired
  • pinRequiredbooleanrequired
  • pinRevisionintegerrequired
  • positionintegerrequired
  • primarybooleanrequired
  • restrictionsobjectrequired
    • allowDownloadsbooleanrequired
    • allowDvrbooleanrequired
    • allowLiveTvbooleanrequired
    • allowUnratedbooleanrequired
    • allowWatchTogetherbooleanrequired
    • blockedLabelsarray of stringrequired
    • maximumAgeintegerrequired
    • maximumAgeRatingstringrequired
    • profileIdstringrequired
    • ratingSystemstringrequired
    • revisionintegerrequired
  • revisionintegerrequired

defaultRequest refused or unavailableapplication/json

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

Error codesinvalid_requestunauthorizednot_permittednot_foundrevision_mismatchavatar_unsupportedavatar_not_foundinternaldatabase_busywriter_capacity

Example request

curl -X DELETE "http://127.0.0.1:32500/v1/admin/access/members/{id}/profiles/{profileId}/avatar" \
  -H "Authorization: Bearer $PORTICO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"expectedRevision":0}'
GET/v1/admin/access/members/{id}/profiles/{profileId}/avatarGet another person's profile pictureadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
get_admin_access_members_id_profiles_profile_avatar

Parameters

NameInTypeDescription
idrequiredpathstring
profileIdrequiredpathstring
vquerystring
sizequerystring

Responses

200Successapplication/octet-stream

Example
"string"
Schema

string (binary)

defaultRequest refused or unavailableapplication/json

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

Error codesinvalid_requestunauthorizednot_permittednot_foundrevision_mismatchavatar_unsupportedavatar_not_foundinternaldatabase_busy

Example request

curl -X GET "http://127.0.0.1:32500/v1/admin/access/members/{id}/profiles/{profileId}/avatar" \
  -H "Authorization: Bearer $PORTICO_API_KEY"
POST/v1/admin/access/members/{id}/profiles/{profileId}/avatarPost another person's profile pictureadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
post_admin_access_members_id_profiles_profile_avatar
Max body
5 MiB

Parameters

NameInTypeDescription
idrequiredpathstring
profileIdrequiredpathstring
expectedRevisionquerystring

Request body application/octet-stream · required

Example
"string"
Schema

string (binary)

Responses

200Successapplication/json

Example
{
  "allowedLibraries": [
    "string"
  ],
  "art": "string",
  "avatar": {
    "profileId": "id_8h2k4q",
    "sourceMime": "string",
    "updatedAt": "2026-10-18T19:30:00Z",
    "url": "https://example.com/…",
    "version": 0
  },
  "id": "id_8h2k4q",
  "name": "Fargo",
  "pinRequired": true,
  "pinRevision": 0,
  "position": 0,
  "primary": true,
  "restrictions": {
    "allowDownloads": true,
    "allowDvr": true,
    "allowLiveTv": true,
    "allowUnrated": true,
    "allowWatchTogether": true,
    "blockedLabels": [
      "string"
    ],
    "maximumAge": 0,
    "maximumAgeRating": "string",
    "profileId": "id_8h2k4q",
    "ratingSystem": "string",
    "revision": 0
  },
  "revision": 0
}
Schema
  • allowedLibrariesarray of stringrequired
  • artstringrequired
  • avatarobject
    • profileIdstringrequired
    • sourceMimestringrequired
    • updatedAtstringrequired
    • urlstringrequired
    • versionintegerrequired
  • idstringrequired
  • namestringrequired
  • pinRequiredbooleanrequired
  • pinRevisionintegerrequired
  • positionintegerrequired
  • primarybooleanrequired
  • restrictionsobjectrequired
    • allowDownloadsbooleanrequired
    • allowDvrbooleanrequired
    • allowLiveTvbooleanrequired
    • allowUnratedbooleanrequired
    • allowWatchTogetherbooleanrequired
    • blockedLabelsarray of stringrequired
    • maximumAgeintegerrequired
    • maximumAgeRatingstringrequired
    • profileIdstringrequired
    • ratingSystemstringrequired
    • revisionintegerrequired
  • revisionintegerrequired

defaultRequest refused or unavailableapplication/json

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

Error codesinvalid_requestunauthorizednot_permittednot_foundrevision_mismatchavatar_unsupportedavatar_not_foundinternaldatabase_busywriter_capacity

Example request

curl -X POST "http://127.0.0.1:32500/v1/admin/access/members/{id}/profiles/{profileId}/avatar" \
  -H "Authorization: Bearer $PORTICO_API_KEY"
POST/v1/admin/access/members/{id}/profiles/{profileId}/pin-resetClear the PIN on another person's profileadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
post_admin_access_members_id_profiles_profile_pin_reset
Max body
4 KiB

Parameters

NameInTypeDescription
idrequiredpathstring
profileIdrequiredpathstring

Request body application/json · required

Example
{
  "expectedRevision": 0
}
Schema
  • expectedRevisionintegerrequired

Responses

200Successapplication/json

Example
{
  "allowedLibraries": [
    "string"
  ],
  "art": "string",
  "avatar": {
    "profileId": "id_8h2k4q",
    "sourceMime": "string",
    "updatedAt": "2026-10-18T19:30:00Z",
    "url": "https://example.com/…",
    "version": 0
  },
  "id": "id_8h2k4q",
  "name": "Fargo",
  "pinRequired": true,
  "pinRevision": 0,
  "position": 0,
  "primary": true,
  "restrictions": {
    "allowDownloads": true,
    "allowDvr": true,
    "allowLiveTv": true,
    "allowUnrated": true,
    "allowWatchTogether": true,
    "blockedLabels": [
      "string"
    ],
    "maximumAge": 0,
    "maximumAgeRating": "string",
    "profileId": "id_8h2k4q",
    "ratingSystem": "string",
    "revision": 0
  },
  "revision": 0
}
Schema
  • allowedLibrariesarray of stringrequired
  • artstringrequired
  • avatarobject
    • profileIdstringrequired
    • sourceMimestringrequired
    • updatedAtstringrequired
    • urlstringrequired
    • versionintegerrequired
  • idstringrequired
  • namestringrequired
  • pinRequiredbooleanrequired
  • pinRevisionintegerrequired
  • positionintegerrequired
  • primarybooleanrequired
  • restrictionsobjectrequired
    • allowDownloadsbooleanrequired
    • allowDvrbooleanrequired
    • allowLiveTvbooleanrequired
    • allowUnratedbooleanrequired
    • allowWatchTogetherbooleanrequired
    • blockedLabelsarray of stringrequired
    • maximumAgeintegerrequired
    • maximumAgeRatingstringrequired
    • profileIdstringrequired
    • ratingSystemstringrequired
    • revisionintegerrequired
  • revisionintegerrequired

defaultRequest refused or unavailableapplication/json

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

Error codesinvalid_requestunauthorizednot_permittednot_foundrevision_mismatchinternaldatabase_busywriter_capacity

Example request

curl -X POST "http://127.0.0.1:32500/v1/admin/access/members/{id}/profiles/{profileId}/pin-reset" \
  -H "Authorization: Bearer $PORTICO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"expectedRevision":0}'
PUT/v1/admin/access/members/{id}/profiles/{profileId}/restrictionsReplace another person's profile restrictionsadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
put_admin_access_members_id_profiles_profile_restrictions
Max body
32 KiB

Parameters

NameInTypeDescription
idrequiredpathstring
profileIdrequiredpathstring

Request body application/json · required

Example
{
  "allowDownloads": true,
  "allowDvr": true,
  "allowLiveTv": true,
  "allowUnrated": true,
  "allowWatchTogether": true,
  "blockedLabels": [
    "string"
  ],
  "expectedRevision": 0,
  "maximumAgeRating": "string",
  "ratingSystem": "string"
}
Schema
  • allowDownloadsbooleanrequired
  • allowDvrbooleanrequired
  • allowLiveTvbooleanrequired
  • allowUnratedbooleanrequired
  • allowWatchTogetherbooleanrequired
  • blockedLabelsarray of stringrequired
  • expectedRevisionintegerrequired
  • maximumAgeRatingstringrequired
  • ratingSystemstringrequired

Responses

200Successapplication/json

Example
{
  "allowedLibraries": [
    "string"
  ],
  "art": "string",
  "avatar": {
    "profileId": "id_8h2k4q",
    "sourceMime": "string",
    "updatedAt": "2026-10-18T19:30:00Z",
    "url": "https://example.com/…",
    "version": 0
  },
  "id": "id_8h2k4q",
  "name": "Fargo",
  "pinRequired": true,
  "pinRevision": 0,
  "position": 0,
  "primary": true,
  "restrictions": {
    "allowDownloads": true,
    "allowDvr": true,
    "allowLiveTv": true,
    "allowUnrated": true,
    "allowWatchTogether": true,
    "blockedLabels": [
      "string"
    ],
    "maximumAge": 0,
    "maximumAgeRating": "string",
    "profileId": "id_8h2k4q",
    "ratingSystem": "string",
    "revision": 0
  },
  "revision": 0
}
Schema
  • allowedLibrariesarray of stringrequired
  • artstringrequired
  • avatarobject
    • profileIdstringrequired
    • sourceMimestringrequired
    • updatedAtstringrequired
    • urlstringrequired
    • versionintegerrequired
  • idstringrequired
  • namestringrequired
  • pinRequiredbooleanrequired
  • pinRevisionintegerrequired
  • positionintegerrequired
  • primarybooleanrequired
  • restrictionsobjectrequired
    • allowDownloadsbooleanrequired
    • allowDvrbooleanrequired
    • allowLiveTvbooleanrequired
    • allowUnratedbooleanrequired
    • allowWatchTogetherbooleanrequired
    • blockedLabelsarray of stringrequired
    • maximumAgeintegerrequired
    • maximumAgeRatingstringrequired
    • profileIdstringrequired
    • ratingSystemstringrequired
    • revisionintegerrequired
  • revisionintegerrequired

defaultRequest refused or unavailableapplication/json

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

Error codesinvalid_requestunauthorizednot_permittednot_foundrevision_mismatchinternaldatabase_busywriter_capacity

Example request

curl -X PUT "http://127.0.0.1:32500/v1/admin/access/members/{id}/profiles/{profileId}/restrictions" \
  -H "Authorization: Bearer $PORTICO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "allowDownloads": true,
  "allowDvr": true,
  "allowLiveTv": true,
  "allowUnrated": true,
  "allowWatchTogether": true,
  "blockedLabels": [
    "string"
  ],
  "expectedRevision": 0,
  "maximumAgeRating": "string",
  "ratingSystem": "string"
}'
PUT/v1/admin/access/members/{id}/roleSave server access members roleadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
put_admin_access_members_id_role
Max body
64 KiB

Parameters

NameInTypeDescription
idrequiredpathstring

Request body application/json · required

Example
{
  "expectedRevision": 0,
  "operationId": "id_8h2k4q",
  "role": "string"
}
Schema
  • expectedRevisionintegerrequired
  • operationIdstringrequired
  • rolestringrequired

Responses

200Successapplication/json

Example
{
  "accountId": "id_8h2k4q",
  "allowedLibraries": [
    "string"
  ],
  "disabled": true,
  "disabledAt": "2026-10-18T19:30:00Z",
  "disabledReason": "string",
  "displayName": "Fargo",
  "effectiveMaxStreams": 1800000,
  "email": "sam@example.com",
  "hostedAccountId": "id_8h2k4q",
  "joinedAt": "2026-10-18T19:30:00Z",
  "joinedVia": "string",
  "lastActiveAt": "2026-10-18T19:30:00Z",
  "limits": {
    "accessTokens": true,
    "allowRemote": true,
    "allowUnrated": true,
    "awayQuality": "server",
    "channelPolicy": {
      "channels": [
        "string"
      ],
      "mode": "string"
    },
    "conversion": "string",
    "maxContentRating": "string",
    "maxProfiles": 0,
    "maxStreams": 1800000,
    "maxStreamsMode": "inherit",
    "maximumAge": 0,
    "ratingSystem": "string",
    "remoteBitrateKbps": 0,
    "schedule": {
      "timezone": "2026-10-18T19:30:00Z",
      "windows": [
        {
          "days": [],
          "endMinute": 0,
          "startMinute": 0
        }
      ]
    },
    "tagPolicy": {
      "deniedLabels": [
        "string"
      ]
    }
  },
  "limitsRevision": 0,
  "liveState": "string",
  "notes": "string",
  "profileId": "id_8h2k4q",
  "profileNames": [
    "Fargo"
  ],
  "revision": 0,
  "role": "string",
  "serverMaxStreams": 1800000,
  "username": "Fargo"
}
Schema
  • accountIdstringrequired
  • allowedLibrariesarray of stringrequired
  • disabledbooleanrequired
  • disabledAtstring
  • disabledReasonstring
  • displayNamestringrequired
  • effectiveMaxStreamsinteger | any | nullrequired
  • emailstring
  • hostedAccountIdstring
  • joinedAtstring
  • joinedViastring
  • lastActiveAtstring
  • limitsobjectrequired
    • accessTokensbooleanrequired
    • allowRemotebooleanrequired
    • allowUnratedbooleanrequired
    • awayQualitystringone of "server", "2160p", "1080p-high", "1080p-low", "720p-high", "720p-low", "480p", "240p"
    • channelPolicyobjectrequired
      • channelsarray of stringrequired
      • modestringrequired
    • conversionstringrequired
    • maxContentRatingstringrequired
    • maxProfilesintegerrequired
    • maxStreamsintegerrequired
    • maxStreamsModestringrequiredone of "inherit", "unlimited", "limit"
    • maximumAgeintegerrequired
    • ratingSystemstringrequired
    • remoteBitrateKbpsintegerrequired
    • scheduleobjectrequired
      • timezonestringrequired
      • windowsarray of objectrequired
        • daysarray of integerrequired
        • endMinuteintegerrequired
        • startMinuteintegerrequired
    • tagPolicyobjectrequired
      • deniedLabelsarray of stringrequired
  • limitsRevisionintegerrequired
  • liveStatestringrequired
  • notesstring
  • profileIdstringrequired
  • profileNamesarray of stringrequired
  • revisionintegerrequired
  • rolestringrequired
  • serverMaxStreamsinteger | any | nullrequired
  • usernamestringrequired

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 PUT "http://127.0.0.1:32500/v1/admin/access/members/{id}/role" \
  -H "Authorization: Bearer $PORTICO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"expectedRevision":0,"operationId":"id_8h2k4q","role":"string"}'
POST/v1/admin/access/members/bulkChange selected people in one transactionadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
post_admin_access_members_bulk
Max body
64 KiB

Request body application/json · required

Example
{
  "access": {
    "accessTokens": true,
    "allowRemote": true,
    "allowedLibraries": [
      "string"
    ],
    "maxContentRating": "string",
    "maxProfiles": 0,
    "maxStreams": 1800000,
    "maxStreamsMode": "inherit"
  },
  "action": "string",
  "operationId": "id_8h2k4q",
  "targets": [
    {
      "accountId": "id_8h2k4q",
      "expectedLimitsRevision": 0,
      "expectedRevision": 0
    }
  ]
}
Schema
  • accessobject
    • accessTokensboolean
    • allowRemoteboolean
    • allowedLibrariesarray of string
    • maxContentRatingstring
    • maxProfilesinteger
    • maxStreamsinteger
    • maxStreamsModestringone of "inherit", "unlimited", "limit"
  • actionstringrequired
  • operationIdstringrequired
  • targetsarray of objectrequired
    • accountIdstringrequired
    • expectedLimitsRevisionintegerrequired
    • expectedRevisionintegerrequired

Responses

200Successapplication/json

Example
{
  "accountIds": [
    "string"
  ],
  "action": "string"
}
Schema
  • accountIdsarray of stringrequired
  • actionstringrequired

defaultRequest refused or unavailableapplication/json

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

Error codesinvalid_requestunauthorizednot_permittedrevision_mismatchinternaldatabase_busywriter_capacity

Example request

curl -X POST "http://127.0.0.1:32500/v1/admin/access/members/bulk" \
  -H "Authorization: Bearer $PORTICO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "access": {
    "accessTokens": true,
    "allowRemote": true,
    "allowedLibraries": [
      "string"
    ],
    "maxContentRating": "string",
    "maxProfiles": 0,
    "maxStreams": 1800000,
    "maxStreamsMode": "inherit"
  },
  "action": "string",
  "operationId": "id_8h2k4q",
  "targets": [
    {
      "accountId": "id_8h2k4q",
      "expectedLimitsRevision": 0,
      "expectedRevision": 0
    }
  ]
}'