Skip to main content

Private applications

A private application accesses the Riseact APIs with a static token, without the OAuth flow. It is meant for scripts, backend integrations and internal tools.

Creating a private application​

  1. In the administration panel go to Settings > Apps > Private applications.
  2. Click New private application.
  3. Give it a name, for example "CRM Sync".
  4. Select the permissions.
  5. Click Create.

The access token is shown only once: copy it right away. It is tied to the organization and does not expire.

caution

Treat the token like a password: keep it out of versioned code.

Using the token​

The token goes in every request, in the Authorization header, for both GraphQL and REST:

Authorization: Bearer <IL_TUO_TOKEN>

GraphQL​

curl -X POST https://core.riseact.org/admin/graphql/ \
-H "Authorization: Bearer IL_TUO_TOKEN" \
-H "Content-Type: application/json" \
-d '{"query": "query { organization { name domain } }"}'

REST​

curl https://core.riseact.org/api/v1/supporters/ \
-H "Authorization: Bearer IL_TUO_TOKEN"

Pagination and ordering: see REST pagination.

Permissions​

The application accesses only the resources it has permissions for, in the entity:action format.

PermissionDescription
supporter:readRead supporters
supporter:writeCreate and edit supporters
supporter:exportExport supporters
donation:readRead donations
donation:writeCreate and edit donations
donation:exportExport donations
payment:readRead payments
payment:writeCreate and edit payments
campaign:readRead campaigns
campaign:writeCreate and edit campaigns
project:readRead projects
project:writeCreate and edit projects
activity:readRead activities
activity:writeCreate and edit activities
reports:readAccess to reports
application:readRead installed applications
application:installInstall applications
sitefront:themesManage site themes
sitefront:themes.codeEdit theme code
sitefront:contentManage site content
sitefront:navigationManage site navigation
dbox:readRead donation boxes
dbox:writeCreate and edit donation boxes

Without the permission the operation requires, the response is an authorization error. :write does not include :read: to read and write supporters you need both supporter:read and supporter:write.

Regenerating the token​

If the token is compromised, regenerate it from Settings > Apps > Private applications: the previous one stops working immediately.

Difference from partner apps​

FeaturePrivate applicationPartner app
AccessSingle organizationAll orgs that install the app
AuthenticationStatic token, no expirationOAuth 2.0 with PKCE, temporary tokens
Token managementManual by adminAutomatic via refresh token
Typical use caseInternal automations, scriptsThird-party integrations