Die AWS Marketplace API-Referenz wurde neu strukturiert. Weitere Informationen zu den unterstützten API-Vorgängen finden Sie in der AWS Marketplace API-Referenz.
Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Arbeiten Sie als Käufer mit der Agreement API
Eine Vereinbarung ist ein Dokument, das zwei Parteien bindet, darunter den Anbieter und den Akzeptierenden (in der Regel der Käufer), und das die zwischen ihnen geltenden Bedingungen und Konditionen festlegt.
Der Käufer erstellt ein AgreementRequest, wodurch ein Angebot generiert wird. Dieses Angebot enthält alle relevanten Informationen, z. B. die geschätzten Kosten, die während der Laufzeit des Vertrags anfallen werden, was für die Kaufentscheidung des Käufers von entscheidender Bedeutung ist. Wenn der Käufer mit dem Angebot zufrieden ist, kann er es annehmen, AgreementRequest bevor es abläuft. Die Vereinbarung entsteht mit der Annahme der AgreementRequest. Während dieses Vorgangs kann der Käuferadministrator oder die Käuferperson die Bestellung den Gebühren zuordnen. Schließlich wird dem Käufer auf der Grundlage der Bedingungen der aktuellen Vereinbarung eine Rechnung ausgestellt und ihm wird eine Lizenz zur Nutzung des Produkts erteilt.
Voraussetzungen: Entdecken Sie Produkte und Angebote
Bevor Sie eine Vereinbarung erstellen, verwenden Sie die AWS Marketplace Discovery-API, um das Produkt zu ermitteln und die für die Erstellung einer Vereinbarung erforderlichen agreementProposalIdpricingModel, und Begriffsdetails abzurufenCreateAgreementRequest.
| Schritt | Discovery-API-Aktion | Ausgabe | Wird verwendet für |
|---|---|---|---|
| 1 | ListPurchaseOptions | offerId |
Suche nach verfügbaren Angeboten für ein Produkt |
| 2 | GetOffer | agreementProposalId, pricingModel |
Konstruieren agreementProposalIdentifier |
| 3 | GetOfferTerms | Begriffs-IDs und Preisangaben | Konstruieren requestedTerms |
Ausführliche Informationen zum Entdecken von Produkten und zur Preisgestaltung finden Sie unterEntdecken Sie Produkte und Preise.
Ein Akzeptor kann mit dieser API die folgenden Aufgaben ausführen:
| Aufgabe | Description | Aktion (en) | Absicht |
|---|---|---|---|
| Acceptor kann ein Angebot erstellen, das alle relevanten Informationen enthält, z. B. die Gebühren, die während der Laufzeit des Vertrags anfallen, was für die Kaufentscheidung des Käufers von entscheidender Bedeutung ist. | CreateAgreementRequest |
NEW | |
| Der Akzeptor kann die vom Antragsteller vorgeschlagenen Bedingungen akzeptieren, wodurch eine neue Vereinbarung entsteht. Diese Annahme kann die Übergabe von Parametern für bestimmte Bedingungen beinhalten, z. B. die Auswahl der Menge oder Dauer, das Hinzufügen einer Bestellung usw. Acceptor kann auch eine neue Vereinbarung erstellen, in der die Produktnutzung zu einem future Zeitpunkt beginnt. Das Datum der Vertragsunterzeichnung ist der Zeitpunkt, an dem das Angebot angenommen und der Vertrag erstellt wird. Das Startdatum der Vereinbarung ist ein future Datum, an dem die Produktnutzung beginnt. Dies ist das Datum, an dem license/entitlement es aktiviert wird. Den aktuellen Status Ihrer Nutzungsberechtigung finden Sie in der GetAgreementEntitlementsAPI. | CreateAgreementRequest,
AcceptAgreementRequest |
NEW | |
| Der Akzeptor kann ein mittelfristiges Upgrade seiner Vereinbarung durchführen, um entweder zu günstigeren Konditionen zu wechseln oder den Verkäufer für seine Verträge zu wechseln. Diese Aktion beendet die bestehende Vereinbarung, die als Eingabe übergeben wurde, und es entsteht eine neue Vereinbarung. Diese Aktion entspricht logischerweise einer STORNIERUNG, gefolgt von einer NEUEN Vereinbarung, stellt jedoch die Kontinuität der Rechte für den Akzeptor sicher und der Akzeptor bleibt zu keinem Zeitpunkt ohne Rechte. | CreateAgreementRequest,
AcceptAgreementRequest |
REPLACE | |
| Der Akzeptor darf nur die Konfiguration für die akzeptierten Bedingungen ändern. Sie können beispielsweise die automatische Verlängerung aktivieren oder deaktivieren oder die gekaufte Menge ändern, sofern die Preisänderung nach der Änderung nicht zu Rückerstattungen führt. Wir unterstützen die Änderung der Gebühren nur, wenn der Vertrag noch nicht abgeschlossen wurde. Hinweis: Der Antragsteller ist berechtigt, die Preise im Rahmen der nutzungsabhängigen Preisgestaltung zu ändern. Jede Erhöhung der Pay-as-you-go-Preise wird erst nach 90 Tagen wirksam, nachdem der Käufer über die Preiserhöhung informiert wurde. Jede Senkung der Pay-as-you-go-Preise wird sofort wirksam. | CreateAgreementRequest,
AcceptAgreementRequest |
ÄNDERN | |
| Der Akzeptor kann ON/Off die automatische Verlängerung seines Vertrags kennzeichnen, wenn der Verkäufer die Bedingungen für das Verlängerungsangebot aktiviert hat. Falls diese Option aktiviert ist, wird der Verlängerungsvertrag vom Vertragsservice am Tag des Ablaufs der ursprünglichen Vereinbarung erstellt, wobei die letzte Angebotsversion verwendet wird. Das Startdatum dieser erstellten Vereinbarung entspricht dem Enddatum der ursprünglichen Vereinbarung. | CreateAgreementRequest,
AcceptAgreementRequest |
ÄNDERN | |
| Der Akzeptor kann den Nutzungsvertrag kündigen. Für alles andere muss sich der Käufer an den Verkäufer wenden, um die Stornierung einzuleiten. Wenn Sie Ihren Vertrag kündigen, werden Ihre Lizenz und Ihr Anspruch deaktiviert. | CancelAgreement |
N/A | |
| Acceptor kann eine Suche in allen Vereinbarungen durchführen, an denen er als Akzeptor teilgenommen hat. AWS Marketplace Die Suche gibt eine Liste von Vereinbarungen mit grundlegenden Vertragsinformationen zurück. | SearchAgreements |
N/A | |
| Der Akzeptor kann Details zu einer Vereinbarung einsehen, z. B. den Antragsteller, den Antragsteller, das Start- und das Enddatum. | DescribeAgreement |
N/A | |
| Der Akzeptor kann Einzelheiten zu den Bedingungen einer Vereinbarung abrufen, an der er als Akzeptor teilgenommen hat. | GetAgreementTerms |
N/A | |
| Der Akzeptor kann sich auf Vereinbarungsebene einen Überblick über den Status und die Einzelheiten der mit seiner Vereinbarung verbundenen Rechte verschaffen — beispielsweise, ob der Vertrag gerade gewährt wird oder ob er abgelehnt wurde (und falls ja, aus welchen Gründen), welche Rechte seinen Kunden gewährt wurden. | GetAgreementEntitlements |
N/A | |
| Das Registrierungstoken ist ein kurzlebiges Token, das von Akzeptoren benötigt wird, um ein Konto bei den Antragstellern einzurichten. Dieses Token wird sowohl für extern gemessene als auch für berechtigte Dimensionstypen verwendet. Das Token ist nach der Erstellung nur 30 Minuten gültig und gilt derzeit nur für SaaS-Kaufverträge. | GetAgreementEntitlements |
N/A | |
| Der Akzeptor kann die mit ihm verbundenen Gebühren und Bestelldetails für seinen Vertrag einsehen. | ListAgreementCharges |
N/A | |
| Der Akzeptor kann nach dem Abonnieren eines Produkts eine Bestellnummer hinzufügen. Sobald eine Bestellung mit einer Gebühr verknüpft ist, enthält die für diese Gebühr generierte Rechnung die Bestellnummer. | UpdatePurchaseOrders |
N/A | |
| Acceptor kann alle Stornierungsanfragen für Verträge auflisten, an denen er beteiligt ist. Die Liste kann nach Vereinbarung, Status und anderen Kriterien gefiltert werden. | ListAgreementCancellationRequests |
N/A | |
| Der Akzeptor kann detaillierte Informationen zu einer bestimmten Stornierungsanfrage abrufen, die vom Verkäufer (Antragsteller) initiiert wurde, einschließlich Status, Zeitstempel und Ursachencodes. | GetAgreementCancellationRequest |
N/A | |
Der Akzeptor kann einen vom Verkäufer (Vorschlagenden) initiierten Stornierungsantrag für eine aktive Vereinbarung genehmigen. Nach der Genehmigung wird der Workflow zur Kündigung des Vertrags asynchron ausgeführt und der Vertragsstatus ändert sich in Storniert. Hinweis: Benutzer benötigen außerdem eine entsprechende CancelAgreement Genehmigung, da die Genehmigung der Stornierungsanfrage zur Kündigung der Vereinbarung führt. |
AcceptAgreementCancellationRequest,
CancelAgreement |
N/A | |
| Der Akzeptor kann eine vom Verkäufer (Antragsteller) initiierte Stornierungsanfrage ablehnen. Nach der Ablehnung bleibt die Vereinbarung aktiv und die Stornierungsanfrage geht in den Endzustand über. Der Verkäufer kann bei Bedarf eine neue Stornierungsanfrage erstellen. | RejectAgreementCancellationRequest |
N/A | |
| Der Akzeptor kann alle Zahlungsanfragen für Verträge auflisten, an denen er beteiligt ist. Die Liste kann nach Vereinbarung, Status und anderen Kriterien gefiltert werden. | ListAgreementPaymentRequests |
N/A | |
| Der Akzeptor kann detaillierte Informationen zu einer bestimmten Zahlungsanforderung abrufen, die vom Verkäufer (Antragsteller) initiiert wurde, einschließlich Status, Zeitstempel und damit verbundener Gebühren. | GetAgreementPaymentRequest |
N/A | |
| Der Akzeptor kann eine vom Verkäufer (Antragsteller) initiierte Zahlungsanforderung für eine aktive Vereinbarung genehmigen. | AcceptAgreementPaymentRequest |
N/A | |
| Der Akzeptor kann eine vom Verkäufer (Antragsteller) initiierte Zahlungsanforderung ablehnen. Nach der Ablehnung geht die Zahlungsanforderung in einen Endzustand über. Der Verkäufer kann bei Bedarf eine neue Zahlungsanforderung erstellen. | RejectAgreementPaymentRequest |
N/A |
Generieren Sie ein Angebot
Verwenden SieCreateAgreementRequest, um ein Angebot zu generieren. Sie müssen die folgenden Informationen angeben:
agreementProposalIdentifier— dasagreementProposalIdaus der GetOfferAntwort.requestedTerms— aus den Begriffen in der GetOfferTermsAntwort aufgebaut. Jeder Begriff erfordert seinenid, und einige erfordern zusätzlicheconfiguration. Siehe RequestedTerms erstellen.
response = client.create_agreement_request( agreementProposalIdentifier='at-edhtjnbilupjv3xqbphtom77y', intent='NEW', requestedTerms=[ {'id': 'term-legal-abc123'}, {'id': 'term-validity-def456'}, { 'id': 'term-configurable-pricing-789', 'configuration': { 'configurableUpfrontPricingTermConfiguration': { 'selectorValue': 'P12M', 'dimensions': [ {'dimensionKey': 'Users', 'dimensionValue': 50} ] } } }, { 'id': 'term-renewal-012', 'configuration': { 'renewalTermConfiguration': {'enableAutoRenew': True} } } ] ) print(f"Agreement Request ID: {response['agreementRequestId']}") for charge in response['chargeSummary']['expectedCharges']: print(f" Charge ID: {charge['id']}, Amount: ${charge['amount']}")
RequestedTerms erstellen
Um zu konstruierenrequestedTerms, müssen Sie zwei Dinge bestimmen:
Welche Bedingungen aufgenommen werden sollen, hängt vom Preismodell des Angebots ab. Siehe Erforderliche Bedingungen je nach Preismodell.
Welche Begriffe müssen konfiguriert werden — die meisten Begriffe benötigen nur die
id, aber drei Begriffstypen erfordern eine zusätzliche Konfiguration, die vom Käufer bereitgestellt wird. Siehe Begriffskonfigurationen.
Erforderliche Bedingungen je nach Preismodell
Das pricingModel.PricingModel Feld in der GetOfferAntwort bestimmt, welche Begriffe in Ihrem enthalten sein müssenCreateAgreementRequest.
Die folgenden Bedingungen müssen in jeder Vereinbarung enthalten sein, sofern sie im Angebot enthalten sind: LegalTermSupportTerm,ValidityTerm, undRenewalTerm.
Anmerkung
FreeTrialPricingTermkann nur einmal pro Produkt akzeptiert werden — CreateAgreementRequest es wird eine Fehlermeldung zurückgegeben, wenn der Käufer bereits eine kostenlose Testversion genutzt hat.
VERTRAG
Alle von zurückgegebenen Bedingungen müssen in einem einzigen Dokument zusammengefasst GetOfferTermswerdenCreateAgreementRequest.
VERWENDUNG
Die Erstellung der Vereinbarung hängt von den im Angebot enthaltenen Bedingungen ab:
Erste Vereinbarung — Akzeptieren Sie
UsageBasedPricingTermand/orRecurringPaymentTerm(je nachdem, was das Angebot beinhaltet) zusammen mit den verbindlichen Bedingungen. Dadurch werden Rechte zur Produktnutzung gewährt.Nachfolgende Vereinbarung (en) (optional) — Wenn das Angebot, oder beinhaltet
ConfigurableUpfrontPricingTermFixedUpfrontPricingTerm, können Sie optional eine separate Vereinbarung zum jährlichen Kauf abschließenPaymentScheduleTerm, um vergünstigte Preise zu erhalten.
Anmerkung
Wenn Sie beide Verträge erstellen und später kündigen möchten, kündigen Sie zuerst die nachfolgende Vereinbarung (mitConfigurableUpfrontPricingTerm) und dann die erste Vereinbarung (mit UsageBasedPricingTerm and/or RecurringPaymentTerm).
BYOL
Akzeptieren ByolPricingTerm Sie zusammen mit den verbindlichen Bedingungen.
Begriffskonfigurationen
Für die meisten Begriffe ist nur die Angabe id von erforderlich GetOfferTerms. Für die folgenden Begriffstypen ist zusätzlich ein vom Käufer configuration bereitgestelltes Dokument erforderlich: id
| Art des Begriffs | Konfiguration | Was der Käufer bietet |
|---|---|---|
ConfigurableUpfrontPricingTerm |
ConfigurableUpfrontPricingTermConfiguration | Vertragsdauer und Anzahl der Einheiten pro Dimension |
RenewalTerm |
RenewalTermConfiguration | Ob die Vereinbarung automatisch verlängert werden soll, wenn der Vertrag abläuft |
VariablePaymentTerm |
VariablePaymentTermConfiguration | Wie werden Zahlungsanfragen des Verkäufers genehmigt |
ConfigurableUpfrontPricingTermConfiguration
Verwenden Sie das folgende Beispiel, um die benötigten Werte für zu findenConfigurableUpfrontPricingTermConfiguration.
Beispiel für GetOfferTerms eine Antwort:
{ "offerTerms": [ { "configurableUpfrontPricingTerm": { "id": "term-34dfb665ebd38eb2d0269a4af454c4f33cd90292ecc7b0f71058175594f67394", "currencyCode": "USD", "rateCards": [ { "constraints": { "multipleDimensionSelection": "Allowed", "quantityConfiguration": "Allowed" }, "selector": { "type": "Duration", "value": "P1M" }, "rateCard": [ { "dimensionKey": "BasicService", "displayName": "Basic Service", "price": "0", "unit": "Units" }, { "dimensionKey": "PremiumService", "displayName": "Premium Service", "price": "0", "unit": "Units" } ] } ], "type": "ConfigurableUpfrontPricingTerm" } } ] }
| Feld | Wert/Quelle |
|---|---|
ConfigurableUpfrontPricingTermConfiguration.selectorValue |
offerTerms[].configurableUpfrontPricingTerm.rateCards[].selector.value |
Dimension.dimensionKey |
offerTerms[].configurableUpfrontPricingTerm.rateCards[].rateCard[].dimensionKey |
Dimension.dimensionValue |
Buyer-supplied Ganzzahl (Anzahl der Einheiten, die für diese Dimension gekauft werden müssen) |
Anmerkung
Das constraints Feld in der Preisliste bestimmt, wie Sie die erstellen können ConfigurableUpfrontPricingTermConfiguration — zum Beispiel, ob Sie mehrere Dimensionen oder nur eine auswählen können. Einzelheiten finden Sie unter dem Datentyp Einschränkungen.
RequestedTermBeispielnutzlast fürConfigurableUpfrontPricingTerm:
{ "id": "term-43ab7a2445f89dfcb7e1a6a81c92fe08c124125ffad126bea5e5b7915c065166", "configuration": { "configurableUpfrontPricingTermConfiguration": { "selectorValue": "P12M", "dimensions": [ { "dimensionKey": "AdminUsers", "dimensionValue": 5 }, { "dimensionKey": "ReadOnlyUsers", "dimensionValue": 10 } ] } } }
RenewalTermConfiguration
| Feld | Wert/Quelle |
|---|---|
enableAutoRenew |
Buyer-supplied boolean (trueoderfalse) — erforderlich |
Beispiel für eine RequestedTerm Payload für: RenewalTerm
{ "id": "term-ffcc0100ce0c5468426dc07d0b05cff09ab8447640108d9c95ce1591f0949738", "configuration": { "renewalTermConfiguration": { "enableAutoRenew": false } } }
VariablePaymentTermConfiguration
| Feld | Wert/Quelle |
|---|---|
RequestedTerm.configuration.variablePaymentTermConfiguration.paymentRequestApprovalStrategy |
Buyer-supplied: AUTO_APPROVE_ON_EXPIRATION oder WAIT_FOR_APPROVAL — erforderlich |
RequestedTerm.configuration.variablePaymentTermConfiguration.expirationDuration |
Buyer-supplied Dauer (zum BeispielP10D); nur erforderlich, wenn die Strategie AUTO_APPROVE_ON_EXPIRATION |
Beispiel für eine RequestedTerm Nutzlast fürVariablePaymentTerm:
{ "id": "term-9ab34376c51cd5b4dc995aa0f410b657d58bd577b3f09b34d38afb6964aaaf12", "configuration": { "variablePaymentTermConfiguration": { "paymentRequestApprovalStrategy": "AUTO_APPROVE_ON_EXPIRATION", "expirationDuration": "P10D" } } }
Nehmen Sie ein Angebot an
Generieren Sie zunächst ein Angebot, wie unter beschriebenGenerieren Sie ein Angebot. Verwenden Sie dann, AcceptAgreementRequest um das Angebot anzunehmen und die Vereinbarung zu erstellen. Sie müssen anrufen, AcceptAgreementRequest bevor die Vertragsanfrage abläuft. Sie können bei der Annahme optional eine Bestellnummer zuordnen.
# Use chargeId from CreateAgreementRequest response response = client.accept_agreement_request( agreementRequestId='agrq-abc123', purchaseOrders=[ { 'chargeId': 'charge-xyz', # From chargeSummary.expectedCharges[].id 'purchaseOrderReference': 'PO-2024-001' } ] ) print(f"Agreement ID: {response['agreementId']}")
Ersetzen Sie eine bestehende Vereinbarung
Konstruieren Sie eine CreateAgreementRequest wie unter beschriebenGenerieren Sie ein Angebot, legen Sie jedoch fest, dass sie ersetzt werden intent soll, REPLACE und legen Sie die Vereinbarung sourceAgreementIdentifier bei. Rufen Sie dann AcceptAgreementRequest an, um den Austausch abzuschließen.
response = client.create_agreement_request( agreementProposalIdentifier='at-edhtjnbilupjv3xqbphtom77y', intent='REPLACE', sourceAgreementIdentifier='agmt-existing123' ) print(f"Agreement Request ID: {response['agreementRequestId']}")
Ändern Sie eine bestehende Vereinbarung
Um die Laufzeitkonfiguration in einer bestehenden Vereinbarung zu ändern, setzen Sie intent auf AMEND und geben Sie ansourceAgreementIdentifier. Im Gegensatz zu einer neuen Vereinbarung agreementProposalIdentifier ist keine erforderlich. Geben Sie nur die Begriffe an, deren Konfiguration Sie ändern möchten. Rufen Sie dann AcceptAgreementRequest an, um die Änderung anzuwenden.
response = client.create_agreement_request( intent='AMEND', sourceAgreementIdentifier='agmt-existing123', requestedTerms=[ { 'id': 'term-configurable-pricing-789', 'configuration': { 'configurableUpfrontPricingTermConfiguration': { 'selectorValue': 'P12M', 'dimensions': [ {'dimensionKey': 'Users', 'dimensionValue': 100} ] } } } ] ) print(f"Agreement Request ID: {response['agreementRequestId']}")
Automatische Verlängerung aktivieren oder deaktivieren
Verwenden Sie es CreateAgreementRequest mit der AMEND Absicht, die automatische Verlängerung umzuschalten.
response = client.create_agreement_request( intent='AMEND', sourceAgreementIdentifier='agmt-existing123', requestedTerms=[ { 'id': 'term-renewal-456', 'configuration': { 'renewalTermConfiguration': {'enableAutoRenew': True} } } ] ) print(f"Agreement Request ID: {response['agreementRequestId']}")
Kündigen Sie eine Vereinbarung
Wird verwendetCancelAgreement, um eine Nutzungsvereinbarung zu kündigen. Bei anderen Vertragsarten muss sich der Käufer an den Verkäufer wenden, um die Kündigung einzuleiten.
client.cancel_agreement( agreementId='agmt-abc123' )
Suchen Sie nach Verträgen
Verwenden Sie diese OptionSearchAgreements, um in allen Vereinbarungen zu suchen, an denen Sie als Akzeptor teilnehmen. Die Suche gibt eine Liste von Vereinbarungen mit grundlegenden Vertragsinformationen zurück.
response = client.search_agreements( catalog='AWSMarketplace', filters=[ {'name': 'PartyType', 'values': ['Acceptor']}, {'name': 'AgreementType', 'values': ['PurchaseAgreement']}, {'name': 'Status', 'values': ['ACTIVE']} ] ) for agmt in response['agreementViewSummaries']: print(f" {agmt['agreementId']}: {agmt['status']}")
Beschreiben Sie eine Vereinbarung
Dient DescribeAgreement zum Anzeigen von Details zu einer Vereinbarung, z. B. dem Antragsteller, dem Annahmedatum, dem Startdatum und dem Enddatum.
response = client.describe_agreement( agreementId='agmt-abc123' ) print(f"Status: {response['status']}") print(f"Start: {response['startTime']}") print(f"End: {response['endTime']}")
Vereinbarungsbedingungen abrufen
Verwenden Sie diese OptionGetAgreementTerms, um Einzelheiten zu den Bedingungen einer Vereinbarung zu erhalten, an der Sie als Akzeptor teilnehmen.
response = client.get_agreement_terms( agreementId='agmt-abc123' ) for term in response['acceptedTerms']: print(f" Term: {term}")
Holen Sie sich die Rechte an der Vereinbarung
Verwenden Sie diese OptionGetAgreementEntitlements, um sich einen Überblick über den Status und die Einzelheiten der mit Ihrer Vereinbarung verbundenen Rechte auf Vertragsebene zu verschaffen.
response = client.get_agreement_entitlements( agreementId='agmt-abc123' ) for ent in response['agreementEntitlements']: print(f" {ent['resource']}: {ent['status']}")
Holen Sie sich ein Registrierungstoken
Verwenden SieGetAgreementEntitlements, um ein Registrierungstoken zu erhalten. Dieses kurzlebige Token (gültig für 30 Minuten) wird von den Akzeptoren benötigt, um ein Konto bei den Antragstellern einzurichten. Gilt derzeit nur für SaaS-Kaufverträge.
response = client.get_agreement_entitlements( agreementId='agmt-abc123' ) for ent in response['agreementEntitlements']: if 'registrationToken' in ent: print(f"Registration Token: {ent['registrationToken']}") # Token is valid for 30 minutes
Gebühren für die Vereinbarung auflisten
Verwenden Sie diese OptionListAgreementCharges, um Gebühren und Bestelldetails im Zusammenhang mit Ihrer Vereinbarung einzusehen.
response = client.list_agreement_charges( agreementId='agmt-abc123' ) for charge in response['items']: print(f" {charge['id']} (rev {charge['revision']}): ${charge['amount']}") print(f" PO: {charge.get('purchaseOrderReference', 'N/A')}")
Bestellungen aktualisieren
Verwenden Sie diese OptionUpdatePurchaseOrders, um eine Bestellnummer hinzuzufügen, nachdem Sie ein Produkt abonniert haben. Verwenden Sie das chargeId und chargeRevision aus der Gebühren für die Vereinbarung auflisten Antwort. Sobald eine Bestellung mit einer Gebühr verknüpft wurde, enthält die für diese Gebühr generierte Rechnung die Bestellnummer.
client.update_purchase_orders( agreementId='agmt-abc123', purchaseOrders=[ { 'chargeId': 'charge-xyz', 'chargeRevision': 1, 'purchaseOrderReference': 'PO-2024-001' } ] )
Stornierungsanfragen auflisten
Verwenden Sie diese ListAgreementCancellationRequests Option, um alle Stornierungsanfragen für Verträge aufzulisten, an denen Sie teilnehmen. Sie können nach Vereinbarung, Status und anderen Kriterien filtern.
response = client.list_agreement_cancellation_requests( partyType='Acceptor', agreementId='agmt-abc123' ) for req in response['agreementCancellationRequests']: print(f" {req['agreementCancellationRequestId']}: {req['status']}")
Einzelheiten zur Stornierungsanfrage abrufen
Dient GetAgreementCancellationRequest zum Abrufen detaillierter Informationen zu einer bestimmten Stornierungsanfrage, einschließlich Status, Zeitstempel und Ursachencodes.
response = client.get_agreement_cancellation_request( agreementId='agmt-abc123', agreementCancellationRequestId='acr-abc123' ) print(f"Status: {response['status']}") print(f"Reason: {response['reasonCode']}")
Akzeptieren Sie eine Stornierungsanfrage
Wird verwendetAcceptAgreementCancellationRequest, um eine vom Verkäufer initiierte Stornierungsanfrage zu genehmigen. Nach der Genehmigung wird der Workflow zur Kündigung des Vertrags asynchron ausgeführt. Sie benötigen außerdem eine CancelAgreement Genehmigung, da die Genehmigung der Stornierungsanfrage zur Kündigung der Vereinbarung führt.
client.accept_agreement_cancellation_request( agreementId='agmt-abc123', agreementCancellationRequestId='acr-abc123' )
Lehnen Sie eine Stornierungsanfrage ab
Wird verwendetRejectAgreementCancellationRequest, um eine vom Verkäufer initiierte Stornierungsanfrage abzulehnen. Nach der Ablehnung bleibt die Vereinbarung aktiv und der Verkäufer kann bei Bedarf eine neue Stornierungsanfrage stellen.
client.reject_agreement_cancellation_request( agreementId='agmt-abc123', agreementCancellationRequestId='acr-abc123' )
Zahlungsanfragen auflisten
Verwenden Sie diese ListAgreementPaymentRequests Option, um alle Zahlungsanfragen für Vereinbarungen aufzulisten, an denen Sie teilnehmen. Sie können nach Vereinbarung, Status und anderen Kriterien filtern.
response = client.list_agreement_payment_requests( partyType='Acceptor', agreementId='agmt-abc123' ) for req in response['agreementPaymentRequests']: print(f" {req['agreementPaymentRequestId']}: {req['status']}")
Details zur Zahlungsanfrage abrufen
Dient GetAgreementPaymentRequest zum Abrufen detaillierter Informationen zu einer bestimmten Zahlungsanforderung, einschließlich Status, Zeitstempel und damit verbundener Gebühren.
response = client.get_agreement_payment_request( paymentRequestId='apr-abc123', agreementId='agmt-abc123' ) print(f"Status: {response['status']}") print(f"Amount: ${response['amount']}")
Akzeptieren Sie eine Zahlungsanforderung
Wird verwendetAcceptAgreementPaymentRequest, um eine vom Verkäufer initiierte Zahlungsanforderung für eine aktive Vereinbarung zu genehmigen.
client.accept_agreement_payment_request( paymentRequestId='apr-abc123', agreementId='agmt-abc123' )
Lehnen Sie eine Zahlungsanforderung ab
Wird verwendetRejectAgreementPaymentRequest, um eine vom Verkäufer initiierte Zahlungsanforderung abzulehnen. Nach der Ablehnung kann der Verkäufer bei Bedarf eine neue Zahlungsanforderung erstellen.
client.reject_agreement_payment_request( paymentRequestId='apr-abc123', agreementId='agmt-abc123' )