Subscription - Create Or Update

Belirtilen kullanıcının aboneliğini belirtilen ürüne oluşturur veya güncelleştirir.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid}?api-version=2022-08-01
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid}?notify={notify}&api-version=2022-08-01&appType={appType}

URI Parametreleri

Name İçinde Gerekli Tür Description
resourceGroupName
path True

string

Kaynak grubunun adı. Ad büyük/küçük harfe duyarlı değildir.

serviceName
path True

string

API Management hizmetinin adı.

Regex pattern: ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$

sid
path True

string

Abonelik varlığı Tanımlayıcısı. Varlık, bir kullanıcı ile API Management'deki bir ürün arasındaki ilişkiyi temsil eder.

Regex pattern: ^[^*#&+:<>?]+$

subscriptionId
path True

string

Hedef aboneliğin kimliği.

api-version
query True

string

Bu işlem için kullanılacak API sürümü.

appType
query

AppType

Oluşturma kullanıcı isteğini gönderen uygulamanın türünü belirler. Varsayılan, eski yayımcı portalıdır.

notify
query

boolean

Abonelik Durumu'ndaki değişikliği bildir.

  • Yanlışsa, aboneliğin durumunu değiştirmek için herhangi bir e-posta bildirimi göndermeyin
  • Doğruysa, aboneliğin durumunun değiştiğine ilişkin e-posta bildirimi gönderin

İstek Başlığı

Name Gerekli Tür Description
If-Match

string

Varlığın ETag'i. Varlık oluştururken gerekli değildir, ancak varlığı güncelleştirirken gereklidir.

İstek Gövdesi

Name Gerekli Tür Description
properties.displayName True

string

Abonelik adı.

properties.scope True

string

/products/{productId} veya /apis veya /apis/{apiId} gibi kapsam.

properties.allowTracing

boolean

İzlemenin etkinleştirilip etkinleştirilemeyeceğini belirler

properties.ownerId

string

Aboneliğin /users/{userId} biçiminde oluşturulduğu kullanıcı (kullanıcı kimliği yolu)

properties.primaryKey

string

Birincil abonelik anahtarı. İstek anahtarı sırasında belirtilmezse otomatik olarak oluşturulur.

properties.secondaryKey

string

İkincil abonelik anahtarı. İstek anahtarı sırasında belirtilmezse otomatik olarak oluşturulur.

properties.state

SubscriptionState

İlk abonelik durumu. Herhangi bir değer belirtilmezse Abonelik Gönderildi durumuyla oluşturulur. Olası durumlar * etkindir – abonelik etkin, * askıya alındı – abonelik engellendi ve abone ürünün herhangi bir API'sini çağıramıyor, * gönderildi – abonelik isteği geliştirici tarafından yapılmış, ancak henüz onaylanmamış veya reddedilmemiş, * reddedildi – abonelik isteği bir yönetici tarafından reddedildi, * iptal edildi – abonelik geliştirici veya yönetici tarafından iptal edildi, * süresi doldu – abonelik son kullanma tarihine ulaştı ve devre dışı bırakıldı.

Yanıtlar

Name Tür Description
200 OK

SubscriptionContract

Kullanıcı ürüne zaten abone oldu.

Headers

ETag: string

201 Created

SubscriptionContract

Kullanıcı ürüne başarıyla abone oldu.

Headers

ETag: string

Other Status Codes

ErrorResponse

İşlemin neden başarısız olduğunu açıklayan hata yanıtı.

Güvenlik

azure_auth

Azure Active Directory OAuth2 Flow.

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Description
user_impersonation kullanıcı hesabınızın kimliğine bürünme

Örnekler

ApiManagementCreateSubscription

Sample Request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/testsub?api-version=2022-08-01

{
  "properties": {
    "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57127d485157a511ace86ae7",
    "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060002",
    "displayName": "testsub"
  }
}

Sample Response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/testsub",
  "type": "Microsoft.ApiManagement/service/subscriptions",
  "name": "testsub",
  "properties": {
    "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57127d485157a511ace86ae7",
    "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060002",
    "displayName": "testsub",
    "state": "submitted",
    "createdDate": "2017-06-02T23:34:03.1055076Z"
  }
}
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/testsub",
  "type": "Microsoft.ApiManagement/service/subscriptions",
  "name": "testsub",
  "properties": {
    "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57127d485157a511ace86ae7",
    "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060002",
    "displayName": "testsub",
    "state": "submitted",
    "createdDate": "2017-06-02T23:34:03.1055076Z"
  }
}

Tanımlar

Name Description
AppType

Oluşturma kullanıcı isteğini gönderen uygulamanın türünü belirler. Varsayılan, eski yayımcı portalıdır.

ErrorFieldContract

Hata Alanı sözleşmesi.

ErrorResponse

Hata Yanıtı.

SubscriptionContract

Abonelik ayrıntıları.

SubscriptionCreateParameters

Abonelik oluşturma ayrıntıları.

SubscriptionState

Abonelik durumu. Olası durumlar * etkindir – abonelik etkin, * askıya alındı – abonelik engellendi ve abone ürünün herhangi bir API'sini çağıramıyor, * gönderildi – abonelik isteği geliştirici tarafından yapılmış, ancak henüz onaylanmamış veya reddedilmemiş, * reddedildi – abonelik isteği bir yönetici tarafından reddedildi, * iptal edildi – abonelik geliştirici veya yönetici tarafından iptal edildi, * süresi doldu – abonelik son kullanma tarihine ulaştı ve devre dışı bırakıldı.

AppType

Oluşturma kullanıcı isteğini gönderen uygulamanın türünü belirler. Varsayılan, eski yayımcı portalıdır.

Name Tür Description
developerPortal

string

Kullanıcı oluşturma isteği yeni geliştirici portalı tarafından gönderildi.

portal

string

Kullanıcı oluşturma isteği eski geliştirici portalı tarafından gönderildi.

ErrorFieldContract

Hata Alanı sözleşmesi.

Name Tür Description
code

string

Özellik düzeyi hata kodu.

message

string

Özellik düzeyi hatanın insan tarafından okunabilir gösterimi.

target

string

Özellik adı.

ErrorResponse

Hata Yanıtı.

Name Tür Description
error.code

string

Hizmet tanımlı hata kodu. Bu kod, yanıtta belirtilen HTTP hata kodu için bir alt durum görevi görür.

error.details

ErrorFieldContract[]

Doğrulama hatası durumunda istekte gönderilen geçersiz alanların listesi.

error.message

string

Hatanın insan tarafından okunabilen gösterimi.

SubscriptionContract

Abonelik ayrıntıları.

Name Tür Description
id

string

Kaynağın tam kaynak kimliği. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

name

string

Kaynağın adı

properties.allowTracing

boolean

İzlemenin etkinleştirilip etkinleştirilmediğini belirler

properties.createdDate

string

Abonelik oluşturma tarihi. Tarih şu biçime uygundur: yyyy-MM-ddTHH:mm:ssZ ISO 8601 standardı tarafından belirtildiği gibi.

properties.displayName

string

Aboneliğin adı veya aboneliğin adı yoksa null.

properties.endDate

string

Aboneliğin iptal edildiği veya süresinin dolduğu tarih. Bu ayar yalnızca denetim amaçlıdır ve abonelik otomatik olarak iptal edilmez. Abonelik yaşam döngüsü özelliği kullanılarak state yönetilebilir. Tarih şu biçime uygundur: yyyy-MM-ddTHH:mm:ssZ ISO 8601 standardı tarafından belirtildiği gibi.

properties.expirationDate

string

Aboneliğin sona erme tarihi. Bu ayar yalnızca denetim amaçlıdır ve aboneliğin süresi otomatik olarak dolmaz. Abonelik yaşam döngüsü özelliği kullanılarak state yönetilebilir. Tarih şu biçime uygundur: yyyy-MM-ddTHH:mm:ssZ ISO 8601 standardı tarafından belirtildiği gibi.

properties.notificationDate

string

Yaklaşan abonelik süre sonu bildirim tarihi. Tarih şu biçime uygundur: yyyy-MM-ddTHH:mm:ssZ ISO 8601 standardı tarafından belirtildiği gibi.

properties.ownerId

string

Abonelik sahibinin kullanıcı kaynak tanımlayıcısı. Değer, /users/{userId} biçiminde geçerli bir göreli URL'dir; burada {userId} bir kullanıcı tanımlayıcısıdır.

properties.primaryKey

string

Abonelik birincil anahtarı. Bu özellik 'GET' işlemlerinde doldurulmayacak! Değeri almak için '/listSecrets' POST isteğini kullanın.

properties.scope

string

/products/{productId} veya /apis veya /apis/{apiId} gibi kapsam.

properties.secondaryKey

string

Abonelik ikincil anahtarı. Bu özellik 'GET' işlemlerinde doldurulmayacak! Değeri almak için '/listSecrets' POST isteğini kullanın.

properties.startDate

string

Abonelik etkinleştirme tarihi. Bu ayar yalnızca denetim amaçlıdır ve abonelik otomatik olarak etkinleştirilmez. Abonelik yaşam döngüsü özelliği kullanılarak state yönetilebilir. Tarih şu biçime uygundur: yyyy-MM-ddTHH:mm:ssZ ISO 8601 standardı tarafından belirtildiği gibi.

properties.state

SubscriptionState

Abonelik durumu. Olası durumlar * etkindir – abonelik etkin, * askıya alındı – abonelik engellendi ve abone ürünün herhangi bir API'sini çağıramıyor, * gönderildi – abonelik isteği geliştirici tarafından yapılmış, ancak henüz onaylanmamış veya reddedilmemiş, * reddedildi – abonelik isteği bir yönetici tarafından reddedildi, * iptal edildi – abonelik geliştirici veya yönetici tarafından iptal edildi, * süresi doldu – abonelik son kullanma tarihine ulaştı ve devre dışı bırakıldı.

properties.stateComment

string

Durum 'reddedildi' olarak değiştirildiğinde yönetici tarafından eklenen isteğe bağlı abonelik açıklaması.

type

string

Kaynağın türü. Örneğin, "Microsoft.Compute/virtualMachines" veya "Microsoft.Storage/storageAccounts"

SubscriptionCreateParameters

Abonelik oluşturma ayrıntıları.

Name Tür Description
properties.allowTracing

boolean

İzlemenin etkinleştirilip etkinleştirilemeyeceğini belirler

properties.displayName

string

Abonelik adı.

properties.ownerId

string

Aboneliğin /users/{userId} biçiminde oluşturulduğu kullanıcı (kullanıcı kimliği yolu)

properties.primaryKey

string

Birincil abonelik anahtarı. İstek anahtarı sırasında belirtilmezse otomatik olarak oluşturulur.

properties.scope

string

/products/{productId} veya /apis veya /apis/{apiId} gibi kapsam.

properties.secondaryKey

string

İkincil abonelik anahtarı. İstek anahtarı sırasında belirtilmezse otomatik olarak oluşturulur.

properties.state

SubscriptionState

İlk abonelik durumu. Herhangi bir değer belirtilmezse Abonelik Gönderildi durumuyla oluşturulur. Olası durumlar * etkindir – abonelik etkin, * askıya alındı – abonelik engellendi ve abone ürünün herhangi bir API'sini çağıramıyor, * gönderildi – abonelik isteği geliştirici tarafından yapılmış, ancak henüz onaylanmamış veya reddedilmemiş, * reddedildi – abonelik isteği bir yönetici tarafından reddedildi, * iptal edildi – abonelik geliştirici veya yönetici tarafından iptal edildi, * süresi doldu – abonelik son kullanma tarihine ulaştı ve devre dışı bırakıldı.

SubscriptionState

Abonelik durumu. Olası durumlar * etkindir – abonelik etkin, * askıya alındı – abonelik engellendi ve abone ürünün herhangi bir API'sini çağıramıyor, * gönderildi – abonelik isteği geliştirici tarafından yapılmış, ancak henüz onaylanmamış veya reddedilmemiş, * reddedildi – abonelik isteği bir yönetici tarafından reddedildi, * iptal edildi – abonelik geliştirici veya yönetici tarafından iptal edildi, * süresi doldu – abonelik son kullanma tarihine ulaştı ve devre dışı bırakıldı.

Name Tür Description
active

string

cancelled

string

expired

string

rejected

string

submitted

string

suspended

string