> ## Documentation Index
> Fetch the complete documentation index at: https://www.c1.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Update Role Mining Config

> Update the role mining configuration, such as cohort hints, max suggestions, and minimum cohort size.



## OpenAPI

````yaml https://spec.speakeasy.com/conductor-one/conductorone/my-source-with-code-samples post /api/v1/role-mining/config
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/role-mining/config:
    post:
      tags:
        - Role Mining
      summary: Update Role Mining Config
      description: >-
        Update the role mining configuration, such as cohort hints, max
        suggestions, and minimum cohort size.
      operationId: >-
        c1.api.role_mining_management.v1.RoleMiningManagementService.UpdateRoleMiningConfig
      requestBody:
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/c1.api.role_mining_management.v1.UpdateRoleMiningConfigRequest
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/c1.api.role_mining_management.v1.UpdateRoleMiningConfigResponse
          description: Successful response
      x-codeSamples:
        - lang: go
          label: UpdateRoleMiningConfig
          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\"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.RoleMiningManagement.UpdateRoleMiningConfig(ctx, nil)\n    if err != nil {\n        log.Fatal(err)\n    }\n    if res.UpdateRoleMiningConfigResponse != 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.roleMiningManagement.updateRoleMiningConfig();

              console.log(result);
            }


            run();
components:
  schemas:
    c1.api.role_mining_management.v1.UpdateRoleMiningConfigRequest:
      description: The UpdateRoleMiningConfigRequest message.
      properties:
        cohortHints:
          description: >-
            Hints that guide the analysis to prioritize specific user attributes
            and values when forming cohorts.
          items:
            $ref: >-
              #/components/schemas/c1.api.role_mining_management.v1.CohortHintInput
          nullable: true
          readOnly: false
          type: array
        maxSuggestions:
          description: Maximum number of suggestions the analysis should produce per run.
          format: int32
          readOnly: false
          type: integer
        minCohortSize:
          description: >-
            Minimum number of users a cohort must contain to generate a
            suggestion.
          format: int32
          readOnly: false
          type: integer
      title: Update Role Mining Config Request
      type: object
      x-speakeasy-name-override: UpdateRoleMiningConfigRequest
    c1.api.role_mining_management.v1.UpdateRoleMiningConfigResponse:
      description: The UpdateRoleMiningConfigResponse message.
      properties:
        config:
          $ref: >-
            #/components/schemas/c1.api.role_mining_management.v1.RoleMiningManagementConfig
      title: Update Role Mining Config Response
      type: object
      x-speakeasy-name-override: UpdateRoleMiningConfigResponse
    c1.api.role_mining_management.v1.CohortHintInput:
      description: The CohortHintInput message.
      properties:
        attribute:
          description: >-
            The user attribute name to use for cohort grouping (e.g.,
            "department", "job_title").
          readOnly: false
          type: string
        priority:
          description: >-
            Relative priority of this hint. Higher values cause the analysis to
            weight this attribute more heavily.
          format: int32
          readOnly: false
          type: integer
        values:
          description: >-
            Specific attribute values to focus on. If empty, all values for the
            attribute are considered.
          items:
            type: string
          nullable: true
          readOnly: false
          type: array
      title: Cohort Hint Input
      type: object
      x-speakeasy-name-override: CohortHintInput
    c1.api.role_mining_management.v1.RoleMiningManagementConfig:
      description: The RoleMiningManagementConfig message.
      properties:
        cohortHints:
          description: >-
            Configured cohort hints that guide which user attributes the
            analysis prioritizes.
          items:
            $ref: >-
              #/components/schemas/c1.api.role_mining_management.v1.CohortHintView
          nullable: true
          readOnly: false
          type: array
        maxSuggestions:
          description: Maximum number of suggestions the analysis will produce per run.
          format: int32
          readOnly: false
          type: integer
        minCohortSize:
          description: >-
            Minimum number of users a cohort must contain to generate a
            suggestion.
          format: int32
          readOnly: false
          type: integer
      title: Role Mining Management Config
      type: object
      x-speakeasy-name-override: RoleMiningManagementConfig
    c1.api.role_mining_management.v1.CohortHintView:
      description: The CohortHintView message.
      properties:
        attribute:
          description: The user attribute name used for cohort grouping.
          readOnly: false
          type: string
        priority:
          description: Relative priority of this hint.
          format: int32
          readOnly: false
          type: integer
        values:
          description: The specific attribute values targeted by this hint.
          items:
            type: string
          nullable: true
          readOnly: false
          type: array
      title: Cohort Hint View
      type: object
      x-speakeasy-name-override: CohortHintView
  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

````