Freigeben über


API v2 (GA) zur Abstimmung der abgerechneten und nicht abgerechneten täglich bewerteten Nutzung

gilt für: Partner Center (nicht verfügbar in Azure Government oder Azure China 21Vianet)

Die Architektur verstehen

Die neue asynchrone API bietet erhebliche Fortschritte bei der Behandlung des Abrechnungs- und Abstimmungsdatenzugriffs. Dieser Ansatz löst Herausforderungen im Zusammenhang mit herkömmlichen synchronen Methoden, z. B. der Aufrechterhaltung langlebiger Verbindungen und der Verarbeitung großer Datenbatches. Hier sind die wichtigsten Vorteile und Mechanismen dieser API:

Wichtigste Komponenten

Sicherer Zugriff mit Valetschlüssel-Muster

Das Valetschlüssel-Muster bietet sicheren, eingeschränkten Zugriff auf Ihre Abrechnungsdaten. Ähnlich wie ein Valet-Schlüssel es jemandem ermöglicht, Ihr Auto ohne Zugriff auf den Trunk zu fahren, stellt dieses Muster eine präzise Zugriffssteuerung sicher. Statt Anmeldeinformationen freizugeben, gewährt ein SAS-Token (Shared Access Signature) begrenzten, zeitlich gebundenen Zugriff auf bestimmte Ressourcen. Dieses Muster reduziert das Risiko eines nicht autorisierten Zugriffs, indem präzise Ablaufzeiten und Zugriffsberechtigungen konfiguriert werden.

Verbesserte Effizienz durch asynchrones Anforderungsantwortmuster

Denken Sie daran, dass sie in einem ausgelasteten Restaurant bestellt wird. Anstatt auf den Schalter zu warten, erhalten Sie einen Buzzer und können andere Dinge tun, während Ihre Bestellung vorbereitet ist. Wenn die Daten bereit sind, benachrichtigt Sie das System.

Die asynchrone Art der API bedeutet, dass Sie eine Anforderung stellen und das System sie im Hintergrund verarbeitet. Diese asynchrone Anforderungsantwort verwendet Ressourcen effizient, reduziert die Serverlast und minimiert sowohl Timeouts als auch Fehler, die oft bei synchronen Datenabrufen auftreten.

Flexibilität bei Datenzugriffsberechtigungen

SAS-Token bieten Flexibilität beim Verwalten von Datenzugriffsberechtigungen. Sie können Token generieren, die Zugriff auf alle Attribute der Rechnungsabrechnungsdaten gewähren oder den Zugriff auf bestimmte Teilmengen beschränken. Diese Granularität ermöglicht Es Organisationen, den Datenzugriff gemäß internen Richtlinien und behördlichen Anforderungen anzupassen, um Sicherheit und Compliance zu verbessern.

Vereinfachter Workflow und verbesserte Datenverarbeitungszeiten

Das asynchrone Anforderungsantwortmuster optimiert die Datenverarbeitung, indem der dynamische Zugriff anstelle von festen Batches von 2.000 Zeilenelementen ermöglicht wird. Dieser Ansatz führt zu schnelleren Ergebnissen und verbesserten Verarbeitungszeiten und vereinfacht die Integration von Abrechnungs- und Abstimmungsdaten in bestehende Systeme und Workflows.

Vorteile

  1. Leistungsvorteile

    Anstatt langlebige Verbindungen beizubehalten und feste Batches zu verarbeiten, ermöglicht Ihnen das neue System Folgendes:

    • Erstellen Sie eine schnelle anfängliche Anforderung.
    • Empfangen eines sicheren Zugriffstokens.
    • Verarbeiten Sie Daten in Ihrem eigenen Tempo.
    • Greifen Sie genau darauf zu, was Sie benötigen.
  2. Sicherheitsverbesserungen

    Das Valet-Schlüsselmuster, das über SAS-Token implementiert wird, bietet Folgendes:

    • Zeitlich begrenzter Zugriff.
    • Eingeschränkte Berechtigungen.
    • Abschaffung der Weitergabe oder Speicherung von dauerhaften Zugangsdaten.
    • Differenzierte Zugriffssteuerung
  3. Architekturvorteile

    Das asynchrone Anforderungsantwortmuster verhält sich wie ein persönlicher Assistent, der:

    • Nimmt Ihre Anforderung an
    • Führt die Aufgabe im Hintergrund aus
    • Benachrichtigt Sie, wenn alles bereit ist.

Einführen optimierter APIs für eine verbesserte Leistung

Durch die Einführung dieser optimierten APIs wird der Workflow optimiert und die Gesamtleistung in der Datenverwaltung verbessert. Mit der sicheren Zugriffssteuerung und effizienten Abrufmechanismen erzielen Sie bessere Ergebnisse mit weniger Aufwand, was zu einer verbesserten Betrieblichen Effizienz führt.

Abschließend ist die neue asynchrone API für den Zugriff auf Abrechnungs- und Abstimmungsdaten über Azure-Blobs ein leistungsfähiges Tool. Es bietet sicheren, effizienten Zugriff auf Finanzdaten, straffende Workflows, Reduzierung der Serverlasten und Verbesserung der Verarbeitungszeiten, alles mit hoher Sicherheit und Compliance.

Hinweis

Die neuen APIs werden nicht auf dem Partner Center-API-Host gehostet. Stattdessen finden Sie sie auf MS Graph unter Verwenden sie die Microsoft Graph-API, um Partnerabrechnungsdatenzu exportieren. Um auf diese APIs zuzugreifen, lesen Sie bitte die folgenden Details.

Sie können diese APIs nur für die öffentliche globale MS Graph-Cloud verwenden. Sie sind noch nicht für Azure Government oder Azure China verfügbar.

Zulassen, dass Ihre App auf Partnerabrechnungsdaten zugreifen kann

Um Ihrer App den Zugriff auf Partnerabrechnungsdaten zu ermöglichen, folgen Sie diesem Link und machen Sie sich mit den Authentifizierungs- und Autorisierungsgrundlagen für Microsoft Graphvertraut. Dieser Schritt ist entscheidend, da so sichergestellt wird, dass Ihre App sicher auf die erforderlichen Daten zugreifen kann.

Zuweisen der Berechtigung PartnerBilling.Read.All

Weisen Sie die Berechtigung "PartnerBilling.Read.All" entweder über das Azure-Portal oder das Microsoft Entra Admin Center zu. Diese Schritte stellen sicher, dass Ihre App über den erforderlichen Zugriff auf die Partnerabrechnungsdaten verfügt.

  1. Registrieren Sie Ihre App auf der Microsoft Entra-Homepage unter dem Abschnitt App-Registrierungen.
  2. Erteilen Sie die erforderlichen Berechtigungen, indem Sie zur Seite "Microsoft Entra App" wechseln. Wählen Sie im Abschnitt zu den API-Berechtigungen zunächst die Option Berechtigung hinzufügen und dann den Bereich PartnerBilling.Read.All aus.

Grundlegendes zu den Unterschieden zwischen beta- und GA-Versionen

Wenn Sie unsere Betaversion verwendet haben, werden Sie den Übergang zur allgemein verfügbaren Version (GA) wahrscheinlich als reibungslos und intuitiv empfinden. Damit Sie die Aktualisierungen und Verbesserungen besser verstehen, empfehlen wir Ihnen, die Beta- und GA-Versionen zu vergleichen. Wenn Sie diese Updates verstehen, können Sie die neuen Features und Verbesserungen maximieren, die in der GA-Version verfügbar sind.

Wichtig

Die Gebühren für diese Produkte sind im neuen Commerce-Tagesverbrauch nicht enthalten:

  • Azure-Reservierung
  • Azure-Sparplan
  • Office
  • Dynamics
  • Microsoft Power Apps
  • Unbefristete Software
  • Softwareabonnement
  • SaaS-Produkt ohne Microsoft oder Microsoft Marketplace

Verstehen und Verwenden der API-Endpunkte

Zum asynchronen Abruf der täglich abgerechneten Nutzungspositionen im Bereich New Commerce bieten wir zwei wichtige API-Endpunkte an. Folgen Sie diesem optimierten Leitfaden, um schnell loszulegen.

Verwenden Sie den Zeilenelement-Endpunkt

Verwenden Sie zunächst diese API, um neue Positionen für die tägliche Nutzung von New Commerce abzurufen. Wenn Sie eine Anforderung stellen, erhalten Sie einen 202 HTTP-Status und einen Location-Header mit einer URL. Rufen Sie diese URL regelmäßig ab, bis Sie einen Erfolgsstatus und eine Manifest-URL erhalten.

Verwenden Sie den Betriebsstatus-Endpunkt

Wenn Sie diese Schritte befolgen, können Sie Ihren Rechnungsabgleichsprozess effizient verwalten.

Überprüfen Sie den Vorgangsstatus, indem Sie diese API in regelmäßigen Abständen aufrufen. Wenn die Daten nicht bereit sind, enthält die Antwort einen Retry-After-Header, der angibt, wie lange Sie warten müssen, bevor Sie es erneut versuchen können. Nach Abschluss des Vorgangs erhalten Sie eine Manifestressource mit einem Speicherordnerlink zum Herunterladen der Nutzungsdaten. Die Antwort segmentiert die Dateien, um den Durchsatz zu erhöhen und eine E/A-Parallelität zu ermöglichen.

Überprüfung des Sequenzdiagramms der Abstimmungsdaten

Hier sehen Sie ein Sequenzdiagramm, das die Schritte zum Herunterladen der Abstimmungsdaten zeigt.

Ein Diagramm, das die Schritte zum Herunterladen der Abstimmungsdaten zeigt.

Befolgen Sie die Benutzeraktionssequenz

Dies sind die Schritte für den Benutzer, um neue Commerce-Bestellpositionen zur Abstimmung der täglich bewerteten Nutzung abzurufen:

Einreichen einer Anforderung

Senden Sie eine POST-Anforderung an den API-Endpunkt.

Abrufen der nicht fakturierten täglichen Nennverbrauchspositionen

Rufen Sie die noch nicht abgerechneten New Commerce-Tagesverbrauchspositionen für den aktuellen oder letzten Kalendermonat oder Abrechnungszeitraum ab.

Hinweis

Sie können über die API oder das Partner Center-Portal auf Ihre noch nicht abgerechneten Positionen für die tägliche Nutzung zugreifen. Um die Datengenauigkeit sicherzustellen, sollten Sie bis zu 24 Stunden warten, bis die Daten verfügbar sind. Je nachdem, wo Sie sich befinden und wann die Zähler den Verbrauch melden, kann es zu weiteren Verzögerungen kommen.

Die pünktliche Bereitstellung der abgerechneten täglichen Nutzungsdaten hat für uns oberste Priorität. Gelegentlich kann es vorkommen, dass die neuesten nicht abgerechneten täglichen Nutzungsdaten erst erscheinen, wenn die abgerechneten Daten des Vormonats verfügbar sind. Nachdem Sie die in Rechnung gestellten Daten erhalten haben, können Sie ab Beginn des Monats auf alle aktualisierten nicht abgerechneten Nutzungsdaten zugreifen.

Wichtige Punkte:

  • Rechnen Sie mit bis zu 24 Stunden für die Datenverfügbarkeit.
  • Je nach Standort und Berichterstellungszeiten der Verbrauchseinheit kann es weitere Verzögerungen geben.
  • Abgerechnete tägliche Nutzungsdaten werden gegenüber nicht abgerechneten Daten bevorzugt.

Wir danken Ihnen für Ihr Verständnis und Ihre Geduld, denn wir bemühen uns, Ihnen möglichst genaue und zeitnahe Informationen bereitzustellen.

API-Anforderung
POST https://graph.microsoft.com/v1.0/reports/partners/billing/usage/unbilled/export

Accept: application/json

Content-Type: application/json

{

"currencyCode": "USD",

"billingPeriod": "current",

"attributeSet": "basic"

}
Anforderungstext
Attribut Erforderlich Typ Beschreibung
attributeSet False Zeichenfolge Wählen Sie „full“ für alle Attribute oder „basic“ für einen begrenzten Satz aus. Wenn nichts angegeben, ist der Standardwert „vollständig“. Überprüfen Sie die Liste der Attribute in diesem Abschnitt. Optional
billingPeriod True Zeichenfolge Um Daten zur nicht abgerechneten täglich bewerteten Nutzung zu erhalten, verwenden Sie „Aktuell“ für den aktuellen Abrechnungszeitraum oder „Letzte“ für den vorherigen Abrechnungszeitraum (identisch mit „Vorherige“ bei der v1 API). Erforderlich
currencyCode True Zeichenfolge Währungscode für die Partnerabrechnung Erforderlich
Anforderungsheader

Informationen zum Anfordern von Headern für die API finden Sie unter Zuverlässigkeit und Support.

API-Antwort
HTTP/1.1 202 Accepted  
Location: https://graph.microsoft.com/v1.0/reports/partners/billing/operations/9ab9cb54-d07f-4f52-9ea6-a09d7de52c14

Die API antwortet normalerweise mit einem HTTP 202 Status. Abhängig von Ihren Anforderungen können Sie auch andere Status erhalten. Diese Status sind im Abschnitt Standard-API-Antwortstatus aufgeführt.

Code Beschreibung
202 - Akzeptiert Ihre Anforderung wurde akzeptiert. Um den Status Ihrer Anforderung zu überprüfen, fragen Sie die URL ab, die im Location Header angegeben ist.

Täglich abgerechnete Verbrauchspositionen abrufen

Rufen Sie täglich neu abgerechnete New Commerce-Verbrauchspositionen für eine Rechnung für den abgeschlossenen Abrechnungszeitraum ab.

API-Anforderung
POST https://graph.microsoft.com/v1.0/reports/partners/billing/usage/billed/export

{  
"invoiceId": "G00012345",  
"attributeSet": "full"  
}

Abfrageparameter

n/v

Anforderungstext
Attribut Erforderlich Typ Beschreibung
invoiceId True Zeichenfolge Ein eindeutige Bezeichner für jede Rechnung. Erforderlich
attributeSet False Zeichenfolge Wählen Sie „full“ für alle Attribute oder „basic“ für einen begrenzten Satz aus. Wenn nichts angegeben, ist der Standardwert „vollständig“. Überprüfen Sie die Liste der Attribute in diesem Abschnitt. Optional
Anforderungsheader

Anforderungsheader für die API. Weitere Informationen finden Sie unter Zuverlässigkeit und Support.

API-Antwort

HTTP/1.1 202 akzeptiert
Standort: https://graph.microsoft.com/v1.0/reports/partners/billing/operations/9ab9cb54-d07f-4f52-9ea6-a09d7de52c14

Wenn Sie die API verwenden, wird normalerweise der Status HTTP 202 zurückgegeben. Weitere mögliche Statusmeldungen, die auf Ihren Anforderungen basieren, finden Sie unter Status.

Code Beschreibung
202 - Akzeptiert Ihre Anforderung wurde akzeptiert. Um den Status Ihrer Anforderung zu überprüfen, fragen Sie die URL ab, die im Location Header angegeben ist.

Überprüfen des Anforderungsstatus

Um den Status einer Anforderung nachzuverfolgen, stellen Sie sicher, dass Sie eine HTTP 200-Antwort erhalten. Dabei handelt es sich um einen Standardstatuscode, der den Status „erfolgreich“ oder „fehlgeschlagen“ angibt. Bei erfolgreichem Status finden Sie die Manifest-URL im Attribut „resourceLocation“. Dieses Attribut bietet einen Endpunkt für den Zugriff auf die erforderlichen Informationen.

Vorgangsstatus abrufen

Ruft den Status einer Anforderung ab.

API-Anforderung

ERHALTEN https://graph.microsoft.com/v1.0/reports/partners/billing/operations/9ab9cb54-d07f-4f52-9ea6-a09d7de52c14

Anforderungsparameter
Name Einschließen in Erforderlich Typ Beschreibung
operationId Anforderungs-URI True Zeichenfolge Ein eindeutiger Bezeichner, um den Anforderungsstatus zu überprüfen. Erforderlich
Anforderungsheader

Informationen zum Anfordern von Headern für die API finden Sie unter Zuverlässigkeit und Support.

Anforderungstext

n/v

Antwortstatus

Neben den Standard-HTTP-Status, die unter Standard-API-Antwortstatus aufgeführt sind, kann die API auch den folgenden HTTP-Status zurückgeben:

Code Beschreibung
410 - Nicht mehr vorhanden Der Manifestlink läuft nach einer festgelegten Zeit ab. Um den Manifestlink erneut abzurufen, senden Sie eine neue Anforderung.
Nutzlast der Antwort

Die API-Antwortnutzlast enthält die folgenden Attribute:

Attribut Erforderlich Beschreibung
id True Der Code ist ein eindeutiger Bezeichner für jede Antwort. Erforderlich
status True Werte und Aktionen: Erforderlich:

notstarted: Warten Sie die im Retry-After-Header angegebene Zeit ab, und führen Sie dann einen weiteren Aufruf aus, um den Status zu überprüfen.

running: Warten Sie die im Retry-After-Header angegebene Zeit ab, und führen Sie dann einen weiteren Aufruf aus, um den Status zu überprüfen.

erfolgreich: Die Daten sind bereit. Rufen Sie die Manifestnutzlast mithilfe des in resourceLocation angegebenen URI ab.

failed: Der Vorgang ist permanent fehlgeschlagen. Starten Sie ihn neu.
createdDateTime True Zeitpunkt, zu dem die Anforderung gesendet wurde Erforderlich
lastActionDateTime True Das letzte Mal, dass sich der Status geändert hat Erforderlich
resourceLocation False Der URI für die Manifestnutzlast Optional
error False Details zu Fehlern, im JSON-Format bereitgestellt
Optional
Enthaltene Attribute:
message: Eine Beschreibung des Fehlers
code: Der Typ des Fehlers
Ressourcenspeicherort-Objekt
Attribut Beschreibung
id Ein eindeutiger Bezeichner für das Manifest
schemaVersion Version des Manifestschemas
dataFormat Format der Abrechnungsdatendatei

compressedJSON: Datenformat, bei dem jeder Blob eine komprimierte Datei ist, die Daten im JSON-Zeilenformat enthält. Um die Daten aus jedem Blob abzurufen, dekomprimieren Sie sie.
createdDateTime Datum und Uhrzeit der Erstellung der Manifestdatei
eTag Version der Manifestdaten Eine Änderung der Abrechnungsinformationen generiert einen neuen Wert.
partnerTenantId Microsoft Entra ID des Mandanten des Partners
rootDirectory Stammverzeichnis der Datei
sasToken SAS-Token (Shared Access Signature), mit dem Sie alle Dateien unter dem Verzeichnis lesen können
partitionType Teilt die Daten auf der Grundlage des Attributs „partitionValue“ in mehrere Blobs auf. Das System teilt Partitionen auf, die die unterstützte Zahl überschreiten. Standardmäßig werden Daten basierend auf der Anzahl der Zeilenelemente in der Datei partitioniert. Vermeiden Sie es, Zeilenanzahlen oder Dateigrößen fest einzuprogrammieren, da sie sich ändern können.
blobCount Gesamtanzahl der Dateien für diese Partnermandanten-ID
blobs Ein JSON-Array aus „blob“-Objekten, die die Dateidetails für die Partnermandanten-ID enthalten
BLOB-Objekt Ein Objekt mit den folgenden Details: name und partitionValue
name Der Name des Blobs
partitionValue Partition, die die Datei enthält Die große Partition wird basierend auf bestimmten Kriterien in mehrere Dateien aufgeteilt, z. B. Dateigröße oder Anzahl von Datensätzen, wobei jede Datei denselben "partitionValue"enthält.
API-Anforderung
GET <https://graph.microsoft.com/v1.0/reports/partners/billing/operations/9ab9cb54-d07f-4f52-9ea6-a09d7de52c14>
API-Antwort

Die Antwort empfiehlt, 10 Sekunden zu warten, bevor Sie es erneut versuchen, wenn Sie Daten verarbeiten.

HTTP/1.1 200 OK  
Retry-After: 10  
{  
"id": "9ab9cb54-d07f-4f52-9ea6-a09d7de52c14",  
"createdDateTime": "2022-06-1T10-01-03.4Z",  
"lastActionDateTime": "2022-06-1T10-01-05Z",  
"status": "running"  
}
API-Anforderung

(10 Sekunden nach der letzten Anforderung …)

GET <https://graph.microsoft.com/v1.0/reports/partners/billing/operations/9ab9cb54-d07f-4f52-9ea6-a09d7de52c14>
API-Antwort

Die API gibt den Status „erfolgreich“ und den URI für „resourceLocation“ zurück.

HTTP/1.1 200 OK  
Content-Type: application/json  
{

    "@odata.context": "https://graph.microsoft.com/v1.0/\$metadata#reports/partners/billing/operations/\$entity",

    "@odata.type": "#microsoft.graph.partners.billing.exportSuccessOperation",

    "id": "f2170b13-6a8e-47d6-b481-6988490dc0cb",

    "createdDateTime": "2023-12-05T21:17:29Z",

    "lastActionDateTime": "2023-12-05T21:18:00.8897902Z",

    "status": "succeeded",

    "resourceLocation": {

        "id": "44e8500b-ab92-490e-8ac3-90500a1d3427",

        "createdDateTime": "2023-11-06T19:58:47.513Z",

        "schemaVersion": "2",

        "dataFormat": "compressedJSON",

        "partitionType": "default",

        "eTag": "RwDrn7fbiTXy6UULE",

        "partnerTenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",

        "rootDirectory": "https://adlsreconbuprodeastus201.blob.core.windows.net/path_id",

        "sasToken": "{token}",

        "blobCount": 1,

        "blobs": \[

            {

                "name": "part-00123-5a93fa5d-749f-48bc-a372-9b021d93c3fa.c000.json.gz",

                "partitionValue": "default"

            }

        \]

    }

}

Herunterladen von Abstimmungszeilenelementen aus Azure Blob Storage

Zuerst müssen Sie das SAS-Token (Shared Access Signature) und den Blobspeicherort abrufen (kombinieren Sie das Stammverzeichnis und den Blobnamen). Sie finden diese Details in der sasTokenrootDirectoryManifestnutzlast-API-Antwort und blobs den Eigenschaften der Manifestnutzlast-API.

Führen Sie die folgenden Schritte aus, um fortzufahren:

  1. Laden Sie die BLOB-Datei mit dem Azure Storage SDK/Tool herunter.
  2. Entzippen Sie die Datei, die sich im JSONLines- Format befindet.

Tipp

Sehen Sie sich den Beispielcode an. Er zeigt Ihnen, wie Sie die Azure-Blob-Datei in Ihre lokale Datenbank herunterladen und entpacken.

Grundlegendes zu den Standardmäßigen API-Antwortstatus

Möglicherweise erhalten Sie diese HTTP-Status aus der API-Antwort:

Code Beschreibung
400 – Ungültige Anforderung Die Anforderung fehlt oder enthält falsche Daten. Überprüfen Sie den Antworttext auf Fehlerdetails.
401 – Nicht autorisiert Vor dem ersten Aufruf ist eine Authentifizierung erforderlich. Authentifizieren Sie sich mit dem Partner-API-Dienst.
403 – Verboten Sie verfügen nicht über die erforderliche Autorisierung, um die Anforderung zu stellen.
404 - Nicht gefunden Die angeforderten Ressourcen sind mit den bereitgestellten Eingabeparametern nicht verfügbar.
410 - Nicht mehr vorhanden Der Manifestlink ist nicht gültig oder nicht mehr aktiv. Senden Sie eine neue Anforderung.
500 – Interner Serverfehler Die API oder ihre Abhängigkeiten können die Anforderung im Moment nicht erfüllen. Versuchen Sie es später erneut.
5000 - Keine Daten verfügbar Das System hat keine Daten für die angegebenen Eingabeparameter.

Vergleichen von Beta- und GA-Versionen

Schauen Sie sich die folgende Vergleichstabelle an, um die Unterschiede zwischen der Betaversion und den allgemein verfügbaren (GA)-Versionen zu sehen. Wenn Sie derzeit die Betaversion verwenden, dürfte der Übergang zur GA-Version einfach und unkompliziert sein.

Wichtige Informationen Beta Allgemein verfügbar
API-Host-Endpunkt https://ep-billingreconservice-prod-d5bfczcnfvbqbdhx.z01.azurefd.net/ https://graph.microsoft.com/v1.0/reports/partners/billing/usage/
HTTP-Methode POST POST
Nicht abgerechneter Verbrauchs-API-Endpunkt mit täglicher Abrechnung https://ep-billingreconservice-prod-d5bfczcnfvbqbdhx.z01.azurefd.net/v1/unbilledusage https://graph.microsoft.com/v1.0/reports/partners/billing/usage/unbilled/export
Eingabeparameter für die nicht abgerechnete Verbrauchs-API mit täglicher Abrechnung Um in der API-Anforderung Parameter anzugeben, fügen Sie diese in die Zeichenfolge der Anfrage-URL ein.
Um beispielsweise die Parameter „period“ und „currencyCode“ anzugeben, fügen Sie ?period=current&currencyCode=usd an die URL der Anforderung an.
Um Eingaben zu machen, fügen Sie ein JSON-Objekt in den Text der Anforderung ein. Ihr JSON sollte die folgenden Eigenschaften haben:
* currencyCode: Ihre Abrechnungswährung Zum Beispiel: USD
* billingPeriod: Der Abrechnungszeitraum für die Rechnung Zum Beispiel: aktuell
Hier ist ein Beispiel für ein JSON-Objekt, das die Eigenschaften currencyCode und billingPeriod enthält:<br>{<br> "currencyCode": "USD",<br> "billingPeriod": "current"<br>}
Abgerechneter Verbrauchs-API-Endpunkt mit täglicher Abrechnung https://ep-billingreconservice-prod-d5bfczcnfvbqbdhx.z01.azurefd.net/v1/billedusage/invoices/{InvoiceId} https://graph.microsoft.com/v1.0/reports/partners/billing/usage/billed/export
Eingabeparameter für die abgerechnete Verbrauchs-API mit täglicher Abrechnung Um Parameter in der API-Anforderung anzugeben, fügen Sie die invoiceId in die URL der Anforderung ein. Zusätzlich können Sie einen optionalen Fragment-Parameter in die Zeichenfolge der Abfrage aufnehmen, um den vollständigen Satz von Attributen abzurufen.
Wenn Sie beispielsweise alle Attribute abrufen möchten, fügen Sie ?fragment=full an die URL der Anforderung an.
Um Eingaben zu machen, fügen Sie ein JSON-Objekt in den Text der Anforderung ein. Ihr JSON sollte die folgenden Eigenschaften haben:
* invoiceId: Der eindeutige Bezeichner der Rechnung Zum Beispiel: G00012345
* attributeSet: Die Attribute, die in der Antwort enthalten sein sollen, wie „vollständig“
Hier ist ein Beispiel für ein JSON-Objekt, das die Eigenschaften invoiceId und attributeSet enthält:
{<br> "invoiceId": "G00012345",<br> "attributeSet": "full"<br>}
Manifest-Ressource Verwenden Sie eine separate Methode GET /manifests/{id}, um die Manifest-Ressource abzurufen. Verwenden Sie die Methode GET /operations/{Id}, um auf die Manifest-Ressource in resourceLocation zuzugreifen. Diese Methode spart Zeit, da ein separater Aufruf von GET /manifests/{id} nicht mehr erforderlich ist.
Änderungen am Manifestschema
„id“: Nicht verfügbar „id“: Ein eindeutiger Bezeichner für die Manifest-Ressource
„version“: Verfügbar „version“: In „schemaversion“ geändert
„dataFormat“: Verfügbar „dataFormat“: Verfügbar
„utcCretedDateTime“: Verfügbar „utcCretedDateTime“: In „createdDateTime“ geändert
„eTag“: Verfügbar „eTag“: Verfügbar
„partnerTenantId“: Verfügbar „partnerTenantId“: Verfügbar
„rootFolder“: Verfügbar „rootFolder“: In „rootDirectory“ geändert
„rootFolderSAS“: Verfügbar „rootFolderSAS“: In „sasToken“ geändert Dieses Update stellt nur das Token ohne den Pfad zum Stammverzeichnis bereit. Um das Verzeichnis zu suchen, verwenden Sie stattdessen die Eigenschaft „rootDirectory“.
„partitionType“: Verfügbar „partitionType“: Verfügbar
„blobCount“: Verfügbar „blobCount“: Verfügbar
„sizeInBytes“: Verfügbar „sizeInBytes“: Nicht verfügbar
„Blobs“: Verfügbar „blobs“: Verfügbar
„blob-object“: Verfügbar „blob-object“: Verfügbar
„name“: Verfügbar „name“: Verfügbar
„partitionValue“: Verfügbar „partitionValue“: Verfügbar

Vergleichen Sie die Attribute für den Abgleich zwischen der basic und full täglich abgerechneten Nutzung

Informationen zum Vergleichen der Attribute, die von der abgerechneten oder nicht abgerechneten Nutzungsabstimmungs-API für die Attributsätze „full“ oder „basic“ zurückgegeben werden, finden Sie in dieser Tabelle. Weitere Informationen zu diesen Attributen und ihren Bedeutungen finden Sie in der Datei Felder in der Abstimmung zur täglich abgerechneten Nutzung.

Attribut Full Basic
PartnerId Ja Ja
PartnerName Ja Ja
CustomerId Ja Ja
CustomerName Ja Ja
CustomerDomainName Ja Nein
CustomerCountry Ja Nein
MpnId Ja Nein
Tier2MpnId Ja Nein
InvoiceNumber Ja Ja
ProductId Ja Ja
SkuId Ja Ja
AvailabilityId Ja Nein
SkuName Ja Ja
ProductName Ja Nein
PublisherName Ja Ja
PublisherId Ja Nein
SubscriptionDescription Ja Nein
SubscriptionId Ja Ja
ChargeStartDate Ja Ja
ChargeEndDate Ja Ja
UsageDate Ja Ja
MeterType Ja Nein
MeterCategory Ja Nein
MeterId Ja Nein
MeterSubCategory Ja Nein
MeterName Ja Nein
MeterRegion Ja Nein
Unit Ja Ja
ResourceLocation Ja Nein
ConsumedService Ja Nein
ResourceGroup Ja Nein
ResourceURI Ja Ja
ChargeType Ja Ja
UnitPrice Ja Ja
Quantity Ja Ja
UnitType Ja Nein
BillingPreTaxTotal Ja Ja
BillingCurrency Ja Ja
PricingPreTaxTotal Ja Ja
PricingCurrency Ja Ja
ServiceInfo1 Ja Nein
ServiceInfo2 Ja Nein
Tags Ja Nein
AdditionalInfo Ja Nein
EffectiveUnitPrice Ja Ja
PCToBCExchangeRate Ja Ja
PCToBCExchangeRateDate Ja Nein
EntitlementId Ja Ja
EntitlementDescription Ja Nein
PartnerEarnedCreditPercentage Ja Nein
CreditPercentage Ja Ja
CreditType Ja Ja
BenefitOrderID Ja Ja
BenefitID Ja Nein
BenefitType Ja Ja

Wichtig

Notieren Sie sich diese Änderungen, wenn Sie von API v1 zu v2 wechseln.

  • Jeder Attributname beginnt mit einem Großbuchstaben, um die Konsistenz mit der Datei aufrechtzuerhalten und die Lesbarkeit zu verbessern.
  • unitOfMeasure wird auf Unit aktualisiert. Die Bedeutung und der Wert bleiben unverändert, wodurch der Attributname vereinfacht wird.
  • resellerMpnId ist jetzt Tier2MpnId. Die Bedeutung und der Wert sind identisch.
  • rateOfPartnerEarnedCredit wird auf PartnerEarnedCreditPercentage aktualisiert. Der neue Name und Wert spiegeln den Prozentsatz anstelle des Bruchteils wider, wodurch die Werte leichter zu verstehen sind. Beispielsweise ist 0,15 jetzt 15 %.
  • rateOfCredit ist jetzt CreditPercentage. Sowohl der Name als auch der Wert wurden geändert, um ein klareres Verständnis zu bieten. Beispielsweise ist 1,00 jetzt 100 %.

Wir glauben, dass diese Änderungen die APIs intuitiver und einfacher zu bedienen machen.

Beispielcode

Wenn Sie Unterstützung bei der Migration zu dieser API benötigen, lesen Sie den Link, der C#-Beispielcode enthält.

Partner Center-API-Beispiele: Abrufen von Abrechnungsdaten.