API Proxy Politika API'leri
API Proxy'lere politika ekleme, silme, güncelleme, listeleme işlemleri için kullanılan servislerdir.
1. Get all existing policies of specified API Proxy
Açıklama/Amaç: Parametre olarak ismi gönderilen API Proxy'de yer alan politikalar listelenir.
Yetkilendirme: Servislere erişim için erişmek isteyen kullanıcının proje içerisinde "
Endpoint: https://<APINIZER_MANAGER_ADDRESS>/apiops/projects/{projectName}/apiProxies/{apiProxyName}/policies/
HTTP Method: GET
Request Headers:
Header | Value |
---|---|
Authorization | <ACCESS_TOKEN> Bu uç noktaya erişim için Token alınması gereklidir. Nasıl token alınacağı ile ilgili detaylı bilgi için Yetkilendirme API'si sayfasını ziyaret edebilirsiniz. |
Accept | application/json |
Request Path Parameters:
Parameter | Value |
---|---|
projectName | Sorgulanmak istenen API Proxy'nin bulunduğu projenin tam adı |
apiProxyName | Sorgulanmak istenen API Proxy'nin tam adı |
Request Body: (none)
Response:
Status | Status Code | Description | Body |
---|---|---|---|
Başarılı | 200 | successful operation | { "responsePolicyList": [ "requestPolicyList": [ |
Hatalı | 400 | bad request | { "error": "...", "error_description": "..." } |
Hatalı | 401 | not authorized for this operation | { |
Hatalı | 500 | internal error | { "error": "...", "error_description": "..." } |
2. Add a policy to specified API Proxy
Açıklama/Amaç: Belirtilen API Proxy'e yeni bir politika eklenmesini sağlar.
Yetkilendirme: Servislere erişim için erişmek isteyen kullanıcının proje içerisinde "Manage Proxies" ve "Deploy/Undeploy Proxies" yetkisine sahip olan bir rolünün olması gereklidir.
Endpoint: https://<APINIZER_MANAGER_ADDRESS>/apiops/projects/{projectName}/apiProxies/{apiProxyName}/policies/{policyName}/
HTTP Method: POST
Request Headers:
Header | Value |
---|---|
Authorization | <ACCESS_TOKEN> Bu uç noktaya erişim için Token alınması gereklidir. Nasıl token alınacağı ile ilgili detaylı bilgi için Yetkilendirme API'si sayfasını ziyaret edebilirsiniz. |
Accept | application/json |
Content-Type | application/json |
Request Path Parameters:
Parameter | Value |
---|---|
projectName | Politika eklenecek API Proxy'nin bulunduğu projenin tam adı |
apiProxyName | Politika eklenecek API Proxy'nin tam adı |
policyName | Eklenecek politikanın tam adı |
Request Body:
{
"operationMetadata": {
"targetScope": "ALL",
"targetPipeline": "REQUEST",
"deploy": "true",
"deployTargetEnvironmentNameList": [
"test"
],
"order": "3"
},
"policy": {
"type": "policy-time-restriction",
"description": "This policy ensures that access to the API is only available on Mondays.",
"active": "true",
...
Policy specific attributes
...
}
}
İşlem Metadata bilgilerini içeren operationMetadata alanının özellikleri:
Alan | Durum | Alabileceği Değerler | Açıklama |
---|---|---|---|
targetScope | Zorunlu | ALL, | Politikanın API Proxy geneline mi (ALL) yoksa bir endpoint'ine mi (ENDPOINT) ekleneceğini belirtir. |
targetEndpoint | Koşullu ("targetScope" değeri "ENDPOINT" olduğunda zorunludur.) | Metin değer | Hedef endpoint bilgisidir. |
targetEndpointHTTPMethod | Koşullu ("targetScope" değeri "ENDPOINT" olduğunda zorunludur.) | GET, POST, PUT, HEAD, OPTIONS, DELETE, PATCH, TRACE, ALL | Hedef endpoint'in HTTP Metod bilgisidir. |
targetPipeline | Zorunlu | REQUEST, RESPONSE, ERROR | Politikanın hedefteki hangi hatta ekleneceği bilgisidir. |
order | İsteğe Bağlı | Numerik değer | Gönderildiğinde politika hedef pipeline'daki ilgili sıraya eklenir. Gönderilmediğinde politika hedef pipeline'nın sonuna eklenir. |
deploy | İsteğe Bağlı | Boolean değer | Gönderildiğinde ve değeri "true" olduğunda ilgili API Proxy'nin hedef ortama yüklenmesini sağlar. |
deployTargetEnvironmentNameList | Koşullu ("deploy" değeri "true" olduğunda zorunludur) | Metin değer | Api Proxy'nin hangi ortam(lar)a yükleme yapılacağını belirtir. |
Ortak Politika bilgilerini içeren alanlar:
Alan | Durum | Alabileceği Değerler | Açıklama |
---|---|---|---|
type | Zorunlu | policy-api-authentication | Politikanın tipini tutar. |
description | İsteğe Bağlı | Metin değer | Politikanın açıklamasıdır. |
active | Zorunlu | Boolean değer | Politikanın aktif olup olmadığı bilgisidir. |
Politikaya ait diğer alanlar politikanın tipine göre değişir.
Response:
Status | Status Code | Description | Body |
---|---|---|---|
Başarılı | 200 | successful operation | { |
Hatalı | 400 | bad request | { "error": "...", "error_description": "..." } |
Hatalı | 401 | not authorized for this operation | { |
Hatalı | 500 | internal error | { "error": "...", "error_description": "..." } |
3. Update an existing policy at specified API Proxy
Açıklama/Amaç: Belirtilen API Proxy'de yer alan politikanın güncellenmesini sağlar. Güncellenecek olan politika hedefteki hatta politika adı ile bulunur.
Yetkilendirme: Servislere erişim için erişmek isteyen kullanıcının proje içerisinde "Manage Proxies" ve "Deploy/Undeploy Proxies" yetkisine sahip olan bir rolünün olması gereklidir.
Endpoint: https://<APINIZER_MANAGER_ADDRESS>/apiops/projects/{projectName}/apiProxies/{apiProxyName}/policies/{policyName}/
HTTP Method: PUT
Request Headers:
Header | Value |
---|---|
Authorization | <ACCESS_TOKEN> Bu uç noktaya erişim için Token alınması gereklidir. Nasıl token alınacağı ile ilgili detaylı bilgi için Yetkilendirme API'si sayfasını ziyaret edebilirsiniz. |
Accept | application/json |
Content-Type | application/json |
Request Path Parameters:
Parameter | Value |
---|---|
projectName | Politikası güncellenecek API Proxy'nin bulunduğu projenin tam adı |
apiProxyName | Politikası güncellenecek API Proxy'nin tam adı |
policyName | Güncellenecek politikanın tam adı |
Request Body:
{
"operationMetadata": {
"targetScope": "ALL",
"targetPipeline": "REQUEST",
"deploy": "true",
"deployTargetEnvironmentNameList": [
"test"
],
"order": "3"
},
"policy": {
"type": "policy-time-restriction",
"description": "This policy ensures that access to the API is only available on Mondays.",
"active": "true",
...
Policy specific attributes
...
}
}
İşlem Metadata bilgilerini içeren operationMetadata alanının özellikleri:
Alan | Durum | Alabileceği Değerler | Açıklama |
---|---|---|---|
targetScope | Zorunlu | ALL, | Politikanın API Proxy genelinde mi (ALL) yoksa bir endpoint'de mi (ENDPOINT) aranacağını belirtir. |
targetEndpoint | Koşullu ("targetScope" değeri "ENDPOINT" olduğunda zorunludur.) | Metin değer | Hedef endpoint bilgisidir. |
targetEndpointHTTPMethod | Koşullu ("targetScope" değeri "ENDPOINT" olduğunda zorunludur.) | GET, POST, PUT, HEAD, OPTIONS, DELETE, PATCH, TRACE, ALL | Hedef endpoint'in HTTP Metod bilgisidir. |
targetPipeline | Zorunlu | REQUEST, RESPONSE, ERROR | Politikanın hedefteki hangi hatta aranacağı bilgisidir. |
order | İsteğe Bağlı | Numerik değer | Gönderildiğinde politika hedef pipeline'daki ilgili sırade değilse sırası güncellenir. Gönderilmediğinde sırası olduğu haliyle bırakılır. |
deploy | İsteğe Bağlı | Boolean değer | Gönderildiğinde ve değeri "true" olduğunda ilgili API Proxy'nin hedef ortama yüklenmesini sağlar. |
deployTargetEnvironmentNameList | Koşullu ("deploy" değeri "true" olduğunda zorunludur) | Metin değer | Api Proxy'nin hangi ortam(lar)a yükleme yapılacağını belirtir. |
Ortak Politika bilgilerini içeren alanlar:
Alan | Durum | Alabileceği Değerler | Açıklama |
---|---|---|---|
type | Zorunlu | policy-api-authentication | Politikanın tipini tutar. |
description | İsteğe Bağlı | Metin değer | Politikanın açıklamasıdır. |
active | Zorunlu | Boolean değer | Politikanın aktif olup olmadığı bilgisidir. |
Politikaya ait diğer alanlar politikanın tipine göre değişir.
Response:
Status | Status Code | Description | Body |
---|---|---|---|
Başarılı | 200 | successful operation | { |
Hatalı | 400 | bad request | { "error": "...", "error_description": "..." } |
Hatalı | 401 | not authorized for this operation | { |
Hatalı | 500 | internal error | { "error": "...", "error_description": "..." } |
4. Delete a policy from specified API Proxy
Açıklama/Amaç: Belirtilen API Proxy'de yer alan politikanın silinmesini sağlar. Silinecek olan politika hedefteki hatta politika adı ile bulunur.
Yetkilendirme: Servislere erişim için erişmek isteyen kullanıcının proje içerisinde "Manage Proxies" ve "Deploy/Undeploy Proxies" yetkisine sahip olan bir rolünün olması gereklidir.
Endpoint: https://<APINIZER_MANAGER_ADDRESS>/apiops/projects/{projectName}/apiProxies/{apiProxyName}/policies/{policyName}/
HTTP Method: DELETE
Request Headers:
Header | Value |
---|---|
Authorization | <ACCESS_TOKEN> Bu uç noktaya erişim için Token alınması gereklidir. Nasıl token alınacağı ile ilgili detaylı bilgi için Yetkilendirme API'si sayfasını ziyaret edebilirsiniz. |
Accept | application/json |
Content-Type | application/json |
Request Path Parameters:
Parameter | Value |
---|---|
projectName | Politikası silinecek API Proxy'nin bulunduğu projenin tam adı |
apiProxyName | Politikası silinecek API Proxy'nin tam adı |
policyName | Silinecek politikanın tam adı |
Request Body:
{
"operationMetadata": {
"targetScope": "ALL",
"targetPipeline": "REQUEST",
"deploy": "true",
"deployTargetEnvironmentNameList": [
"test"
]
}
}
İşlem Metadata bilgilerini içeren operationMetadata alanının özellikleri:
Alan | Durum | Alabileceği Değerler | Açıklama |
---|---|---|---|
targetScope | Zorunlu | ALL, | Politikanın API Proxy genelinde mi (ALL) yoksa bir endpoint'de mi (ENDPOINT) aranacağını belirtir. |
targetEndpoint | Koşullu ("targetScope" değeri "ENDPOINT" olduğunda zorunludur.) | Metin değer | Hedef endpoint bilgisidir. |
targetEndpointHTTPMethod | Koşullu ("targetScope" değeri "ENDPOINT" olduğunda zorunludur.) | GET, POST, PUT, HEAD, OPTIONS, DELETE, PATCH, TRACE, ALL | Hedef endpoint'in HTTP Metod bilgisidir. |
targetPipeline | Zorunlu | REQUEST, RESPONSE, ERROR | Politikanın hedefteki hangi hatta aranacağı bilgisidir. |
deploy | İsteğe Bağlı | Boolean değer | Gönderildiğinde ve değeri "true" olduğunda ilgili API Proxy'nin hedef ortama yüklenmesini sağlar. |
deployTargetEnvironmentNameList | Koşullu ("deploy" değeri "true" olduğunda zorunludur) | Metin değer | Api Proxy'nin hangi ortam(lar)a yükleme yapılacağını belirtir. |
Response:
Status | Status Code | Description | Body |
---|---|---|---|
Başarılı | 200 | successful operation | { |
Hatalı | 400 | bad request | { "error": "...", "error_description": "..." } |
Hatalı | 401 | not authorized for this operation | { |
Hatalı | 500 | internal error | { "error": "...", "error_description": "..." } |