Lewati ke konten

API Management - Referensi Lengkap

Dokumen ini menyediakan referensi teknis lengkap dan detail untuk seluruh 100 endpoint manajemen yang diekspos oleh API Gateway KoboiLLM. Di setiap endpoint, kami mencantumkan metode, path, parameter, serta tingkat kewenangan (Global Admin Only vs. Team Admin Allowed). Semua contoh kunci yang tercantum menggunakan kunci dummy (sk-xxxxxx).


📦 Manajemen Virtual Key

Menampilkan total 14 endpoint untuk modul ini.

01. [GET] /key/aliases

Ringkasan: Mendaftar Alias Virtual Key Wewenang: Global Admin Only

Mendaftar alias key dengan paginasi dan pencarian opsional.

Parameter:

  • page (query, Optional) — Page number
  • size (query, Optional) — Page size
  • search (query, Optional) — Search key aliases (case-insensitive partial match)

02. [POST] /key/block

Ringkasan: Memblokir Virtual Key Wewenang: Team Admin Allowed

Block an Virtual key from making any requests.

Parameter:

  • key: str - The key to block. Can be either the unhashed key (sk-xxxxxx) or the hashed key value

Example:

Terminal window
curl --location 'https://api.koboillm.com/key/block' --header 'Authorization: Bearer sk-xxxxxx' --header 'Content-Type: application/json' --data '\{
"key": "sk-xxxxxx"
\}'

Note: This is an admin-only endpoint. Only proxy admins can block keys.

Parameter:

  • litellm-changed-by (header, Optional) — The litellm-changed-by header enables tracking of actions performed by authorized users on behalf of other users, providing an audit trail for accountability

03. [POST] /key/bulk_update

Ringkasan: Pembaruan Massal Virtual Key Wewenang: Global Admin Only

Bulk update multiple keys at once.

This endpoint allows updating multiple keys in a single request. Each key update is processed independently - if some updates fail, others will still succeed.

Parameter:

  • keys: Mendaftar[BulkMemperbaruiKeyRequestItem] - Mendaftar of key update requests, each containing:
    • key: str - The key identifier (token) to update
    • budget_id: Optional[str] - Budget ID associated with the key
    • max_budget: Optional[float] - Max budget for key
    • team_id: Optional[str] - Team ID associated with key
    • tags: Optional[Mendaftar[str]] - Tags for organizing keys

Mengembalikan:

  • total_requested: int - Total number of keys requested for update
  • successful_updates: Mendaftar[SuccessfulKeyMemperbarui] - Mendaftar of successfully updated keys with their updated info
  • failed_updates: Mendaftar[FailedKeyMemperbarui] - Mendaftar of failed updates with key_info and failed_reason

Example request:

Terminal window
curl --location 'https://api.koboillm.com/key/bulk_update' --header 'Authorization: Bearer sk-xxxxxx' --header 'Content-Type: application/json' --data '\{
"keys": [
\{
"key": "sk-xxxxxx",
"max_budget": 100.0,
"team_id": "team-123",
"tags": ["production", "api"]
\},
\{
"key": "sk-xxxxxx",
"budget_id": "budget-456",
"tags": ["staging"]
\}
]
\}'

Parameter:

  • litellm-changed-by (header, Optional) — The litellm-changed-by header enables tracking of actions performed by authorized users on behalf of other users, providing an audit trail for accountability

04. [POST] /key/delete

Ringkasan: Menghapus Virtual Key Wewenang: Team Admin Allowed

Menghapus a key from the key management system.

Parameter::

  • keys (Mendaftar[str]): A list of keys or hashed keys to delete. Example {“keys”: [“sk-xxxxxx”, “837e17519f44683334df5291321d97b8bf1098cd490e49e215f6fea935aa28be”]}
  • key_aliases (Mendaftar[str]): A list of key aliases to delete. Can be passed instead of keys.Example {“key_aliases”: [“alias1”, “alias2”]}

Mengembalikan:

  • deleted_keys (Mendaftar[str]): A list of deleted keys. Example {“deleted_keys”: [“sk-xxxxxx”, “837e17519f44683334df5291321d97b8bf1098cd490e49e215f6fea935aa28be”]}

Example:

Terminal window
curl --location 'https://api.koboillm.com/key/delete' --header 'Authorization: Bearer sk-xxxxxx' --header 'Content-Type: application/json' --data '\{
"keys": ["sk-xxxxxx"]
\}'

Raises: HTTPException: If an error occurs during key deletion.

Parameter:

  • litellm-changed-by (header, Optional) — The litellm-changed-by header enables tracking of actions performed by authorized users on behalf of other users, providing an audit trail for accountability

05. [POST] /key/generate

Ringkasan: Membuat Virtual Key Wewenang: Team Admin Allowed

Membuat Virtual Key baru untuk tim atau user.

Parameter:

  • litellm-changed-by (header, Optional) — The litellm-changed-by header enables tracking of actions performed by authorized users on behalf of other users, providing an audit trail for accountability

06. [POST] /key/health

Ringkasan: Memeriksa Kesehatan Key Wewenang: Global Admin Only

Check the health of the key

Checks:

  • If key based logging is configured correctly - sends a test log

Usage

Pass the key in the request header

Terminal window
curl -X POST "https://api.koboillm.com/key/health" -H "Authorization: Bearer sk-xxxxxx" -H "Content-Type: application/json"

Response when logging callbacks are setup correctly:

\{
"key": "healthy",
"logging_callbacks": \{
"callbacks": [
"gcs_bucket"
],
"status": "healthy",
"details": "No logger exceptions triggered, system is healthy. Manually check if logs were sent to ['gcs_bucket']"
\}
\}

Response when logging callbacks are not setup correctly:

\{
"key": "unhealthy",
"logging_callbacks": \{
"callbacks": [
"gcs_bucket"
],
"status": "unhealthy",
"details": "Logger exceptions triggered, system is unhealthy: Failed to load vertex credentials. Check to see if credentials containing partial/invalid information."
\}
\}

07. [GET] /key/info

Ringkasan: Informasi Detil Virtual Key Wewenang: Team Admin Allowed

Mengambil rincian informasi, batas budget, dan status pengeluaran Virtual Key.

Parameter:

  • key (query, Optional) — Key in the request parameters

08. [GET] /key/list

Ringkasan: Mendaftar Semua Virtual Key Wewenang: Global Admin Only

Mendaftar seluruh Virtual Key yang terdaftar di server.

Parameter:

  • page (query, Optional) — Page number
  • size (query, Optional) — Page size
  • user_id (query, Optional) — Filter keys by user ID
  • team_id (query, Optional) — Filter keys by team ID
  • organization_id (query, Optional) — Filter keys by organization ID
  • key_hash (query, Optional) — Filter keys by key hash
  • key_alias (query, Optional) — Filter keys by key alias
  • return_full_object (query, Optional) — Return full key object
  • include_team_keys (query, Optional) — Include all keys for teams that user is an admin of.
  • include_created_by_keys (query, Optional) — Include keys created by the user
  • sort_by (query, Optional) — Column to sort by (e.g. ‘user_id’, ‘created_at’, ‘spend’)
  • sort_order (query, Optional) — Sort order (‘asc’ or ‘desc’)
  • expand (query, Optional) — Expand related objects (e.g. ‘user’)
  • status (query, Optional) — Filter by status (e.g. ‘deleted’)
  • project_id (query, Optional) — Filter keys by project ID
  • access_group_id (query, Optional) — Filter keys by access group ID

09. [POST] /key/regenerate

Ringkasan: Rotasi / Regenerasi Virtual Key Wewenang: Global Admin Only

Regenerate an existing API key while optionally updating its parameters.

Parameter:

  • key: str (path parameter) - The key to regenerate
  • data: Optional[RegenerateKeyRequest] - Request body containing optional parameters to update
    • key: Optional[str] - The key to regenerate.
    • new_master_key: Optional[str] - The new master key to use, if key is the master key.
    • new_key: Optional[str] - The new key to use, if key is not the master key. If both set, new_master_key will be used.
    • key_alias: Optional[str] - User-friendly key alias
    • user_id: Optional[str] - User ID associated with key
    • team_id: Optional[str] - Team ID associated with key
    • models: Optional[list] - Model_name’s a user is allowed to call
    • tags: Optional[Mendaftar[str]] - Tags for organizing keys (Enterprise only)
    • spend: Optional[float] - Amount spent by key
    • max_budget: Optional[float] - Max budget for key
    • model_max_budget: Optional[Dict[str, BudgetConfig]] - Model-specific budgets {“gpt-4”: {“budget_limit”: 0.0005, “time_period”: “30d”}}
    • budget_duration: Optional[str] - Budget reset period (“30d”, “1h”, etc.)
    • soft_budget: Optional[float] - Soft budget limit (warning vs. hard stop). Will trigger a slack alert when this soft budget is reached.
    • max_parallel_requests: Optional[int] - Rate limit for parallel requests
    • metadata: Optional[dict] - Metadata for key. Example {“team”: “core-infra”, “app”: “app2”}
    • tpm_limit: Optional[int] - Tokens per minute limit
    • rpm_limit: Optional[int] - Requests per minute limit
    • model_rpm_limit: Optional[dict] - Model-specific RPM limits {“gpt-4”: 100, “claude-v1”: 200}
    • model_tpm_limit: Optional[dict] - Model-specific TPM limits {“gpt-4”: 100000, “claude-v1”: 200000}
    • allowed_cache_controls: Optional[list] - Mendaftar of allowed cache control values
    • duration: Optional[str] - Key validity duration (“30d”, “1h”, etc.)
    • permissions: Optional[dict] - Key-specific permissions
    • guardrails: Optional[Mendaftar[str]] - Mendaftar of active guardrails for the key
    • blocked: Optional[bool] - Whether the key is blocked
    • grace_period: Optional[str] - Duration to keep old key valid after rotation (e.g. “24h”, “2d”). Omitted = immediate revoke. Env: LITELLM_KEY_ROTATION_GRACE_PERIOD

Mengembalikan:

  • GenerateKeyResponse containing the new key and its updated parameters

Example:

Terminal window
curl --location --request POST 'https://api.koboillm.com/key/sk-xxxxxx/regenerate' --header 'Authorization: Bearer sk-xxxxxx' --header 'Content-Type: application/json' --data-raw '\{
"max_budget": 100,
"metadata": \{"team": "core-infra"\},
"models": ["gpt-4", "gpt-3.5-turbo"]
\}'

Note: This is an Enterprise feature. It requires a premium license to use.

Parameter:

  • key (query, Optional) — Tidak ada deskripsi.
  • litellm-changed-by (header, Optional) — The litellm-changed-by header enables tracking of actions performed by authorized users on behalf of other users, providing an audit trail for accountability

10. [POST] /key/service-account/generate

Ringkasan: Membuat Key Service Account GCP Wewenang: Global Admin Only

Membuat Virtual Key baru untuk tim atau user.

Parameter:

  • litellm-changed-by (header, Optional) — The litellm-changed-by header enables tracking of actions performed by authorized users on behalf of other users, providing an audit trail for accountability

11. [POST] /key/unblock

Ringkasan: Membuka Blokir Virtual Key Wewenang: Team Admin Allowed

Unblock a Virtual key to allow it to make requests again.

Parameter:

  • key: str - The key to unblock. Can be either the unhashed key (sk-xxxxxx) or the hashed key value

Example:

Terminal window
curl --location 'https://api.koboillm.com/key/unblock' --header 'Authorization: Bearer sk-xxxxxx' --header 'Content-Type: application/json' --data '\{
"key": "sk-xxxxxx"
\}'

Note: This is an admin-only endpoint. Only proxy admins can unblock keys.

Parameter:

  • litellm-changed-by (header, Optional) — The litellm-changed-by header enables tracking of actions performed by authorized users on behalf of other users, providing an audit trail for accountability

12. [POST] /key/update

Ringkasan: Memperbarui Parameter Virtual Key Wewenang: Team Admin Allowed

Memperbarui an existing API key’s parameters.

Parameter:

  • key: str - The key to update
  • key_alias: Optional[str] - User-friendly key alias
  • user_id: Optional[str] - User ID associated with key
  • team_id: Optional[str] - Team ID associated with key
  • agent_id: Optional[str] - The agent id associated with the key.
  • budget_id: Optional[str] - The budget id associated with the key. Membuatd by calling /budget/new.
  • models: Optional[list] - Model_name’s a user is allowed to call
  • tags: Optional[Mendaftar[str]] - Tags for organizing keys (Enterprise only)
  • prompts: Optional[Mendaftar[str]] - Mendaftar of prompts that the key is allowed to use.
  • enforced_params: Optional[Mendaftar[str]] - Mendaftar of enforced params for the key (Enterprise only). Docs
  • spend: Optional[float] - Amount spent by key
  • max_budget: Optional[float] - Max budget for key
  • model_max_budget: Optional[Dict[str, BudgetConfig]] - Model-specific budgets {“gpt-4”: {“budget_limit”: 0.0005, “time_period”: “30d”}}
  • budget_duration: Optional[str] - Budget reset period (“30d”, “1h”, etc.)
  • soft_budget: Optional[float] - [TODO] Soft budget limit (warning vs. hard stop). Will trigger a slack alert when this soft budget is reached.
  • max_parallel_requests: Optional[int] - Rate limit for parallel requests
  • metadata: Optional[dict] - Metadata for key. Example {“team”: “core-infra”, “app”: “app2”}
  • tpm_limit: Optional[int] - Tokens per minute limit
  • rpm_limit: Optional[int] - Requests per minute limit
  • model_rpm_limit: Optional[dict] - Model-specific RPM limits {“gpt-4”: 100, “claude-v1”: 200}
  • model_tpm_limit: Optional[dict] - Model-specific TPM limits {“gpt-4”: 100000, “claude-v1”: 200000}
  • tpm_limit_type: Optional[str] - TPM rate limit type - “best_effort_throughput”, “guaranteed_throughput”, or “dynamic”
  • rpm_limit_type: Optional[str] - RPM rate limit type - “best_effort_throughput”, “guaranteed_throughput”, or “dynamic”
  • allowed_cache_controls: Optional[list] - Mendaftar of allowed cache control values
  • duration: Optional[str] - Key validity duration (“30d”, “1h”, etc.) or “-1” to never expire
  • permissions: Optional[dict] - Key-specific permissions
  • send_invite_email: Optional[bool] - Send invite email to user_id
  • guardrails: Optional[Mendaftar[str]] - Mendaftar of active guardrails for the key
  • policies: Optional[Mendaftar[str]] - Mendaftar of policy names to apply to the key. Policies define guardrails, conditions, and inheritance rules.
  • disable_global_guardrails: Optional[bool] - Whether to disable global guardrails for the key.
  • prompts: Optional[Mendaftar[str]] - Mendaftar of prompts that the key is allowed to use.
  • blocked: Optional[bool] - Whether the key is blocked
  • aliases: Optional[dict] - Model aliases for the key - Docs
  • config: Optional[dict] - [DEPRECATED PARAM] Key-specific config.
  • temp_budget_increase: Optional[float] - Temporary budget increase for the key (Enterprise only).
  • temp_budget_expiry: Optional[str] - Expiry time for the temporary budget increase (Enterprise only).
  • allowed_routes: Optional[list] - Mendaftar of allowed routes for the key. Store the actual route or store a wildcard pattern for a set of routes. Example - [“/chat/completions”, “/embeddings”, “/keys/*”]
  • allowed_passthrough_routes: Optional[list] - Mendaftar of allowed pass through routes for the key. Store the actual route or store a wildcard pattern for a set of routes. Example - [“/my-custom-endpoint”]. Use this instead of allowed_routes, if you just want to specify which pass through routes the key can access, without specifying the routes. If allowed_routes is specified, allowed_passthrough_routes is ignored.
  • prompts: Optional[Mendaftar[str]] - Mendaftar of allowed prompts for the key. If specified, the key will only be able to use these specific prompts.
  • object_permission: Optional[LiteLLM_ObjectPermissionBase] - key-specific object permission. Example - {“vector_stores”: [“vector_store_1”, “vector_store_2”], “agents”: [“agent_1”, “agent_2”], “agent_access_groups”: [“dev_group”]}. IF null or {} then no object permission.
  • auto_rotate: Optional[bool] - Whether this key should be automatically rotated
  • rotation_interval: Optional[str] - How often to rotate this key (e.g., ‘30d’, ‘90d’). Required if auto_rotate=True
  • allowed_vector_store_indexes: Optional[Mendaftar[dict]] - Mendaftar of allowed vector store indexes for the key. Example - [{“index_name”: “my-index”, “index_permissions”: [“write”, “read”]}]. If specified, the key will only be able to use these specific vector store indexes. Membuat index, using /v1/indexes endpoint.
  • router_settings: Optional[MemperbaruiRouterConfig] - key-specific router settings. Example - {“model_group_retry_policy”: {“max_retries”: 5}}. IF null or {} then no router settings.
  • access_group_ids: Optional[Mendaftar[str]] - Mendaftar of access group IDs to associate with the key. Access groups define which models a key can access. Example - [“access_group_1”, “access_group_2”].

Example:

Terminal window
curl --location 'https://api.koboillm.com/key/update' --header 'Authorization: Bearer sk-xxxxxx' --header 'Content-Type: application/json' --data '\{
"key": "sk-xxxxxx",
"key_alias": "my-key",
"user_id": "user-1234",
"team_id": "team-1234",
"max_budget": 100,
"metadata": \{"any_key": "any-val"\},
\}'

Parameter:

  • litellm-changed-by (header, Optional) — The litellm-changed-by header enables tracking of actions performed by authorized users on behalf of other users, providing an audit trail for accountability

13. [POST] /key/{key}/regenerate

Ringkasan: Rotasi / Regenerasi Virtual Key Wewenang: Global Admin Only

Regenerate an existing API key while optionally updating its parameters.

Parameter:

  • key: str (path parameter) - The key to regenerate
  • data: Optional[RegenerateKeyRequest] - Request body containing optional parameters to update
    • key: Optional[str] - The key to regenerate.
    • new_master_key: Optional[str] - The new master key to use, if key is the master key.
    • new_key: Optional[str] - The new key to use, if key is not the master key. If both set, new_master_key will be used.
    • key_alias: Optional[str] - User-friendly key alias
    • user_id: Optional[str] - User ID associated with key
    • team_id: Optional[str] - Team ID associated with key
    • models: Optional[list] - Model_name’s a user is allowed to call
    • tags: Optional[Mendaftar[str]] - Tags for organizing keys (Enterprise only)
    • spend: Optional[float] - Amount spent by key
    • max_budget: Optional[float] - Max budget for key
    • model_max_budget: Optional[Dict[str, BudgetConfig]] - Model-specific budgets {“gpt-4”: {“budget_limit”: 0.0005, “time_period”: “30d”}}
    • budget_duration: Optional[str] - Budget reset period (“30d”, “1h”, etc.)
    • soft_budget: Optional[float] - Soft budget limit (warning vs. hard stop). Will trigger a slack alert when this soft budget is reached.
    • max_parallel_requests: Optional[int] - Rate limit for parallel requests
    • metadata: Optional[dict] - Metadata for key. Example {“team”: “core-infra”, “app”: “app2”}
    • tpm_limit: Optional[int] - Tokens per minute limit
    • rpm_limit: Optional[int] - Requests per minute limit
    • model_rpm_limit: Optional[dict] - Model-specific RPM limits {“gpt-4”: 100, “claude-v1”: 200}
    • model_tpm_limit: Optional[dict] - Model-specific TPM limits {“gpt-4”: 100000, “claude-v1”: 200000}
    • allowed_cache_controls: Optional[list] - Mendaftar of allowed cache control values
    • duration: Optional[str] - Key validity duration (“30d”, “1h”, etc.)
    • permissions: Optional[dict] - Key-specific permissions
    • guardrails: Optional[Mendaftar[str]] - Mendaftar of active guardrails for the key
    • blocked: Optional[bool] - Whether the key is blocked
    • grace_period: Optional[str] - Duration to keep old key valid after rotation (e.g. “24h”, “2d”). Omitted = immediate revoke. Env: LITELLM_KEY_ROTATION_GRACE_PERIOD

Mengembalikan:

  • GenerateKeyResponse containing the new key and its updated parameters

Example:

Terminal window
curl --location --request POST 'https://api.koboillm.com/key/sk-xxxxxx/regenerate' --header 'Authorization: Bearer sk-xxxxxx' --header 'Content-Type: application/json' --data-raw '\{
"max_budget": 100,
"metadata": \{"team": "core-infra"\},
"models": ["gpt-4", "gpt-3.5-turbo"]
\}'

Note: This is an Enterprise feature. It requires a premium license to use.

Parameter:

  • key (path, Required) — Tidak ada deskripsi.
  • litellm-changed-by (header, Optional) — The litellm-changed-by header enables tracking of actions performed by authorized users on behalf of other users, providing an audit trail for accountability

14. [POST] /key/{key}/reset_spend

Ringkasan: Mereset Pengeluaran Virtual Key Wewenang: Global Admin Only

Tidak ada deskripsi tambahan.

Parameter:

  • key (path, Required) — Tidak ada deskripsi.
  • litellm-changed-by (header, Optional) — The litellm-changed-by header enables tracking of actions performed by authorized users on behalf of other users, providing an audit trail for accountability

📦 Manajemen Model & Router

Menampilkan total 26 endpoint untuk modul ini.

01. [GET] /access_group/list

Ringkasan: Mendaftar Semua Access Group Wewenang: Global Admin Only

Mendaftar all access groups.

Returns a list of all access groups with their model names and deployment counts.

Example:

Terminal window
curl -X GET 'https://api.koboillm.com/access_group/list' \
-H 'Authorization: Bearer sk-xxxxxx'

Mengembalikan:

  • MendaftarAccessGroupsResponse with all access groups

02. [POST] /access_group/new

Ringkasan: Membuat Model Group Baru Wewenang: Global Admin Only

Membuat a new access group containing multiple model names.

An access group is a named collection of model groups that can be referenced by teams/keys for simplified access control.

Example:

Terminal window
curl -X POST 'https://api.koboillm.com/access_group/new' \
-H 'Authorization: Bearer sk-xxxxxx' \
-H 'Content-Type: application/json' \
-d '\{
"access_group": "production-models",
"model_names": ["gpt-4", "claude-3-opus", "gemini-pro"]
\}'

Parameter:

  • access_group: str - The access group name (e.g., “production-models”)
  • model_names: Mendaftar[str] - Mendaftar of existing model groups to include

Mengembalikan:

  • NewModelGroupResponse with the created access group details

Raises:

  • HTTPException 400: If any model names don’t exist
  • HTTPException 500: If database operations fail

03. [DELETE] /access_group/{access_group}/delete

Ringkasan: Menghapus Access Group Wewenang: Global Admin Only

Menghapus an access group.

Removes the access group from all deployments that have it.

Example:

Terminal window
curl -X DELETE 'https://api.koboillm.com/access_group/production-models/delete' \
-H 'Authorization: Bearer sk-xxxxxx'

Parameter:

  • access_group: str - The access group name (URL path parameter)

Mengembalikan:

  • MenghapusModelGroupResponse with deletion details

Raises:

  • HTTPException 404: If access group not found

Parameter:

  • access_group (path, Required) — Tidak ada deskripsi.

04. [GET] /access_group/{access_group}/info

Ringkasan: Mendapatkan Informasi Access Group Wewenang: Global Admin Only

Get information about a specific access group.

Example:

Terminal window
curl -X GET 'https://api.koboillm.com/access_group/production-models/info' \
-H 'Authorization: Bearer sk-xxxxxx'

Parameter:

  • access_group: str - The access group name (URL path parameter)

Mengembalikan:

  • AccessGroupInfo with the access group details

Raises:

  • HTTPException 404: If access group not found

Parameter:

  • access_group (path, Required) — Tidak ada deskripsi.

05. [PUT] /access_group/{access_group}/update

Ringkasan: Memperbarui Access Group Wewenang: Global Admin Only

Memperbarui an access group’s model names.

This will:

  1. Remove the access group from all current deployments
  2. Add the access group to all deployments for the new model_names list

Example:

Terminal window
curl -X PUT 'https://api.koboillm.com/access_group/production-models/update' \
-H 'Authorization: Bearer sk-xxxxxx' \
-H 'Content-Type: application/json' \
-d '\{
"model_names": ["gpt-4", "claude-3-sonnet"]
\}'

Parameter:

  • access_group: str - The access group name (URL path parameter)
  • model_names: Mendaftar[str] - New list of model groups to include

Mengembalikan:

  • NewModelGroupResponse with the updated access group details

Raises:

  • HTTPException 400: If any model names don’t exist
  • HTTPException 404: If access group not found

Parameter:

  • access_group (path, Required) — Tidak ada deskripsi.

06. [POST] /model/delete

Ringkasan: Menghapus Model Wewenang: Global Admin Only

Allows deleting models in the model list in the config.yaml


07. [GET] /model/info

Ringkasan: Informasi Model V1 Wewenang: Global Admin Only

Provides more info about each model in /models, including config.yaml descriptions (except api key and api base)

Parameter: litellm_model_id: Optional[str] = None (this is the value of x-litellm-model-id returned in response headers)

  • When litellm_model_id is passed, it will return the info for that specific model
  • When litellm_model_id is not passed, it will return the info for all models

Mengembalikan: Returns a dictionary containing information about each model.

Example Response:

\{
"data": [
\{
"model_name": "fake-openai-endpoint",
"litellm_params": \{
"api_base": "https://exampleopenaiendpoint-production.up.railway.app/",
"model": "openai/fake"
\},
"model_info": \{
"id": "112f74fab24a7a5245d2ced3536dd8f5f9192c57ee6e332af0f0512e08bed5af",
"db_model": false
\}
\}
]
\}

Parameter:

  • litellm_model_id (query, Optional) — Tidak ada deskripsi.

08. [POST] /model/new

Ringkasan: Mendaftarkan Model Baru Wewenang: Global Admin Only

Allows adding new models to the model list in the config.yaml


09. [POST] /model/update

Ringkasan: Memperbarui Model Wewenang: Global Admin Only

Edit existing model params


10. [PATCH] /model/{model_id}/update

Ringkasan: Patch Parameter Model Wewenang: Global Admin Only

PATCH Endpoint for partial model updates.

Only updates the fields specified in the request while preserving other existing values. Follows proper PATCH semantics by only modifying provided fields.

Args: model_id: The ID of the model to update patch_data: The fields to update and their new values user_api_key_dict: User authentication information

Mengembalikan: Memperbaruid model information

Raises: ProxyException: For various error conditions including authentication and database errors

Parameter:

  • model_id (path, Required) — Tidak ada deskripsi.

11. [GET] /models

Ringkasan: Mendaftar Seluruh Model Wewenang: Global Admin Only

Use /model/info - to get detailed model information, example - pricing, mode, etc.

This is just for compatibility with openai projects like aider.

Query Parameter:

  • include_metadata: Include additional metadata in the response with fallback information
  • fallback_type: Type of fallbacks to include (“general”, “context_window”, “content_policy”) Defaults to “general” when include_metadata=true
  • scope: Optional scope parameter. Currently only accepts “expand”. When scope=expand is passed, proxy admins, team admins, and org admins will receive all proxy models as if they are a proxy admin.

Parameter:

  • return_wildcard_routes (query, Optional) — Tidak ada deskripsi.
  • team_id (query, Optional) — Tidak ada deskripsi.
  • include_model_access_groups (query, Optional) — Tidak ada deskripsi.
  • only_model_access_groups (query, Optional) — Tidak ada deskripsi.
  • include_metadata (query, Optional) — Tidak ada deskripsi.
  • fallback_type (query, Optional) — Tidak ada deskripsi.
  • scope (query, Optional) — Tidak ada deskripsi.

12. [GET] /models/{model_id}

Ringkasan: Mendapatkan Informasi Model Wewenang: Global Admin Only

Mengambil information about a specific model accessible to your API key.

Returns model details only if the model is available to your API key/team. Returns 404 if the model doesn’t exist or is not accessible.

Follows OpenAI API specification for individual model retrieval. https://platform.openai.com/docs/api-reference/models/retrieve

Parameter:

  • model_id (path, Required) — Tidak ada deskripsi.

13. [POST] /models/{model_name}:countTokens

Ringkasan: Menghitung Token Google Vertex Wewenang: Global Admin Only

return \{
"totalTokens": 31,
"totalBillableCharacters": 96,
"promptTokensDetails": [
\{
"modality": "TEXT",
"tokenCount": 31
\}
]
\}

Parameter:

  • model_name (path, Required) — Tidak ada deskripsi.

14. [POST] /models/{model_name}:generateContent

Ringkasan: Menghasilkan Konten Google Vertex Wewenang: Global Admin Only

Tidak ada deskripsi tambahan.

Parameter:

  • model_name (path, Required) — Tidak ada deskripsi.

15. [POST] /models/{model_name}:streamGenerateContent

Ringkasan: Streaming Konten Google Vertex Wewenang: Global Admin Only

Tidak ada deskripsi tambahan.

Parameter:

  • model_name (path, Required) — Tidak ada deskripsi.

16. [POST] /team/model/add

Ringkasan: Menambahkan Akses Model ke Tim Wewenang: Team Admin Allowed

Add models to a team’s allowed model list. Only proxy admin or team admin can add models.

Parameter:

  • team_id: str - Required. The team to add models to
  • models: Mendaftar[str] - Required. Mendaftar of models to add to the team

Example Request:

curl --location 'https://api.koboillm.com/team/model/add' --header 'Authorization: Bearer sk-xxxxxx' --header 'Content-Type: application/json' --data '\{
"team_id": "team-1234",
"models": ["gpt-4", "claude-2"]
\}'

17. [POST] /team/model/delete

Ringkasan: Menghapus Akses Model dari Tim Wewenang: Team Admin Allowed

Remove models from a team’s allowed model list. Only proxy admin or team admin can remove models.

Parameter:

  • team_id: str - Required. The team to remove models from
  • models: Mendaftar[str] - Required. Mendaftar of models to remove from the team

Example Request:

curl --location 'https://api.koboillm.com/team/model/delete' --header 'Authorization: Bearer sk-xxxxxx' --header 'Content-Type: application/json' --data '\{
"team_id": "team-1234",
"models": ["gpt-4"]
\}'

18. [GET] /v1/access_group/{access_group_id}

Ringkasan: Mendapatkan Informasi Access Group Wewenang: Global Admin Only

Tidak ada deskripsi tambahan.

Parameter:

  • access_group_id (path, Required) — Tidak ada deskripsi.

19. [PUT] /v1/access_group/{access_group_id}

Ringkasan: Memperbarui Access Group Wewenang: Global Admin Only

Tidak ada deskripsi tambahan.

Parameter:

  • access_group_id (path, Required) — Tidak ada deskripsi.

20. [DELETE] /v1/access_group/{access_group_id}

Ringkasan: Menghapus Access Group Wewenang: Global Admin Only

Tidak ada deskripsi tambahan.

Parameter:

  • access_group_id (path, Required) — Tidak ada deskripsi.

21. [GET] /v1/model/info

Ringkasan: Informasi Model V1 Wewenang: Global Admin Only

Provides more info about each model in /models, including config.yaml descriptions (except api key and api base)

Parameter: litellm_model_id: Optional[str] = None (this is the value of x-litellm-model-id returned in response headers)

  • When litellm_model_id is passed, it will return the info for that specific model
  • When litellm_model_id is not passed, it will return the info for all models

Mengembalikan: Returns a dictionary containing information about each model.

Example Response:

\{
"data": [
\{
"model_name": "fake-openai-endpoint",
"litellm_params": \{
"api_base": "https://exampleopenaiendpoint-production.up.railway.app/",
"model": "openai/fake"
\},
"model_info": \{
"id": "112f74fab24a7a5245d2ced3536dd8f5f9192c57ee6e332af0f0512e08bed5af",
"db_model": false
\}
\}
]
\}

Parameter:

  • litellm_model_id (query, Optional) — Tidak ada deskripsi.

22. [GET] /v1/models

Ringkasan: Mendaftar Seluruh Model Wewenang: Global Admin Only

Use /model/info - to get detailed model information, example - pricing, mode, etc.

This is just for compatibility with openai projects like aider.

Query Parameter:

  • include_metadata: Include additional metadata in the response with fallback information
  • fallback_type: Type of fallbacks to include (“general”, “context_window”, “content_policy”) Defaults to “general” when include_metadata=true
  • scope: Optional scope parameter. Currently only accepts “expand”. When scope=expand is passed, proxy admins, team admins, and org admins will receive all proxy models as if they are a proxy admin.

Parameter:

  • return_wildcard_routes (query, Optional) — Tidak ada deskripsi.
  • team_id (query, Optional) — Tidak ada deskripsi.
  • include_model_access_groups (query, Optional) — Tidak ada deskripsi.
  • only_model_access_groups (query, Optional) — Tidak ada deskripsi.
  • include_metadata (query, Optional) — Tidak ada deskripsi.
  • fallback_type (query, Optional) — Tidak ada deskripsi.
  • scope (query, Optional) — Tidak ada deskripsi.

23. [GET] /v1/models/{model_id}

Ringkasan: Mendapatkan Informasi Model Wewenang: Global Admin Only

Mengambil information about a specific model accessible to your API key.

Returns model details only if the model is available to your API key/team. Returns 404 if the model doesn’t exist or is not accessible.

Follows OpenAI API specification for individual model retrieval. https://platform.openai.com/docs/api-reference/models/retrieve

Parameter:

  • model_id (path, Required) — Tidak ada deskripsi.

24. [POST] /v1beta/models/{model_name}:countTokens

Ringkasan: Menghitung Token Google Vertex Wewenang: Global Admin Only

return \{
"totalTokens": 31,
"totalBillableCharacters": 96,
"promptTokensDetails": [
\{
"modality": "TEXT",
"tokenCount": 31
\}
]
\}

Parameter:

  • model_name (path, Required) — Tidak ada deskripsi.

25. [POST] /v1beta/models/{model_name}:generateContent

Ringkasan: Menghasilkan Konten Google Vertex Wewenang: Global Admin Only

Tidak ada deskripsi tambahan.

Parameter:

  • model_name (path, Required) — Tidak ada deskripsi.

26. [POST] /v1beta/models/{model_name}:streamGenerateContent

Ringkasan: Streaming Konten Google Vertex Wewenang: Global Admin Only

Tidak ada deskripsi tambahan.

Parameter:

  • model_name (path, Required) — Tidak ada deskripsi.

📦 Manajemen Tim & Organisasi

Menampilkan total 30 endpoint untuk modul ini.

01. [GET] /config/pass_through_endpoint/team/{team_id}

Ringkasan: Mendapatkan Pass-Through Endpoints Wewenang: Global Admin Only

GET configured pass through endpoint.

If no endpoint_id given, return all configured endpoints.

Parameter:

  • team_id (path, Required) — Tidak ada deskripsi.
  • endpoint_id (query, Optional) — Tidak ada deskripsi.

02. [GET] /organization/daily/activity

Ringkasan: Mendapatkan Aktivitas Harian Organisasi Wewenang: Global Admin Only

Get daily activity for specific organizations or all accessible organizations.

Parameter:

  • organization_ids (query, Optional) — Tidak ada deskripsi.
  • start_date (query, Optional) — Tidak ada deskripsi.
  • end_date (query, Optional) — Tidak ada deskripsi.
  • model (query, Optional) — Tidak ada deskripsi.
  • api_key (query, Optional) — Tidak ada deskripsi.
  • page (query, Optional) — Tidak ada deskripsi.
  • page_size (query, Optional) — Tidak ada deskripsi.
  • exclude_organization_ids (query, Optional) — Tidak ada deskripsi.

03. [DELETE] /organization/delete

Ringkasan: Menghapus Organisasi Wewenang: Global Admin Only

Menghapus an organization

Parameter:

  • organization_ids: Mendaftar[str] - The organization ids to delete.

04. [GET] /organization/info

Ringkasan: Mendapatkan Informasi Organisasi Wewenang: Global Admin Only

Get the org specific information

Parameter:

  • organization_id (query, Required) — Tidak ada deskripsi.

05. [POST] /organization/info

Ringkasan: Mendapatkan Informasi Organisasi (Deprecated) Wewenang: Global Admin Only

DEPRECATED: Use GET /organization/info instead


06. [GET] /organization/list

Ringkasan: Mendaftar Semua Organisasi Wewenang: Global Admin Only

Get a list of organizations with optional filtering.

Parameter: org_id: Optional[str] Filter organizations by exact organization_id match org_alias: Optional[str] Filter organizations by partial organization_alias match (case-insensitive)

Example:

curl --location --request GET 'https://api.koboillm.com/organization/list?org_alias=my-org' --header 'Authorization: Bearer sk-xxxxxx'

Example with org_id:

curl --location --request GET 'https://api.koboillm.com/organization/list?org_id=123e4567-e89b-12d3-a456-426614174000' --header 'Authorization: Bearer sk-xxxxxx'

Parameter:

  • org_id (query, Optional) — Filter organizations by exact organization_id match
  • org_alias (query, Optional) — Filter organizations by partial organization_alias match. Supports case-insensitive search.

07. [POST] /organization/member_add

Ringkasan: Menambahkan Anggota Organisasi Wewenang: Global Admin Only

Membuat user konsol baru.


08. [DELETE] /organization/member_delete

Ringkasan: Menghapus Anggota Organisasi Wewenang: Global Admin Only

Menghapus a member from an organization


09. [PATCH] /organization/member_update

Ringkasan: Memperbarui Anggota Organisasi Wewenang: Global Admin Only

Memperbarui a member’s role in an organization


10. [POST] /organization/new

Ringkasan: Membuat Organisasi Baru Wewenang: Global Admin Only

Allow orgs to own teams

Set org level budgets + model access.

Only admins can create orgs.

Parameters

  • organization_alias: str - The name of the organization.
  • models: Mendaftar - The models the organization has access to.
  • budget_id: Optional[str] - The id for a budget (tpm/rpm/max budget) for the organization.

IF NO BUDGET ID - CREATE ONE WITH THESE PARAMS

  • max_budget: Optional[float] - Max budget for org
  • tpm_limit: Optional[int] - Max tpm limit for org
  • rpm_limit: Optional[int] - Max rpm limit for org
  • model_rpm_limit: Optional[Dict[str, int]] - The RPM (Requests Per Minute) limit per model for this organization.
  • model_tpm_limit: Optional[Dict[str, int]] - The TPM (Tokens Per Minute) limit per model for this organization.
  • max_parallel_requests: Optional[int] - [Not Implemented Yet] Max parallel requests for org
  • soft_budget: Optional[float] - [Not Implemented Yet] Get a slack alert when this soft budget is reached. Don’t block requests.
  • model_max_budget: Optional[dict] - Max budget for a specific model
  • budget_duration: Optional[str] - Frequency of reseting org budget
  • metadata: Optional[dict] - Metadata for organization, store information for organization. Example metadata - {“extra_info”: “some info”}
  • blocked: bool - Flag indicating if the org is blocked or not - will stop all calls from keys with this org_id.
  • tags: Optional[Mendaftar[str]] - Tags for tracking spend and/or doing tag-based routing.
  • organization_id: Optional[str] - The organization id of the team. Default is None. Membuat via /organization/new.
  • model_aliases: Optional[dict] - Model aliases for the team. Docs
  • object_permission: Optional[LiteLLM_ObjectPermissionBase] - organization-specific object permission. Example - {“vector_stores”: [“vector_store_1”, “vector_store_2”]}. IF null or {} then no object permission. Case 1: Membuat new org without a budget_id
Terminal window
curl --location 'https://api.koboillm.com/organization/new'
--header 'Authorization: Bearer sk-xxxxxx'
--header 'Content-Type: application/json'
--data '\{
"organization_alias": "my-secret-org",
"models": ["model1", "model2"],
"max_budget": 100
\}'

Case 2: Membuat new org with a budget_id

Terminal window
curl --location 'https://api.koboillm.com/organization/new'
--header 'Authorization: Bearer sk-xxxxxx'
--header 'Content-Type: application/json'
--data '\{
"organization_alias": "my-secret-org",
"models": ["model1", "model2"],
"budget_id": "428eeaa8-f3ac-4e85-a8fb-7dc8d7aa8689"
\}'

11. [PATCH] /organization/update

Ringkasan: Memperbarui Informasi Organisasi Wewenang: Global Admin Only

Memperbarui an organization


12. [GET] /team/available

Ringkasan: Mendaftar Tim yang Tersedia Wewenang: Global Admin Only

Tidak ada deskripsi tambahan.

Parameter:

  • response_model (query, Optional) — Tidak ada deskripsi.

13. [POST] /team/block

Ringkasan: Memblokir Akses Tim Wewenang: Global Admin Only

Blocks all calls from keys with this team id.

Parameter:

  • team_id: str - Required. The unique identifier of the team to block.

Example:

curl --location 'https://api.koboillm.com/team/block' --header 'Authorization: Bearer sk-xxxxxx' --header 'Content-Type: application/json' --data '\{
"team_id": "team-1234"
\}'

Mengembalikan:

  • The updated team record with blocked=True

14. [POST] /team/bulk_member_add

Ringkasan: Menambahkan Anggota Tim Secara Massal Wewenang: Global Admin Only

Menambahkan anggota baru ke tim atau organisasi.


15. [GET] /team/daily/activity

Ringkasan: Mendapatkan Aktivitas Harian Tim Wewenang: Team Admin Allowed

Get daily activity for specific teams or all teams.

Args: team_ids (Optional[str]): Comma-separated list of team IDs to filter by. If not provided, returns data for all teams. start_date (Optional[str]): Start date for the activity period (YYYY-MM-DD). end_date (Optional[str]): End date for the activity period (YYYY-MM-DD). model (Optional[str]): Filter by model name. api_key (Optional[str]): Filter by API key. page (int): Page number for pagination. page_size (int): Number of items per page. exclude_team_ids (Optional[str]): Comma-separated list of team IDs to exclude. Mengembalikan: SpendAnalyticsPaginatedResponse: Paginated response containing daily activity data.

Parameter:

  • team_ids (query, Optional) — Tidak ada deskripsi.
  • start_date (query, Optional) — Tidak ada deskripsi.
  • end_date (query, Optional) — Tidak ada deskripsi.
  • model (query, Optional) — Tidak ada deskripsi.
  • api_key (query, Optional) — Tidak ada deskripsi.
  • page (query, Optional) — Tidak ada deskripsi.
  • page_size (query, Optional) — Tidak ada deskripsi.
  • exclude_team_ids (query, Optional) — Tidak ada deskripsi.

16. [POST] /team/delete

Ringkasan: Menghapus Tim Wewenang: Global Admin Only

Menghapus tim secara permanen.

Parameter:

  • litellm-changed-by (header, Optional) — The litellm-changed-by header enables tracking of actions performed by authorized users on behalf of other users, providing an audit trail for accountability

17. [GET] /team/info

Ringkasan: Mendapatkan Informasi Detil Tim Wewenang: Team Admin Allowed

get info on team + related keys

Parameter:

  • team_id: str - Required. The unique identifier of the team to get info on.
curl --location 'https://api.koboillm.com/team/info?team_id=your_team_id_here' --header 'Authorization: Bearer your_api_key_here'

Parameter:

  • team_id (query, Optional) — Team ID in the request parameters

18. [GET] /team/list

Ringkasan: Mendaftar Semua Tim Wewenang: Global Admin Only

curl --location --request GET 'https://api.koboillm.com/team/list' --header 'Authorization: Bearer sk-xxxxxx'

Parameter:

  • user_id: str - Optional. If passed will only return teams that the user_id is a member of.
  • organization_id: str - Optional. If passed will only return teams that belong to the organization_id. Pass ‘default_organization’ to get all teams without organization_id.

Parameter:

  • user_id (query, Optional) — Only return teams which this ‘user_id’ belongs to
  • organization_id (query, Optional) — Tidak ada deskripsi.

19. [POST] /team/member_add

Ringkasan: Menambahkan Anggota Tim Wewenang: Team Admin Allowed

Membuat user konsol baru.


20. [POST] /team/member_delete

Ringkasan: Menghapus Anggota Tim Wewenang: Team Admin Allowed

[BETA]

delete members (either via user_email or user_id) from a team

If user doesn’t exist, an exception will be raised

curl -X POST 'https://api.koboillm.com:8000/team/member_delete'
-H 'Authorization: Bearer sk-xxxxxx'
-H 'Content-Type: application/json'
-d '\{
"team_id": "45e3e396-ee08-4a61-a88e-16b3ce7e0849",
"user_id": "krrish247652@berri.ai"
\}'

21. [POST] /team/member_update

Ringkasan: Memperbarui Anggota Tim Wewenang: Team Admin Allowed

[BETA]

Memperbarui team member budgets and team member role


22. [POST] /team/new

Ringkasan: Membuat Tim Baru Wewenang: Global Admin Only

Membuat tim baru.

Parameter:

  • litellm-changed-by (header, Optional) — The litellm-changed-by header enables tracking of actions performed by authorized users on behalf of other users, providing an audit trail for accountability

23. [GET] /team/permissions_list

Ringkasan: Mendapatkan Izin Anggota Tim Wewenang: Global Admin Only

Get the team member permissions for a team

Parameter:

  • team_id (query, Optional) — Team ID in the request parameters

24. [POST] /team/permissions_update

Ringkasan: Memperbarui Izin Anggota Tim Wewenang: Global Admin Only

Memperbarui the team member permissions for a team


25. [POST] /team/unblock

Ringkasan: Membuka Blokir Akses Tim Wewenang: Global Admin Only

Blocks all calls from keys with this team id.

Parameter:

  • team_id: str - Required. The unique identifier of the team to unblock.

Example:

curl --location 'https://api.koboillm.com/team/unblock' --header 'Authorization: Bearer sk-xxxxxx' --header 'Content-Type: application/json' --data '\{
"team_id": "team-1234"
\}'

26. [POST] /team/update

Ringkasan: Memperbarui Informasi Tim Wewenang: Global Admin Only

Membuat tim baru.

Parameter:

  • litellm-changed-by (header, Optional) — The litellm-changed-by header enables tracking of actions performed by authorized users on behalf of other users, providing an audit trail for accountability

27. [POST] /team/{team_id}/callback

Ringkasan: Menambahkan Webhook Callback Tim Wewenang: Global Admin Only

Add a success/failure callback to a team

Use this if if you want different teams to have different success/failure callbacks

Parameter:

  • callback_name (Literal[“langfuse”, “langsmith”, “gcs”], required): The name of the callback to add
  • callback_type (Literal[“success”, “failure”, “success_and_failure”], required): The type of callback to add. One of:
    • “success”: Callback for successful LLM calls
    • “failure”: Callback for failed LLM calls
    • “success_and_failure”: Callback for both successful and failed LLM calls
  • callback_vars (StandardCallbackDynamicParams, required): A dictionary of variables to pass to the callback
    • langfuse_public_key: The public key for the Langfuse callback
    • langfuse_secret_key: The secret key for the Langfuse callback
    • langfuse_secret: The secret for the Langfuse callback
    • langfuse_host: The host for the Langfuse callback
    • gcs_bucket_name: The name of the GCS bucket
    • gcs_path_service_account: The path to the GCS service account
    • langsmith_api_key: The API key for the Langsmith callback
    • langsmith_project: The project for the Langsmith callback
    • langsmith_base_url: The base URL for the Langsmith callback

Example curl:

curl -X POST 'http:/api.koboillm.com/team/dbe2f686-a686-4896-864a-4c3924458709/callback' -H 'Content-Type: application/json' -H 'Authorization: Bearer sk-xxxxxx' -d '\{
"callback_name": "langfuse",
"callback_type": "success",
"callback_vars": \{"langfuse_public_key": "pk-lf-xxxx1", "langfuse_secret_key": "sk-xxxxxx"\}
\}'

This means for the team where team_id = dbe2f686-a686-4896-864a-4c3924458709, all LLM calls will be logged to langfuse using the public key pk-lf-xxxx1 and the secret key sk-xxxxxx

Parameter:

  • team_id (path, Required) — Tidak ada deskripsi.
  • litellm-changed-by (header, Optional) — The litellm-changed-by header enables tracking of actions performed by authorized users on behalf of other users, providing an audit trail for accountability

28. [GET] /team/{team_id}/callback

Ringkasan: Mendapatkan Webhook Callback Tim Wewenang: Global Admin Only

Get the success/failure callbacks and variables for a team

Parameter:

  • team_id (str, required): The unique identifier for the team

Example curl:

curl -X GET 'https://api.koboillm.com/team/dbe2f686-a686-4896-864a-4c3924458709/callback' -H 'Authorization: Bearer sk-xxxxxx'

This will return the callback settings for the team with id dbe2f686-a686-4896-864a-4c3924458709

Returns { “status”: “success”, “data”: { “team_id”: team_id, “success_callbacks”: team_callback_settings_obj.success_callback, “failure_callbacks”: team_callback_settings_obj.failure_callback, “callback_vars”: team_callback_settings_obj.callback_vars, }, }

Parameter:

  • team_id (path, Required) — Tidak ada deskripsi.

29. [POST] /team/{team_id}/disable_logging

Ringkasan: Menonaktifkan Logging Konten Tim Wewenang: Global Admin Only

Disable all logging callbacks for a team

Parameter:

  • team_id (str, required): The unique identifier for the team

Example curl:

curl -X POST 'https://api.koboillm.com/team/dbe2f686-a686-4896-864a-4c3924458709/disable_logging' -H 'Authorization: Bearer sk-xxxxxx'

Parameter:

  • team_id (path, Required) — Tidak ada deskripsi.

30. [GET] /v2/team/list

Ringkasan: Mendaftar Semua Tim V2 Wewenang: Global Admin Only

Get a paginated list of teams with filtering and sorting options.

Parameter: user_id: Optional[str] Only return teams which this user belongs to organization_id: Optional[str] Only return teams which belong to this organization team_id: Optional[str] Filter teams by exact team_id match team_alias: Optional[str] Filter teams by partial team_alias match page: int The page number to return page_size: int The number of items per page sort_by: Optional[str] Column to sort by (e.g. ‘team_id’, ‘team_alias’, ‘created_at’) sort_order: str Sort order (‘asc’ or ‘desc’) status: Optional[str] Filter by status. Currently supports “deleted” to query deleted teams.

Parameter:

  • user_id (query, Optional) — Only return teams which this ‘user_id’ belongs to
  • organization_id (query, Optional) — Only return teams which this ‘organization_id’ belongs to
  • team_id (query, Optional) — Only return teams which this ‘team_id’ belongs to
  • team_alias (query, Optional) — Only return teams which this ‘team_alias’ belongs to. Supports partial matching.
  • page (query, Optional) — Page number for pagination
  • page_size (query, Optional) — Number of teams per page
  • sort_by (query, Optional) — Column to sort by (e.g. ‘team_id’, ‘team_alias’, ‘created_at’)
  • sort_order (query, Optional) — Sort order (‘asc’ or ‘desc’)
  • status (query, Optional) — Filter by status (e.g. ‘deleted’)

📦 Manajemen Budget & Pengeluaran

Menampilkan total 14 endpoint untuk modul ini.

01. [POST] /budget/delete

Ringkasan: Menghapus Budget Wewenang: Global Admin Only

Menghapus konfigurasi budget.


02. [POST] /budget/info

Ringkasan: Mendapatkan Informasi Budget Wewenang: Global Admin Only

Get the budget id specific information

Parameter:

  • budgets: Mendaftar[str] - The list of budget ids to get information for

03. [GET] /budget/list

Ringkasan: Mendaftar Semua Budget Wewenang: Global Admin Only

Mendaftar all the created budgets in proxy db. Used on Admin UI.


04. [POST] /budget/new

Ringkasan: Membuat Budget Baru Wewenang: Global Admin Only

Membuat budget harian/bulanan baru.


05. [GET] /budget/settings

Ringkasan: Pengaturan Budget Wewenang: Global Admin Only

Get list of configurable params + current value for a budget item + description of each field

Used on Admin UI.

Query Parameter:

  • budget_id: str - The budget id to get information for

Parameter:

  • budget_id (query, Required) — Tidak ada deskripsi.

06. [POST] /budget/update

Ringkasan: Memperbarui Parameter Budget Wewenang: Global Admin Only

Memperbarui an existing budget object.

Parameter:

  • budget_duration: Optional[str] - Budget reset period (“30d”, “1h”, etc.)
  • budget_id: Optional[str] - The id of the budget. If not provided, a new id will be generated.
  • max_budget: Optional[float] - The max budget for the budget.
  • soft_budget: Optional[float] - The soft budget for the budget.
  • max_parallel_requests: Optional[int] - The max number of parallel requests for the budget.
  • tpm_limit: Optional[int] - The tokens per minute limit for the budget.
  • rpm_limit: Optional[int] - The requests per minute limit for the budget.
  • model_max_budget: Optional[dict] - Specify max budget for a given model. Example: {“openai/gpt-4o-mini”: {“max_budget”: 100.0, “budget_duration”: “1d”, “tpm_limit”: 100000, “rpm_limit”: 100000}}
  • budget_reset_at: Optional[datetime] - Memperbarui the Datetime when the budget was last reset.

07. [GET] /global/spend/report

Ringkasan: Mendapatkan Laporan Pengeluaran Global Wewenang: Global Admin Only

Get Daily Spend per Team, based on specific startTime and endTime. Per team, view usage by each key, model [ { “group-by-day”: “2024-05-10”, “teams”: [ { “team_name”: “team-1” “spend”: 10, “keys”: [ “key”: “1213”, “usage”: { “model-1”: { “cost”: 12.50, “input_tokens”: 1000, “output_tokens”: 5000, “requests”: 100 }, “audio-modelname1”: { “cost”: 25.50, “seconds”: 25, “requests”: 50 }, } } ] ] }

Parameter:

  • start_date (query, Optional) — Time from which to start viewing spend
  • end_date (query, Optional) — Time till which to view spend
  • group_by (query, Optional) — Group spend by internal team or customer or api_key
  • api_key (query, Optional) — View spend for a specific api_key. Example api_key=‘sk-xxxxxx
  • internal_user_id (query, Optional) — View spend for a specific internal_user_id. Example internal_user_id=‘1234
  • team_id (query, Optional) — View spend for a specific team_id. Example team_id=‘1234
  • customer_id (query, Optional) — View spend for a specific customer_id. Example customer_id=‘1234. Can be used in conjunction with team_id as well.

08. [POST] /global/spend/reset

Ringkasan: Mereset Pengeluaran Global Wewenang: Global Admin Only

ADMIN ONLY / MASTER KEY Only Endpoint

Globally reset spend for All API Keys and Teams, maintain LiteLLM_SpendLogs

  1. LiteLLM_SpendLogs will maintain the logs on spend, no data gets deleted from there
  2. LiteLLM_VerificationTokens spend will be set = 0
  3. LiteLLM_TeamTable spend will be set = 0

09. [GET] /global/spend/tags

Ringkasan: Melihat Tag Pengeluaran Global Wewenang: Global Admin Only

LiteLLM Enterprise - View Spend Per Request Tag. Used by LiteLLM UI

Example Request:

curl -X GET "https://api.koboillm.com/spend/tags" -H "Authorization: Bearer sk-xxxxxx"

Spend with Start Date and End Date

curl -X GET "https://api.koboillm.com/spend/tags?start_date=2022-01-01&end_date=2022-02-01" -H "Authorization: Bearer sk-xxxxxx"

Parameter:

  • start_date (query, Optional) — Time from which to start viewing key spend
  • end_date (query, Optional) — Time till which to view key spend
  • tags (query, Optional) — comman separated tags to filter on

10. [GET] /provider/budgets

Ringkasan: Mendapatkan Budget Cloud Provider Wewenang: Global Admin Only

Provider Budget Routing - Get Budget, Spend Details https://docs.litellm.ai/docs/proxy/provider_budget_routing

Use this endpoint to check current budget, spend and budget reset time for a provider

Example Request

Terminal window
curl -X GET https://api.koboillm.com/provider/budgets -H "Content-Type: application/json" -H "Authorization: Bearer sk-xxxxxx"

Example Response

\{
"providers": \{
"openai": \{
"budget_limit": 1e-12,
"time_period": "1d",
"spend": 0.0,
"budget_reset_at": null
\},
"azure": \{
"budget_limit": 100.0,
"time_period": "1d",
"spend": 0.0,
"budget_reset_at": null
\},
"anthropic": \{
"budget_limit": 100.0,
"time_period": "10d",
"spend": 0.0,
"budget_reset_at": null
\},
"vertex_ai": \{
"budget_limit": 100.0,
"time_period": "12d",
"spend": 0.0,
"budget_reset_at": null
\}
\}
\}

11. [POST] /spend/calculate

Ringkasan: Menghitung Estimasi Pengeluaran Wewenang: Global Admin Only

Accepts all the params of completion_cost.

Calculate spend before making call:

Note: If you see a spend of $0.0 you need to set custom_pricing for your model: https://docs.litellm.ai/docs/proxy/custom_pricing

curl --location 'https://api.koboillm.com/spend/calculate'
--header 'Authorization: Bearer sk-xxxxxx'
--header 'Content-Type: application/json'
--data '\{
"model": "anthropic.claude-v2",
"messages": [\{"role": "user", "content": "Hey, how'''s it going?"\}]
\}'

Calculate spend after making call:

curl --location 'https://api.koboillm.com/spend/calculate'
--header 'Authorization: Bearer sk-xxxxxx'
--header 'Content-Type: application/json'
--data '\{
"completion_response": \{
"id": "chatcmpl-123",
"object": "chat.completion",
"created": 1677652288,
"model": "gpt-3.5-turbo-0125",
"system_fingerprint": "fp_44709d6fcb",
"choices": [\{
"index": 0,
"message": \{
"role": "assistant",
"content": "Hello there, how may I assist you today?"
\},
"logprobs": null,
"finish_reason": "stop"
\}]
"usage": \{
"prompt_tokens": 9,
"completion_tokens": 12,
"total_tokens": 21
\}
\}
\}'

12. [GET] /spend/logs

Ringkasan: Melihat Log Riwayat Transaksi Wewenang: Team Admin Allowed

[DEPRECATED] This endpoint is not paginated and can cause performance issues. Please use /spend/logs/v2 instead for paginated access to spend logs.

View all spend logs, if request_id is provided, only logs for that request_id will be returned

When start_date and end_date are provided:

  • summarize=true (default): Returns aggregated spend data grouped by date (maintains backward compatibility)
  • summarize=false: Returns filtered individual log entries within the date range

Example Request for all logs

curl -X GET "https://api.koboillm.com:8000/spend/logs" -H "Authorization: Bearer sk-xxxxxx"

Example Request for specific request_id

curl -X GET "https://api.koboillm.com:8000/spend/logs?request_id=chatcmpl-6dcb2540-d3d7-4e49-bb27-291f863f112e" -H "Authorization: Bearer sk-xxxxxx"

Example Request for specific api_key

curl -X GET "https://api.koboillm.com:8000/spend/logs?api_key=sk-xxxxxx" -H "Authorization: Bearer sk-xxxxxx"

Example Request for specific user_id

curl -X GET "https://api.koboillm.com:8000/spend/logs?user_id=ishaan@berri.ai" -H "Authorization: Bearer sk-xxxxxx"

Example Request for date range with individual logs (unsummarized)

curl -X GET "https://api.koboillm.com:8000/spend/logs?start_date=2024-01-01&end_date=2024-01-02&summarize=false" -H "Authorization: Bearer sk-xxxxxx"

Parameter:

  • api_key (query, Optional) — Get spend logs based on api key
  • user_id (query, Optional) — Get spend logs based on user_id
  • request_id (query, Optional) — request_id to get spend logs for specific request_id. If none passed then pass spend logs for all requests
  • start_date (query, Optional) — Time from which to start viewing key spend
  • end_date (query, Optional) — Time till which to view key spend
  • summarize (query, Optional) — When start_date and end_date are provided, summarize=true returns aggregated data by date (legacy behavior), summarize=false returns filtered individual logs

13. [GET] /spend/logs/v2

Ringkasan: Melihat Log Transaksi Konsol UI Wewenang: Team Admin Allowed

Menarik data log transaksi real-time pengeluaran token dan cost.

Parameter:

  • api_key (query, Optional) — Get spend logs based on api key
  • user_id (query, Optional) — Get spend logs based on user_id
  • request_id (query, Optional) — request_id to get spend logs for specific request_id
  • team_id (query, Optional) — Filter spend logs by team_id
  • min_spend (query, Optional) — Filter logs with spend greater than or equal to this value
  • max_spend (query, Optional) — Filter logs with spend less than or equal to this value
  • start_date (query, Optional) — Time from which to start viewing key spend
  • end_date (query, Optional) — Time till which to view key spend
  • page (query, Optional) — Page number for pagination
  • page_size (query, Optional) — Number of items per page
  • status_filter (query, Optional) — Filter logs by status (e.g., success, failure)
  • model (query, Optional) — Filter logs by model
  • model_id (query, Optional) — Filter logs by model ID (litellm model deployment id)
  • key_alias (query, Optional) — Filter logs by key alias
  • end_user (query, Optional) — Filter logs by end user
  • error_code (query, Optional) — Filter logs by error code (e.g., ‘404’, ‘500’)
  • error_message (query, Optional) — Filter logs by error message (partial string match)
  • sort_by (query, Optional) — Sort logs by field: spend, total_tokens, startTime, or endTime
  • sort_order (query, Optional) — Sort order: asc or desc

14. [GET] /spend/tags

Ringkasan: Melihat Tag Riwayat Transaksi Wewenang: Global Admin Only

LiteLLM Enterprise - View Spend Per Request Tag

Example Request:

curl -X GET "https://api.koboillm.com:8000/spend/tags" -H "Authorization: Bearer sk-xxxxxx"

Spend with Start Date and End Date

curl -X GET "https://api.koboillm.com:8000/spend/tags?start_date=2022-01-01&end_date=2022-02-01" -H "Authorization: Bearer sk-xxxxxx"

Parameter:

  • start_date (query, Optional) — Time from which to start viewing key spend
  • end_date (query, Optional) — Time till which to view key spend

📦 Administrasi Pengguna & Konsol

Menampilkan total 16 endpoint untuk modul ini.

01. [GET] /scim/v2/Users

Ringkasan: Mendaftar Semua User SCIM Wewenang: Global Admin Only

Get a list of users according to SCIM v2 protocol

Parameter:

  • startIndex (query, Optional) — Tidak ada deskripsi.
  • count (query, Optional) — Tidak ada deskripsi.
  • filter (query, Optional) — Tidak ada deskripsi.
  • feature (query, Optional) — Tidak ada deskripsi.

02. [POST] /scim/v2/Users

Ringkasan: Membuat User Baru SCIM Wewenang: Global Admin Only

Membuat a user according to SCIM v2 protocol

Parameter:

  • feature (query, Optional) — Tidak ada deskripsi.

03. [GET] /scim/v2/Users/{user_id}

Ringkasan: Mendapatkan Informasi User SCIM Wewenang: Global Admin Only

Get a single user by ID according to SCIM v2 protocol

Parameter:

  • user_id (path, Required) — Tidak ada deskripsi.
  • feature (query, Optional) — Tidak ada deskripsi.

04. [PUT] /scim/v2/Users/{user_id}

Ringkasan: Memperbarui User SCIM Wewenang: Global Admin Only

Memperbarui a user according to SCIM v2 protocol (full replacement)

Parameter:

  • user_id (path, Required) — Tidak ada deskripsi.
  • feature (query, Optional) — Tidak ada deskripsi.

05. [DELETE] /scim/v2/Users/{user_id}

Ringkasan: Menghapus User SCIM Wewenang: Global Admin Only

Menghapus a user according to SCIM v2 protocol

Parameter:

  • user_id (path, Required) — Tidak ada deskripsi.
  • feature (query, Optional) — Tidak ada deskripsi.

06. [PATCH] /scim/v2/Users/{user_id}

Ringkasan: Patch Parameter User SCIM Wewenang: Global Admin Only

Patch a user according to SCIM v2 protocol

Parameter:

  • user_id (path, Required) — Tidak ada deskripsi.
  • feature (query, Optional) — Tidak ada deskripsi.

07. [GET] /tag/user-agent/per-user-analytics

Ringkasan: Mendapatkan Analitik Per-User Wewenang: Global Admin Only

Get per-user analytics including successful requests, tokens, and spend by individual users.

This endpoint provides usage metrics broken down by individual users based on their tag activity during the last 30 days ending on UTC today + 1 day.

Args: tag_filter: Optional filter to specific tag (legacy) tag_filters: Optional filter to multiple specific tags (takes precedence over tag_filter) page: Page number for pagination page_size: Number of items per page

Mengembalikan: PerUserAnalyticsResponse: Analytics data broken down by individual users for the last 30 days

Parameter:

  • tag_filter (query, Optional) — Filter by specific tag (optional)
  • tag_filters (query, Optional) — Filter by multiple specific tags (optional, takes precedence over tag_filter)
  • page (query, Optional) — Page number for pagination
  • page_size (query, Optional) — Items per page

08. [GET] /user/available_users

Ringkasan: Mendaftar User Enterprise yang Tersedia Wewenang: Global Admin Only

For keys with max_users set, return the list of users that are allowed to use the key.


09. [POST] /user/bulk_update

Ringkasan: Memperbarui User Secara Massal Wewenang: Global Admin Only

Bulk update multiple users at once.

This endpoint allows updating multiple users in a single request. Each user update is processed independently - if some updates fail, others will still succeed.

Parameter:

  • users: Optional[Mendaftar[MemperbaruiUserRequest]] - Mendaftar of specific user update requests
  • all_users: Optional[bool] - Set to true to update all users in the system
  • user_updates: Optional[MemperbaruiUserRequest] - Memperbarui to apply when all_users=True

Mengembalikan:

  • results: Mendaftar of individual update results
  • total_requested: Total number of users requested for update
  • successful_updates: Number of successful updates
  • failed_updates: Number of failed updates

Example request for specific users:

Terminal window
curl --location 'https://api.koboillm.com/user/bulk_update' --header 'Authorization: Bearer sk-xxxxxx' --header 'Content-Type: application/json' --data '\{
"users": [
\{
"user_id": "user1",
"user_role": "internal_user",
"max_budget": 100.0
\},
\{
"user_email": "user2@example.com",
"user_role": "internal_user_viewer",
"max_budget": 50.0
\}
]
\}'

Example request for all users:

Terminal window
curl --location 'https://api.koboillm.com/user/bulk_update' --header 'Authorization: Bearer sk-xxxxxx' --header 'Content-Type: application/json' --data '\{
"all_users": true,
"user_updates": \{
"user_role": "internal_user",
"max_budget": 50.0
\}
\}'

Parameter:

  • litellm-changed-by (header, Optional) — The litellm-changed-by header enables tracking of actions performed by authorized users on behalf of other users, providing an audit trail for accountability

10. [GET] /user/daily/activity

Ringkasan: Mendapatkan Aktivitas Harian User Wewenang: Global Admin Only

[BETA] This is a beta endpoint. It will change.

Meant to optimize querying spend data for analytics for a user.

Mengembalikan: (by date)

  • spend
  • prompt_tokens
  • completion_tokens
  • cache_read_input_tokens
  • cache_creation_input_tokens
  • total_tokens
  • api_requests
  • breakdown by model, api_key, provider

Parameter:

  • start_date (query, Optional) — Start date in YYYY-MM-DD format
  • end_date (query, Optional) — End date in YYYY-MM-DD format
  • model (query, Optional) — Filter by specific model
  • api_key (query, Optional) — Filter by specific API key
  • user_id (query, Optional) — Filter by specific user ID. Admins can filter by any user or omit for global view. Non-admins must provide their own user_id.
  • page (query, Optional) — Page number for pagination
  • page_size (query, Optional) — Items per page
  • timezone (query, Optional) — Timezone offset in minutes from UTC (e.g., 480 for PST). Matches JavaScript’s Date.getTimezoneOffset() convention.

11. [GET] /user/daily/activity/aggregated

Ringkasan: Mendapatkan Akumulasi Aktivitas Harian User Wewenang: Global Admin Only

Aggregated analytics for a user’s daily activity without pagination. Returns the same response shape as the paginated endpoint with page metadata set to single-page.

Parameter:

  • start_date (query, Optional) — Start date in YYYY-MM-DD format
  • end_date (query, Optional) — End date in YYYY-MM-DD format
  • model (query, Optional) — Filter by specific model
  • api_key (query, Optional) — Filter by specific API key
  • user_id (query, Optional) — Filter by specific user ID. Admins can filter by any user or omit for global view. Non-admins must provide their own user_id.
  • timezone (query, Optional) — Timezone offset in minutes from UTC (e.g., 480 for PST). Matches JavaScript’s Date.getTimezoneOffset() convention.

12. [POST] /user/delete

Ringkasan: Menghapus User SCIM Wewenang: Global Admin Only

Menghapus user konsol.

Parameter:

  • litellm-changed-by (header, Optional) — The litellm-changed-by header enables tracking of actions performed by authorized users on behalf of other users, providing an audit trail for accountability

13. [GET] /user/info

Ringkasan: Mendapatkan Informasi Detil User Wewenang: Global Admin Only

Mendapatkan detil profil user.

Parameter:

  • user_id (query, Optional) — User ID in the request parameters

14. [GET] /user/list

Ringkasan: Mendaftar Semua User SCIM Wewenang: Global Admin Only

Get a paginated list of users with filtering and sorting options.

Parameter: role: Optional[str] Filter users by role. Can be one of:

  • proxy_admin
  • proxy_admin_viewer
  • internal_user
  • internal_user_viewer user_ids: Optional[str] Get list of users by user_ids. Comma separated list of user_ids. sso_ids: Optional[str] Get list of users by sso_ids. Comma separated list of sso_ids. user_email: Optional[str] Filter users by partial email match team: Optional[str] Filter users by team id. Will match if user has this team in their teams array. page: int The page number to return page_size: int The number of items per page sort_by: Optional[str] Column to sort by (e.g. ‘user_id’, ‘user_email’, ‘created_at’, ‘spend’) sort_order: Optional[str] Sort order (‘asc’ or ‘desc’)

Parameter:

  • role (query, Optional) — Filter users by role
  • user_ids (query, Optional) — Get list of users by user_ids
  • sso_user_ids (query, Optional) — Get list of users by sso_user_id
  • user_email (query, Optional) — Filter users by partial email match
  • team (query, Optional) — Filter users by team id
  • page (query, Optional) — Page number
  • page_size (query, Optional) — Number of items per page
  • sort_by (query, Optional) — Column to sort by (e.g. ‘user_id’, ‘user_email’, ‘created_at’, ‘spend’)
  • sort_order (query, Optional) — Sort order (‘asc’ or ‘desc’)

15. [POST] /user/new

Ringkasan: Membuat User Konsol Baru Wewenang: Global Admin Only

Membuat user konsol baru.


16. [POST] /user/update

Ringkasan: Memperbarui Informasi User Wewenang: Global Admin Only

Example curl

curl --location 'https://api.koboillm.com/user/update' --header 'Authorization: Bearer sk-xxxxxx' --header 'Content-Type: application/json' --data '\{
"user_id": "test-litellm-user-4",
"user_role": "proxy_admin_viewer"
\}'

Parameter:

  • user_id: Optional[str] - Specify a user id. If not set, a unique id will be generated.
  • user_email: Optional[str] - Specify a user email.
  • password: Optional[str] - Specify a user password.
  • user_alias: Optional[str] - A descriptive name for you to know who this user id refers to.
  • teams: Optional[list] - specify a list of team id’s a user belongs to.
  • send_invite_email: Optional[bool] - Specify if an invite email should be sent.
  • user_role: Optional[str] - Specify a user role - “proxy_admin”, “proxy_admin_viewer”, “internal_user”, “internal_user_viewer”, “team”, “customer”. Info about each role here: https://github.com/BerriAI/litellm/litellm/proxy/_types.py#L20
  • max_budget: Optional[float] - Specify max budget for a given user.
  • budget_duration: Optional[str] - Budget is reset at the end of specified duration. If not set, budget is never reset. You can set duration as seconds (”30s”), minutes (“30m”), hours (“30h”), days (“30d”), months (“1mo”).
  • models: Optional[list] - Model_name’s a user is allowed to call. (if empty, key is allowed to call all models)
  • tpm_limit: Optional[int] - Specify tpm limit for a given user (Tokens per minute)
  • rpm_limit: Optional[int] - Specify rpm limit for a given user (Requests per minute)
  • auto_create_key: bool - Default=True. Flag used for returning a key as part of the /user/new response
  • aliases: Optional[dict] - Model aliases for the user - Docs
  • config: Optional[dict] - [DEPRECATED PARAM] User-specific config.
  • allowed_cache_controls: Optional[list] - Mendaftar of allowed cache control values. Example - [“no-cache”, “no-store”]. See all values - https://docs.litellm.ai/docs/proxy/caching#turn-on—off-caching-per-request-
  • blocked: Optional[bool] - [Not Implemented Yet] Whether the user is blocked.
  • guardrails: Optional[Mendaftar[str]] - [Not Implemented Yet] Mendaftar of active guardrails for the user
  • policies: Optional[Mendaftar[str]] - Mendaftar of policy names to apply to the user. Policies define guardrails, conditions, and inheritance rules.
  • permissions: Optional[dict] - [Not Implemented Yet] User-specific permissions, eg. turning off pii masking.
  • metadata: Optional[dict] - Metadata for user, store information for user. Example metadata = {“team”: “core-infra”, “app”: “app2”, “email”: “ishaan@berri.ai” }
  • max_parallel_requests: Optional[int] - Rate limit a user based on the number of parallel requests. Raises 429 error, if user’s parallel requests > x.
  • soft_budget: Optional[float] - Get alerts when user crosses given budget, doesn’t block requests.
  • model_max_budget: Optional[dict] - Model-specific max budget for user. Docs
  • model_rpm_limit: Optional[float] - Model-specific rpm limit for user. Docs
  • model_tpm_limit: Optional[float] - Model-specific tpm limit for user. Docs
  • spend: Optional[float] - Amount spent by user. Default is 0. Will be updated by proxy whenever user is used. You can set duration as seconds (”30s”), minutes (“30m”), hours (“30h”), days (“30d”), months (“1mo”).
  • agent_id: Optional[str] - The agent id associated with the user.
  • team_id: Optional[str] - [DEPRECATED PARAM] The team id of the user. Default is None.
  • duration: Optional[str] - [NOT IMPLEMENTED].
  • key_alias: Optional[str] - [NOT IMPLEMENTED].
  • object_permission: Optional[LiteLLM_ObjectPermissionBase] - internal user-specific object permission. Example - {“vector_stores”: [“vector_store_1”, “vector_store_2”]}. IF null or {} then no object permission.
  • prompts: Optional[Mendaftar[str]] - Mendaftar of allowed prompts for the user. If specified, the user will only be able to use these specific prompts.