Authentication & Keys

All API requests require a Bearer token in the Authorization header.

curl -H "Authorization: Bearer cyp_pub_xxxxxxxxxxxxxxxxxxxx" \

https://projects.cyrus365.com/api/v1/projects

API Key Types

There are two types of API keys, both using the cyp_pub_ prefix:

TypeCreated InAccess Scope
User-levelSettings → API KeysAll projects the key owner can access
Project-levelProject Settings → API tabSingle project only
Keys are displayed only once at creation — store them securely.

User-Level Keys

Created from Settings → API Keys in your dashboard. Access is based on the key owner's permissions across all their projects. Supports all scopes including projects.read, projects.write, and the wildcard * scope.

Project-Level Keys

Created from a project's Settings → API tab by project Owners or Admins. These keys are scoped to a single project with restricted scopes:

  • Cannot use projects.read, projects.write, or wildcard * scopes
  • Settings-created project keys work as the project owner's identity, so long-running automations keep working even if the creating admin is later removed

Project-level keys are ideal for CI/CD pipelines, Slack integrations, or any automation that only needs access to one project.

Scopes

Scopes control what an API key can access. Assign scopes when creating a key.

ScopeDescriptionProject-Level?
projects.readList and view projectsUser-level only
projects.writeCreate and update projectsUser-level only
tasks.readList and view tasks (includes subtasks)Yes
tasks.writeCreate, update, delete tasksYes
comments.readView task commentsYes
comments.writeCreate commentsYes
sprints.readList sprintsYes
sprints.writeCreate and manage sprintsYes
groups.readList groups (columns)Yes
groups.writeCreate and manage groupsYes
members.readList project membersYes
tags.readList tagsYes
tags.writeCreate project tagsYes
calendar.readView calendar eventsYes
calendar.writeManage calendar eventsYes
activity.readView task activity logsYes
webhooks.manageManage webhook subscriptionsYes
Project-level keys support 15 scopes (all except projects.read, projects.write, and the wildcard *).

Rate Limits

Rate limits are based on your organization's pricing plan and apply to all PUBLIC-tier API keys:

PlanRate Limit
FREE60 req/min
PRO300 req/min
FOUNDER300 req/min
ENTERPRISE1,200 req/min
If the plan cannot be determined, the FREE limit (60 req/min) applies as default. Rate limits are resolved dynamically — upgrading your plan takes effect within 10 minutes without regenerating keys.

Next Steps

  • Endpoints — Browse all available API endpoints
  • Webhooks — Subscribe to real-time events