Automated commit 'Merge pull request #1613 from sailpoint/amalta/PLTCONFHUB-1547

PLTCONFHUB-1547: Object Mapping documentation' by github action: 8573710240
This commit is contained in:
GitHub Action Bot
2024-04-05 17:45:35 +00:00
parent 67080908a7
commit 8e9a1cff5d
11 changed files with 546 additions and 0 deletions

View File

@@ -324,6 +324,9 @@ tags:
Certification summaries provide information about identity certification campaigns such as the identities involved, the number of decisions made, and the access changed.
For example, an administrator or designated certification reviewer can examine the Manager Certification campaign to get an overview of how many entitlement decisions are made in that campaign as opposed to role decisions, which identities would be affected by changes to the campaign, and how those identities' access would be affected.
- name: Configuration Hub
description: |
Upload configurations and manage object mappings between tenants.
- name: Connectors
description: |
Use this API to implement connector functionality.
@@ -1054,6 +1057,14 @@ paths:
$ref: "./v3/paths/certification-task.yaml"
/certification-tasks:
$ref: "./v3/paths/certification-tasks.yaml"
/configuration-hub/object-mappings/{sourceOrg}:
$ref: './v3/paths/configuration-hub/object-mapping.yaml'
/configuration-hub/object-mappings/{sourceOrg}/{objectMappingId}:
$ref: './v3/paths/configuration-hub/object-mapping-delete.yaml'
/configuration-hub/object-mappings/{sourceOrg}/bulk-create:
$ref: './v3/paths/configuration-hub/object-mapping-bulk-create.yaml'
/configuration-hub/object-mappings/{sourceOrg}/bulk-patch:
$ref: './v3/paths/configuration-hub/object-mapping-bulk-update.yaml'
/connectors/{scriptName}:
$ref: './v3/paths/connectors.yaml'
/connectors/{scriptName}/source-config:

View File

@@ -0,0 +1,93 @@
post:
operationId: createObjectMappings
security:
- UserContextAuth: [sp:config-object-mapping:manage]
tags:
- Configuration Hub
summary: Bulk creates object mappings
description: >-
This creates a set of object mappings (Max 25) between current org and source org.
The request will need the following security scope:
- sp:config-object-mapping:manage
parameters:
- in: path
name: sourceOrg
schema:
type: string
required: true
description: The name of the source org.
example: source-org
requestBody:
description: >-
The bulk create object mapping request body.
required: true
content:
application/json:
schema:
$ref: '../../schemas/configuration-hub/ObjectMappingBulkCreateRequest.yaml'
example:
{
"newObjectsMappings": [
{
"objectType": "SOURCE",
"jsonPath": "$.name",
"sourceValue": "Original SOURCE Name",
"targetValue": "New SOURCE Name",
"enabled": true
},
{
"objectType": "IDENTITY",
"jsonPath": "$.name",
"sourceValue": "Original IDENTITY Name",
"targetValue": "New IDENTITY Name ",
"enabled": true
}
]
}
responses:
'200':
description: >-
The created object mapping between current org and source org.
content:
application/json:
schema:
$ref: '../../schemas/configuration-hub/ObjectMappingBulkCreateResponse.yaml'
example:
{
"addedObjects": [
{
"objectMappingId": "603b1a61-d03d-4ed1-864f-a508fbd1995d",
"objectType": "SOURCE",
"jsonPath": "$.name",
"sourceValue": "Original SOURCE Name",
"targetValue": "New SOURCE Name",
"enabled": true,
"created": "2024-03-25T15:50:41.314Z",
"modified": "2024-03-25T15:50:41.299Z"
},
{
"objectMappingId": "00bece34-f50d-4227-8878-76f620b5a971",
"objectType": "IDENTITY",
"jsonPath": "$.name",
"sourceValue": "Original IDENTITY Name",
"targetValue": "New IDENTITY Name ",
"enabled": true,
"created": "2024-03-25T15:50:41.316Z",
"modified": "2024-03-25T15:50:41.316Z"
}
]
}
'400':
$ref: '../../responses/400.yaml'
'401':
$ref: '../../responses/401.yaml'
'403':
$ref: '../../responses/403.yaml'
'404':
$ref: '../../responses/404.yaml'
'429':
$ref: '../../responses/429.yaml'
'500':
$ref: '../../responses/500.yaml'

View File

@@ -0,0 +1,93 @@
post:
operationId: updateObjectMappings
security:
- UserContextAuth: [sp:config-object-mapping:manage]
tags:
- Configuration Hub
summary: Bulk updates object mappings
description: >-
This updates a set of object mappings, only enabled and targetValue fields can be updated.
The request will need the following security scope:
- sp:config-object-mapping:manage
parameters:
- in: path
name: sourceOrg
schema:
type: string
required: true
description: The name of the source org.
example: source-org
requestBody:
description: >-
The object mapping request body.
required: true
content:
application/json:
schema:
$ref: '../../schemas/configuration-hub/ObjectMappingBulkPatchRequest.yaml'
example:
{
"patches": {
"603b1a61-d03d-4ed1-864f-a508fbd1995d": [
{
"op": "replace",
"path": "/enabled",
"value": true
}
],
"00bece34-f50d-4227-8878-76f620b5a971": [
{
"op": "replace",
"path": "/targetValue",
"value": "New Target Value"
}
]
}
}
responses:
'200':
description: >-
The updated object mappings.
content:
application/json:
schema:
$ref: '../../schemas/configuration-hub/ObjectMappingBulkPatchResponse.yaml'
example:
{
"patchedObjects": [
{
"objectMappingId": "603b1a61-d03d-4ed1-864f-a508fbd1995d",
"objectType": "SOURCE",
"jsonPath": "$.name",
"sourceValue": "Original SOURCE Name",
"targetValue": "New SOURCE Name",
"enabled": true,
"created": "2024-03-25T15:50:41.314Z",
"modified": "2024-03-25T15:50:41.299Z"
},
{
"objectMappingId": "00bece34-f50d-4227-8878-76f620b5a971",
"objectType": "IDENTITY",
"jsonPath": "$.name",
"sourceValue": "Original IDENTITY Name",
"targetValue": "New IDENTITY Name ",
"enabled": true,
"created": "2024-03-25T15:50:41.316Z",
"modified": "2024-03-25T15:50:41.316Z"
}
]
}
'400':
$ref: '../../responses/400.yaml'
'401':
$ref: '../../responses/401.yaml'
'403':
$ref: '../../responses/403.yaml'
'404':
$ref: '../../responses/404.yaml'
'429':
$ref: '../../responses/429.yaml'
'500':
$ref: '../../responses/500.yaml'

View File

@@ -0,0 +1,43 @@
delete:
operationId: deleteObjectMapping
security:
- UserContextAuth: [sp:config-object-mapping:manage]
tags:
- Configuration Hub
summary: Deletes an object mapping
description: >-
This deletes an existing object mapping.
The request will need the following security scope:
- sp:config-object-mapping:manage
parameters:
- in: path
name: sourceOrg
schema:
type: string
required: true
description: The name of the source org.
example: source-org
- in: path
name: objectMappingId
schema:
type: string
required: true
description: The id of the object mapping to be deleted.
example: 3d6e0144-963f-4bd6-8d8d-d77b4e507ce4
responses:
'204':
$ref: '../../responses/204.yaml'
'400':
$ref: '../../responses/400.yaml'
'401':
$ref: '../../responses/401.yaml'
'403':
$ref: '../../responses/403.yaml'
'404':
$ref: '../../responses/404.yaml'
'429':
$ref: '../../responses/429.yaml'
'500':
$ref: '../../responses/500.yaml'

View File

@@ -0,0 +1,134 @@
get:
operationId: getObjectMappings
security:
- UserContextAuth: [sp:config-object-mapping:read, sp:config-object-mapping:manage]
tags:
- Configuration Hub
summary: Gets list of object mappings
description: >-
This gets a list of existing object mappings between current org and source org.
The request will need the following security scope:
- sp:config-object-mapping:read
parameters:
- in: path
name: sourceOrg
schema:
type: string
required: true
description: The name of the source org.
example: source-org
responses:
'200':
description: >-
List of existing object mappings between current org and source org.
content:
application/json:
schema:
type: array
items:
$ref: '../../schemas/configuration-hub/ObjectMappingResponse.yaml'
example:
[
{
"objectMappingId": "3d6e0144-963f-4bd6-8d8d-d77b4e507ce4",
"objectType": "GOVERNANCE_GROUP",
"jsonPath": "$.description",
"sourceValue": "Sample Governance Group",
"targetValue": "Sample Governance Group - Updated",
"enabled": true,
"created": "2024-03-19T23:18:53.732Z",
"modified": "2024-03-19T23:18:53.732Z"
},
{
"objectMappingId": "e1d5cb80-65e2-4f92-ae2e-9588f61cc4cd",
"objectType": "IDENTITY",
"jsonPath": "$.name",
"sourceValue": "SailPoint Support",
"targetValue": "john.doe",
"enabled": false,
"created": "2024-03-19T23:18:06.238Z",
"modified": "2024-03-19T23:18:06.238Z"
}
]
'400':
$ref: '../../responses/400.yaml'
'401':
$ref: '../../responses/401.yaml'
'403':
$ref: '../../responses/403.yaml'
'404':
$ref: '../../responses/404.yaml'
'429':
$ref: '../../responses/429.yaml'
'500':
$ref: '../../responses/500.yaml'
post:
operationId: createObjectMapping
security:
- UserContextAuth: [sp:config-object-mapping:manage]
tags:
- Configuration Hub
summary: Creates an object mapping
description: >-
This creates an object mapping between current org and source org.
The request will need the following security scope:
- sp:config-object-mapping:manage
parameters:
- in: path
name: sourceOrg
schema:
type: string
required: true
description: The name of the source org.
example: source-org
requestBody:
description: >-
The object mapping request body.
required: true
content:
application/json:
schema:
$ref: '../../schemas/configuration-hub/ObjectMappingRequest.yaml'
example:
{
"objectType": "GOVERNANCE_GROUP",
"jsonPath": "$.description",
"sourceValue": "Sample Governance Group",
"targetValue": "Sample Governance Group - Updated",
"enabled": true
}
responses:
'200':
description: >-
The created object mapping between current org and source org.
content:
application/json:
schema:
$ref: '../../schemas/configuration-hub/ObjectMappingResponse.yaml'
example:
{
"objectMappingId": "3d6e0144-963f-4bd6-8d8d-d77b4e507ce4",
"objectType": "GOVERNANCE_GROUP",
"jsonPath": "$.description",
"sourceValue": "Sample Governance Group",
"targetValue": "Sample Governance Group - Updated",
"enabled": true,
"created": "2024-03-19T23:18:53.732Z",
"modified": "2024-03-19T23:18:53.732Z"
}
'400':
$ref: '../../responses/400.yaml'
'401':
$ref: '../../responses/401.yaml'
'403':
$ref: '../../responses/403.yaml'
'404':
$ref: '../../responses/404.yaml'
'429':
$ref: '../../responses/429.yaml'
'500':
$ref: '../../responses/500.yaml'

View File

@@ -0,0 +1,9 @@
type: object
title: Bulk Create Object Mapping Request
required:
- newObjectMappings
properties:
newObjectMappings:
type: array
items:
$ref: '../../../v3/schemas/configuration-hub/ObjectMappingRequest.yaml'

View File

@@ -0,0 +1,7 @@
type: object
title: Bulk Create Object Mapping Response
properties:
addedObjects:
type: array
items:
$ref: '../../../v3/schemas/configuration-hub/ObjectMappingResponse.yaml'

View File

@@ -0,0 +1,30 @@
type: object
title: Bulk Update Object Mapping Request
required:
- patches
properties:
patches:
description: >-
Map of id of the object mapping to a JsonPatchOperation describing what to patch on that object mapping.
type: object
additionalProperties:
type: array
items:
$ref: '../../schemas/JsonPatchOperation.yaml'
example:
{
"603b1a61-d03d-4ed1-864f-a508fbd1995d": [
{
"op": "replace",
"path": "/enabled",
"value": true
}
],
"00bece34-f50d-4227-8878-76f620b5a971": [
{
"op": "replace",
"path": "/targetValue",
"value": "New Target Value"
}
]
}

View File

@@ -0,0 +1,7 @@
type: object
title: Bulk Update Object Mapping Response
properties:
patchedObjects:
type: array
items:
$ref: '../../../v3/schemas/configuration-hub/ObjectMappingResponse.yaml'

View File

@@ -0,0 +1,56 @@
type: object
title: Object Mapping Request
required:
- objectType
- jsonPath
- sourceValue
- targetValue
properties:
objectType:
type: string
description: Type of the object the mapping value applies to, must be one from enum
example: IDENTITY
enum:
- ACCESS_PROFILE
- ACCESS_REQUEST_CONFIG
- ATTR_SYNC_SOURCE_CONFIG
- AUTH_ORG
- CAMPAIGN_FILTER
- ENTITLEMENT
- FORM_DEFINITION
- GOVERNANCE_GROUP
- IDENTITY
- IDENTITY_OBJECT_CONFIG
- IDENTITY_PROFILE
- LIFECYCLE_STATE
- NOTIFICATION_TEMPLATE
- PASSWORD_POLICY
- PASSWORD_SYNC_GROUP
- PUBLIC_IDENTITIES_CONFIG
- ROLE
- RULE
- SEGMENT
- SERVICE_DESK_INTEGRATION
- SOD_POLICY
- SOURCE
- TAG
- TRANSFORM
- TRIGGER_SUBSCRIPTION
- WORKFLOW
jsonPath:
type: string
description: JSONPath expression denoting the path within the object where the mapping value should be applied
example: $.name
sourceValue:
type: string
description: Original value at the jsonPath location within the object
example: My Governance Group Name
targetValue:
type: string
description: Value to be assigned at the jsonPath location within the object
example: My New Governance Group Name
enabled:
type: boolean
description: Whether or not this object mapping is enabled
default: false
example: false

View File

@@ -0,0 +1,63 @@
type: object
title: Object Mapping Response
properties:
objectMappingId:
type: string
description: Id of the object mapping
example: 3d6e0144-963f-4bd6-8d8d-d77b4e507ce4
objectType:
type: string
description: Type of the object the mapping value applies to
example: IDENTITY
enum:
- ACCESS_PROFILE
- ACCESS_REQUEST_CONFIG
- ATTR_SYNC_SOURCE_CONFIG
- AUTH_ORG
- CAMPAIGN_FILTER
- ENTITLEMENT
- FORM_DEFINITION
- GOVERNANCE_GROUP
- IDENTITY
- IDENTITY_OBJECT_CONFIG
- IDENTITY_PROFILE
- LIFECYCLE_STATE
- NOTIFICATION_TEMPLATE
- PASSWORD_POLICY
- PASSWORD_SYNC_GROUP
- PUBLIC_IDENTITIES_CONFIG
- ROLE
- RULE
- SEGMENT
- SERVICE_DESK_INTEGRATION
- SOD_POLICY
- SOURCE
- TAG
- TRANSFORM
- TRIGGER_SUBSCRIPTION
- WORKFLOW
jsonPath:
type: string
description: JSONPath expression denoting the path within the object where the mapping value should be applied
example: $.name
sourceValue:
type: string
description: Original value at the jsonPath location within the object
example: My Governance Group Name
targetValue:
type: string
description: Value to be assigned at the jsonPath location within the object
example: My New Governance Group Name
enabled:
type: boolean
description: Whether or not this object mapping is enabled
default: false
example: false
created:
type: string
description: Object mapping creation timestamp
example: 2024-03-19T23:18:53.732Z
modified:
type: string
description: Object mapping latest update timestamp
example: 2024-03-19T23:18:53.732Z