diff --git a/ui/litellm-dashboard/src/components/SCIM.tsx b/ui/litellm-dashboard/src/components/SCIM.tsx index 655d3bf925..3ebd2e8daa 100644 --- a/ui/litellm-dashboard/src/components/SCIM.tsx +++ b/ui/litellm-dashboard/src/components/SCIM.tsx @@ -8,10 +8,18 @@ import { Button as TremorButton, Callout, TextInput, + Divider, } from "@tremor/react"; import { message, Form } from "antd"; import { keyCreateCall } from "./networking"; import { CopyToClipboard } from "react-copy-to-clipboard"; +import { + LinkOutlined, + KeyOutlined, + CopyOutlined, + ExclamationCircleOutlined, + PlusCircleOutlined +} from "@ant-design/icons"; interface SCIMConfigProps { accessToken: string | null; @@ -70,89 +78,128 @@ const SCIMConfig: React.FC = ({ accessToken, userID, proxySetti return ( - SCIM Configuration - +
+ SCIM Configuration +
+ System for Cross-domain Identity Management (SCIM) allows you to automatically provision and manage users and groups in LiteLLM. -
- SCIM Tenant URL (Base URL) -
- - message.success("URL copied to clipboard")} - > - - Copy - - + + +
+ {/* Step 1: SCIM URL */} +
+
+
+ 1 +
+ + <LinkOutlined className="h-5 w-5 mr-2" /> + SCIM Tenant URL + +
+ + Use this URL in your identity provider's SCIM integration settings. + +
+ + message.success("URL copied to clipboard")} + > + + + Copy + + +
- - You need a SCIM token to authenticate with the SCIM API. Create one below and use it in your SCIM provider's configuration. - - - {!tokenData ? ( - <> - Create SCIM Access Token -
- - - - - - Create SCIM Token - - -
- - ) : ( - - Your SCIM Token - - Make sure to copy this token now. You won't be able to see it again! - -
- - message.success("Token copied to clipboard")} - > - - Copy - - + {/* Step 2: SCIM Token */} +
+
+
+ 2
- setTokenData(null)} - > - Create Another Token - - - )} + + <KeyOutlined className="h-5 w-5 mr-2" /> + Authentication Token + +
+ + + You need a SCIM token to authenticate with the SCIM API. Create one below and use it in your SCIM provider's configuration. + + + {!tokenData ? ( +
+
+ + + + + + + Create SCIM Token + + +
+
+ ) : ( + +
+ + Your SCIM Token +
+ + Make sure to copy this token now. You won't be able to see it again! + +
+ + message.success("Token copied to clipboard")} + > + + + Copy + + +
+ setTokenData(null)} + > + + Create Another Token + +
+ )} +