Relativity Permissions Access Control API

External public API for managing role assignments. Role keys must use the r1_ prefix (e.g. r1_staging_viewer). End user token is required

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/relativity-permissions-access-control-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 email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

relativity-permissions-access-control-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Analytics.Conceptual.Service.Interfaces.Public.V1 AnnotationService Permissions Access Control API
  description: Analytics.Conceptual.Service.Interfaces.Public
  version: V1
servers:
- url: /Relativity.REST/api
  description: The URL prefix for all Kepler services
tags:
- name: Permissions Access Control
  description: "External public API for managing role assignments.\r\nRole keys must use the r1_ prefix (e.g. r1_staging_viewer).\r\nEnd user token is required"
paths:
  /access-control/public/v1/role-assignments/{nodeType}/{nodeKey}:
    get:
      tags:
      - Permissions Access Control
      summary: List role assignments on a node.
      parameters:
      - name: nodeType
        in: path
        description: The type of the node. Only 'fileshare' is supported.
        required: true
        schema:
          type: string
      - name: nodeKey
        in: path
        description: The key of the node.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RoleAssignment'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RoleAssignment'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RoleAssignment'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '500':
          description: Internal Server Error
    post:
      tags:
      - Permissions Access Control
      summary: Batch assign and/or revoke roles on a node.
      parameters:
      - name: nodeType
        in: path
        description: The type of the node. Only 'fileshare' is supported.
        required: true
        schema:
          type: string
      - name: nodeKey
        in: path
        description: The key of the node.
        required: true
        schema:
          type: string
      requestBody:
        description: The role assignment/revocation request.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExternalBulkRoleAssignmentRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/ExternalBulkRoleAssignmentRequest'
          application/*+json:
            schema:
              $ref: '#/components/schemas/ExternalBulkRoleAssignmentRequest'
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '500':
          description: Internal Server Error
  /access-control/public/v1/role-assignments/instance:
    get:
      tags:
      - Permissions Access Control
      summary: List role assignments on the instance (tenant) node.
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RoleAssignment'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RoleAssignment'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RoleAssignment'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '500':
          description: Internal Server Error
    post:
      tags:
      - Permissions Access Control
      summary: Batch assign and/or revoke roles on the instance (tenant) node.
      requestBody:
        description: The role assignment/revocation request.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExternalBulkRoleAssignmentRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/ExternalBulkRoleAssignmentRequest'
          application/*+json:
            schema:
              $ref: '#/components/schemas/ExternalBulkRoleAssignmentRequest'
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '500':
          description: Internal Server Error
components:
  schemas:
    ExternalRoleAssignmentPair:
      required:
      - groupId
      - roleKey
      type: object
      properties:
        roleKey:
          minLength: 1
          type: string
          description: The role key with r1_ prefix (e.g. r1_staging_viewer).
        groupId:
          minLength: 1
          type: string
          description: The group identifier.
      additionalProperties: false
      description: A role and group pair used in external bulk operations.
    RoleAssignment:
      required:
      - groupId
      - roleKey
      type: object
      properties:
        roleKey:
          minLength: 1
          type: string
          description: The role key with r1_ prefix (e.g. r1_staging_viewer).
        groupId:
          minLength: 1
          type: string
          description: The group identifier.
      additionalProperties: false
      description: A single role assignment entry in the external API.
    ExternalBulkRoleAssignmentRequest:
      type: object
      properties:
        assign:
          type: array
          items:
            $ref: '#/components/schemas/ExternalRoleAssignmentPair'
          description: Role assignments to apply. Role keys must use the r1_ prefix.
          nullable: true
        revoke:
          type: array
          items:
            $ref: '#/components/schemas/ExternalRoleAssignmentPair'
          description: Role assignments to revoke. Role keys must use the r1_ prefix.
          nullable: true
      additionalProperties: false
      description: "Request to batch assign and/or revoke roles via the external API.\r\nRole keys must use the r1_ prefix (e.g. r1_staging_viewer)."