NextPress documentation

API key permissions

Every API key permission, what it allows, which presets include it, and which permission each kind of request needs.

On this page

A permission names one thing an API key may do. In error answers it is called a scope. A write permission always includes the matching read permission: posts:write also allows posts:read.

Content permissions

Each kind of content has a read and a write permission. Write covers create, update and delete.

ContentReadWriteCovers
Pagespages:readpages:writePages and their blocks, form answers, page files
Postsposts:readposts:writeBlog posts and their content
Blogsblogs:readblogs:writeBlogs and blog settings
Templatestemplates:readtemplates:writeTemplates and pre-designed blocks
Commentscomments:readcomments:writeComments and moderation
Mediamedia:readmedia:writeUploads and the media library
Themesthemes:readthemes:writeThemes and which one is active
Pluginsplugins:readplugins:writePlugins

Other permissions

PermissionLabel in the dashboardWhat it allows
preview:writePreview linksCreate time-limited preview links. Viewing a preview also needs read access to the page or post
hooks:readView hooksList registered hooks
dashboard:readView dashboard statsRead the site's summary counts
settings:readRead settingsRead site settings, options and site details
settings:writeEdit settingsChange site settings, options and site details
users:readRead usersRead accounts, and who has which role on the site
users:writeManage usersChange accounts, roles and invite links
sites:readRead sitesRead the sites of the install
sites:writeManage sitesCreate, update and delete sites
system:readRead system infoRead release and upgrade information
system:writeSystem actionsRun imports and other system tools

Presets

PermissionContent editorPosts editorRead onlyFull access
All content readYesposts:read onlyYesYes
All content writeYesposts:write onlyNoYes
hooks:read, dashboard:readYesNoYesYes
preview:writeYesYesNoYes
settings:readNoNoYesYes
Settings, users, sites and system writeNoNoNoYes

Requests that need no key, or only the dashboard

  • Published content through the public API, the health check, and opening a preview link need no key.
  • Opening and joining through an invite link need no key.
  • API keys are created, changed and revoked in the dashboard.
  • Dashboard updates and AI settings accept only a signed-in dashboard session. A key is refused there.

Requests not listed

A request that matches no rule needs every permission. Only a Full access key can make it.

Older keys

Keys made before per-content permissions may hold content:read or content:write. They still work: content:read allows reading all content, and content:write allows writing it.

Next steps