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
| Name | In | Type | Description |
|---|---|---|---|
cursor | query | string | |
limit | query | integer | ""1–100 | |
account | query | string | |
sort | query | string |
Responses
200Successapplication/json
{
"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"
}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
{
"error": {
"code": "string",
"message": "string"
}
}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
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string |
Responses
200Successapplication/json
{
"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"
}- accountIdstringrequired
- appstringrequired
- appVersionstringrequired
- firstSeenAtstringrequired
- idstringrequired
- lastNetworkstringrequired
- lastSeenAtstringrequired
- liveStatestringrequired
- namestringrequired
- platformstringrequired
- profileIdstring
- profileNamestring
- revisionintegerrequired
- sessionCountinteger
- usernamestringrequired
defaultRequest refused or unavailableapplication/json
{
"error": {
"code": "string",
"message": "string"
}
}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
{
"items": [
{
"at": "2026-10-18T19:30:00Z",
"code": "alert.acknowledge"
}
],
"limit": 8
}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
{
"error": {
"code": "string",
"message": "string"
}
}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
| Name | In | Type | Description |
|---|---|---|---|
cursor | query | string | |
limit | query | integer | ""1–100 | |
state | query | string | |
q | query | string | |
sort | query | string | |
direction | query | string |
Responses
200Successapplication/json
{
"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
}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
{
"error": {
"code": "string",
"message": "string"
}
}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
{
"access": {
"accessTokens": true,
"allowRemote": true,
"maxContentRating": "string",
"maxStreams": 1800000,
"maxStreamsMode": "inherit"
},
"allowedLibraries": [
"string"
],
"expiresInHours": 0,
"notes": "string",
"operationId": "id_8h2k4q",
"porticoUsername": "Fargo",
"role": "string"
}accessobject
- accessTokensbooleanrequired
- allowRemotebooleanrequired
- maxContentRatingstringrequired
- maxStreamsintegerrequired
- maxStreamsModestringrequiredone of "inherit", "unlimited", "limit"
- allowedLibrariesarray of stringrequired
- expiresInHoursintegerrequired
- notesstringlength 0–500
- operationIdstringrequired
- porticoUsernamestring
- rolestringrequired
Responses
201Successapplication/json
{
"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"
}- 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
{
"error": {
"code": "string",
"message": "string"
}
}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
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string |
Responses
200Successapplication/json
{
"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"
}- 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
{
"error": {
"code": "string",
"message": "string"
}
}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
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string |
Request body application/json · required
{
"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"
}accessobject
- accessTokensbooleanrequired
- allowRemotebooleanrequired
- maxContentRatingstringrequired
- maxStreamsintegerrequired
- maxStreamsModestringrequiredone of "inherit", "unlimited", "limit"
- allowedLibrariesarray of stringrequired
- expectedRevisionintegerrequired
- expiresAtstringrequired
- notesstringlength 0–500
- operationIdstringrequired
- rolestringrequired
Responses
200Successapplication/json
{
"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"
}- 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
{
"error": {
"code": "string",
"message": "string"
}
}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
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string |
Request body application/json · required
{
"expectedRevision": 0
}- expectedRevisionintegerrequired
Responses
200Successapplication/json
{
"code": "string",
"expiresAt": "2026-10-18T19:30:00Z",
"serverId": "id_8h2k4q"
}- codestringrequired
- expiresAtstringrequired
- serverIdstring
defaultRequest refused or unavailableapplication/json
{
"error": {
"code": "string",
"message": "string"
}
}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
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string |
Request body application/json · required
{
"expectedRevision": 0,
"operationId": "id_8h2k4q"
}- expectedRevisionintegerrequired
- operationIdstringrequired
Responses
200Successapplication/json
{
"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"
}- 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
{
"error": {
"code": "string",
"message": "string"
}
}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
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string |
Request body application/json · required
{
"expectedRevision": 0,
"operationId": "id_8h2k4q"
}- expectedRevisionintegerrequired
- operationIdstringrequired
Responses
200Successapplication/json
{
"expiresAt": "2026-10-18T19:30:00Z",
"serverId": "id_8h2k4q",
"shortCode": "string"
}- expiresAtstringrequired
- serverIdstringrequired
- shortCodestring
defaultRequest refused or unavailableapplication/json
{
"error": {
"code": "string",
"message": "string"
}
}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
| Name | In | Type | Description |
|---|---|---|---|
cursor | query | string | |
limit | query | integer | ""1–100 | |
q | query | string | |
role | query | string | |
status | query | string | |
sort | query | string | |
direction | query | string |
Responses
200Successapplication/json
{
"items": [
{
"accountId": "id_8h2k4q",
"allowedLibraries": [
"string"
],
"disabled": true,
"effectiveMaxStreams": 1800000,
"email": "[email protected]",
"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
}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
{
"error": {
"code": "string",
"message": "string"
}
}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
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string |
Responses
200Successapplication/json
{
"accountId": "id_8h2k4q",
"allowedLibraries": [
"string"
],
"disabled": true,
"disabledAt": "2026-10-18T19:30:00Z",
"disabledReason": "string",
"displayName": "Fargo",
"effectiveMaxStreams": 1800000,
"email": "[email protected]",
"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"
}- 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
{
"error": {
"code": "string",
"message": "string"
}
}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
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string |
Responses
200Successapplication/json
{
"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"
}- 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
{
"error": {
"code": "string",
"message": "string"
}
}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
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string |
Request body application/json · required
{
"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"
}- 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
{
"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"
}- 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
{
"error": {
"code": "string",
"message": "string"
}
}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
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string |
Request body application/json · required
{
"expectedRevision": 0,
"notes": "string",
"operationId": "id_8h2k4q"
}- expectedRevisionintegerrequired
- notesstring
- operationIdstringrequired
Responses
200Successapplication/json
{
"accountId": "id_8h2k4q",
"allowedLibraries": [
"string"
],
"disabled": true,
"disabledAt": "2026-10-18T19:30:00Z",
"disabledReason": "string",
"displayName": "Fargo",
"effectiveMaxStreams": 1800000,
"email": "[email protected]",
"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"
}- 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
{
"error": {
"code": "string",
"message": "string"
}
}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
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string |
Responses
200Successapplication/json
{
"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
}
]
}- 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
{
"error": {
"code": "string",
"message": "string"
}
}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
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string | |
profileIdrequired | path | string |
Request body application/json · required
{
"art": "string",
"expectedRevision": 0,
"name": "Fargo"
}- artstring
- expectedRevisionintegerrequired
- namestring
Responses
200Successapplication/json
{
"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
}- 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
{
"error": {
"code": "string",
"message": "string"
}
}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
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string | |
profileIdrequired | path | string |
Request body application/json · required
{
"expectedRevision": 0
}- expectedRevisionintegerrequired
Responses
200Successapplication/json
{
"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
}- 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
{
"error": {
"code": "string",
"message": "string"
}
}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
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string | |
profileIdrequired | path | string | |
v | query | string | |
size | query | string |
Responses
200Successapplication/octet-stream
"string"string (binary)
defaultRequest refused or unavailableapplication/json
{
"error": {
"code": "string",
"message": "string"
}
}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
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string | |
profileIdrequired | path | string | |
expectedRevision | query | string |
Request body application/octet-stream · required
"string"string (binary)
Responses
200Successapplication/json
{
"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
}- 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
{
"error": {
"code": "string",
"message": "string"
}
}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
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string | |
profileIdrequired | path | string |
Request body application/json · required
{
"expectedRevision": 0
}- expectedRevisionintegerrequired
Responses
200Successapplication/json
{
"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
}- 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
{
"error": {
"code": "string",
"message": "string"
}
}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
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string | |
profileIdrequired | path | string |
Request body application/json · required
{
"allowDownloads": true,
"allowDvr": true,
"allowLiveTv": true,
"allowUnrated": true,
"allowWatchTogether": true,
"blockedLabels": [
"string"
],
"expectedRevision": 0,
"maximumAgeRating": "string",
"ratingSystem": "string"
}- allowDownloadsbooleanrequired
- allowDvrbooleanrequired
- allowLiveTvbooleanrequired
- allowUnratedbooleanrequired
- allowWatchTogetherbooleanrequired
- blockedLabelsarray of stringrequired
- expectedRevisionintegerrequired
- maximumAgeRatingstringrequired
- ratingSystemstringrequired
Responses
200Successapplication/json
{
"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
}- 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
{
"error": {
"code": "string",
"message": "string"
}
}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
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string |
Request body application/json · required
{
"expectedRevision": 0,
"operationId": "id_8h2k4q",
"role": "string"
}- expectedRevisionintegerrequired
- operationIdstringrequired
- rolestringrequired
Responses
200Successapplication/json
{
"accountId": "id_8h2k4q",
"allowedLibraries": [
"string"
],
"disabled": true,
"disabledAt": "2026-10-18T19:30:00Z",
"disabledReason": "string",
"displayName": "Fargo",
"effectiveMaxStreams": 1800000,
"email": "[email protected]",
"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"
}- 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
{
"error": {
"code": "string",
"message": "string"
}
}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
{
"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
}
]
}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
{
"accountIds": [
"string"
],
"action": "string"
}- accountIdsarray of stringrequired
- actionstringrequired
defaultRequest refused or unavailableapplication/json
{
"error": {
"code": "string",
"message": "string"
}
}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
}
]
}'No operations match that filter.