Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.agentmark.co/llms.txt

Use this file to discover all available pages before exploring further.

AgentMark uses a role-based access control (RBAC) system with granular permissions at the organization and app level.

Built-in roles

Every organization member is assigned one of these roles:
RoleAccess
OwnerFull access, including billing and subscription management. Assigned to the org creator. Only Owners can promote other members to Owner.
AdminFull access to all org resources, settings, and member management. Read-only billing — only Owners can change the subscription plan or payment method.
WriteCreate and edit prompts, datasets, and API keys; run experiments; view traces. Read-only on apps — only Admins and Owners can create or delete apps. Cannot manage members or billing.
ReadRead-only access to all org resources. Cannot create, edit, or delete anything.

Inviting members

Invite team members from Settings → Members in the AgentMark Dashboard. Invitations are sent by email and expire after 7 days. Each invitation includes a role assignment.

Custom roles and app-level access

Team tier and above. Custom roles and app-level role assignments require a Team or Enterprise subscription.

Custom roles

Create custom roles with cherry-picked permissions for fine-grained access control:
  1. Navigate to Settings → Roles in the Dashboard
  2. Click Create role
  3. Name the role and select the specific permissions to grant
  4. Assign the role to members
Custom roles draw from the full permission catalog — you can grant access to specific features (e.g., “can view traces and run experiments but cannot edit prompts or manage billing”).

App-level roles

Assign different roles per app within the same organization. A member might have Write access to your staging app but Read access to production. To configure per-app access, open Settings → Members in the AgentMark Dashboard, click the row action menu next to a member, and choose Manage app access. From the dialog, toggle each app on or off and set a built-in or custom role per app.

API keys

API keys are scoped to individual apps. Each key grants access only to that app’s resources (prompts, traces, experiments).
  • Create and manage keys from the app-level Settings → API keys page in the Dashboard (under /orgs/<org>/apps/<app>/settings/api-keys)
  • Keys are rate-limited by tier (see Billing and usage for limits)
  • Key names must be unique within an app
For a step-by-step Dashboard walkthrough with screenshots, see API keys.

Role presets

Each API key carries either a preset role or a custom permission set. When you create or edit a key, choose one of these presets or select Custom to toggle individual permissions.
RoleAccess
SDKtrace.write, template.read, score.write. CLI and SDK integrations that ingest traces, read templates, and write scores.
Read-Onlytrace.read, span.read, session.read, score.read, dataset.read, metrics.read. Dashboards and BI tools.
Full AccessEvery permission in the catalog. Admin and CI pipelines.
CustomToggle individual permissions. At least one permission is required.

Permission catalog

The custom permission picker exposes these permissions, grouped by resource:
PermissionDescription
trace.writeIngest new traces via POST /v1/traces
trace.readRead traces and graph views
span.readRead spans via GET /v1/spans
session.readRead sessions
template.readRead prompt templates
score.readRead scores, aggregations, and score names
score.writeCreate scores
score.deleteDelete scores
dataset.readRead datasets
dataset.writeCreate dataset rows
metrics.readRead aggregate metrics
experiment.readRead experiments, runs, and prompt execution logs
annotation_queue.readRead annotation queues and queue items
annotation_queue.writeCreate annotation queues and queue items
annotation_queue.deleteDelete annotation queues
annotation_queue.reviewSubmit reviews to annotation queues
See Endpoint permissions for the full mapping of API endpoints to permissions. When a key attempts an operation it does not have permission for, the API returns 403 Forbidden.

Creating a scoped key

  1. Navigate to the app’s Settings → API keys page in the Dashboard
  2. Click Create API key
  3. Enter a name for the key
  4. Select a role or choose Custom to toggle individual permissions
  5. Click Create — copy the key immediately, as it is only shown once

Editing key permissions

You can change an existing key’s permissions at any time:
  1. Open the app’s Settings → API keys page
  2. Click the pencil icon next to the key you want to modify
  3. Update the role or individual permissions
  4. Save your changes — the key value stays the same

SSO enforcement

Team and Enterprise organizations can enforce SAML SSO for all members. When SSO enforcement is enabled, members must authenticate through your identity provider — no password fallback is available. See Security for SSO configuration details.

Have Questions?

We’re here to help! Choose the best way to reach us: