> ## Documentation Index
> Fetch the complete documentation index at: https://developers.aptranet.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Assign a Cloud Shield role

> Requires the rbac Business add-on and an organization administrator. Restricts existing project members; does not grant project access.



## OpenAPI

````yaml /openapi-shield.json put /shield/roles
openapi: 3.1.0
info:
  title: Aptranet Cloud Shield API
  version: 1.0.0
  description: >-
    Public project-scoped API. Use the access key and secret together.
    Browser-only organization administration is documented separately. Request
    schemas and query parameters follow the service operation allowlist. Plan
    entitlements apply in addition to API permissions. Some analytics and action
    responses have operation-specific JSON shapes; where the implementation
    provides no stable response contract, the reference deliberately does not
    invent one.
servers:
  - url: https://api.aptranet.com
security:
  - bearerAuth: []
    apiSecret: []
paths:
  /shield/roles:
    put:
      tags:
        - Cloud Shield RBAC
      summary: Assign a Cloud Shield role
      description: >-
        Requires the rbac Business add-on and an organization administrator.
        Restricts existing project members; does not grant project access.
      operationId: PUT_shield_roles
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Role'
      responses:
        2XX:
          description: Successful response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
        default:
          description: >-
            Request rejected or service unavailable. See the error code and
            description; refresh before retrying a mutation whose result is
            uncertain.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    Role:
      type: object
      properties:
        user_id:
          type: string
        role:
          type: string
          enum:
            - viewer
            - editor
            - administrator
      required:
        - user_id
        - role
    Error:
      type: object
      properties:
        error:
          type: string
        error_description:
          type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Project API access key.
    apiSecret:
      type: apiKey
      in: header
      name: Aptranet-Secret
      description: Current secret for the access key.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.