Soo koobid
Gelitaan
endpoints-ka EKM waxaa laga heli karaa Management API iyadoo la adeegsanayo Admin API Key. https://platform.openai.com/settings/organization/admin-keys (ha isticmaalin furaha API-ga caadiga ah). Furayaasha Admin API waxaa heli kara milkiilayaasha ururka.
Isticmaal
api.external_keys.writesi aad u abuurto ama u tirtirto furayaasha dibadda, iyoapi.external_keys.readsi aad u taxdo ama u xaqiijiso furayaasha dibadda. Hal fure wuxuu labada scopes u baahan yahay oo keliya haddii uu fulinayo hawlgallo akhris iyo qorid labadaba.Hadda waxaan u baahanahay inaan ururkaaga ku darno feature flag-ga endpoints-kan. Waxaad ogaanaysaa inaad haysato feature flag-ga haddii aad aragto external_key_id oo ka soo noqday List Projects endpoint-ka jira: https://api.openai.com/v1/organization/projects
Isticmaalka
Config-gaaga EKM waxaa laga diiwaangeliyaa heerka ururka iyadoo la adeegsanayo endpoint cusub https://api.openai.com/v1/organization/external_keys
Diiwaangelinta config-gaaga EKM waxay soo celisaa external_key_id oo qaabkiisu yahay extkey_xxxx
Config-yada EKM waxaa laga hawlgeliyaa heerka mashruuca iyadoo external_key_id lagu gudbinayo jirka endpoint-ka Create Project ee jira https://api.openai.com/v1/organization/projects
Xaddidaado
Marka hore waa inaad EKM ku tijaabiso mashruuc cusub adigoo adeegsanaya Management API.
Waxaan kugula talinaynaa inaad u abuurto mashaariic cusub culaysyada shaqo ee EKM. Si kastaba ha ahaatee, haddii aad EKM ka rabto mashruuc jira, waxaan kugu dari karnaa feature flag-ga. Fadlan ogow hab-dhaqannada wanaagsan ee soo socda ka hor intaadan EKM ku fidin mashaariicdaada wax-soo-saar ee jira.
Marka hore ku tijaabi dhammaan sifooyinka API ee aad wax-soo-saarka ku isticmaasho mashruucaaga tijaabada EKM API
Si tartiib-tartiib ah u fidi halkii aad EKM hal mar ku buuxin lahayd dhammaan mashaariicda API ee wax-soo-saarka
endpoints heerka ururka
Diiwaangeli fure dibadeed ururkaaga
AWS
Codsi Tusaale ah
type: string - had iyo jeer “aws”
name: string - magac sahlan oo loogu talagalay config-gaaga
role_arn: string - Role ARN-ka ay OpenAI ku qaadan doonto daruurahaaga
kms_arn: string - ARN-ka Key Management System ee furaha master-ka aad maamusho
external_id: string - Aqoonsiga ururkaaga ama aqoonsiga mashruuca API
curl -X POST \
-H "Content-type: application/json" \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/external_keys" \
-d '{
"type": "aws",
"name": "AWS EKM Config",
"role_arn": "arn:aws:iam::<12_DIGIT_ACCOUNT_NUMBER>:role/<ROLE>",
"kms_arn": "arn:aws:kms:<REGION>:<ACCOUNT_NUMBER>:key/<UUID>",
"external_id": <your org id or project id>
}'Jawaab Tusaale ah
{
"id": "extkey_xxxx",
"object": "organization.external_key",
"created_at": 1746175499,
"api_project_ids": [],
"type": "aws",
"name": "AWS EKM Config",
"role_arn": "arn:aws:iam::<ACCOUNT_NUMBER>:role/<ROLE>",
"kms_arn": "arn:aws:kms:<REGION>:<ACCOUNT_NUMBER>:key/<UUID>",
"external_id": <your org id or project id>
} GCP
Codsi Tusaale ah
type: string - had iyo jeer "gcp",
name: string - magac sahlan oo loogu talagalay config-gaaga
workload_identity_project_number: string - Lambarka mashruuca GCP ee 12-god ah halkaas oo aad ka diiwaangelisay workload identity-ga OpenAI
workload_identity_pool_id: string - Pool-ka ay ku jirto bixiyaha Workload Identity ee aad u diiwaangelisay OpenAI
workload_identity_provider_id: string - Bixiyaha Workload Identity ee aad u diiwaangelisay OpenAI
audience: string - Audience-ka ay OpenAI ku gudbinayso token-ka marka aan role ku qaadanno GCP STS-kaaga
kms_project_id: string - Magaca mashruuca GCP ee KMS-kaagu ku jiro
kms_key_ring_name: string - Key ring-ka Key Management System ee ka kooban furaha master-ka aad maamusho
kms_key_name: string - Magaca furaha master-ka ee Key Management System
kms_key_location: string - Gobolka uu ku yaal furaha master-ka ee Key Management System-kaaga
Haddii KMS-kaagu ku jiro mashruuc GCP oo ka duwan kan aad ka diiwaangelisay Workload Identity-ga OpenAI, hubi in mashruuca ay ku jirto Workload Identity-ga OpenAI ugu yaraan KMS laga hawlgeliyay adigoo tagaya https://console.developers.google.com/apis/api/cloudkms.googleapis.com/overview
curl -X POST \
-H "Content-type: application/json" \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/external_keys" \
-d '{
"type": "gcp",
"name": "GCP EKM Config",
"workload_identity_project_number": "123456789012",
"workload_identity_pool_id": "openai-azure",
"workload_identity_provider_id": "openai-ekm-service-role",
"audience": <your org id or project id>,
"kms_project_id": "adjective-noun-12345",
"kms_key_name": "openai-kms-key",
"kms_key_ring_name": "openai-kms-key-ring",
"kms_key_location": "us-east1"
}'Jawaab Tusaale ah
{
"id": "extkey_xxxxxx",
"object": "organization.external_key",
"created_at": 1746174349,
"api_project_ids": [],
"type": "gcp",
"name": "GCP EKM Config",
"workload_identity_project_number": "123456789012",
"kms_key_ring_name": "openai-kms-key-ring",
"kms_key_name": "openai-kms-key",
"kms_key_location": "us-east1",
"audience": <your org id or project id>,
"kms_project_id": "adjective-noun-12345",
"workload_identity_pool_id": "openai-azure",
"workload_identity_provider_id": "openai-ekm-service-role"
}Azure
Codsi Tusaale ah
type: string - had iyo jeer "azure",
name: string - magac sahlan oo loogu talagalay config-gaaga
tenant_id: string - UUID-ga tenant-kaaga Azure
vault_uri: string - URI-ga kaydka Azure ee ka kooban furaha master-ka aad maamusho
key_name: string - Magaca furaha master-ka Azure Key Vault ee aad maamusho.
Waa inuu lahaadaa qaabka <org-xxx>--<any_name>
halka org-xxx uu yahay aqoonsiga ururkaaga OpenAI oo aad ka heli karto https://platform.openai.com/settings/organization/general
curl -X POST \
-H "Content-type: application/json" \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/external_keys" \
-d '{
"type": "azure",
"name": "Azure EKM Config",
"tenant_id": "<UUID>",
"vault_uri": "https://<VAULT_NAME>.vault.azure.net/",
"key_name": "org-xxx--some-key"
}'Jawaab Tusaale ah
{
"id": "extkey_xxxx",
"object": "organization.external_key",
"created_at": 1746174377,
"api_project_ids": [],
"type": "azure",
"name": "Azure EKM Config",
"tenant_id": "<UUID>",
"vault_uri": "https://<VAULT_NAME>.vault.azure.net/",
"key_name": "org-xxx--some-key"
}Tirtir fure dibadeed oo ka diiwaangashan ururkaaga
Ogeysiis: Waxaad fure dibadeed tirtiri kartaa oo keliya haddii aanu ku xirnayn wax mashruuc API firfircoon ah ama goobta shaqada. Haddii uu ku xiran yahay mashruuc API firfircoon, marka hore kaydi mashruucaas. Haddii uu ku xiran yahay goobta shaqada, furaha lama tirtiri karo.
Codsi Tusaale ah
curl -X DELETE \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/external_keys/extkey_xxxx"Jawaab Tusaale ah
{
"id": "extkey_xxxxx",
"object": "organization.external_key.deleted",
"created_at": 1746127808,
"api_project_ids": [],
"type": "aws",
"account_number": "123456789012",
"kms_arn": "arn:aws:kms:<REGION>:<ACCOUNT_NUMBER>:key/<UUID>",
"name": "AWS EKM Config",
"role_arn": "arn:aws:iam::<ACCOUNT_NUMBER>:role/<ROLE>"
}Soo hel furayaasha dibadda ee ka diiwaangashan ururkaaga
Codsi Tusaale ah
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/external_keys"Jawaab Tusaale ah
{
"object": "list",
"data": [
{
"id": "extkey_xxxx",
"object": "organization.external_key",
"created_at": 1746127808,
"api_project_ids": [],
"type": "aws",
"name": "AWS EKM Config",
"account_number": "123456789012",
"kms_arn": "arn:aws:kms:<REGION>:<ACCOUNT_NUMBER>:key/<UUID>",
role_arn": "arn:aws:iam::<ACCOUNT_NUMBER>:role/<ROLE>"
}
],
"first_id": "extkey_xxxx",
"has_more": false,
"last_id": "extkey_xxxx"
}Xaqiiji fure dibadeed
Waxaad endpoint-kan u isticmaali kartaa inaad hubiso dhowr arrimood
In qaabeyntaada daruuraha dibaddu weli sax la tahay OpenAI ka dib markaad isbeddello samayso (waxaad arki doontaa jawaab guul ah)
In ka-noqoshada furahaaga si sax ah loo sameeyay, ay OpenAI farsamaynayso, isla markaana ay dhaqan geli doonto marka 1 saac ee cache TTL-yadu dhammaadaan (waxaad arki doontaa jawaab qalad ah)
Codsi Tusaale ah
curl -X POST -H "Authorization: Bearer $TOKEN"
"https://api.openai.com/v1/organization/external_keys/extkey_xxx/validate"Jawaab Tusaale ah
{
"status": "success"
}Ama, qalad ka yimid bixiyaha daruuraha ayaa muuqday.
endpoints heerka mashruuca
Abuur mashruuc cusub oo leh aqoonsiga furaha dibadda
Tani waxay la mid tahay Create Project endpoint-ka jira, iyadoo lagu daray cabbirka external_key_id ee codsiga iyo jawaabta.
Codsi Tusaale ah
curl -X POST \
-H "Content-type: application/json" \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/projects" \
-d '{
"name": "Some Project",
"external_key_id": "extkey_xxxx"
}'Jawaab Tusaale ah
{
"object": "project",
"id": "proj_xxxxx",
"title": "Some Project",
"external_key_id": "extkey_xxxxx",
"created": 1740012721,
"organization_id": "org-xxxxx",
"is_initial": false,
"geography": null,
"scale_tier_enabled": false,
"disable_user_api_keys": false,
"zdr_type": null,
}[Xaddidan] Cusboonaysii mashruuc jira adigoo adeegsanaya aqoonsiga furaha dibadda
Tani waxay la mid tahay Update Project endpoint-ka jira, iyadoo lagu daray cabbirka external_key_id ee codsiga iyo jawaabta.
Waxaan kugula talinaynaa inaad u abuurto mashaariic API cusub culaysyada shaqo ee EKM. Haddii aad EKM ka rabto dhammaan mashaariicdaada API ee jira, weydii agaasimaha koontadaada, annaguna waxaan kugu dari doonaa feature flag-ga. Fadlan ogow hab-dhaqannada wanaagsan ee soo socda ka hor intaadan EKM ku fidin mashaariicdaada wax-soo-saar ee jira.
Marka hore ku tijaabi dhammaan sifooyinka API ee aad wax-soo-saarka ku isticmaasho mashruucaaga tijaabada EKM API
Si tartiib-tartiib ah u fidi halkii aad EKM hal mar ku buuxin lahayd dhammaan mashaariicda API ee wax-soo-saarka
Codsi Tusaale ah
curl -X POST \
-H "Content-type: application/json" \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/projects/proj_xxx" \
-d '{
"external_key_id": "extkey_xxxx"
}'Tax dhammaan mashaariicda ururkaaga
Tani waxay la mid tahay endpoint-ka jira, balse waxaa jawaabta API-ga lagu daray external_key_id
Codsi Tusaale ah
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/projects"Jawaab Tusaale ah
{
"object": "list",
"data": [
{
"object": "organization.project",
"id": "proj_xxxx",
"name": "Project Name",
"external_key_id": "extkey_xxxx",
"created_at": 1717798982,
"archived_at": null,
"status": "active"
}
],
"first_id": "proj_xxxx",
"last_id": "proj_xxxx",
"has_more": true
}