Posit Content Permissions API
The Content Permissions API from Posit — 2 operation(s) for content permissions.
The Content Permissions API from Posit — 2 operation(s) for content permissions.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/posit-content-permissions-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
contact:
email: support@posit.co
name: Posit Connect Support
url: https://support.posit.co/hc/en-us
description: '## Overview
The Posit Connect Server API can be used to perform certain
user actions remotely.'
license:
name: Commercial. Copyright 2015-2026 Posit Software, PBC. All Rights Reserved.
url: https://posit.co/about/eula/
termsOfService: https://posit.co/about/eula/
title: Posit Connect API Reference Content Permissions API
version: 1.0.1
servers:
- url: /__api__
security:
- apiKey: []
tags:
- name: Content Permissions
paths:
/v1/content/{guid}/permissions:
get:
description: 'List the permissions for this content item.
There will be one permission item for each user or group
listed in the ACL for this content item.'
operationId: listContentPermissions
parameters:
- in: path
name: guid
required: true
schema:
format: uuid
type: string
responses:
'200':
content:
application/json:
schema:
items:
$ref: '#/components/schemas/Permission'
type: array
description: Successful response.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: The requested operation is invalid.
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: The requested operation requires authentication.
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: You do not have permission to perform this operation.
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: The requested object does not exist.
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: A server error occurred.
summary: List permissions
tags:
- Content Permissions
post:
description: Upsert a user or group to the permissions for this content item.
operationId: addContentPermission
parameters:
- in: path
name: guid
required: true
schema:
format: uuid
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PermissionInput'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Permission'
description: Successful response.
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/Permission'
description: Successful response.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: The requested operation is invalid.
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: The requested operation requires authentication.
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: You do not have permission to perform this operation.
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: The requested object does not exist.
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: A server error occurred.
summary: Add or update permission
tags:
- Content Permissions
/v1/content/{guid}/permissions/{id}:
delete:
description: Delete a single permission entry for the content item, given its ID.
operationId: deleteContentPermission
parameters:
- in: path
name: guid
required: true
schema:
format: uuid
type: string
- in: path
name: id
required: true
schema:
type: string
responses:
'204':
description: Successful response.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: The requested operation is invalid.
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: The requested operation requires authentication.
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: You do not have permission to perform this operation.
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: The requested object does not exist.
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: A server error occurred.
summary: Delete permission
tags:
- Content Permissions
get:
description: Get a single permission entry for the content item, given its ID.
operationId: getContentPermission
parameters:
- in: path
name: guid
required: true
schema:
format: uuid
type: string
- in: path
name: id
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Permission'
description: Successful response.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: The requested operation is invalid.
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: The requested operation requires authentication.
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: You do not have permission to perform this operation.
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: The requested object does not exist.
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: A server error occurred.
summary: Get permission
tags:
- Content Permissions
put:
description: Update a permission entry for this content item.
operationId: updateContentPermission
parameters:
- in: path
name: guid
required: true
schema:
format: uuid
type: string
- in: path
name: id
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PermissionInput'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Permission'
description: Successful response.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: The requested operation is invalid.
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: The requested operation requires authentication.
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: You do not have permission to perform this operation.
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: The requested object does not exist.
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/APIError'
description: A server error occurred.
summary: Update permission
tags:
- Content Permissions
components:
schemas:
APIError:
additionalProperties: false
description: The error object returned by the API on failure.
properties:
code:
description: The specific code for the type of error returned. See the [API error codes reference](#api-error-codes) for the full set of values.
type: integer
error:
description: A description of the problem that was encountered.
type: string
payload:
description: Additional error details, if any. The structure varies by error type.
type:
- object
- 'null'
required:
- code
- error
type: object
PermissionInput:
additionalProperties: false
description: The fields that can be specified when creating or updating a content permission item.
properties:
principal_guid:
description: The identifier of the principal (user or group).
example: 62543474-5716-4423-92d1-b3a22163eb49
format: uuid
type: string
principal_type:
description: The type of principal.
example: user
type: string
role:
description: 'The level of access that the principal has been
given to this content item.'
example: viewer
type: string
send_email:
description: 'Whether to send an email notification to the
principal being added. Only applies when creating
a new permission (`POST`); ignored on update
(`PUT`). Defaults to `false` when not provided.'
example: false
type: boolean
type: object
Permission:
additionalProperties: false
description: Defines the permission level that a user or group has been granted to a content item.
properties:
id:
description: The identifier for this permission entry.
example: '101'
type: string
content_guid:
description: The identifier of the content item.
example: 25438b83-ea6d-4839-ae8e-53c52ac5f9ce
format: uuid
type: string
principal_guid:
description: The identifier of the principal (user or group) listed in the ACL.
example: 62543474-5716-4423-92d1-b3a22163eb49
format: uuid
type: string
principal_type:
description: The type of principal.
example: user
type: string
role:
description: 'The level of access that the principal has been
given to this content item.'
example: viewer
type: string
type: object
securitySchemes:
apiKey:
description: 'Prefix your API key with `Key `, e.g. `Key ABC123`.
'
in: header
name: Authorization
type: apiKey