Skip to content
Coritan Docs

Organization roles and permissions

What each organization role can see and change in the dashboard, the staff console and the Organization API.

View as Markdown

Every member of an organization has one role. The roles form a ladder: each role can do everything the roles below it can, and more. The owner is the Coritan account that created the organization, or the member it was handed to; Manage members and roles explains how to give a member a role.

From the highest to the lowest:

Role Value What it is for
Owner owner Everything, including deleting the organization and handing it to another member. There is one owner at a time, and an owner who hands the organization on stays on the team as an admin.
Admin admin Everything except handing the organization to another member and deleting it.
Billing billing Invoices, payouts, statements and customer credit, and all of Tier 3 support.
Tier 3 support support_tier3 Every ticket, customer changes, support sessions and server work.
Tier 2 support support_tier2 Reads any ticket, watches server consoles and logs, and works on servers customers lend from a ticket.
Tier 1 support support_tier1 The ticket queue and their own tickets, log requests and forum report triage.
Read only readonly Can look, cannot change.

A member added without a role gets support_tier1. The older role name support is read as support_tier3. Billing sits above the support tiers on the ladder, but live conversations and the Discord staff links are for the owner, admins and the support tiers only.

The organization's tabs and the member API

Section titled The organization's tabs and the member API

These are the tabs on coritan.com and the API paths behind them. "Any member" includes readonly.

Area Who can see it Who can change it
Organization details and settings Any member Admin
Members Any member Admin
Customers and custom fields Any member Admin
Customer credit Any member sees a customer's balance; Tier 3 support sees its history Billing
Products and pricing Any member Admin
Customer services Any member From Tier 3 support; ordering, suspending, unsuspending and cancelling at once take an admin (who can do what)
Service tags Any member Tier 3 support
Sent email Tier 3 support Nobody
Invoices, statements, payouts, disputes and revenue figures Billing Billing
PayNow status, subscriptions, gift cards and affiliates Billing Billing; connecting the store takes an admin
Usage and cost, the billing basis's preview and the monthly usage budget Billing Billing; switching the billing basis takes the owner
Cloud Compute Any member Admin
An instance's console, with keyboard control Owner and admins Owner and admins. The audit log records each session.
DNS Any member Admin
Mail Services Any member Admin
Commerce By section, from any member to Billing By section, from Tier 2 support to Admin
Apps, the organization's deployments, also under App Deployment in the sidebar Any member Admin
A deployment's billing and what it costs Billing Billing
A game server's or a database's console, files, SFTP and the rest of its server's tabs Owner and admins Owner and admins
Discord and the game proxy Admin Admin
Webhooks, API keys and OAuth clients Admin Admin
Audit log Admin Nobody
Visitor figures on the overview Any member Nobody
Handing the organization to another member Owner Owner, signed in to coritan.com
Deleting the organization Owner Owner, signed in to coritan.com

A page your role cannot open is not in the organization's menu, and its address takes you to the overview. A call below the role it needs answers 403 with Admin access required, Billing access required, Support access required or Tier 2 support access required. A Coritan account that is not a member gets 403 Not a member of this organization.

On coritan.com, the actions that move money, end something or hand the organization over ask you to confirm it is you before they go through. They include handing the organization to another member and deleting it; changing a member's role, removing a member, signing them out everywhere and emailing them a password link; marking an invoice paid; adding credit to a customer's wallet; and, in Commerce, refunding or cancelling a store order, settling a return (its refund, an exchange's new items or a claim's replacement), and sending or scheduling an email campaign. An API key is never asked: what its scopes allow is what holds it.

The dialog Confirm it is you asks for your password or, when two-factor sign-in is on for your account, a code from your authenticator or one of your recovery codes, since the password alone is not enough then. Select Confirm and the action goes through. The dashboard does not ask again for 10 minutes in that organization, unless you reload the page. The audit log records every try, right or wrong, and after ten tries in five minutes you have to wait before trying again.

Through the API, send your password, or while two-factor sign-in is on a code (the current one from your authenticator, or one of your recovery codes, which is then used up):

Shell
curl -X POST https://api.coritan.com/api/v1/orgs/acme/step-up \
  -H "Authorization: Bearer $CORITAN_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"code": "123456"}'

The answer has token, expires_at and max_age_seconds. Send the token as the X-Org-Step-Up header on that organization's requests until it expires. Without it, a route that asks first answers 403 with reauth_required.

Answer Why
400 with code_required Two-factor sign-in is on for the account, so a password alone is refused: send a code from the authenticator or a recovery code.
400 with step_up_failed The password or the code is wrong.
422 The body has neither a password nor a code, or both.
429 More than ten tries in five minutes.
400 with use_staff_reauth The access token is a staff console session's. The staff console confirms with its own step-up.

The staff console uses the same roles. The lowest role that can use each area:

Area Lowest role
Search, orders and the operations summary Read only
The support inbox and your own activity Tier 1 support
The Live page Tier 1 support
Reading alerts and the bell Read only
Seeing alert rules Tier 1 support
Your own settings on My account: password, push notifications, saved views Read only; sharing a saved view needs Tier 3 support
Moderating the community Tier 1 support; some tasks need Tier 3
Moderating the community chat Tier 1 support; bans, blocks and pausing need Tier 3, the settings an admin
Watching server consoles and logs Tier 2 support
Customers, servers, customer services and notices Tier 3 support
Coupons Tier 3 support to see them, billing to change them
Refund requests Tier 3 support to see them, billing to decide them
Invoices Tier 3 support to see them, billing to change them
Transactions, disputes, dunning, Analytics and reports Billing
Adding, changing and testing alert rules, and the email digest Billing
The whole activity log and its CSV export Admin
The team and the console's settings Admin, for changes

Within an area, some actions need a higher role than reading it does. The actions that move money, end things or open a customer's account also need a recent step-up: you confirm your password or a code from your authenticator, and the confirmation lasts 10 minutes. They include adding credit, refunding or charging an invoice, marking it paid, cancelling an unpaid one, deciding a refund request, closing a customer's account, acting as a customer, terminating a service, restoring or deleting a backup or snapshot, and changing a teammate's role or customer account, removing them or ending their sessions. Sign in to the staff console explains the check.

An organization API key has no role. It carries scopes instead, and it works on the Commerce API only.

API operations on this page

MethodPathWhat it does
POST/api/v1/orgs/{org_slug}/step-upStep up