> ## Documentation Index
> Fetch the complete documentation index at: https://conductorone-docs-mcp-bridge-private-server.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Get

> Get a role by id.



## OpenAPI

````yaml https://spec.speakeasy.com/conductor-one/conductorone/my-source-with-code-samples get /api/v1/iam/roles/{role_id}
openapi: 3.1.0
info:
  description: The C1 API is a HTTP API for managing C1 resources.
  title: C1 API
  version: 0.1.0-alpha
servers:
  - description: The C1 API server for the current tenant.
    url: https://{tenantDomain}.conductor.one
    variables:
      tenantDomain:
        default: example
        description: The domain of the tenant to use for this request.
security:
  - bearerAuth: []
    oauth: []
paths:
  /api/v1/iam/roles/{role_id}:
    get:
      tags:
        - Role
      summary: Get
      description: Get a role by id.
      operationId: c1.api.iam.v1.Roles.Get
      parameters:
        - in: path
          name: role_id
          required: true
          schema:
            description: The roleId field.
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/c1.api.iam.v1.GetRolesResponse'
          description: The GetRolesResponse message contains the retrieved role.
      x-codeSamples:
        - lang: go
          label: Get
          source: "package main\n\nimport(\n\t\"context\"\n\t\"github.com/conductorone/conductorone-sdk-go/pkg/models/shared\"\n\tconductoronesdkgo \"github.com/conductorone/conductorone-sdk-go\"\n\t\"github.com/conductorone/conductorone-sdk-go/pkg/models/operations\"\n\t\"log\"\n)\n\nfunc main() {\n    ctx := context.Background()\n\n    s := conductoronesdkgo.New(\n        conductoronesdkgo.WithSecurity(shared.Security{\n            BearerAuth: \"<YOUR_BEARER_TOKEN_HERE>\",\n            Oauth: \"<YOUR_OAUTH_HERE>\",\n        }),\n    )\n\n    res, err := s.Roles.Get(ctx, operations.C1APIIamV1RolesGetRequest{\n        RoleID: \"<id>\",\n    })\n    if err != nil {\n        log.Fatal(err)\n    }\n    if res.GetRolesResponse != nil {\n        // handle response\n    }\n}"
        - lang: typescript
          label: Typescript (SDK)
          source: >-
            import { ConductoroneSDKTypescript } from
            "conductorone-sdk-typescript";


            const conductoroneSDKTypescript = new ConductoroneSDKTypescript({
              security: {
                bearerAuth: "<YOUR_BEARER_TOKEN_HERE>",
                oauth: "<YOUR_OAUTH_HERE>",
              },
            });


            async function run() {
              const result = await conductoroneSDKTypescript.roles.get({
                roleId: "<id>",
              });

              console.log(result);
            }


            run();
components:
  schemas:
    c1.api.iam.v1.GetRolesResponse:
      description: The GetRolesResponse message contains the retrieved role.
      properties:
        role:
          oneOf:
            - $ref: '#/components/schemas/c1.api.iam.v1.Role'
            - type: 'null'
      title: Get Roles Response
      type: object
      x-speakeasy-name-override: GetRolesResponse
    c1.api.iam.v1.Role:
      description: Role is a role that can be assigned to a user in ConductorOne.
      properties:
        createdAt:
          format: date-time
          readOnly: true
          type:
            - string
            - 'null'
        deletedAt:
          format: date-time
          readOnly: true
          type:
            - string
            - 'null'
        displayName:
          description: The display name of the role.
          type:
            - string
            - 'null'
        id:
          description: The id of the role.
          readOnly: true
          type:
            - string
            - 'null'
        name:
          description: The internal name of the role.
          readOnly: true
          type:
            - string
            - 'null'
        permissions:
          description: The list of permissions this role has.
          items:
            type: string
          type:
            - array
            - 'null'
        serviceRoles:
          description: The list of serviceRoles that this role has.
          items:
            type: string
          type:
            - array
            - 'null'
        systemApiOnly:
          description: >-
            This Role is intended for API keys usage only, and the user
            interface may not function as expected.
          readOnly: true
          type:
            - boolean
            - 'null'
        systemBuiltin:
          description: >-
            The system builtin field. If this field is set, the role is not
            editable.
          readOnly: true
          type:
            - boolean
            - 'null'
        updatedAt:
          format: date-time
          readOnly: true
          type:
            - string
            - 'null'
      title: Role
      type: object
      x-speakeasy-name-override: Role
  securitySchemes:
    bearerAuth:
      scheme: bearer
      type: http
    oauth:
      description: >-
        This API uses OAuth2 with the Client Credential flow.

        Client Credentials must be sent in the BODY, not the headers.

        For an example of how to implement this, refer to the
        [c1TokenSource.Token()](https://github.com/ConductorOne/conductorone-sdk-go/blob/3375fe7c0126d17e7ec4e711693dee7b791023aa/token_source.go#L101-L187)
        function.
      flows:
        clientCredentials:
          scopes: {}
          tokenUrl: /auth/v1/token
      type: oauth2

````