Authorization header:
- An API key acts as the admin who made it. Use it for your own scripts and integrations.
- An OAuth access token acts as the member who connected the app. Use it for an app that each person connects as themselves.
API keys
Make a key
- Open Settings > API and MCP.
- Under API keys, select New key.
- Give the key a name.
- Choose its access: All, Read only or Restricted. Restricted lets you pick read or write for each area.
- Select Create key and copy it.
- Keys start with
rbk_org_live_. - Only admins can make or revoke keys. Every member can see the list of keys.
- A firm can have 25 active keys.
- The list shows each key’s name, access, who made it and when it was last used.
Who a key acts as
A key acts as the admin who made it. Changes it makes are recorded against that admin. A key can make admin-only calls. If the admin who made a key leaves the firm, the key stops working. Calls fail with403 member_removed. Make a new key from an admin who is still in the firm.
Revoke a key
Select Revoke next to the key in Settings > API and MCP. Anything using the key stops working straight away. This cannot be undone.OAuth for apps
An app can ask a member to connect it to their firm. The app then acts as that member, with that member’s role. If the member is not an admin, the app cannot make admin-only calls. Advisor is a standard OAuth 2.1 authorization server:- Authorization code flow with PKCE (
S256only). - Public clients only, with no client secret.
- Dynamic client registration.
Discovery
All paths are on
https://advisor.redbark.com.
The flow
- Register your app at
/oauth/registerwith its name and redirect addresses. - Send the member to
/oauth/authorizewithclient_id,redirect_uri,response_type=code,code_challenge,code_challenge_method=S256andresource=https://advisor.redbark.com/api/v1. Addscopeto suggest the scopes you want. - The member signs in, picks the firm and chooses the access the app gets.
- Exchange the returned code at
/oauth/token. - Call the API with the access token. Refresh it with the refresh token when it expires.
Ask for the
resource https://advisor.redbark.com/api/v1. A token is bound to one API. A request that names no resource gets a token for the MCP server, which the REST API refuses.Tokens
- Using a code or a refresh token twice ends the connection.
- The member’s role is checked on every request. A role change takes effect on the next call.
- A member who is removed from the firm loses access straight away.
Redirect addresses
http://localhost,http://127.0.0.1andhttp://[::1]are accepted for apps on the same machine, on any port.- A hosted
httpsaddress must be on a host we have approved. Contact support to have your app added. - Up to 10 addresses per app.
Ending a connection
A member can disconnect their own apps under Connected apps in Settings > API and MCP. An admin can disconnect anyone’s. The app stops working straight away. An app can also end its own connection by sending its refresh token to/oauth/revoke.
Scopes
A scope is an area and a level:<area>:read or <area>:write. A write scope includes its read scope.
- All gives every read and write scope.
- Read only gives every read scope and no write scope.
- A call without the scope it needs fails with
403 insufficient_scope. The message names the scope.
Failed authentication
A 401 carries a
WWW-Authenticate header that names the protected resource metadata, so an OAuth client can find where to sign in.
