Files
api-specs/idn/beta/paths/schema.yaml
GitHub Action Bot f42a8499b1 Automated commit 'Merge pull request #1203 from sailpoint/devrel-847
Fixed broken links.' by github action: 4473199460
2023-03-20 21:45:44 +00:00

218 lines
5.6 KiB
YAML

get:
operationId: getSourceSchema
tags:
- Sources
summary: Get Source Schema by ID
description: |
Get the Source Schema by ID in IdentityNow.
parameters:
- in: path
name: sourceId
required: true
schema:
type: string
description: The Source ID.
example: 2c9180835d191a86015d28455b4a2329
- in: path
name: schemaId
schema:
type: string
required: true
description: The Schema ID.
example: 2c9180835d191a86015d28455b4a2329
responses:
'200':
description: The requested Schema was successfully retrieved.
content:
application/json:
schema:
$ref: '../schemas/Schema.yaml'
'400':
$ref: '../../v3/responses/400.yaml'
'401':
$ref: '../../v3/responses/401.yaml'
'403':
$ref: '../../v3/responses/403.yaml'
'404':
$ref: '../../v3/responses/404.yaml'
'429':
$ref: '../../v3/responses/429.yaml'
'500':
$ref: '../../v3/responses/500.yaml'
put:
operationId: putSourceSchema
tags:
- Sources
summary: Update Source Schema (Full)
description: >-
This API will completely replace an existing Schema with the submitted payload. Some fields of the Schema cannot be updated. These fields are listed below.
* id
* name
* created
* modified
Any attempt to modify these fields will result in an error response with a status code of 400.
parameters:
- in: path
name: sourceId
required: true
schema:
type: string
description: The Source ID.
example: 2c9180835d191a86015d28455b4a2329
- in: path
name: schemaId
schema:
type: string
required: true
description: The Schema ID.
example: 2c9180835d191a86015d28455b4a2329
requestBody:
required: true
content:
application/json:
schema:
$ref: '../schemas/Schema.yaml'
responses:
'200':
description: The Schema was successfully replaced.
content:
application/json:
schema:
$ref: '../schemas/Schema.yaml'
'400':
$ref: '../../v3/responses/400.yaml'
'401':
$ref: '../../v3/responses/401.yaml'
'403':
$ref: '../../v3/responses/403.yaml'
'404':
$ref: '../../v3/responses/404.yaml'
'429':
$ref: '../../v3/responses/429.yaml'
'500':
$ref: '../../v3/responses/500.yaml'
patch:
operationId: updateSourceSchema
tags:
- Sources
summary: Update Source Schema (Partial)
description: |
Use this API to selectively update an existing Schema using a JSONPatch payload.
The following schema fields are immutable and cannot be updated:
- id
- name
- created
- modified
To switch an account attribute to a group entitlement, you need to have the following in place:
- `isEntitlement: true`
- Must define a schema for the group and [add it to the source](https://developer.sailpoint.com/idn/api/beta/create-source-schema) before updating the `isGroup` flag. For example, here is the `group` account attribute referencing a schema that defines the group:
```json
{
"name": "groups",
"type": "STRING",
"schema": {
"type": "CONNECTOR_SCHEMA",
"id": "2c9180887671ff8c01767b4671fc7d60",
"name": "group"
},
"description": "The groups, roles etc. that reference account group objects",
"isMulti": true,
"isEntitlement": true,
"isGroup": true
}
```
parameters:
- in: path
name: sourceId
required: true
schema:
type: string
description: The Source id.
example: 2c9180835d191a86015d28455b4a2329
- in: path
name: schemaId
schema:
type: string
required: true
description: The Schema id.
example: 2c9180835d191a86015d28455b4a2329
requestBody:
required: true
description: The JSONPatch payload used to update the schema.
content:
application/json-patch+json:
schema:
type: array
items:
$ref: '../schemas/JsonPatchOperation.yaml'
example:
- op: "replace"
path: "/displayAttribute"
value: {"new-display-attribute"}
responses:
'200':
description: The Schema was successfully updated.
content:
application/json:
schema:
$ref: '../schemas/Schema.yaml'
'400':
$ref: '../../v3/responses/400.yaml'
'401':
$ref: '../../v3/responses/401.yaml'
'403':
$ref: '../../v3/responses/403.yaml'
'404':
$ref: '../../v3/responses/404.yaml'
'429':
$ref: '../../v3/responses/429.yaml'
'500':
$ref: '../../v3/responses/500.yaml'
delete:
operationId: deleteSourceSchema
tags:
- Sources
summary: Delete Source Schema by ID
parameters:
- in: path
name: sourceId
required: true
schema:
type: string
description: The Source ID.
example: 2c9180835d191a86015d28455b4a2329
- in: path
name: schemaId
schema:
type: string
required: true
description: The Schema ID.
example: 2c9180835d191a86015d28455b4a2329
responses:
'204':
$ref: '../../v3/responses/204.yaml'
description: The Schema was successfully deleted.
'400':
$ref: '../../v3/responses/400.yaml'
'401':
$ref: '../../v3/responses/401.yaml'
'403':
$ref: '../../v3/responses/403.yaml'
'404':
$ref: '../../v3/responses/404.yaml'
'429':
$ref: '../../v3/responses/429.yaml'
'500':
$ref: '../../v3/responses/500.yaml'