Posit Content Permissions API

The Content Permissions API from Posit — 2 operation(s) for content permissions.

Business capability
Identity & Access Management BC-620.20

Operations 5

GET /v1/content/{guid}/permissions List permissions #
POST /v1/content/{guid}/permissions Add or update permission #
DELETE /v1/content/{guid}/permissions/{id} Delete permission #
GET /v1/content/{guid}/permissions/{id} Get permission #
PUT /v1/content/{guid}/permissions/{id} Update permission #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/posit-content-permissions-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

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 Specification

posit-content-permissions-api-openapi.yml Raw ↑
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