OpenMetadata SCIM API
SCIM 2.0 compliant user and group provisioning endpoints.
SCIM 2.0 compliant user and group provisioning endpoints.
openapi: 3.0.1
info:
title: OpenMetadata APIs Agent Executions SCIM API
description: Common types and API definition for OpenMetadata
contact:
name: OpenMetadata
url: https://open-metadata.org
email: openmetadata-dev@googlegroups.com
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0
version: '1.13'
servers:
- url: /api
description: Current Host
- url: http://localhost:8585/api
description: Endpoint URL
security:
- BearerAuth: []
tags:
- name: SCIM
description: SCIM 2.0 compliant user and group provisioning endpoints.
paths:
/v1/scim/Groups:
get:
tags:
- SCIM
summary: List SCIM groups
description: Lists SCIM groups based on optional filters.
operationId: listScimGroups
responses:
'200':
description: List of SCIM Groups
post:
tags:
- SCIM
summary: Create SCIM group
description: Creates a new SCIM group.
operationId: createScimGroup
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ScimGroup'
application/scim+json:
schema:
$ref: '#/components/schemas/ScimGroup'
responses:
'201':
description: Group created
'400':
description: Invalid group input
/v1/scim/Users:
get:
tags:
- SCIM
summary: List SCIM users
description: Lists SCIM users based on optional filters.
operationId: listScimUsers
responses:
'200':
description: List of SCIM Users
post:
tags:
- SCIM
summary: Create SCIM user
description: Creates a new SCIM user.
operationId: createScimUser
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ScimUser'
application/scim+json:
schema:
$ref: '#/components/schemas/ScimUser'
responses:
'201':
description: User created
'400':
description: Invalid user input
/v1/scim/Groups/{id}:
get:
tags:
- SCIM
summary: Get SCIM group by ID
description: Retrieves a SCIM group identified by ID.
operationId: getScimGroup
parameters:
- name: id
in: path
description: SCIM Group ID
required: true
schema:
type: string
responses:
'200':
description: Group found
'404':
description: Group not found
put:
tags:
- SCIM
summary: Update SCIM group
description: Updates a SCIM group identified by ID.
operationId: updateScimGroup
parameters:
- name: id
in: path
description: SCIM Group ID
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ScimGroup'
application/scim+json:
schema:
$ref: '#/components/schemas/ScimGroup'
responses:
'200':
description: Group updated
'404':
description: Group not found
delete:
tags:
- SCIM
summary: Delete SCIM group
description: Deletes a SCIM group identified by ID.
operationId: deleteScimGroup
parameters:
- name: id
in: path
description: SCIM Group ID
required: true
schema:
type: string
responses:
'204':
description: Group deleted
'404':
description: Group not found
patch:
tags:
- SCIM
summary: Patch SCIM group
description: Patch updates to a SCIM group identified by ID.
operationId: patchScimGroup
parameters:
- name: id
in: path
description: SCIM Group ID
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ScimPatchOp'
application/scim+json:
schema:
$ref: '#/components/schemas/ScimPatchOp'
responses:
'204':
description: Group patched
'404':
description: Group not found
/v1/scim/Users/{id}:
get:
tags:
- SCIM
summary: Get SCIM user by ID
description: Retrieves a SCIM user identified by ID.
operationId: getScimUser
parameters:
- name: id
in: path
description: SCIM User ID
required: true
schema:
type: string
responses:
'200':
description: User found
'404':
description: User not found
put:
tags:
- SCIM
summary: Update SCIM user
description: Updates a SCIM user identified by ID.
operationId: updateScimUser
parameters:
- name: id
in: path
description: SCIM User ID
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ScimUser'
application/scim+json:
schema:
$ref: '#/components/schemas/ScimUser'
responses:
'200':
description: User updated
'404':
description: User not found
delete:
tags:
- SCIM
summary: Delete SCIM user
description: Deletes a SCIM user identified by ID.
operationId: deleteScimUser
parameters:
- name: id
in: path
description: SCIM User ID
required: true
schema:
type: string
responses:
'204':
description: User deleted
'404':
description: User not found
patch:
tags:
- SCIM
summary: Patch SCIM user
description: Patch updates to a SCIM user identified by ID.
operationId: patchScimUser
parameters:
- name: id
in: path
description: SCIM User ID
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ScimPatchOp'
application/scim+json:
schema:
$ref: '#/components/schemas/ScimPatchOp'
responses:
'200':
description: User patched
'404':
description: User not found
/v1/scim/Schemas:
get:
tags:
- SCIM
summary: Get SCIM schemas
description: Returns supported SCIM schemas.
operationId: getScimSchemas
responses:
'200':
description: SCIM schemas
/v1/scim:
get:
tags:
- SCIM
summary: Get SCIM Service Provider Config
description: Returns the SCIM service provider configuration.
operationId: getServiceProviderConfig
responses:
'200':
description: SCIM Service Provider Configuration
/v1/scim/ServiceProviderConfig:
get:
tags:
- SCIM
summary: Alias endpoint for SCIM Service Provider Config
description: Alias endpoint for service provider configuration.
operationId: getServiceProviderConfigAlias
responses:
'200':
description: SCIM Service Provider Configuration
components:
schemas:
Member:
required:
- value
type: object
properties:
value:
type: string
display:
type: string
type:
type: string
Manager:
type: object
properties:
value:
type: string
displayName:
type: string
PhoneNumber:
type: object
properties:
value:
type: string
type:
type: string
Name:
type: object
properties:
givenName:
type: string
familyName:
type: string
formatted:
type: string
UrnIetfParamsScimSchemasExtensionEnterprise20User:
type: object
properties:
employeeId:
type: string
department:
type: string
manager:
$ref: '#/components/schemas/Manager'
Meta:
type: object
properties:
resourceType:
type: string
created:
type: string
format: date-time
lastModified:
type: string
format: date-time
location:
type: string
ScimGroup:
required:
- displayName
- schemas
type: object
properties:
schemas:
type: array
items:
type: string
id:
type: string
displayName:
type: string
externalId:
type: string
active:
type: boolean
members:
type: array
items:
$ref: '#/components/schemas/Member'
meta:
$ref: '#/components/schemas/Meta'
ScimPatchOp:
required:
- Operations
- schemas
type: object
properties:
schemas:
type: array
items:
type: string
Operations:
type: array
items:
$ref: '#/components/schemas/Operation'
ScimUser:
type: object
properties:
schemas:
type: array
items:
type: string
id:
type: string
externalId:
type: string
userName:
type: string
displayName:
type: string
active:
type: boolean
title:
type: string
preferredLanguage:
type: string
emails:
type: array
items:
$ref: '#/components/schemas/Email'
phoneNumbers:
type: array
items:
$ref: '#/components/schemas/PhoneNumber'
addresses:
type: array
items:
$ref: '#/components/schemas/Address'
name:
$ref: '#/components/schemas/Name'
meta:
$ref: '#/components/schemas/Meta__1'
urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:
$ref: '#/components/schemas/UrnIetfParamsScimSchemasExtensionEnterprise20User'
Email:
type: object
properties:
value:
type: string
type:
type: string
primary:
type: boolean
Address:
type: object
properties:
type:
type: string
formatted:
type: string
streetAddress:
type: string
locality:
type: string
region:
type: string
postalCode:
type: string
country:
type: string
Meta__1:
type: object
properties:
resourceType:
type: string
created:
type: string
format: date-time
lastModified:
type: string
format: date-time
location:
type: string
Operation:
required:
- op
type: object
properties:
op:
type: string
path:
type: string
value:
type: object
securitySchemes:
BearerAuth:
type: http
scheme: bearer
bearerFormat: JWT