Delen via


Facturering op basis van gebruik van Azure-containers met behulp van de commerciële marktplaats-meterservice

Met de commerciële marketplace-meterservice kunt u Azure Container-aanbiedingen maken die in rekening worden gebracht op basis van niet-standaardeenheden. Voordat u de aanbieding publiceert naar de commerciële marketplace, definieert u de factureringsdimensies zoals bandbreedte, shards, logboekbestanden, scans, e-mailberichten verwerkt, enzovoort. Klanten betalen vervolgens op basis van hun verbruik van deze dimensies, waarbij uw toepassing Microsoft informeert via de service-API voor de commerciële marketplace-meterservice van factureerbare gebeurtenissen wanneer deze zich voordoen.

Vereisten voor gemeten facturering

Voor een Azure Container-aanbieding om gebruik te maken van metered billing, moet u eerst de licentieopties bekijken beschreven in Plan voor Azure Container-aanbieding en ervoor zorgen dat u aangepaste factureringsbehoeften heeft waaraan niet wordt voldaan door een van de zes bestaande vooraf gedefinieerde factureringsmodellen.

Vervolgens kan het Azure Container-aanbod worden geïntegreerd met de API's van de commerciële marketplace metering-service om Microsoft op de hoogte te stellen van factureerbare gebeurtenissen.

Belangrijk

Uw toepassing moet de service-API's voor de commerciële marketplace-meterservice aanroepen. Er is momenteel geen optie om uw gehoste service (buiten de toepassing) toe te staan om de service-API voor meten aan te roepen.

Notitie

De Marketplace-meterservice is alleen beschikbaar voor het aangepaste factureringsmodel en is niet van toepassing op het factureringsmodel per gebruiker.

Hoe facturering naar gebruik past bij prijsstelling

Inzicht in de aanbiedingshiërarchie is belangrijk als het gaat om het definiëren van de aanbieding samen met de prijsmodellen.

  • Elke aanbieding is geconfigureerd om wel of niet via Microsoft verkocht te worden. Zodra een aanbieding is gepubliceerd, kan deze optie niet meer worden gewijzigd.
  • Elke aanbieding, geconfigureerd voor verkoop via Microsoft, kan een of meer abonnementen hebben.
  • Aan elk abonnement is een prijsmodel gekoppeld: maandelijks gefactureerd abonnement op basis van gebruik of BYOL-(Bring Your Own License). Voor het maandelijkse abonnement op basis van gebruik kunt u gratis kiezen, een van de zes vooraf gedefinieerde factureringsopties of aangepaste opties.
  • Het prijsmodel en de invoeropties voor prijzen kunnen niet worden bijgewerkt zodra ze zijn gepubliceerd.
  • Elk abonnement moet een volledig prijsplan hebben.
  • U kunt ervoor kiezen om aangepaste dimensies te gebruiken om prijzen voor uw klanten vast te stellen, zodat u kunt voldoen aan uw factureringsbehoeften. Elke dimensie vertegenwoordigt een factureerbare eenheid die uw service communiceert met Microsoft met behulp van de api voor de commerciële marketplace-meterservice.

Belangrijk

U moet het gebruik in uw code bijhouden en alleen gebruiksgebeurtenissen naar Microsoft verzenden voor het gebruik dat de klant wilt factureren.

Notitie

Aanbiedingen worden gefactureerd aan klanten in de valuta van de overeenkomst van de klant, met behulp van de lokale marktprijs die werd gepubliceerd op het moment dat de aanbieding werd gemaakt. Het bedrag dat klanten betalen en dat ISV's worden betaald, is afhankelijk van de wisselkoersen op het moment dat de klant de aanbieding overhandelt. Meer informatie over "Hoe we valuta converteren?".

Voorbeeld van aangepaste prijsopties

Contoso is bijvoorbeeld een uitgever waarvan het IP-adres zich in hun shardinglogica bevindt voor de Kubernetes-toepassing. Contoso wil klanten kosten in rekening brengen op basis van het aantal gebruikte shards. Ze verkennen ook andere handige en concurrerende factureringsopties. Contoso is geregistreerd als uitgever in partnercentrum voor het commerciële marketplace-programma en wil containeraanbiedingen publiceren naar Azure-klanten. Er zijn vier abonnementen gekoppeld aan Contoso, die hieronder worden beschreven:

  • Kosten per shard die per uur worden gebruikt, bijvoorbeeld $ 1.000/shard/uur

    Schermopname met het tarief per fragment dat per uur wordt gebruikt.

  • Eenmalige betaling of terugkerende facturering modelleren: Stel dat Contoso een klant $ 449/mo wil in rekening brengen voor het gebruik van maximaal 100 logboekbestanden van hun toepassing. De toepassingslogica van Contoso legt gebruiksevenementen voor de maand vast en berekent aan het einde van de maand kosten voor het gebruik van de 100 logbestanden.

    Schermopname van het modelleren van eenmalige betaling of terugkerende facturering.

  • Modelleren van gelaagde facturering: Stel dat Contoso $449 per maand wil rekenen voor maximaal 100 shards, met gelaagde tarieven bij overgebruik. De toepassingslogica houdt het gebruik voor de maand bij, segmenteert het gebruik dienovereenkomstig en rapporteert deze met behulp van de onderstaande meter-API's aan het einde van de periode:

    Schermopname van het modelleren van gelaagde facturering.

  • Multidimensionale facturering: Contoso kan ook aangepaste meting gebruiken om te voldoen aan hun behoeften voor geavanceerde facturering met behulp van meerdere dimensies

    schermopname van multidimensionale facturering.

Op basis van het geselecteerde abonnement worden kosten in rekening gebracht voor een Azure-klant die de Contoso Container-aanbieding krijgt op basis van hun gebruik. Contoso telt het gebruik zonder gebruiksgebeurtenissen naar Microsoft te verzenden. Wanneer klanten voldoende hoeveelheid verbruiken of periodiek, rapporteert Contoso het gebruik. Klanten hoeven geen plannen te wijzigen of iets anders te doen. Contoso meet het gebruik en begint gebruiksgebeurtenissen naar Microsoft te verzenden om het verbruik dat boven de limiet gaat in rekening te brengen via de commerciële marketplace-metingservice-API. Microsoft brengt de klant op zijn beurt kosten in rekening voor het gebruik zoals opgegeven door de uitgever in de aangepaste dimensies. De facturering wordt uitgevoerd op de volgende maandelijkse factureringscyclus.

Factureringsafmetingen

Elke factureringsdimensie definieert een aangepaste eenheid waarmee de ISV gebruiksevenementen kan verzenden. Factureringsdimensies worden ook gebruikt om de klant te laten communiceren over hoe ze worden gefactureerd voor het gebruik van de software. Ze worden als volgt gedefinieerd:

  • id: de onveranderbare dimensie-id waarnaar wordt verwezen tijdens het verzenden van gebruiksgebeurtenissen.
  • weergavenaam: de weergavenaam die is gekoppeld aan de dimensie, bijvoorbeeld 'verzonden tekstberichten'.
  • maateenheid: de beschrijving van de factureringseenheid, bijvoorbeeld 'per sms-bericht' of 'per 100 e-mailberichten'.
  • Prijs per eenheid in USD: de prijs voor één dimensie-eenheid. Het kan 0 zijn.

Belangrijk

U moet het gebruik in uw toepassingscode bijhouden en gebruiksevenementen naar Microsoft verzenden op basis van uw factureringsbehoeften.

Factureringsdimensies worden gedeeld over alle abonnementen voor een aanbieding. Sommige kenmerken zijn van toepassing op de dimensie voor alle plannen en andere kenmerken zijn planspecifiek.

De kenmerken, die de dimensie zelf definiëren, worden gedeeld in alle plannen voor aanbiedingen. Voordat u de aanbieding publiceert, is een wijziging in deze kenmerken van de context van een plan van invloed op de dimensiedefinitie voor alle plannen. Nadat u de aanbieding hebt gepubliceerd, kunnen deze kenmerken niet meer worden bewerkt. Deze kenmerken zijn:

  • ID
  • Weergavenaam
  • Maateenheid

De andere kenmerken van een dimensie zijn specifiek voor elk plan en kunnen verschillende waarden hebben van plan tot plan. Voordat u het plan publiceert, kunt u deze waarden bewerken en wordt alleen dit plan beïnvloed. Nadat u het plan hebt gepubliceerd, kunnen deze kenmerken niet meer worden bewerkt. Deze kenmerken zijn:

  • Prijs per eenheid in USD

Dimensies hebben ook een speciaal concept met de naam 'ingeschakeld':

  • Ingeschakeld geeft aan dat dit plan deelneemt aan deze dimensie. Als u een nieuw abonnement maakt dat geen gebruiksgebeurtenissen verzendt op basis van deze dimensie, kunt u deze optie uitgeschakeld laten. Bovendien worden nieuwe dimensies die zijn toegevoegd nadat een plan voor het eerst is gepubliceerd, weergegeven als 'niet ingeschakeld' in het reeds gepubliceerde plan. Een uitgeschakelde dimensie wordt niet weergegeven in een lijst met dimensies voor een plan dat zichtbaar is voor klanten.

Notitie

De volgende scenario's worden expliciet ondersteund:

  • U kunt een nieuwe dimensie toevoegen aan een nieuw plan. De nieuwe dimensie wordt niet ingeschakeld voor al gepubliceerde plannen.

Instellen van de dimensieprijs per eenheid voor elke ondersteunde markt

Net als bij andere prijzen op basis van gebruik kunnen factureringsdimensieprijzen per ondersteund land of regio worden ingesteld. U moet de functie voor het importeren en exporteren van prijsgegevens als volgt gebruiken in partnercentrum.

  1. Definieer de gewenste dimensies en markeer welke markten worden ondersteund.
  2. Exporteer deze gegevens naar een bestand.
  3. Voeg de juiste prijzen per land/regio toe en importeer het bestand in partnercentrum.

De gebruikersinterface van de meter verandert om aan te geven dat de prijzen van de dimensie alleen zichtbaar zijn in het bestand.

Schermopname van de gebruikersinterface van de meter.

Privéplan

Net als de vooraf gedefinieerde factureringsplannen op basis van gebruik, kan een abonnement met aangepaste dimensies worden ingesteld als privéabonnement, dat alleen toegankelijk is voor de gedefinieerde doelgroep van het plan.

Beperkingen

Vergrendelingsgedrag

Omdat een dimensie die wordt gebruikt met de commerciële marketplace-meterservice een goed beeld geeft van hoe een klant voor de service betaalt, kunnen alle details voor een dimensie niet meer worden bewerkt nadat u deze hebt gepubliceerd. Het is belangrijk dat u uw dimensies volledig hebt gedefinieerd voor een plan voordat u publiceert.

Zodra een aanbieding met een dimensie is gepubliceerd, kunnen de details op aanbiedingsniveau voor die dimensie niet meer worden gewijzigd:

  • ID
  • Weergavenaam
  • Maateenheid

Zodra een plan is gepubliceerd, kan dit detail op planniveau niet meer worden gewijzigd:

  • Of de dimensie is ingeschakeld voor het plan of niet

Bovengrens

Het maximum aantal dimensies dat voor één aanbieding kan worden geconfigureerd, is 30 unieke dimensies.

Gebruikafhankelijke facturering van Azure Container

De API's voor facturering gebaseerd op gebruik moeten worden gebruikt wanneer de uitgever aangepaste metingen maakt voor een aanbieding die in Partner Center moet worden gepubliceerd. Integratie met de facturerings-API's met datalimiet is vereist voor elke aangeschafte aanbieding met een of meer abonnementen met aangepaste dimensies om gebruiksgebeurtenissen te verzenden.

Belangrijk

Zie Een Azure Container Offer makenvoor meer informatie over het maken van aangepaste metingsdimensies voor Kubernetes-apps.

TLS 1.2-notitie afdwingen

TLS-versie 1.2 wordt afgedwongen als minimale versie voor HTTPS-communicatie. Zorg ervoor dat u deze TLS-versie in uw code gebruikt. TLS-versie 1.0 en 1.1 zijn afgeschaft en verbindingspogingen worden geweigerd.

Facturering op basis van gebruik voor eenmalig gebruiksgeval

De API voor gebruiksgebeurtenissen moet worden aangeroepen door de uitgever om gebruiksgebeurtenissen te verzenden op basis van een actieve resource (geabonneerd) voor het abonnement dat is gekocht door de specifieke klant. De gebruiks gebeurtenis wordt afzonderlijk verzonden voor elke aangepaste dimensie van het plan dat door de uitgever is gedefinieerd bij het publiceren van de aanbieding.

Er kan slechts één gebruiksgebeurtenis worden verzonden voor elk uur van een kalenderdag per resource en dimensie. Als er meer dan één eenheid in een uur wordt verbruikt, verzamelt u alle eenheden die in het uur worden verbruikt en verzendt u deze vervolgens in één gebeurtenis. Gebruiksevenementen kunnen alleen voor de afgelopen 24 uur worden uitgezonden. Als u een gebruiksevenement op elk gewenst moment verzendt tussen 8:00 en 8:59:59 (en geaccepteerd) en een andere gebeurtenis verzendt voor dezelfde dag tussen 8:00 en 8:59:59, wordt deze geweigerd als een duplicaat.

POST: https://marketplaceapi.microsoft.com/api/usageEvent?api-version=<ApiVersion>

query-parameters:

Parameter Aanbeveling
ApiVersion Gebruik 2018-08-31.

verzoek-headers:

Inhoudstype Gebruik application/json
x-ms-requestid Unieke reeks tekens voor het volgen van de aanvraag van de klant, bij voorkeur een GUID (Globally Unique Identifier). Als deze waarde niet is opgegeven, wordt er een gegenereerd en opgegeven in de antwoordheaders.
x-ms-correlationid Unieke tekenreekswaarde voor bewerking op de client. Deze parameter correleert alle gebeurtenissen van de clientbewerking met gebeurtenissen aan de serverzijde. Als deze waarde niet is opgegeven, wordt er een gegenereerd en opgegeven in de antwoordheaders.
authorization Een uniek toegangstoken dat de ISV identificeert die deze API-aanroep maakt. De vorm is "Bearer <access_token>" wanneer de tokenwaarde wordt opgehaald door de uitgever, zoals uitgelegd in de Kubernetes-applicatie in Verificatiestrategieën.

voorbeeld van aanvraagtekst:

{
  "resourceUri": "<ARM resource URI of the Kubernetes app instance>", // unique identifier of the resource against which usage is emitted. 
  "quantity": 5.0, // how many units were consumed for the date and hour specified in effectiveStartTime, must be greater than 0 or a double integer
  "dimension": "dim1", // custom dimension identifier
  "effectiveStartTime": "2018-12-01T08:30:14", // time in UTC when the usage event occurred, from now and until 24 hours back
  "planId": "plan1", // id of the plan purchased for the offer
}

Notitie

Voor Kubernetes-apps is de resourceUri de ARM-resource-URI van het Kubernetes App-exemplaar.

Reacties

Code: 200
OK. De gebruiksemissie is geaccepteerd en geregistreerd aan de zijde van Microsoft voor verdere verwerking en facturering.

Voorbeeld van een antwoordpayload:

{
  "usageEventId": <guid>, // unique identifier associated with the usage event in Microsoft records
  "status": "Accepted" // this is the only value in case of single usage event
  "messageTime": "2020-01-12T13:19:35.3458658Z", // time in UTC this event was accepted
  "resourceUri": "<ARM resource URI of the Kubernetes app instance>", // unique identifier of the resource against which usage is emitted. For SaaS it's the subscriptionId.
  "quantity": 5.0, // amount of emitted units as recorded by Microsoft
  "dimension": "dim1", // custom dimension identifier
  "effectiveStartTime": "2018-12-01T08:30:14", // time in UTC when the usage event occurred, as sent by the ISV
  "planId": "plan1", // id of the plan purchased for the offer
}

Code: 400
Foutieve aanvraag.

  • Ontbrekende of ongeldige aanvraaggegevens opgegeven.
  • effectiveStartTime is meer dan 24 uur geleden. Het evenement is verlopen.

Voorbeeld van een antwoordpayload:

{
  "message": "One or more errors have occurred.",
  "target": "usageEventRequest",
  "details": [
    {
      "message": "The resourceUri is required.",
      "target": "ResourceUri",
      "code": "BadArgument"
    }
  ],
  "code": "BadArgument"
}

Code: 400
Foutieve aanvraag.

  • Resource-URI is al eerder geregistreerd. Wacht 24 uur voordat u het gebruik indient.

Voorbeeld van een antwoordpayload:

{
  "message": "One or more errors have occurred.",
  "target": "usageEventRequest",
  "details": [
    {
      "message": "Invalid usage state.",
      "target": "ResourceUri",
      "code": "BadArgument"
    }
  ],
  "code": "BadArgument"
}

Code: 403

Verboden. Het autorisatietoken is niet opgegeven, is ongeldig of verlopen.

Code: 409
Conflict. Er is al een gebruiksgebeurtenis gerapporteerd voor de opgegeven resource-id, de ingangsdatum en het uur.

Voorbeeld van een respons-payload:

{
  "additionalInfo": {
    "acceptedMessage": {
      "usageEventId": "<guid>", //unique identifier associated with the usage event in Microsoft records
      "status": "Duplicate",
      "messageTime": "2020-01-12T13:19:35.3458658Z",
      "resourceUri": "<ARM resource URI of the Kubernetes app instance>", //unique identifier of the resource against which usage is emitted.
      "quantity": 1.0,
      "dimension": "dim1",
      "effectiveStartTime": "2020-01-12T11:03:28.14Z",
      "planId": "plan1"
    }
  },
  "message": "This usage event already exist.",
  "code": "Conflict"
}

Gebeurtenis voor batchverbruik met gebruiksgebonden facturering

Met de gebeurtenis-API voor batchgebruik kunt u gebruiksgebeurtenissen verzenden voor meer dan één aangeschafte resource tegelijk. Hiermee kunt u ook verschillende gebruiksgebeurtenissen verzenden voor dezelfde resource, zolang ze voor verschillende kalenderuren zijn. Het maximale aantal gebeurtenissen in één batch is 25.

POST:https://marketplaceapi.microsoft.com/api/batchUsageEvent?api-version=<ApiVersion>

query-parameters:

Parameter Aanbeveling
ApiVersion Gebruik 2018-08-31.

Verzoek-headers:

Inhoudstype Gebruik application/json
x-ms-requestid Unieke tekenreekswaarde om het verzoek van de klant te volgen, bij voorkeur een GUID. Als deze waarde niet wordt opgegeven, wordt er een gegenereerd en opgegeven in de antwoordheaders.
x-ms-correlationid Unieke tekenreekswaarde voor bewerking op de client. Deze parameter correleert alle gebeurtenissen van de clientbewerking met gebeurtenissen aan de serverzijde. Als deze waarde niet is opgegeven, wordt deze gegenereerd en opgegeven in de antwoordheaders.
authorization Een uniek toegangstoken dat de ISV identificeert die deze API-aanroep maakt. De vorm is Bearer <access_token> wanneer de tokenwaarde wordt opgehaald door de uitgever, zoals uitgelegd in de Kubernetes-applicatie in Verificatiestrategieën.

Notitie

In de verzoekinhoud is de resource-identificator voor Kubernetes-apps resourceUri.

voorbeeld van aanvraagbody voor Kubernetes-apps:

{
  "request": [ // list of usage events for the same or different resources of the publisher
    { // first event
      "resourceUri": "<ARM resource URI of the Kubernetes app instance>", // Unique identifier of the resource against which usage is emitted. 
      "quantity": 5.0, // how many units were consumed for the date and hour specified in effectiveStartTime, must be greater than 0 or a double integer
      "dimension": "dim1", //Custom dimension identifier
      "effectiveStartTime": "2018-12-01T08:30:14",//Time in UTC when the usage event occurred, from now and until 24 hours back
      "planId": "plan1", // id of the plan purchased for the offer
    },
    { // next event
      "resourceUri": "<ARM resource URI of the Kubernetes app instance>", 
      "quantity": 39.0, 
      "dimension": "email", 
      "effectiveStartTime": "2018-11-01T23:33:10
      "planId": "gold", // id of the plan purchased for the offer
    }
  ]
}

Reacties

Code: 200
OK. De emissie van batchgebruik is geaccepteerd en geregistreerd aan de zijde van Microsoft voor verdere verwerking en facturering. De antwoordlijst wordt geretourneerd met de status voor elke afzonderlijke gebeurtenis in de batch. Je moet de antwoordpayload doorlopen om inzicht te krijgen in de antwoorden voor elk afzonderlijk gebruiksevenement dat als onderdeel van het batch-evenement wordt verzonden.

Voorbeeld van een antwoordpayload:

{
  "count": 2, // number of records in the response
  "result": [
    { // first response
      "usageEventId": "<guid>", // unique identifier associated with the usage event in Microsoft records
      "status": "Accepted" // see list of possible statuses below,
      "messageTime": "2020-01-12T13:19:35.3458658Z", // Time in UTC this event was accepted by Microsoft,
      "resourceUri": "<ARM resource URI of the Kubernetes app instance>", // unique identifier of the resource against which usage is emitted.
      "quantity": 5.0, // amount of emitted units as recorded by Microsoft 
      "dimension": "dim1", // custom dimension identifier
      "effectiveStartTime": "2018-12-01T08:30:14",// time in UTC when the usage event occurred, as sent by the ISV
      "planId": "plan1", // id of the plan purchased for the offer
    },
    { // second response
      "status": "Duplicate",
      "messageTime": "0001-01-01T00:00:00",
      "error": {
        "additionalInfo": {
          "acceptedMessage": {
            "usageEventId": "<guid>",
            "status": "Duplicate",
            "messageTime": "2020-01-12T13:19:35.3458658Z",
            "resourceUri": "<ARM resource URI of the Kubernetes app instance>",
            "quantity": 1.0,
            "dimension": "email",
            "effectiveStartTime": "2020-01-12T11:03:28.14Z",
            "planId": "gold"
          }
        },
        "message": "This usage event already exist.",
        "code": "Conflict"
      },
      "resourceId": "<guid2>",
      "quantity": 1.0,
      "dimension": "email",
      "effectiveStartTime": "2020-01-12T11:03:28.14Z",
      "planId": "gold"
    }
  ]
}

Beschrijving van de statuscode waarnaar wordt verwezen in BatchUsageEvent API-antwoord:

Statuscode Beschrijving
Accepted Geaccepteerd.
Expired Verlopen gebruik.
Duplicate Dubbel gebruik is voorzien.
Error Foutcode.
ResourceNotFound De opgegeven gebruiksresource is ongeldig.
ResourceNotAuthorized U bent niet gemachtigd om gebruik te maken van deze bron.
ResourceNotActive De bron is opgeschort of was nooit geactiveerd.
InvalidDimension De dimensie waarvoor het gebruik wordt doorgegeven, is ongeldig voor deze aanbieding/plan.
InvalidQuantity De doorgegeven hoeveelheid is lager of gelijk aan 0.
BadArgument De invoer ontbreekt of is ongeldig.

Code: 400
Foutieve aanvraag. De batch bevat meer dan 25 gebruiksgebeurtenissen.

Code: 403
Verboden. Het autorisatietoken is niet opgegeven, is ongeldig of verlopen.

Gebruiksevenementen ophalen voor metered billing

U kunt de API voor gebruiksevenementen aanroepen om de lijst met gebruiksevenementen op te halen. ISV's kunnen deze API gebruiken om de gebruiksgebeurtenissen te zien die gedurende een bepaalde configureerbare tijdsduur zijn gepost en welke status deze gebeurtenissen zijn op het moment dat de API wordt aangeroepen.

GET: https://marketplaceapi.microsoft.com/api/usageEvents

Queryparameters:

Parameter Aanbeveling
ApiVersion Gebruik 2018-08-31.
gebruiksstartdatum DatumTijd in ISO8601-indeling. Bijvoorbeeld: 2020-12-03T15:00 of 2020-12-03
UsageEndDate (optioneel) Datum en Tijd in ISO8601-formaat. Standaard = huidige datum
aanbiedingsId (optioneel) Standaard: alles beschikbaar
planId (optioneel) Standaard = alle beschikbare
dimensie (optioneel) Standaard = alle beschikbare opties
azureSubscriptionId (optioneel) Standaardwaarde = alle beschikbare
reconStatus (optioneel) Standaard = alle beschikbare

Mogelijke waarden van reconStatus:

ReconStatus Beschrijving
Ingediend Nog niet verwerkt door PC Analytics
Geaccepteerd Overeenkomend met PC Analytics
Afgekeurd Geweigerd tijdens de verwerking. Neem contact op met Microsoft Ondersteuning om de oorzaak te onderzoeken.
Wanverhouding MarketplaceAPI- en Partner Center Analytics-hoeveelheden zijn beide niet-nul, maar niet overeenkomend
TestHeaders Abonnement dat wordt vermeld met testkopteksten en daarom niet in PC Analytics
DryRun Ingediend met SessionMode=DryRun, en dus niet op pc

Requestheaders:

Inhoudstype Toepassing/json gebruiken
x-ms-requestid Unieke tekenreekswaarde (bij voorkeur een GUID) voor het bijhouden van de aanvraag van de client. Als deze waarde niet is opgegeven, wordt er een gegenereerd en opgegeven in de antwoordheaders.
x-ms-correlationid Unieke tekenreekswaarde voor bewerking op de client. Deze parameter correleert alle gebeurtenissen van de clientbewerking met gebeurtenissen aan de serverzijde. Als deze waarde niet is opgegeven, wordt er een gegenereerd en opgegeven in de antwoordheaders.
machtiging Een uniek toegangstoken dat de ISV identificeert die deze API-aanroep maakt. Het formaat is Bearer <access_token> als de tokenwaarde door de uitgever wordt opgehaald.
- Kubernetes-applicatie in Verificatiestrategieën

Reacties

Voorbeelden van response payloads:

Geaccepteerd

[
  {
    "usageDate": "2020-11-30T00:00:00Z",
    "usageResourceId": "11111111-2222-3333-4444-555555555555",
    "dimension": "tokens",
    "planId": "silver",
    "planName": "Silver",
    "offerId": "mycooloffer",
    "offerName": "My Cool Offer",
    "offerType": "SaaS",
    "azureSubscriptionId": "12345678-9012-3456-7890-123456789012",
    "reconStatus": "Accepted",
    "submittedQuantity": 17.0,
    "processedQuantity": 17.0,
    "submittedCount": 17
  }
]

verzonden

[
  {
    "usageDate": "2020-11-30T00:00:00Z",
    "usageResourceId": "11111111-2222-3333-4444-555555555555",
    "dimension": "tokens",
    "planId": "silver",
    "planName": "",
    "offerId": "mycooloffer",
    "offerName": "",
    "offerType": "SaaS",
    "azureSubscriptionId": "12345678-9012-3456-7890-123456789012",
    "reconStatus": "Submitted",
    "submittedQuantity": 17.0,
    "processedQuantity": 0.0,
    "submittedCount": 17
  }
]

niet-overeenkomende

[
  {
    "usageDate": "2020-11-30T00:00:00Z",
    "usageResourceId": "11111111-2222-3333-4444-555555555555",
    "dimension": "tokens",
    "planId": "silver",
    "planName": "Silver",
    "offerId": "mycooloffer",
    "offerName": "My Cool Offer",
    "offerType": "SaaS",
    "azureSubscriptionId": "12345678-9012-3456-7890-123456789012",
    "reconStatus": "Mismatch",
    "submittedQuantity": 17.0,
    "processedQuantity": 16.0,
    "submittedCount": 17
  }
]

Afgekeurd

[
  {
    "usageDate": "2020-11-30T00:00:00Z",
    "usageResourceId": "11111111-2222-3333-4444-555555555555",
    "dimension": "tokens",
    "planId": "silver",
    "planName": "",
    "offerId": "mycooloffer",
    "offerName": "",
    "offerType": "SaaS",
    "azureSubscriptionId": "12345678-9012-3456-7890-123456789012",
    "reconStatus": "Rejected",
    "submittedQuantity": 17.0,
    "processedQuantity": 0.0,
    "submittedCount": 17
  }
]

Statuscodes

Code: 403 Verboden. Het autorisatietoken is niet opgegeven, is ongeldig of verlopen.

Best practices voor ontwikkeling en testen

Als u de emissie van de aangepaste meter wilt testen, implementeert u de integratie met de metering-API, maakt u een plan voor uw gepubliceerde Kubernetes Apps-aanbieding met aangepaste dimensies die erin zijn gedefinieerd met nulprijs per eenheid. En publiceer deze aanbieding als preview zodat alleen beperkte gebruikers de integratie kunnen openen en testen.

U kunt ook een privéabonnement gebruiken voor een bestaande live-aanbieding om de toegang tot dit plan tijdens het testen te beperken tot een beperkt publiek.

Ondersteuning krijgen

Als u een van de volgende problemen ondervindt, kunt u een ondersteuningsticket openen.

  • Technische problemen met de service-API voor marketplace-metering.
  • Een probleem dat geëscaleerd moet worden vanwege een fout van uw kant (bijvoorbeeld een verkeerd gebruiksevent).
  • Eventuele andere problemen met betrekking tot facturering naar gebruik.

Als u meer wilt weten over ondersteuningsopties voor uitgevers en een ondersteuningsticket wilt openen met Microsoft, volgt u de instructies in Ondersteuning voor het commerciële marketplace-programma in partnercentrum.