Udostępnij za pośrednictwem


Subscription - Create Or Update

Tworzy lub aktualizuje subskrypcję określonego użytkownika do określonego produktu.

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

Parametry identyfikatora URI

Nazwa W Wymagane Typ Opis
resourceGroupName
path True

string

minLength: 1
maxLength: 90

Nazwa grupy zasobów. Nazwa jest niewrażliwa na wielkość liter.

serviceName
path True

string

minLength: 1
maxLength: 50
pattern: ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$

Nazwa usługi API Management.

sid
path True

string

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

Identyfikator jednostki subskrypcji. Jednostka reprezentuje skojarzenie między użytkownikiem a produktem w usłudze API Management.

subscriptionId
path True

string (uuid)

Identyfikator subskrypcji docelowej. Wartość musi być identyfikatorem UUID.

api-version
query True

string

minLength: 1

Wersja interfejsu API do użycia dla tej operacji.

appType
query

AppType

Określa typ aplikacji, która wysyła żądanie tworzenia użytkownika. Wartość domyślna to starszy portal wydawcy.

notify
query

boolean

Powiadamianie o zmianie stanu subskrypcji.

  • Jeśli wartość false, nie wysyłaj żadnych powiadomień e-mail o zmianie stanu subskrypcji
  • Jeśli to prawda, wyślij powiadomienie e-mail o zmianie stanu subskrypcji

Nagłówek żądania

Nazwa Wymagane Typ Opis
If-Match

string

Element ETag jednostki. Nie jest to wymagane podczas tworzenia jednostki, ale wymagane podczas aktualizowania jednostki.

Treść żądania

Nazwa Wymagane Typ Opis
properties.displayName True

string

minLength: 1
maxLength: 100

Nazwa subskrypcji.

properties.scope True

string

Zakres, taki jak /products/{productId} lub /apis lub /apis/{apiId}.

properties.allowTracing

boolean

Określa, czy można włączyć śledzenie

properties.ownerId

string

Użytkownik (ścieżka identyfikatora użytkownika), dla którego subskrypcja jest tworzona w postaci /users/{userId}

properties.primaryKey

string

minLength: 1
maxLength: 256

Podstawowy klucz subskrypcji. Jeśli klucz żądania nie zostanie określony, zostanie wygenerowany automatycznie.

properties.secondaryKey

string

minLength: 1
maxLength: 256

Pomocniczy klucz subskrypcji. Jeśli klucz żądania nie zostanie określony, zostanie wygenerowany automatycznie.

properties.state

SubscriptionState

Początkowy stan subskrypcji. Jeśli żadna wartość nie zostanie określona, subskrypcja zostanie utworzona ze stanem Przesłano. Możliwe stany są * aktywne — subskrypcja jest aktywna, * zawieszona — subskrypcja jest zablokowana, a subskrybent nie może wywołać żadnych interfejsów API produktu, * przesłane — żądanie subskrypcji zostało złożone przez dewelopera, ale nie zostało jeszcze zatwierdzone lub odrzucone, * odrzucono — żądanie subskrypcji zostało odrzucone przez administratora, * anulowane — subskrypcja została anulowana przez dewelopera lub administratora, * wygasła — subskrypcja osiągnęła datę wygaśnięcia i została zdezaktywowana.

Odpowiedzi

Nazwa Typ Opis
200 OK

SubscriptionContract

Użytkownik już zasubskrybował produkt.

Nagłówki

ETag: string

201 Created

SubscriptionContract

Użytkownik został pomyślnie zasubskrybowany do produktu.

Nagłówki

ETag: string

Other Status Codes

ErrorResponse

Odpowiedź na błąd opisująca, dlaczego operacja nie powiodła się.

Zabezpieczenia

azure_auth

Przepływ protokołu OAuth2 usługi Azure Active Directory.

Typ: oauth2
Flow: implicit
Adres URL autoryzacji: https://login.microsoftonline.com/common/oauth2/authorize

Zakresy

Nazwa Opis
user_impersonation personifikacja konta użytkownika

Przykłady

ApiManagementCreateSubscription

Przykładowe żądanie

PUT https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/testsub?api-version=2024-05-01

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

Przykładowa odpowiedź

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

Definicje

Nazwa Opis
AppType

Określa typ aplikacji, która wysyła żądanie tworzenia użytkownika. Wartość domyślna to starszy portal wydawcy.

ErrorAdditionalInfo

Dodatkowe informacje o błędzie zarządzania zasobami.

ErrorDetail

Szczegóły błędu.

ErrorResponse

Odpowiedź na błąd

SubscriptionContract

Szczegóły subskrypcji.

SubscriptionCreateParameters

Szczegóły tworzenia subskrypcji.

SubscriptionState

Stan subskrypcji. Możliwe stany są * aktywne — subskrypcja jest aktywna, * zawieszona — subskrypcja jest zablokowana, a subskrybent nie może wywołać żadnych interfejsów API produktu, * przesłane — żądanie subskrypcji zostało złożone przez dewelopera, ale nie zostało jeszcze zatwierdzone lub odrzucone, * odrzucono — żądanie subskrypcji zostało odrzucone przez administratora, * anulowane — subskrypcja została anulowana przez dewelopera lub administratora, * wygasła — subskrypcja osiągnęła datę wygaśnięcia i została zdezaktywowana.

AppType

Określa typ aplikacji, która wysyła żądanie tworzenia użytkownika. Wartość domyślna to starszy portal wydawcy.

Wartość Opis
developerPortal

Żądanie tworzenia użytkownika zostało wysłane przez nowy portal deweloperów.

portal

Żądanie tworzenia użytkownika zostało wysłane przez starszy portal deweloperów.

ErrorAdditionalInfo

Dodatkowe informacje o błędzie zarządzania zasobami.

Nazwa Typ Opis
info

object

Dodatkowe informacje.

type

string

Dodatkowy typ informacji.

ErrorDetail

Szczegóły błędu.

Nazwa Typ Opis
additionalInfo

ErrorAdditionalInfo[]

Dodatkowe informacje o błędzie.

code

string

Kod błędu.

details

ErrorDetail[]

Szczegóły błędu.

message

string

Komunikat o błędzie.

target

string

Element docelowy błędu.

ErrorResponse

Odpowiedź na błąd

Nazwa Typ Opis
error

ErrorDetail

Obiekt błędu.

SubscriptionContract

Szczegóły subskrypcji.

Nazwa Typ Opis
id

string

W pełni kwalifikowany identyfikator zasobu dla zasobu. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

name

string

Nazwa zasobu

properties.allowTracing

boolean

Określa, czy śledzenie jest włączone

properties.createdDate

string (date-time)

Data utworzenia subskrypcji. Data jest zgodna z następującym formatem: yyyy-MM-ddTHH:mm:ssZ określony przez standard ISO 8601.

properties.displayName

string

minLength: 0
maxLength: 100

Nazwa subskrypcji lub wartość null, jeśli subskrypcja nie ma nazwy.

properties.endDate

string (date-time)

Data anulowania lub wygaśnięcia subskrypcji. Ustawienie jest przeznaczone tylko do celów inspekcji, a subskrypcja nie jest automatycznie anulowana. Cykl życia subskrypcji można zarządzać przy użyciu właściwości state. Data jest zgodna z następującym formatem: yyyy-MM-ddTHH:mm:ssZ określony przez standard ISO 8601.

properties.expirationDate

string (date-time)

Data wygaśnięcia subskrypcji. Ustawienie jest przeznaczone tylko do celów inspekcji, a subskrypcja nie wygasła automatycznie. Cykl życia subskrypcji można zarządzać przy użyciu właściwości state. Data jest zgodna z następującym formatem: yyyy-MM-ddTHH:mm:ssZ określony przez standard ISO 8601.

properties.notificationDate

string (date-time)

Zbliżająca się data powiadomienia o wygaśnięciu subskrypcji. Data jest zgodna z następującym formatem: yyyy-MM-ddTHH:mm:ssZ określony przez standard ISO 8601.

properties.ownerId

string

Identyfikator zasobu użytkownika właściciela subskrypcji. Wartość jest prawidłowym względnym adresem URL w formacie /users/{userId}, gdzie {userId} jest identyfikatorem użytkownika.

properties.primaryKey

string

minLength: 1
maxLength: 256

Klucz podstawowy subskrypcji. Ta właściwość nie zostanie wypełniona na operacjach "GET". Użyj żądania POST "/listSecrets", aby uzyskać wartość.

properties.scope

string

Zakres, taki jak /products/{productId} lub /apis lub /apis/{apiId}.

properties.secondaryKey

string

minLength: 1
maxLength: 256

Klucz pomocniczy subskrypcji. Ta właściwość nie zostanie wypełniona na operacjach "GET". Użyj żądania POST "/listSecrets", aby uzyskać wartość.

properties.startDate

string (date-time)

Data aktywacji subskrypcji. Ustawienie jest przeznaczone tylko do celów inspekcji, a subskrypcja nie jest aktywowana automatycznie. Cykl życia subskrypcji można zarządzać przy użyciu właściwości state. Data jest zgodna z następującym formatem: yyyy-MM-ddTHH:mm:ssZ określony przez standard ISO 8601.

properties.state

SubscriptionState

Stan subskrypcji. Możliwe stany są * aktywne — subskrypcja jest aktywna, * zawieszona — subskrypcja jest zablokowana, a subskrybent nie może wywołać żadnych interfejsów API produktu, * przesłane — żądanie subskrypcji zostało złożone przez dewelopera, ale nie zostało jeszcze zatwierdzone lub odrzucone, * odrzucono — żądanie subskrypcji zostało odrzucone przez administratora, * anulowane — subskrypcja została anulowana przez dewelopera lub administratora, * wygasła — subskrypcja osiągnęła datę wygaśnięcia i została zdezaktywowana.

properties.stateComment

string

Opcjonalny komentarz subskrypcji dodany przez administratora po zmianie stanu na "odrzucony".

type

string

Typ zasobu. Np. "Microsoft.Compute/virtualMachines" lub "Microsoft.Storage/storageAccounts"

SubscriptionCreateParameters

Szczegóły tworzenia subskrypcji.

Nazwa Typ Opis
properties.allowTracing

boolean

Określa, czy można włączyć śledzenie

properties.displayName

string

minLength: 1
maxLength: 100

Nazwa subskrypcji.

properties.ownerId

string

Użytkownik (ścieżka identyfikatora użytkownika), dla którego subskrypcja jest tworzona w postaci /users/{userId}

properties.primaryKey

string

minLength: 1
maxLength: 256

Podstawowy klucz subskrypcji. Jeśli klucz żądania nie zostanie określony, zostanie wygenerowany automatycznie.

properties.scope

string

Zakres, taki jak /products/{productId} lub /apis lub /apis/{apiId}.

properties.secondaryKey

string

minLength: 1
maxLength: 256

Pomocniczy klucz subskrypcji. Jeśli klucz żądania nie zostanie określony, zostanie wygenerowany automatycznie.

properties.state

SubscriptionState

Początkowy stan subskrypcji. Jeśli żadna wartość nie zostanie określona, subskrypcja zostanie utworzona ze stanem Przesłano. Możliwe stany są * aktywne — subskrypcja jest aktywna, * zawieszona — subskrypcja jest zablokowana, a subskrybent nie może wywołać żadnych interfejsów API produktu, * przesłane — żądanie subskrypcji zostało złożone przez dewelopera, ale nie zostało jeszcze zatwierdzone lub odrzucone, * odrzucono — żądanie subskrypcji zostało odrzucone przez administratora, * anulowane — subskrypcja została anulowana przez dewelopera lub administratora, * wygasła — subskrypcja osiągnęła datę wygaśnięcia i została zdezaktywowana.

SubscriptionState

Stan subskrypcji. Możliwe stany są * aktywne — subskrypcja jest aktywna, * zawieszona — subskrypcja jest zablokowana, a subskrybent nie może wywołać żadnych interfejsów API produktu, * przesłane — żądanie subskrypcji zostało złożone przez dewelopera, ale nie zostało jeszcze zatwierdzone lub odrzucone, * odrzucono — żądanie subskrypcji zostało odrzucone przez administratora, * anulowane — subskrypcja została anulowana przez dewelopera lub administratora, * wygasła — subskrypcja osiągnęła datę wygaśnięcia i została zdezaktywowana.

Wartość Opis
active
cancelled
expired
rejected
submitted
suspended