openapi: 3.2.0 info: title: LiteLLM SCIM API description: 'Proxy Server to call 100+ LLMs in the OpenAI format. **Customize Swagger Docs** 👉 ```LiteLLM Admin Panel on /ui```. Create, Edit Keys with SSO. Having issues? Try ```Fallback Login``` 💸 ```LiteLLM Model Cost Map```. 🔎 ```LiteLLM Model Hub```. See available models on the proxy. **Docs**' version: 1.102.1 tags: - name: SCIM paths: /scim/v2: get: description: 'Base SCIM v2 endpoint for resource discovery per RFC 7644 Section 4. Returns a ListResponse of ResourceTypes supported by this SCIM service provider. Identity providers (Okta, Azure AD, etc.) use this endpoint for resource discovery.' operationId: get_scim_base_scim_v2_get parameters: - in: query name: feature required: false schema: anyOf: - type: string - type: 'null' title: Feature responses: '200': content: application/json: schema: {} description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error security: - APIKeyHeader: [] summary: Get Scim Base tags: - SCIM /scim/v2/Groups: get: description: Get a list of groups according to SCIM v2 protocol operationId: get_groups_scim_v2_Groups_get parameters: - in: query name: startIndex required: false schema: default: 1 minimum: 1 title: Startindex type: integer - in: query name: count required: false schema: default: 10 maximum: 100 minimum: 1 title: Count type: integer - in: query name: filter required: false schema: anyOf: - type: string - type: 'null' title: Filter - in: query name: feature required: false schema: anyOf: - type: string - type: 'null' title: Feature responses: '200': content: application/json: schema: $ref: '#/components/schemas/SCIMListResponse' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error security: - APIKeyHeader: [] summary: Get Groups tags: - SCIM post: description: Create a group according to SCIM v2 protocol operationId: create_group_scim_v2_Groups_post parameters: - in: query name: feature required: false schema: anyOf: - type: string - type: 'null' title: Feature requestBody: content: application/json: schema: $ref: '#/components/schemas/SCIMGroup' required: true responses: '201': content: application/json: schema: $ref: '#/components/schemas/SCIMGroup' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error security: - APIKeyHeader: [] summary: Create Group tags: - SCIM /scim/v2/Groups/{group_id}: delete: description: Delete a group according to SCIM v2 protocol operationId: delete_group_scim_v2_Groups__group_id__delete parameters: - in: path name: group_id required: true schema: title: Group ID type: string - in: query name: feature required: false schema: anyOf: - type: string - type: 'null' title: Feature responses: '204': description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error security: - APIKeyHeader: [] summary: Delete Group tags: - SCIM get: description: Get a single group by ID according to SCIM v2 protocol operationId: get_group_scim_v2_Groups__group_id__get parameters: - in: path name: group_id required: true schema: title: Group ID type: string - in: query name: feature required: false schema: anyOf: - type: string - type: 'null' title: Feature responses: '200': content: application/json: schema: $ref: '#/components/schemas/SCIMGroup' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error security: - APIKeyHeader: [] summary: Get Group tags: - SCIM patch: description: Patch a group according to SCIM v2 protocol operationId: patch_group_scim_v2_Groups__group_id__patch parameters: - in: path name: group_id required: true schema: title: Group ID type: string - in: query name: feature required: false schema: anyOf: - type: string - type: 'null' title: Feature requestBody: content: application/json: schema: $ref: '#/components/schemas/SCIMPatchOp' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/SCIMGroup' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error security: - APIKeyHeader: [] summary: Patch Group tags: - SCIM put: description: Update a group according to SCIM v2 protocol operationId: update_group_scim_v2_Groups__group_id__put parameters: - in: path name: group_id required: true schema: title: Group ID type: string - in: query name: feature required: false schema: anyOf: - type: string - type: 'null' title: Feature requestBody: content: application/json: schema: $ref: '#/components/schemas/SCIMGroup' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/SCIMGroup' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error security: - APIKeyHeader: [] summary: Update Group tags: - SCIM /scim/v2/ResourceTypes: get: description: 'SCIM ResourceTypes endpoint per RFC 7644 Section 4. Returns a ListResponse of all resource types supported by this service provider.' operationId: get_resource_types_scim_v2_ResourceTypes_get parameters: - in: query name: feature required: false schema: anyOf: - type: string - type: 'null' title: Feature responses: '200': content: application/json: schema: {} description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error security: - APIKeyHeader: [] summary: Get Resource Types tags: - SCIM /scim/v2/ResourceTypes/{resource_type_id}: get: description: Get a single ResourceType by ID per RFC 7644. operationId: get_resource_type_scim_v2_ResourceTypes__resource_type_id__get parameters: - in: path name: resource_type_id required: true schema: title: ResourceType ID type: string - in: query name: feature required: false schema: anyOf: - type: string - type: 'null' title: Feature responses: '200': content: application/json: schema: {} description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error security: - APIKeyHeader: [] summary: Get Resource Type tags: - SCIM /scim/v2/Schemas: get: description: 'SCIM Schemas endpoint per RFC 7643 Section 7. Returns a ListResponse of all schemas supported by this service provider.' operationId: get_schemas_scim_v2_Schemas_get parameters: - in: query name: feature required: false schema: anyOf: - type: string - type: 'null' title: Feature responses: '200': content: application/json: schema: {} description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error security: - APIKeyHeader: [] summary: Get Schemas tags: - SCIM /scim/v2/Schemas/{schema_id}: get: description: Get a single Schema by its URI per RFC 7643 Section 7. operationId: get_schema_scim_v2_Schemas__schema_id__get parameters: - in: path name: schema_id required: true schema: title: Schema URI type: string - in: query name: feature required: false schema: anyOf: - type: string - type: 'null' title: Feature responses: '200': content: application/json: schema: {} description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error security: - APIKeyHeader: [] summary: Get Schema tags: - SCIM /scim/v2/ServiceProviderConfig: get: description: Return SCIM Service Provider Configuration. operationId: get_service_provider_config_scim_v2_ServiceProviderConfig_get parameters: - in: query name: feature required: false schema: anyOf: - type: string - type: 'null' title: Feature responses: '200': content: application/json: schema: $ref: '#/components/schemas/SCIMServiceProviderConfig' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error security: - APIKeyHeader: [] summary: Get Service Provider Config tags: - SCIM /scim/v2/Users: get: description: Get a list of users according to SCIM v2 protocol operationId: get_users_scim_v2_Users_get parameters: - in: query name: startIndex required: false schema: default: 1 minimum: 1 title: Startindex type: integer - in: query name: count required: false schema: default: 10 maximum: 100 minimum: 1 title: Count type: integer - in: query name: filter required: false schema: anyOf: - type: string - type: 'null' title: Filter - in: query name: feature required: false schema: anyOf: - type: string - type: 'null' title: Feature responses: '200': content: application/json: schema: $ref: '#/components/schemas/SCIMListResponse' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error security: - APIKeyHeader: [] summary: Get Users tags: - SCIM post: description: Create a user according to SCIM v2 protocol operationId: create_user_scim_v2_Users_post parameters: - in: query name: feature required: false schema: anyOf: - type: string - type: 'null' title: Feature requestBody: content: application/json: schema: $ref: '#/components/schemas/SCIMUser-Input' required: true responses: '201': content: application/json: schema: $ref: '#/components/schemas/SCIMUser-Output' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error security: - APIKeyHeader: [] summary: Create User tags: - SCIM /scim/v2/Users/{user_id}: delete: description: Delete a user according to SCIM v2 protocol operationId: delete_user_scim_v2_Users__user_id__delete parameters: - in: path name: user_id required: true schema: title: User ID type: string - in: query name: feature required: false schema: anyOf: - type: string - type: 'null' title: Feature responses: '204': description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error security: - APIKeyHeader: [] summary: Delete User tags: - SCIM get: description: Get a single user by ID according to SCIM v2 protocol operationId: get_user_scim_v2_Users__user_id__get parameters: - in: path name: user_id required: true schema: title: User ID type: string - in: query name: feature required: false schema: anyOf: - type: string - type: 'null' title: Feature responses: '200': content: application/json: schema: $ref: '#/components/schemas/SCIMUser-Output' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error security: - APIKeyHeader: [] summary: Get User tags: - SCIM patch: description: Patch a user according to SCIM v2 protocol operationId: patch_user_scim_v2_Users__user_id__patch parameters: - in: path name: user_id required: true schema: title: User ID type: string - in: query name: feature required: false schema: anyOf: - type: string - type: 'null' title: Feature requestBody: content: application/json: schema: $ref: '#/components/schemas/SCIMPatchOp' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/SCIMUser-Output' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error security: - APIKeyHeader: [] summary: Patch User tags: - SCIM put: description: Update a user according to SCIM v2 protocol (full replacement) operationId: update_user_scim_v2_Users__user_id__put parameters: - in: path name: user_id required: true schema: title: User ID type: string - in: query name: feature required: false schema: anyOf: - type: string - type: 'null' title: Feature requestBody: content: application/json: schema: $ref: '#/components/schemas/SCIMUser-Input' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/SCIMUser-Output' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error security: - APIKeyHeader: [] summary: Update User tags: - SCIM /scim/v2/placeholders: get: description: 'List user rows whose id is another account''s SSO identity or email. An earlier release provisioned a group member it could not match as a user keyed by the raw member value, and that row now shadows the account the value really names, so every push of that member is refused. This lists those rows so an operator can fold each one into the account it shadows with ``POST /scim/v2/placeholders/{user_id}/merge``. A row that has an SSO identity of its own or owns virtual keys is left out: someone uses that account.' operationId: list_placeholders_scim_v2_placeholders_get parameters: - in: query name: feature required: false schema: anyOf: - type: string - type: 'null' title: Feature responses: '200': content: application/json: schema: items: $ref: '#/components/schemas/SCIMPlaceholder' title: Response List Placeholders Scim V2 Placeholders Get type: array description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error security: - APIKeyHeader: [] summary: List Placeholders tags: - SCIM /scim/v2/placeholders/{user_id}/merge: post: description: 'Fold a placeholder user into the one account its id names by SSO identity or email. The account is added to every team the placeholder is on, then the placeholder is deleted the way ``DELETE /scim/v2/Users/{id}`` deletes a user, so the next group push resolves the member value to the real account. Refused with 409 when the row has an SSO identity of its own, owns virtual keys, or names no account or several.' operationId: merge_placeholder_scim_v2_placeholders__user_id__merge_post parameters: - in: path name: user_id required: true schema: title: User ID type: string - in: query name: feature required: false schema: anyOf: - type: string - type: 'null' title: Feature responses: '200': content: application/json: schema: $ref: '#/components/schemas/SCIMPlaceholderMergeResult' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error security: - APIKeyHeader: [] summary: Merge Placeholder tags: - SCIM components: schemas: SCIMMultiValuedAttribute: properties: display: anyOf: - type: string - type: 'null' title: Display primary: anyOf: - type: boolean - type: 'null' title: Primary type: anyOf: - type: string - type: 'null' title: Type value: title: Value type: string required: - value title: SCIMMultiValuedAttribute type: object ValidationError: properties: loc: items: anyOf: - type: string - type: integer type: array title: Location msg: type: string title: Message type: type: string title: Error Type input: title: Input ctx: type: object title: Context type: object required: - loc - msg - type title: ValidationError SCIMServiceProviderConfig: properties: authenticationSchemes: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Authenticationschemes bulk: $ref: '#/components/schemas/SCIMFeature' default: supported: false changePassword: $ref: '#/components/schemas/SCIMFeature' default: supported: false etag: $ref: '#/components/schemas/SCIMFeature' default: supported: false filter: $ref: '#/components/schemas/SCIMFeature' default: supported: false meta: anyOf: - additionalProperties: true type: object - type: 'null' title: Meta patch: $ref: '#/components/schemas/SCIMFeature' default: supported: true schemas: default: - urn:ietf:params:scim:schemas:core:2.0:ServiceProviderConfig items: type: string title: Schemas type: array sort: $ref: '#/components/schemas/SCIMFeature' default: supported: false title: SCIMServiceProviderConfig type: object SCIMPlaceholderMergeResult: properties: merged_into_user_id: title: Merged Into User Id type: string placeholder_user_id: title: Placeholder User Id type: string team_ids: items: type: string title: Team Ids type: array required: - placeholder_user_id - merged_into_user_id - team_ids title: SCIMPlaceholderMergeResult type: object HTTPValidationError: properties: detail: items: $ref: '#/components/schemas/ValidationError' type: array title: Detail type: object title: HTTPValidationError SCIMPatchOp: properties: Operations: items: $ref: '#/components/schemas/SCIMPatchOperation' title: Operations type: array schemas: default: - urn:ietf:params:scim:api:messages:2.0:PatchOp items: type: string title: Schemas type: array required: - Operations title: SCIMPatchOp type: object SCIMListResponse: properties: Resources: anyOf: - items: $ref: '#/components/schemas/SCIMUser-Output' type: array - items: $ref: '#/components/schemas/SCIMGroup' type: array title: Resources itemsPerPage: anyOf: - type: integer - type: 'null' default: 10 title: Itemsperpage schemas: default: - urn:ietf:params:scim:api:messages:2.0:ListResponse items: type: string title: Schemas type: array startIndex: anyOf: - type: integer - type: 'null' default: 1 title: Startindex totalResults: title: Totalresults type: integer required: - totalResults - Resources title: SCIMListResponse type: object SCIMUserGroup: properties: display: anyOf: - type: string - type: 'null' title: Display type: anyOf: - type: string - type: 'null' default: direct title: Type value: title: Value type: string required: - value title: SCIMUserGroup type: object SCIMEnterpriseUser: properties: costCenter: anyOf: - type: string - type: 'null' title: Costcenter department: anyOf: - type: string - type: 'null' title: Department division: anyOf: - type: string - type: 'null' title: Division employeeNumber: anyOf: - type: string - type: 'null' title: Employeenumber manager: anyOf: - $ref: '#/components/schemas/SCIMUserManager' - type: 'null' organization: anyOf: - type: string - type: 'null' title: Organization title: SCIMEnterpriseUser type: object SCIMPlaceholder: description: A user row keyed by a value that names another account by SSO identity or email. properties: placeholder_user_id: title: Placeholder User Id type: string resolved_user_ids: items: type: string title: Resolved User Ids type: array team_ids: items: type: string title: Team Ids type: array required: - placeholder_user_id - resolved_user_ids - team_ids title: SCIMPlaceholder type: object SCIMUser-Input: properties: active: default: true title: Active type: boolean displayName: anyOf: - type: string - type: 'null' title: Displayname emails: anyOf: - items: $ref: '#/components/schemas/SCIMUserEmail' type: array - type: 'null' title: Emails entitlements: anyOf: - items: $ref: '#/components/schemas/SCIMMultiValuedAttribute' type: array - type: 'null' title: Entitlements externalId: anyOf: - type: string - type: 'null' title: Externalid groups: anyOf: - items: $ref: '#/components/schemas/SCIMUserGroup' type: array - type: 'null' title: Groups id: anyOf: - type: string - type: 'null' title: Id meta: anyOf: - additionalProperties: true type: object - type: 'null' title: Meta name: anyOf: - $ref: '#/components/schemas/SCIMUserName' - type: 'null' roles: anyOf: - items: $ref: '#/components/schemas/SCIMMultiValuedAttribute' type: array - type: 'null' title: Roles schemas: items: type: string title: Schemas type: array urn:ietf:params:scim:schemas:extension:enterprise:2.0:User: anyOf: - $ref: '#/components/schemas/SCIMEnterpriseUser' - type: 'null' userName: anyOf: - type: string - type: 'null' title: Username required: - schemas title: SCIMUser type: object SCIMUserManager: properties: $ref: anyOf: - type: string - type: 'null' title: $Ref displayName: anyOf: - type: string - type: 'null' title: Displayname value: anyOf: - type: string - type: 'null' title: Value title: SCIMUserManager type: object SCIMPatchOperation: properties: op: title: Op type: string path: anyOf: - type: string - type: 'null' title: Path value: anyOf: - {} - type: 'null' title: Value required: - op title: SCIMPatchOperation type: object SCIMMember: properties: display: anyOf: - type: string - type: 'null' title: Display type: anyOf: - type: string - type: 'null' title: Type value: title: Value type: string required: - value title: SCIMMember type: object SCIMGroup: properties: displayName: title: Displayname type: string externalId: anyOf: - type: string - type: 'null' title: Externalid id: anyOf: - type: string - type: 'null' title: Id members: anyOf: - items: $ref: '#/components/schemas/SCIMMember' type: array - type: 'null' title: Members meta: anyOf: - additionalProperties: true type: object - type: 'null' title: Meta schemas: items: type: string title: Schemas type: array required: - schemas - displayName title: SCIMGroup type: object SCIMUser-Output: additionalProperties: true type: object SCIMUserEmail: properties: primary: anyOf: - type: boolean - type: 'null' title: Primary type: anyOf: - type: string - type: 'null' title: Type value: format: email title: Value type: string required: - value title: SCIMUserEmail type: object SCIMFeature: properties: maxOperations: anyOf: - type: integer - type: 'null' title: Maxoperations maxPayloadSize: anyOf: - type: integer - type: 'null' title: Maxpayloadsize maxResults: anyOf: - type: integer - type: 'null' title: Maxresults supported: title: Supported type: boolean required: - supported title: SCIMFeature type: object SCIMUserName: properties: familyName: anyOf: - type: string - type: 'null' title: Familyname formatted: anyOf: - type: string - type: 'null' title: Formatted givenName: anyOf: - type: string - type: 'null' title: Givenname honorificPrefix: anyOf: - type: string - type: 'null' title: Honorificprefix honorificSuffix: anyOf: - type: string - type: 'null' title: Honorificsuffix middleName: anyOf: - type: string - type: 'null' title: Middlename title: SCIMUserName type: object securitySchemes: APIKeyHeader: type: apiKey description: Bearer token in: header name: x-litellm-api-key