Skip to main content
POST
/
api
/
v1
/
role-mining
/
suggestions
/
{id}
/
state
UpdateSuggestionState
package main

import(
	"context"
	"github.com/conductorone/conductorone-sdk-go/pkg/models/shared"
	conductoronesdkgo "github.com/conductorone/conductorone-sdk-go"
	"github.com/conductorone/conductorone-sdk-go/pkg/models/operations"
	"log"
)

func main() {
    ctx := context.Background()

    s := conductoronesdkgo.New(
        conductoronesdkgo.WithSecurity(shared.Security{
            BearerAuth: "<YOUR_BEARER_TOKEN_HERE>",
            Oauth: "<YOUR_OAUTH_HERE>",
        }),
    )

    res, err := s.RoleMiningManagement.UpdateSuggestionState(ctx, operations.C1APIRoleMiningManagementV1RoleMiningManagementServiceUpdateSuggestionStateRequest{
        ID: "<id>",
    })
    if err != nil {
        log.Fatal(err)
    }
    if res.UpdateSuggestionStateResponse != nil {
        // handle response
    }
}
{
  "suggestion": {
    "avgCoverage": 123,
    "cohortFilters": [
      {
        "attribute": "<string>",
        "values": [
          "<string>"
        ]
      }
    ],
    "cohortSize": 123,
    "confidence": 123,
    "createdAt": "2023-11-07T05:31:56Z",
    "createdCatalogId": "<string>",
    "description": "<string>",
    "dimensionCount": 123,
    "entitlements": [
      {
        "appDisplayName": "<string>",
        "appId": "<string>",
        "appResourceDisplayName": "<string>",
        "appResourceTypeDisplayName": "<string>",
        "coverage": 123,
        "entitlementDisplayName": "<string>",
        "entitlementId": "<string>",
        "grantedCount": 123
      }
    ],
    "existingProfileMatches": [
      {
        "catalogDisplayName": "<string>",
        "catalogId": "<string>",
        "matchType": "ACCESS_PROFILE_MATCH_TYPE_UNSPECIFIED",
        "missingEntitlements": [
          {
            "appDisplayName": "<string>",
            "appId": "<string>",
            "appResourceDisplayName": "<string>",
            "appResourceTypeDisplayName": "<string>",
            "coverage": 123,
            "entitlementDisplayName": "<string>",
            "entitlementId": "<string>",
            "grantedCount": 123
          }
        ],
        "overlapRatio": 123
      }
    ],
    "id": "<string>",
    "insights": [
      "<string>"
    ],
    "lastGeneratedAt": "2023-11-07T05:31:56Z",
    "runId": "<string>",
    "suggestedName": "<string>",
    "suggestionState": "SUGGESTION_STATE_UNSPECIFIED",
    "updatedAt": "2023-11-07T05:31:56Z",
    "usersWithAll": 123
  }
}

Documentation Index

Fetch the complete documentation index at: https://conductorone-ian-account-to-user-pipeline.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Authorization
string
header
required

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() function.

Path Parameters

id
string
required

The ID of the role mining suggestion to update.

Body

application/json

The UpdateSuggestionStateRequest message.

createdCatalogId
string

The ID of the access profile created from this suggestion, set when accepting.

state
enum<string>

The new state to transition the suggestion to.

Available options:
SUGGESTION_STATE_UNSPECIFIED,
SUGGESTION_STATE_NEW,
SUGGESTION_STATE_DISMISSED,
SUGGESTION_STATE_ACCEPTED

Response

200 - application/json

Successful response

The UpdateSuggestionStateResponse message.

suggestion
Role Mining Management Suggestion · object

The RoleMiningManagementSuggestion message.