Skip to content

Depot portal notify

Registers P-J’s org routes; mountOrg calls it.

This page is generated from the Depot route table. Every operation carries the permission it needs and the anchor an agent can link to.

GET /api/portal/v1/orgs/{clientID}/me/notification-prefs

Section titled “GET /api/portal/v1/orgs/{clientID}/me/notification-prefs”

GETportal facemspIdempotent

Source: [object Object]

getNotificationPrefs returns the signed-in member’s notification preferences.

NameInTypeRequiredDescription
clientIDpathstringYes
StatusBodyDescription
200application/json, NotificationPrefsSuccess.
404application/problem+json, ProblemDetailsNo resource matches that id.

200 response body

FieldTypeDescription
defaultsrequiredobject
neverOffrequiredarray of string
prefsrequiredobject
Terminal window
# Sign in first. __Host-portal_session is a session cookie, so send it with every request.
# This operation is idempotent. Repeating it does not repeat its effect.
curl -X GET 'https://depot.example.com/api/portal/v1/orgs/<clientID>/me/notification-prefs' \
-H 'X-Csrf-Token: <portal-csrf>' \
-H 'Accept: application/json' \
-b '__Host-portal_session=<portal-session>'

PUT /api/portal/v1/orgs/{clientID}/me/notification-prefs

Section titled “PUT /api/portal/v1/orgs/{clientID}/me/notification-prefs”

PUTportal facemspIdempotent

Source: [object Object]

putNotificationPrefs changes the signed-in member’s notification preferences.

Only the events named change; a choice equal to the default is stored as no choice, so a later change of default applies.

NameInTypeRequiredDescription
clientIDpathstringYes

Required, sent as application/json.

The body is any.

StatusBodyDescription
200application/json, NotificationPrefsSuccess.
400NoneThe request was refused.
404application/problem+json, ProblemDetailsNo resource matches that id.

200 response body

FieldTypeDescription
defaultsrequiredobject
neverOffrequiredarray of string
prefsrequiredobject
Terminal window
# Sign in first. __Host-portal_session is a session cookie, so send it with every request.
# This operation is idempotent. Repeating it does not repeat its effect.
curl -X PUT 'https://depot.example.com/api/portal/v1/orgs/<clientID>/me/notification-prefs' \
-H 'X-Csrf-Token: <portal-csrf>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b '__Host-portal_session=<portal-session>' \
--data '"string"'

GET /api/portal/v1/orgs/{clientID}/report-subscriptions

Section titled “GET /api/portal/v1/orgs/{clientID}/report-subscriptions”

GETportal:reports:scheduleportal facemspIdempotent

Source: [object Object]

listReportSubscriptions lists the signed-in member’s own report subscriptions.

NameInTypeRequiredDescription
clientIDpathstringYes
StatusBodyDescription
200application/json, PageReportSubscriptionSuccess.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold portal:reports:schedule.
404application/problem+json, ProblemDetailsNo resource matches that id.

200 response body

FieldTypeDescription
itemsrequiredarray of ReportSubscription
items[].cronrequiredstring
items[].enabledrequiredboolean
items[].formatrequiredstring
items[].idrequiredstring
items[].lastRunAtstring (date-time) or null
items[].nextDueAtstring (date-time) or null
items[].paramsrequiredany

Arbitrary JSON.

items[].pausedReasonstring or null
items[].reportrequiredstring
items[].timezonerequiredstring
pagerequiredinteger
pageSizerequiredinteger
totalrequiredinteger
Terminal window
# Sign in first. __Host-portal_session is a session cookie, so send it with every request.
# This operation is idempotent. Repeating it does not repeat its effect.
curl -X GET 'https://depot.example.com/api/portal/v1/orgs/<clientID>/report-subscriptions' \
-H 'X-Csrf-Token: <portal-csrf>' \
-H 'Accept: application/json' \
-b '__Host-portal_session=<portal-session>'

POST /api/portal/v1/orgs/{clientID}/report-subscriptions

Section titled “POST /api/portal/v1/orgs/{clientID}/report-subscriptions”

POSTportal:reports:scheduleportal facemsp

Source: [object Object]

createReportSubscription subscribes the signed-in member to a report by email.

NameInTypeRequiredDescription
clientIDpathstringYes

Required, sent as application/json.

The body is any.

StatusBodyDescription
201application/json, ReportSubscriptionCreated.
400NoneThe request was refused.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold portal:reports:schedule.
404application/problem+json, ProblemDetailsNo resource matches that id.

201 response body

FieldTypeDescription
cronrequiredstring
enabledrequiredboolean
formatrequiredstring
idrequiredstring
lastRunAtstring (date-time) or null
nextDueAtstring (date-time) or null
paramsrequiredany

Arbitrary JSON.

pausedReasonstring or null
reportrequiredstring
timezonerequiredstring
Terminal window
# Sign in first. __Host-portal_session is a session cookie, so send it with every request.
curl -X POST 'https://depot.example.com/api/portal/v1/orgs/<clientID>/report-subscriptions' \
-H 'X-Csrf-Token: <portal-csrf>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b '__Host-portal_session=<portal-session>' \
--data '"string"'

DELETE /api/portal/v1/orgs/{clientID}/report-subscriptions/{subscriptionID}

Section titled “DELETE /api/portal/v1/orgs/{clientID}/report-subscriptions/{subscriptionID}”

DELETEportal:reports:scheduleportal facemspIdempotent

Source: [object Object]

deleteReportSubscription removes one of the signed-in member’s own subscriptions.

NameInTypeRequiredDescription
clientIDpathstringYes
subscriptionIDpathstringYes
StatusBodyDescription
204NoneSuccess, with no body.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold portal:reports:schedule.
404application/problem+json, ProblemDetailsNo resource matches that id.
Terminal window
# Sign in first. __Host-portal_session is a session cookie, so send it with every request.
# This operation is idempotent. Repeating it does not repeat its effect.
curl -X DELETE 'https://depot.example.com/api/portal/v1/orgs/<clientID>/report-subscriptions/<subscriptionID>' \
-H 'X-Csrf-Token: <portal-csrf>' \
-H 'Accept: application/json' \
-b '__Host-portal_session=<portal-session>'

GET /api/portal/v1/orgs/{clientID}/reports

Section titled “GET /api/portal/v1/orgs/{clientID}/reports”

GETportal:reports:readportal facemspIdempotent

Source: [object Object]

listReports lists the reports this organization can download and schedule.

NameInTypeRequiredDescription
clientIDpathstringYes
StatusBodyDescription
200application/json, PageReportSuccess.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold portal:reports:read.
404application/problem+json, ProblemDetailsNo resource matches that id.

200 response body

FieldTypeDescription
itemsrequiredarray of Report
items[].coderequiredstring
items[].formatsrequiredarray of string
items[].titlerequiredstring
pagerequiredinteger
pageSizerequiredinteger
totalrequiredinteger
Terminal window
# Sign in first. __Host-portal_session is a session cookie, so send it with every request.
# This operation is idempotent. Repeating it does not repeat its effect.
curl -X GET 'https://depot.example.com/api/portal/v1/orgs/<clientID>/reports' \
-H 'X-Csrf-Token: <portal-csrf>' \
-H 'Accept: application/json' \
-b '__Host-portal_session=<portal-session>'

GET /api/portal/v1/orgs/{clientID}/reports/{code}

Section titled “GET /api/portal/v1/orgs/{clientID}/reports/{code}”

GETportal:reports:readportal facemspIdempotentdownloadNot fully resolved

What this page does not know
  • response

These are parts of the route the extractor could not read from the source. Everything else on this page came straight from it.

Source: [object Object]

downloadReport renders one report now, as a PDF (default) or CSV.

NameInTypeRequiredDescription
clientIDpathstringYes
codepathstringYes
formatquerystringNo
StatusBodyDescription
200application/octet-stream, string (binary)Success. The body shape was not resolved; see x-outpost-unresolved.
400NoneThe request was refused.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold portal:reports:read.
404application/problem+json, ProblemDetailsNo resource matches that id.
Terminal window
# Sign in first. __Host-portal_session is a session cookie, so send it with every request.
# This operation is idempotent. Repeating it does not repeat its effect.
curl -X GET 'https://depot.example.com/api/portal/v1/orgs/<clientID>/reports/<code>?format=<format>' \
-H 'X-Csrf-Token: <portal-csrf>' \
-H 'Accept: application/json' \
-b '__Host-portal_session=<portal-session>'

Content is licensed CC BY 4.0. Code samples are MIT. Outpost and the Outpost mark are trademarks of Outpost Business Solutions, PBC and are not covered by either license.