package main
import(
"context"
"github.com/conductorone/conductorone-sdk-go/pkg/models/shared"
conductoronesdkgo "github.com/conductorone/conductorone-sdk-go"
"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.AccessReviewTemplate.Create(ctx, nil)
if err != nil {
log.Fatal(err)
}
if res.AccessReviewTemplateServiceCreateResponse != nil {
// handle response
}
}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.accessReviewTemplate.create();
console.log(result);
}
run();curl --request POST \
--url https://{tenantDomain}.conductor.one/api/v1/access_review_template \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"accessReviewDuration": "<string>",
"annotations": {},
"autoCloseCampaign": true,
"autoGenerateReport": true,
"autoStartCampaign": true,
"columnConfig": {
"columns": []
},
"description": "<string>",
"displayName": "<string>",
"exemptCertifiedAccessConflicts": true,
"isCampaignScheduleEnabled": true,
"notificationConfig": {
"sendClose": true,
"sendKickoff": true,
"sendReminders": true
},
"ownerIds": [
"<string>"
],
"policyId": "<string>",
"recurrenceRule": {
"endDate": "2023-11-07T05:31:56Z",
"interval": 123,
"occurrences": 123,
"startDate": "2023-11-07T05:31:56Z"
},
"reviewInstructions": "<string>",
"reviewerAttributeConfig": {
"bindings": [
{
"appId": "<string>",
"attributeKey": "<string>"
}
]
},
"scope": {
"accountCelExpression": {
"expression": "<string>"
},
"accountCriteria": {
"accountTypes": [],
"appUserStatuses": [],
"noAccountOwner": true
},
"allAccessConflicts": {},
"allAccounts": {},
"allGrants": {},
"allUsers": {},
"appAccess": {},
"appSelectionCriteria": {
"complianceFrameworkAttributeValueIds": [
"<string>"
],
"riskLevelAttributeValueIds": [
"<string>"
]
},
"celExpression": {
"expression": "<string>"
},
"grantsByCriteria": {
"accessProfileFilter": {
"excludedAccessProfileIds": [
"<string>"
],
"includedAccessProfileIds": [
"<string>"
]
},
"daysSinceAdded": "<string>",
"daysSinceLastUsed": "<string>",
"daysSinceReviewed": "<string>",
"grantsAddedBetween": {
"endDate": "2023-11-07T05:31:56Z",
"startDate": "2023-11-07T05:31:56Z"
}
},
"resourceSelection": {},
"resourceTypeSelections": {},
"selectedUsers": {
"userIds": [
"<string>"
]
},
"specificAccessConflicts": {},
"specificResources": {},
"userCriteria": {
"groupAppEntitlementsRef": [
{
"appId": "<string>",
"id": "<string>"
}
],
"managerUserIds": [
"<string>"
],
"multiUserProfileAttributes": {},
"userStatus": []
}
},
"signatureConfig": {
"meaningOfSignature": "<string>",
"requireSignature": true,
"stepUpProviderId": "<string>",
"tspUrl": "<string>"
},
"usePolicyOverride": true
}
'import requests
url = "https://{tenantDomain}.conductor.one/api/v1/access_review_template"
payload = {
"accessReviewDuration": "<string>",
"annotations": {},
"autoCloseCampaign": True,
"autoGenerateReport": True,
"autoStartCampaign": True,
"columnConfig": { "columns": [] },
"description": "<string>",
"displayName": "<string>",
"exemptCertifiedAccessConflicts": True,
"isCampaignScheduleEnabled": True,
"notificationConfig": {
"sendClose": True,
"sendKickoff": True,
"sendReminders": True
},
"ownerIds": ["<string>"],
"policyId": "<string>",
"recurrenceRule": {
"endDate": "2023-11-07T05:31:56Z",
"interval": 123,
"occurrences": 123,
"startDate": "2023-11-07T05:31:56Z"
},
"reviewInstructions": "<string>",
"reviewerAttributeConfig": { "bindings": [
{
"appId": "<string>",
"attributeKey": "<string>"
}
] },
"scope": {
"accountCelExpression": { "expression": "<string>" },
"accountCriteria": {
"accountTypes": [],
"appUserStatuses": [],
"noAccountOwner": True
},
"allAccessConflicts": {},
"allAccounts": {},
"allGrants": {},
"allUsers": {},
"appAccess": {},
"appSelectionCriteria": {
"complianceFrameworkAttributeValueIds": ["<string>"],
"riskLevelAttributeValueIds": ["<string>"]
},
"celExpression": { "expression": "<string>" },
"grantsByCriteria": {
"accessProfileFilter": {
"excludedAccessProfileIds": ["<string>"],
"includedAccessProfileIds": ["<string>"]
},
"daysSinceAdded": "<string>",
"daysSinceLastUsed": "<string>",
"daysSinceReviewed": "<string>",
"grantsAddedBetween": {
"endDate": "2023-11-07T05:31:56Z",
"startDate": "2023-11-07T05:31:56Z"
}
},
"resourceSelection": {},
"resourceTypeSelections": {},
"selectedUsers": { "userIds": ["<string>"] },
"specificAccessConflicts": {},
"specificResources": {},
"userCriteria": {
"groupAppEntitlementsRef": [
{
"appId": "<string>",
"id": "<string>"
}
],
"managerUserIds": ["<string>"],
"multiUserProfileAttributes": {},
"userStatus": []
}
},
"signatureConfig": {
"meaningOfSignature": "<string>",
"requireSignature": True,
"stepUpProviderId": "<string>",
"tspUrl": "<string>"
},
"usePolicyOverride": True
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
accessReviewDuration: '<string>',
annotations: {},
autoCloseCampaign: true,
autoGenerateReport: true,
autoStartCampaign: true,
columnConfig: {columns: []},
description: '<string>',
displayName: '<string>',
exemptCertifiedAccessConflicts: true,
isCampaignScheduleEnabled: true,
notificationConfig: {sendClose: true, sendKickoff: true, sendReminders: true},
ownerIds: ['<string>'],
policyId: '<string>',
recurrenceRule: {
endDate: '2023-11-07T05:31:56Z',
interval: 123,
occurrences: 123,
startDate: '2023-11-07T05:31:56Z'
},
reviewInstructions: '<string>',
reviewerAttributeConfig: {bindings: [{appId: '<string>', attributeKey: '<string>'}]},
scope: {
accountCelExpression: {expression: '<string>'},
accountCriteria: {accountTypes: [], appUserStatuses: [], noAccountOwner: true},
allAccessConflicts: {},
allAccounts: {},
allGrants: {},
allUsers: {},
appAccess: {},
appSelectionCriteria: {
complianceFrameworkAttributeValueIds: ['<string>'],
riskLevelAttributeValueIds: ['<string>']
},
celExpression: {expression: '<string>'},
grantsByCriteria: {
accessProfileFilter: {excludedAccessProfileIds: ['<string>'], includedAccessProfileIds: ['<string>']},
daysSinceAdded: '<string>',
daysSinceLastUsed: '<string>',
daysSinceReviewed: '<string>',
grantsAddedBetween: {endDate: '2023-11-07T05:31:56Z', startDate: '2023-11-07T05:31:56Z'}
},
resourceSelection: {},
resourceTypeSelections: {},
selectedUsers: {userIds: ['<string>']},
specificAccessConflicts: {},
specificResources: {},
userCriteria: {
groupAppEntitlementsRef: [{appId: '<string>', id: '<string>'}],
managerUserIds: ['<string>'],
multiUserProfileAttributes: {},
userStatus: []
}
},
signatureConfig: {
meaningOfSignature: '<string>',
requireSignature: true,
stepUpProviderId: '<string>',
tspUrl: '<string>'
},
usePolicyOverride: true
})
};
fetch('https://{tenantDomain}.conductor.one/api/v1/access_review_template', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://{tenantDomain}.conductor.one/api/v1/access_review_template",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'accessReviewDuration' => '<string>',
'annotations' => [
],
'autoCloseCampaign' => true,
'autoGenerateReport' => true,
'autoStartCampaign' => true,
'columnConfig' => [
'columns' => [
]
],
'description' => '<string>',
'displayName' => '<string>',
'exemptCertifiedAccessConflicts' => true,
'isCampaignScheduleEnabled' => true,
'notificationConfig' => [
'sendClose' => true,
'sendKickoff' => true,
'sendReminders' => true
],
'ownerIds' => [
'<string>'
],
'policyId' => '<string>',
'recurrenceRule' => [
'endDate' => '2023-11-07T05:31:56Z',
'interval' => 123,
'occurrences' => 123,
'startDate' => '2023-11-07T05:31:56Z'
],
'reviewInstructions' => '<string>',
'reviewerAttributeConfig' => [
'bindings' => [
[
'appId' => '<string>',
'attributeKey' => '<string>'
]
]
],
'scope' => [
'accountCelExpression' => [
'expression' => '<string>'
],
'accountCriteria' => [
'accountTypes' => [
],
'appUserStatuses' => [
],
'noAccountOwner' => true
],
'allAccessConflicts' => [
],
'allAccounts' => [
],
'allGrants' => [
],
'allUsers' => [
],
'appAccess' => [
],
'appSelectionCriteria' => [
'complianceFrameworkAttributeValueIds' => [
'<string>'
],
'riskLevelAttributeValueIds' => [
'<string>'
]
],
'celExpression' => [
'expression' => '<string>'
],
'grantsByCriteria' => [
'accessProfileFilter' => [
'excludedAccessProfileIds' => [
'<string>'
],
'includedAccessProfileIds' => [
'<string>'
]
],
'daysSinceAdded' => '<string>',
'daysSinceLastUsed' => '<string>',
'daysSinceReviewed' => '<string>',
'grantsAddedBetween' => [
'endDate' => '2023-11-07T05:31:56Z',
'startDate' => '2023-11-07T05:31:56Z'
]
],
'resourceSelection' => [
],
'resourceTypeSelections' => [
],
'selectedUsers' => [
'userIds' => [
'<string>'
]
],
'specificAccessConflicts' => [
],
'specificResources' => [
],
'userCriteria' => [
'groupAppEntitlementsRef' => [
[
'appId' => '<string>',
'id' => '<string>'
]
],
'managerUserIds' => [
'<string>'
],
'multiUserProfileAttributes' => [
],
'userStatus' => [
]
]
],
'signatureConfig' => [
'meaningOfSignature' => '<string>',
'requireSignature' => true,
'stepUpProviderId' => '<string>',
'tspUrl' => '<string>'
],
'usePolicyOverride' => true
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}HttpResponse<String> response = Unirest.post("https://{tenantDomain}.conductor.one/api/v1/access_review_template")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"accessReviewDuration\": \"<string>\",\n \"annotations\": {},\n \"autoCloseCampaign\": true,\n \"autoGenerateReport\": true,\n \"autoStartCampaign\": true,\n \"columnConfig\": {\n \"columns\": []\n },\n \"description\": \"<string>\",\n \"displayName\": \"<string>\",\n \"exemptCertifiedAccessConflicts\": true,\n \"isCampaignScheduleEnabled\": true,\n \"notificationConfig\": {\n \"sendClose\": true,\n \"sendKickoff\": true,\n \"sendReminders\": true\n },\n \"ownerIds\": [\n \"<string>\"\n ],\n \"policyId\": \"<string>\",\n \"recurrenceRule\": {\n \"endDate\": \"2023-11-07T05:31:56Z\",\n \"interval\": 123,\n \"occurrences\": 123,\n \"startDate\": \"2023-11-07T05:31:56Z\"\n },\n \"reviewInstructions\": \"<string>\",\n \"reviewerAttributeConfig\": {\n \"bindings\": [\n {\n \"appId\": \"<string>\",\n \"attributeKey\": \"<string>\"\n }\n ]\n },\n \"scope\": {\n \"accountCelExpression\": {\n \"expression\": \"<string>\"\n },\n \"accountCriteria\": {\n \"accountTypes\": [],\n \"appUserStatuses\": [],\n \"noAccountOwner\": true\n },\n \"allAccessConflicts\": {},\n \"allAccounts\": {},\n \"allGrants\": {},\n \"allUsers\": {},\n \"appAccess\": {},\n \"appSelectionCriteria\": {\n \"complianceFrameworkAttributeValueIds\": [\n \"<string>\"\n ],\n \"riskLevelAttributeValueIds\": [\n \"<string>\"\n ]\n },\n \"celExpression\": {\n \"expression\": \"<string>\"\n },\n \"grantsByCriteria\": {\n \"accessProfileFilter\": {\n \"excludedAccessProfileIds\": [\n \"<string>\"\n ],\n \"includedAccessProfileIds\": [\n \"<string>\"\n ]\n },\n \"daysSinceAdded\": \"<string>\",\n \"daysSinceLastUsed\": \"<string>\",\n \"daysSinceReviewed\": \"<string>\",\n \"grantsAddedBetween\": {\n \"endDate\": \"2023-11-07T05:31:56Z\",\n \"startDate\": \"2023-11-07T05:31:56Z\"\n }\n },\n \"resourceSelection\": {},\n \"resourceTypeSelections\": {},\n \"selectedUsers\": {\n \"userIds\": [\n \"<string>\"\n ]\n },\n \"specificAccessConflicts\": {},\n \"specificResources\": {},\n \"userCriteria\": {\n \"groupAppEntitlementsRef\": [\n {\n \"appId\": \"<string>\",\n \"id\": \"<string>\"\n }\n ],\n \"managerUserIds\": [\n \"<string>\"\n ],\n \"multiUserProfileAttributes\": {},\n \"userStatus\": []\n }\n },\n \"signatureConfig\": {\n \"meaningOfSignature\": \"<string>\",\n \"requireSignature\": true,\n \"stepUpProviderId\": \"<string>\",\n \"tspUrl\": \"<string>\"\n },\n \"usePolicyOverride\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{tenantDomain}.conductor.one/api/v1/access_review_template")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"accessReviewDuration\": \"<string>\",\n \"annotations\": {},\n \"autoCloseCampaign\": true,\n \"autoGenerateReport\": true,\n \"autoStartCampaign\": true,\n \"columnConfig\": {\n \"columns\": []\n },\n \"description\": \"<string>\",\n \"displayName\": \"<string>\",\n \"exemptCertifiedAccessConflicts\": true,\n \"isCampaignScheduleEnabled\": true,\n \"notificationConfig\": {\n \"sendClose\": true,\n \"sendKickoff\": true,\n \"sendReminders\": true\n },\n \"ownerIds\": [\n \"<string>\"\n ],\n \"policyId\": \"<string>\",\n \"recurrenceRule\": {\n \"endDate\": \"2023-11-07T05:31:56Z\",\n \"interval\": 123,\n \"occurrences\": 123,\n \"startDate\": \"2023-11-07T05:31:56Z\"\n },\n \"reviewInstructions\": \"<string>\",\n \"reviewerAttributeConfig\": {\n \"bindings\": [\n {\n \"appId\": \"<string>\",\n \"attributeKey\": \"<string>\"\n }\n ]\n },\n \"scope\": {\n \"accountCelExpression\": {\n \"expression\": \"<string>\"\n },\n \"accountCriteria\": {\n \"accountTypes\": [],\n \"appUserStatuses\": [],\n \"noAccountOwner\": true\n },\n \"allAccessConflicts\": {},\n \"allAccounts\": {},\n \"allGrants\": {},\n \"allUsers\": {},\n \"appAccess\": {},\n \"appSelectionCriteria\": {\n \"complianceFrameworkAttributeValueIds\": [\n \"<string>\"\n ],\n \"riskLevelAttributeValueIds\": [\n \"<string>\"\n ]\n },\n \"celExpression\": {\n \"expression\": \"<string>\"\n },\n \"grantsByCriteria\": {\n \"accessProfileFilter\": {\n \"excludedAccessProfileIds\": [\n \"<string>\"\n ],\n \"includedAccessProfileIds\": [\n \"<string>\"\n ]\n },\n \"daysSinceAdded\": \"<string>\",\n \"daysSinceLastUsed\": \"<string>\",\n \"daysSinceReviewed\": \"<string>\",\n \"grantsAddedBetween\": {\n \"endDate\": \"2023-11-07T05:31:56Z\",\n \"startDate\": \"2023-11-07T05:31:56Z\"\n }\n },\n \"resourceSelection\": {},\n \"resourceTypeSelections\": {},\n \"selectedUsers\": {\n \"userIds\": [\n \"<string>\"\n ]\n },\n \"specificAccessConflicts\": {},\n \"specificResources\": {},\n \"userCriteria\": {\n \"groupAppEntitlementsRef\": [\n {\n \"appId\": \"<string>\",\n \"id\": \"<string>\"\n }\n ],\n \"managerUserIds\": [\n \"<string>\"\n ],\n \"multiUserProfileAttributes\": {},\n \"userStatus\": []\n }\n },\n \"signatureConfig\": {\n \"meaningOfSignature\": \"<string>\",\n \"requireSignature\": true,\n \"stepUpProviderId\": \"<string>\",\n \"tspUrl\": \"<string>\"\n },\n \"usePolicyOverride\": true\n}"
response = http.request(request)
puts response.read_body{
"accessReviewTemplate": {
"accessReviewDuration": "<string>",
"annotations": {},
"autoCloseCampaign": true,
"autoGenerateReport": true,
"autoStartCampaign": true,
"columnConfig": {
"columns": []
},
"createdAt": "2023-11-07T05:31:56Z",
"deletedAt": "2023-11-07T05:31:56Z",
"description": "<string>",
"displayName": "<string>",
"exemptCertifiedAccessConflicts": true,
"id": "<string>",
"inclusionScope": {
"appUserStatuses": [],
"appUserTypes": [],
"managerIds": [
"<string>"
],
"multiUserProfileAttributes": {},
"noAccountOwners": true,
"userIds": [
"<string>"
],
"userStatuses": []
},
"isCampaignScheduleEnabled": true,
"nextScheduledCampaignAt": "2023-11-07T05:31:56Z",
"notificationConfig": {
"sendClose": true,
"sendKickoff": true,
"sendReminders": true
},
"occurrences": 123,
"policyId": "<string>",
"recurrenceRule": {
"endDate": "2023-11-07T05:31:56Z",
"interval": 123,
"occurrences": 123,
"startDate": "2023-11-07T05:31:56Z"
},
"reviewInstructions": "<string>",
"reviewerAttributeConfig": {
"bindings": [
{
"appId": "<string>",
"attributeKey": "<string>"
}
]
},
"scope": {
"accountCelExpression": {
"expression": "<string>"
},
"accountCriteria": {
"accountTypes": [],
"appUserStatuses": [],
"noAccountOwner": true
},
"allAccessConflicts": {},
"allAccounts": {},
"allGrants": {},
"allUsers": {},
"appAccess": {},
"appSelectionCriteria": {
"complianceFrameworkAttributeValueIds": [
"<string>"
],
"riskLevelAttributeValueIds": [
"<string>"
]
},
"celExpression": {
"expression": "<string>"
},
"grantsByCriteria": {
"accessProfileFilter": {
"excludedAccessProfileIds": [
"<string>"
],
"includedAccessProfileIds": [
"<string>"
]
},
"daysSinceAdded": "<string>",
"daysSinceLastUsed": "<string>",
"daysSinceReviewed": "<string>",
"grantsAddedBetween": {
"endDate": "2023-11-07T05:31:56Z",
"startDate": "2023-11-07T05:31:56Z"
}
},
"resourceSelection": {},
"resourceTypeSelections": {},
"selectedUsers": {
"userIds": [
"<string>"
]
},
"specificAccessConflicts": {},
"specificResources": {},
"userCriteria": {
"groupAppEntitlementsRef": [
{
"appId": "<string>",
"id": "<string>"
}
],
"managerUserIds": [
"<string>"
],
"multiUserProfileAttributes": {},
"userStatus": []
}
},
"signatureConfig": {
"meaningOfSignature": "<string>",
"requireSignature": true,
"stepUpProviderId": "<string>",
"tspUrl": "<string>"
},
"slackChannel": {
"description": "<string>",
"name": "<string>"
},
"updatedAt": "2023-11-07T05:31:56Z",
"usePolicyOverride": true
}
}Create
Create creates a new access review template that defines a reusable configuration for launching campaigns.
package main
import(
"context"
"github.com/conductorone/conductorone-sdk-go/pkg/models/shared"
conductoronesdkgo "github.com/conductorone/conductorone-sdk-go"
"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.AccessReviewTemplate.Create(ctx, nil)
if err != nil {
log.Fatal(err)
}
if res.AccessReviewTemplateServiceCreateResponse != nil {
// handle response
}
}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.accessReviewTemplate.create();
console.log(result);
}
run();curl --request POST \
--url https://{tenantDomain}.conductor.one/api/v1/access_review_template \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"accessReviewDuration": "<string>",
"annotations": {},
"autoCloseCampaign": true,
"autoGenerateReport": true,
"autoStartCampaign": true,
"columnConfig": {
"columns": []
},
"description": "<string>",
"displayName": "<string>",
"exemptCertifiedAccessConflicts": true,
"isCampaignScheduleEnabled": true,
"notificationConfig": {
"sendClose": true,
"sendKickoff": true,
"sendReminders": true
},
"ownerIds": [
"<string>"
],
"policyId": "<string>",
"recurrenceRule": {
"endDate": "2023-11-07T05:31:56Z",
"interval": 123,
"occurrences": 123,
"startDate": "2023-11-07T05:31:56Z"
},
"reviewInstructions": "<string>",
"reviewerAttributeConfig": {
"bindings": [
{
"appId": "<string>",
"attributeKey": "<string>"
}
]
},
"scope": {
"accountCelExpression": {
"expression": "<string>"
},
"accountCriteria": {
"accountTypes": [],
"appUserStatuses": [],
"noAccountOwner": true
},
"allAccessConflicts": {},
"allAccounts": {},
"allGrants": {},
"allUsers": {},
"appAccess": {},
"appSelectionCriteria": {
"complianceFrameworkAttributeValueIds": [
"<string>"
],
"riskLevelAttributeValueIds": [
"<string>"
]
},
"celExpression": {
"expression": "<string>"
},
"grantsByCriteria": {
"accessProfileFilter": {
"excludedAccessProfileIds": [
"<string>"
],
"includedAccessProfileIds": [
"<string>"
]
},
"daysSinceAdded": "<string>",
"daysSinceLastUsed": "<string>",
"daysSinceReviewed": "<string>",
"grantsAddedBetween": {
"endDate": "2023-11-07T05:31:56Z",
"startDate": "2023-11-07T05:31:56Z"
}
},
"resourceSelection": {},
"resourceTypeSelections": {},
"selectedUsers": {
"userIds": [
"<string>"
]
},
"specificAccessConflicts": {},
"specificResources": {},
"userCriteria": {
"groupAppEntitlementsRef": [
{
"appId": "<string>",
"id": "<string>"
}
],
"managerUserIds": [
"<string>"
],
"multiUserProfileAttributes": {},
"userStatus": []
}
},
"signatureConfig": {
"meaningOfSignature": "<string>",
"requireSignature": true,
"stepUpProviderId": "<string>",
"tspUrl": "<string>"
},
"usePolicyOverride": true
}
'import requests
url = "https://{tenantDomain}.conductor.one/api/v1/access_review_template"
payload = {
"accessReviewDuration": "<string>",
"annotations": {},
"autoCloseCampaign": True,
"autoGenerateReport": True,
"autoStartCampaign": True,
"columnConfig": { "columns": [] },
"description": "<string>",
"displayName": "<string>",
"exemptCertifiedAccessConflicts": True,
"isCampaignScheduleEnabled": True,
"notificationConfig": {
"sendClose": True,
"sendKickoff": True,
"sendReminders": True
},
"ownerIds": ["<string>"],
"policyId": "<string>",
"recurrenceRule": {
"endDate": "2023-11-07T05:31:56Z",
"interval": 123,
"occurrences": 123,
"startDate": "2023-11-07T05:31:56Z"
},
"reviewInstructions": "<string>",
"reviewerAttributeConfig": { "bindings": [
{
"appId": "<string>",
"attributeKey": "<string>"
}
] },
"scope": {
"accountCelExpression": { "expression": "<string>" },
"accountCriteria": {
"accountTypes": [],
"appUserStatuses": [],
"noAccountOwner": True
},
"allAccessConflicts": {},
"allAccounts": {},
"allGrants": {},
"allUsers": {},
"appAccess": {},
"appSelectionCriteria": {
"complianceFrameworkAttributeValueIds": ["<string>"],
"riskLevelAttributeValueIds": ["<string>"]
},
"celExpression": { "expression": "<string>" },
"grantsByCriteria": {
"accessProfileFilter": {
"excludedAccessProfileIds": ["<string>"],
"includedAccessProfileIds": ["<string>"]
},
"daysSinceAdded": "<string>",
"daysSinceLastUsed": "<string>",
"daysSinceReviewed": "<string>",
"grantsAddedBetween": {
"endDate": "2023-11-07T05:31:56Z",
"startDate": "2023-11-07T05:31:56Z"
}
},
"resourceSelection": {},
"resourceTypeSelections": {},
"selectedUsers": { "userIds": ["<string>"] },
"specificAccessConflicts": {},
"specificResources": {},
"userCriteria": {
"groupAppEntitlementsRef": [
{
"appId": "<string>",
"id": "<string>"
}
],
"managerUserIds": ["<string>"],
"multiUserProfileAttributes": {},
"userStatus": []
}
},
"signatureConfig": {
"meaningOfSignature": "<string>",
"requireSignature": True,
"stepUpProviderId": "<string>",
"tspUrl": "<string>"
},
"usePolicyOverride": True
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
accessReviewDuration: '<string>',
annotations: {},
autoCloseCampaign: true,
autoGenerateReport: true,
autoStartCampaign: true,
columnConfig: {columns: []},
description: '<string>',
displayName: '<string>',
exemptCertifiedAccessConflicts: true,
isCampaignScheduleEnabled: true,
notificationConfig: {sendClose: true, sendKickoff: true, sendReminders: true},
ownerIds: ['<string>'],
policyId: '<string>',
recurrenceRule: {
endDate: '2023-11-07T05:31:56Z',
interval: 123,
occurrences: 123,
startDate: '2023-11-07T05:31:56Z'
},
reviewInstructions: '<string>',
reviewerAttributeConfig: {bindings: [{appId: '<string>', attributeKey: '<string>'}]},
scope: {
accountCelExpression: {expression: '<string>'},
accountCriteria: {accountTypes: [], appUserStatuses: [], noAccountOwner: true},
allAccessConflicts: {},
allAccounts: {},
allGrants: {},
allUsers: {},
appAccess: {},
appSelectionCriteria: {
complianceFrameworkAttributeValueIds: ['<string>'],
riskLevelAttributeValueIds: ['<string>']
},
celExpression: {expression: '<string>'},
grantsByCriteria: {
accessProfileFilter: {excludedAccessProfileIds: ['<string>'], includedAccessProfileIds: ['<string>']},
daysSinceAdded: '<string>',
daysSinceLastUsed: '<string>',
daysSinceReviewed: '<string>',
grantsAddedBetween: {endDate: '2023-11-07T05:31:56Z', startDate: '2023-11-07T05:31:56Z'}
},
resourceSelection: {},
resourceTypeSelections: {},
selectedUsers: {userIds: ['<string>']},
specificAccessConflicts: {},
specificResources: {},
userCriteria: {
groupAppEntitlementsRef: [{appId: '<string>', id: '<string>'}],
managerUserIds: ['<string>'],
multiUserProfileAttributes: {},
userStatus: []
}
},
signatureConfig: {
meaningOfSignature: '<string>',
requireSignature: true,
stepUpProviderId: '<string>',
tspUrl: '<string>'
},
usePolicyOverride: true
})
};
fetch('https://{tenantDomain}.conductor.one/api/v1/access_review_template', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://{tenantDomain}.conductor.one/api/v1/access_review_template",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'accessReviewDuration' => '<string>',
'annotations' => [
],
'autoCloseCampaign' => true,
'autoGenerateReport' => true,
'autoStartCampaign' => true,
'columnConfig' => [
'columns' => [
]
],
'description' => '<string>',
'displayName' => '<string>',
'exemptCertifiedAccessConflicts' => true,
'isCampaignScheduleEnabled' => true,
'notificationConfig' => [
'sendClose' => true,
'sendKickoff' => true,
'sendReminders' => true
],
'ownerIds' => [
'<string>'
],
'policyId' => '<string>',
'recurrenceRule' => [
'endDate' => '2023-11-07T05:31:56Z',
'interval' => 123,
'occurrences' => 123,
'startDate' => '2023-11-07T05:31:56Z'
],
'reviewInstructions' => '<string>',
'reviewerAttributeConfig' => [
'bindings' => [
[
'appId' => '<string>',
'attributeKey' => '<string>'
]
]
],
'scope' => [
'accountCelExpression' => [
'expression' => '<string>'
],
'accountCriteria' => [
'accountTypes' => [
],
'appUserStatuses' => [
],
'noAccountOwner' => true
],
'allAccessConflicts' => [
],
'allAccounts' => [
],
'allGrants' => [
],
'allUsers' => [
],
'appAccess' => [
],
'appSelectionCriteria' => [
'complianceFrameworkAttributeValueIds' => [
'<string>'
],
'riskLevelAttributeValueIds' => [
'<string>'
]
],
'celExpression' => [
'expression' => '<string>'
],
'grantsByCriteria' => [
'accessProfileFilter' => [
'excludedAccessProfileIds' => [
'<string>'
],
'includedAccessProfileIds' => [
'<string>'
]
],
'daysSinceAdded' => '<string>',
'daysSinceLastUsed' => '<string>',
'daysSinceReviewed' => '<string>',
'grantsAddedBetween' => [
'endDate' => '2023-11-07T05:31:56Z',
'startDate' => '2023-11-07T05:31:56Z'
]
],
'resourceSelection' => [
],
'resourceTypeSelections' => [
],
'selectedUsers' => [
'userIds' => [
'<string>'
]
],
'specificAccessConflicts' => [
],
'specificResources' => [
],
'userCriteria' => [
'groupAppEntitlementsRef' => [
[
'appId' => '<string>',
'id' => '<string>'
]
],
'managerUserIds' => [
'<string>'
],
'multiUserProfileAttributes' => [
],
'userStatus' => [
]
]
],
'signatureConfig' => [
'meaningOfSignature' => '<string>',
'requireSignature' => true,
'stepUpProviderId' => '<string>',
'tspUrl' => '<string>'
],
'usePolicyOverride' => true
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}HttpResponse<String> response = Unirest.post("https://{tenantDomain}.conductor.one/api/v1/access_review_template")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"accessReviewDuration\": \"<string>\",\n \"annotations\": {},\n \"autoCloseCampaign\": true,\n \"autoGenerateReport\": true,\n \"autoStartCampaign\": true,\n \"columnConfig\": {\n \"columns\": []\n },\n \"description\": \"<string>\",\n \"displayName\": \"<string>\",\n \"exemptCertifiedAccessConflicts\": true,\n \"isCampaignScheduleEnabled\": true,\n \"notificationConfig\": {\n \"sendClose\": true,\n \"sendKickoff\": true,\n \"sendReminders\": true\n },\n \"ownerIds\": [\n \"<string>\"\n ],\n \"policyId\": \"<string>\",\n \"recurrenceRule\": {\n \"endDate\": \"2023-11-07T05:31:56Z\",\n \"interval\": 123,\n \"occurrences\": 123,\n \"startDate\": \"2023-11-07T05:31:56Z\"\n },\n \"reviewInstructions\": \"<string>\",\n \"reviewerAttributeConfig\": {\n \"bindings\": [\n {\n \"appId\": \"<string>\",\n \"attributeKey\": \"<string>\"\n }\n ]\n },\n \"scope\": {\n \"accountCelExpression\": {\n \"expression\": \"<string>\"\n },\n \"accountCriteria\": {\n \"accountTypes\": [],\n \"appUserStatuses\": [],\n \"noAccountOwner\": true\n },\n \"allAccessConflicts\": {},\n \"allAccounts\": {},\n \"allGrants\": {},\n \"allUsers\": {},\n \"appAccess\": {},\n \"appSelectionCriteria\": {\n \"complianceFrameworkAttributeValueIds\": [\n \"<string>\"\n ],\n \"riskLevelAttributeValueIds\": [\n \"<string>\"\n ]\n },\n \"celExpression\": {\n \"expression\": \"<string>\"\n },\n \"grantsByCriteria\": {\n \"accessProfileFilter\": {\n \"excludedAccessProfileIds\": [\n \"<string>\"\n ],\n \"includedAccessProfileIds\": [\n \"<string>\"\n ]\n },\n \"daysSinceAdded\": \"<string>\",\n \"daysSinceLastUsed\": \"<string>\",\n \"daysSinceReviewed\": \"<string>\",\n \"grantsAddedBetween\": {\n \"endDate\": \"2023-11-07T05:31:56Z\",\n \"startDate\": \"2023-11-07T05:31:56Z\"\n }\n },\n \"resourceSelection\": {},\n \"resourceTypeSelections\": {},\n \"selectedUsers\": {\n \"userIds\": [\n \"<string>\"\n ]\n },\n \"specificAccessConflicts\": {},\n \"specificResources\": {},\n \"userCriteria\": {\n \"groupAppEntitlementsRef\": [\n {\n \"appId\": \"<string>\",\n \"id\": \"<string>\"\n }\n ],\n \"managerUserIds\": [\n \"<string>\"\n ],\n \"multiUserProfileAttributes\": {},\n \"userStatus\": []\n }\n },\n \"signatureConfig\": {\n \"meaningOfSignature\": \"<string>\",\n \"requireSignature\": true,\n \"stepUpProviderId\": \"<string>\",\n \"tspUrl\": \"<string>\"\n },\n \"usePolicyOverride\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{tenantDomain}.conductor.one/api/v1/access_review_template")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"accessReviewDuration\": \"<string>\",\n \"annotations\": {},\n \"autoCloseCampaign\": true,\n \"autoGenerateReport\": true,\n \"autoStartCampaign\": true,\n \"columnConfig\": {\n \"columns\": []\n },\n \"description\": \"<string>\",\n \"displayName\": \"<string>\",\n \"exemptCertifiedAccessConflicts\": true,\n \"isCampaignScheduleEnabled\": true,\n \"notificationConfig\": {\n \"sendClose\": true,\n \"sendKickoff\": true,\n \"sendReminders\": true\n },\n \"ownerIds\": [\n \"<string>\"\n ],\n \"policyId\": \"<string>\",\n \"recurrenceRule\": {\n \"endDate\": \"2023-11-07T05:31:56Z\",\n \"interval\": 123,\n \"occurrences\": 123,\n \"startDate\": \"2023-11-07T05:31:56Z\"\n },\n \"reviewInstructions\": \"<string>\",\n \"reviewerAttributeConfig\": {\n \"bindings\": [\n {\n \"appId\": \"<string>\",\n \"attributeKey\": \"<string>\"\n }\n ]\n },\n \"scope\": {\n \"accountCelExpression\": {\n \"expression\": \"<string>\"\n },\n \"accountCriteria\": {\n \"accountTypes\": [],\n \"appUserStatuses\": [],\n \"noAccountOwner\": true\n },\n \"allAccessConflicts\": {},\n \"allAccounts\": {},\n \"allGrants\": {},\n \"allUsers\": {},\n \"appAccess\": {},\n \"appSelectionCriteria\": {\n \"complianceFrameworkAttributeValueIds\": [\n \"<string>\"\n ],\n \"riskLevelAttributeValueIds\": [\n \"<string>\"\n ]\n },\n \"celExpression\": {\n \"expression\": \"<string>\"\n },\n \"grantsByCriteria\": {\n \"accessProfileFilter\": {\n \"excludedAccessProfileIds\": [\n \"<string>\"\n ],\n \"includedAccessProfileIds\": [\n \"<string>\"\n ]\n },\n \"daysSinceAdded\": \"<string>\",\n \"daysSinceLastUsed\": \"<string>\",\n \"daysSinceReviewed\": \"<string>\",\n \"grantsAddedBetween\": {\n \"endDate\": \"2023-11-07T05:31:56Z\",\n \"startDate\": \"2023-11-07T05:31:56Z\"\n }\n },\n \"resourceSelection\": {},\n \"resourceTypeSelections\": {},\n \"selectedUsers\": {\n \"userIds\": [\n \"<string>\"\n ]\n },\n \"specificAccessConflicts\": {},\n \"specificResources\": {},\n \"userCriteria\": {\n \"groupAppEntitlementsRef\": [\n {\n \"appId\": \"<string>\",\n \"id\": \"<string>\"\n }\n ],\n \"managerUserIds\": [\n \"<string>\"\n ],\n \"multiUserProfileAttributes\": {},\n \"userStatus\": []\n }\n },\n \"signatureConfig\": {\n \"meaningOfSignature\": \"<string>\",\n \"requireSignature\": true,\n \"stepUpProviderId\": \"<string>\",\n \"tspUrl\": \"<string>\"\n },\n \"usePolicyOverride\": true\n}"
response = http.request(request)
puts response.read_body{
"accessReviewTemplate": {
"accessReviewDuration": "<string>",
"annotations": {},
"autoCloseCampaign": true,
"autoGenerateReport": true,
"autoStartCampaign": true,
"columnConfig": {
"columns": []
},
"createdAt": "2023-11-07T05:31:56Z",
"deletedAt": "2023-11-07T05:31:56Z",
"description": "<string>",
"displayName": "<string>",
"exemptCertifiedAccessConflicts": true,
"id": "<string>",
"inclusionScope": {
"appUserStatuses": [],
"appUserTypes": [],
"managerIds": [
"<string>"
],
"multiUserProfileAttributes": {},
"noAccountOwners": true,
"userIds": [
"<string>"
],
"userStatuses": []
},
"isCampaignScheduleEnabled": true,
"nextScheduledCampaignAt": "2023-11-07T05:31:56Z",
"notificationConfig": {
"sendClose": true,
"sendKickoff": true,
"sendReminders": true
},
"occurrences": 123,
"policyId": "<string>",
"recurrenceRule": {
"endDate": "2023-11-07T05:31:56Z",
"interval": 123,
"occurrences": 123,
"startDate": "2023-11-07T05:31:56Z"
},
"reviewInstructions": "<string>",
"reviewerAttributeConfig": {
"bindings": [
{
"appId": "<string>",
"attributeKey": "<string>"
}
]
},
"scope": {
"accountCelExpression": {
"expression": "<string>"
},
"accountCriteria": {
"accountTypes": [],
"appUserStatuses": [],
"noAccountOwner": true
},
"allAccessConflicts": {},
"allAccounts": {},
"allGrants": {},
"allUsers": {},
"appAccess": {},
"appSelectionCriteria": {
"complianceFrameworkAttributeValueIds": [
"<string>"
],
"riskLevelAttributeValueIds": [
"<string>"
]
},
"celExpression": {
"expression": "<string>"
},
"grantsByCriteria": {
"accessProfileFilter": {
"excludedAccessProfileIds": [
"<string>"
],
"includedAccessProfileIds": [
"<string>"
]
},
"daysSinceAdded": "<string>",
"daysSinceLastUsed": "<string>",
"daysSinceReviewed": "<string>",
"grantsAddedBetween": {
"endDate": "2023-11-07T05:31:56Z",
"startDate": "2023-11-07T05:31:56Z"
}
},
"resourceSelection": {},
"resourceTypeSelections": {},
"selectedUsers": {
"userIds": [
"<string>"
]
},
"specificAccessConflicts": {},
"specificResources": {},
"userCriteria": {
"groupAppEntitlementsRef": [
{
"appId": "<string>",
"id": "<string>"
}
],
"managerUserIds": [
"<string>"
],
"multiUserProfileAttributes": {},
"userStatus": []
}
},
"signatureConfig": {
"meaningOfSignature": "<string>",
"requireSignature": true,
"stepUpProviderId": "<string>",
"tspUrl": "<string>"
},
"slackChannel": {
"description": "<string>",
"name": "<string>"
},
"updatedAt": "2023-11-07T05:31:56Z",
"usePolicyOverride": true
}
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
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.
Body
The AccessReviewTemplateServiceCreateRequest message.
The accuracyIssueAction field.
ACCURACY_ISSUE_ACTION_UNSPECIFIED, ACCURACY_ISSUE_ACTION_CONTINUE, ACCURACY_ISSUE_ACTION_WAIT Bounded key/value metadata bag for IaC marking and customer tags.
See .rfcs/object-annotations.md §2. Limits: ≤16 entries; keys 1–128
chars matching ^[A-Za-z][A-Za-z0-9._/-]{0,127}$; values 0–256 chars
matching URL-safe ASCII; total serialized ≤4096 bytes. Keys starting
with c1/ are reserved for server-managed use and rejected on write.
Well-known keys: managed_by, iac_workspace,
iac_resource_address, iac_tool_version.
Show child attributes
Show child attributes
The autoCloseCampaign field.
The autoCloseDecision field.
CLOSE_DECISION_UNSPECIFIED, CLOSE_DECISION_REVOKED, CLOSE_DECISION_SKIP, CLOSE_DECISION_NO_ACTION auto generate report when campaign is closed
The autoStartCampaign field.
Configuration for which columns are visible in the reviewer task list.
Show child attributes
Show child attributes
The defaultView field.
ACCESS_REVIEW_VIEW_TYPE_UNSPECIFIED, ACCESS_REVIEW_VIEW_TYPE_BY_APP, ACCESS_REVIEW_VIEW_TYPE_BY_USER, ACCESS_REVIEW_VIEW_TYPE_UNSTRUCTURED, ACCESS_REVIEW_VIEW_TYPE_BY_RESOURCE An optional description providing context about the template.
The display name for the new template.
The exemptCertifiedAccessConflicts field.
The isCampaignScheduleEnabled field.
Controls which email notifications are sent during the access review lifecycle.
Show child attributes
Show child attributes
The IDs of the users who own this template. At least one owner is required.
The ID of the default review policy for campaigns created from this template.
The RecurrenceRule message.
This message contains a oneof named end_condition. Only a single field of the following list may be set at a time:
- endDate
- occurrences
Show child attributes
Show child attributes
The reviewInstructions field.
Allowlist of AppUser.profile keys visible to reviewers, scoped per app. Empty = reviewers see no profile attributes in the AppUser tooltip.
Show child attributes
Show child attributes
The AccessReviewScopeV2 message.
This message contains a oneof named apps_and_resources_scope. Only a single field of the following list may be set at a time:
- appAccess
- specificResources
- appSelectionCriteria
- resourceTypeSelections
This message contains a oneof named users_scope. Only a single field of the following list may be set at a time:
- allUsers
- selectedUsers
- userCriteria
- celExpression
This message contains a oneof named accounts_scope. Only a single field of the following list may be set at a time:
- allAccounts
- accountCriteria
- accountCelExpression
This message contains a oneof named grants_scope. Only a single field of the following list may be set at a time:
- allGrants
- grantsByCriteria
This message contains a oneof named access_conflicts_scope. Only a single field of the following list may be set at a time:
- allAccessConflicts
- specificAccessConflicts
This message contains a oneof named resource_scope. Only a single field of the following list may be set at a time:
- resourceSelection
Show child attributes
Show child attributes
The scopeType field.
ACCESS_REVIEW_SCOPE_TYPE_UNSPECIFIED, ACCESS_REVIEW_SCOPE_TYPE_BY_ENTITLEMENTS, ACCESS_REVIEW_SCOPE_TYPE_BY_ACCESS_CONFLICTS, ACCESS_REVIEW_SCOPE_TYPE_BY_RESOURCE, ACCESS_REVIEW_SCOPE_TYPE_BY_INHERITANCE Signature configuration for access review submissions
Show child attributes
Show child attributes
The usePolicyOverride field.
Response
Successful response
The AccessReviewTemplateServiceCreateResponse message.
A reusable template that defines the configuration for creating access review campaigns. Templates can optionally be scheduled to automatically create campaigns on a recurring basis.
This message contains a oneof named slack_channel_details. Only a single field of the following list may be set at a time:
- slackChannel
Show child attributes
Show child attributes
Was this page helpful?