Udostępnij za pośrednictwem


Tworzenie żądania eksportu zarobków

Ten interfejs API służy do kolejkowania nowych żądań eksportu danych o zarobkach i transakcjach/płatnościach z opcjonalnymi filtrami, aby elastycznie analizować dane zarobków i transakcji. Zwraca on stan HTTP 202 i identyfikator żądania, który może służyć do sondowania w celu sprawdzenia stanu żądania eksportu transakcji w kolejce.

Prześlij żądanie POST do punktu końcowego API, aby zakolejkować nowe żądanie eksportu transakcji/zarobków.

Żądanie REST

Metoda Żądanie URI
POST https://api.partner.microsoft.com/v1.0/payouts/transactionhistory?$filter={$filter}&fileformat=csv

Parametry żądania

Nazwa W Wymagane Typ Opis
$filter Zapytanie Nie Struna Mimo że jest to opcjonalny filtr, zdecydowanie zalecamy używanie filtrów w celu zwiększenia wydajności i ograniczenia danych eksportu zamiast eksportowania danych z ostatnich trzech lat. Zobacz poniższą tabelę, aby zapoznać się z pełnym zestawem opcji $filter.
format pliku Zapytanie Nie Struna Obsługiwane wartości to .csv/.tsv. Wartość domyślna to .csv, jeśli nie podano żadnej wartości.

Parametr zapytania $filter jest opcjonalnym parametrem służącym do tworzenia operacji eksportowania. Zdecydowanie zalecamy jednak użycie $filters w celu uzyskania lepszej wydajności i szybszej dostępności raportu eksportu. Poniżej przedstawiono niektóre filtry atrybutów klucza, które mogą być używane w ramach operacji eksportowania:

Nazwa Opis Typ Próbka
enrollmentParticipantId Zarejestrowany identyfikator MPN organizacji. Int {baseUrl}/v1.0/payouts/transactionhistory?$filter= enrollmentParticipantId=12345
EarningForDate Data okresu zarobkowego dla operacji eksportowej. Data i czas {baseUrl}/v1.0/payouts/transactionhistory?$filter=earningForDate ge 2023-03-01 and earningForDate le 2023-04-12
transactionAmount Kwota transakcji. Podwójny {baseUrl}/v1.0/payouts/transactionhistory?$filter=?$filter=transactionAmount ge 2000 and transactionAmount le 5000
earningAmount Kwota zarobków w walucie transakcji. Podwójny {baseUrl}/v1.0/payouts/transactionhistory?$filter=?$filter=earningAmount ge 2000 and earningAmount le 5000
engagementName Dotyczy tylko zachęt handlowych firmy Microsoft. Przykładowe wartości — 'Azure CSP motion incentives - Indirect Provider'. Struna {baseUrl}/v1.0/payouts/transactionhistory?$filter=?$filter=engagementName=’Azure CSP motion incentives’
payableSubType Filtruj według typu zarobków. Przykładowe wartości — 'REBATE', 'COOP', 'FEE', 'SELL' Struna {baseUrl}/v1.0/payouts/transactionhistory?$filter=?$filter=payableSubType=’REBATE’ or payableSubType=’FEE’
payoutStatus Filtruj transakcje według stanu wypłat. Przykładowe wartości — 'SENT', 'UPCOMING', 'IN PROGRESS'. Struna {baseUrl}/v1.0/payouts/transactionhistory?$filter=?$filter=payoutStatus=’IN PROGRESS’

Przykładowy filtr historii transakcji z wieloma parametrami żądania:

”?$filter=earningForDate ge 2019-01-27T23:16:31.009Z and earningForDate le 2019-09-25T23:16:31.009Z and (enrollmentParticipantId eq 'XXXXXXX') and (programName eq ‘Microsoft Commerce Incentives’) and (payableSubType eq 'REBATE') and (paymentId eq '000000000000') and (engagementName eq 'Azure Enterprise and Self-Service Incentive' or engagementName eq 'Azure CSP motion incentives - Indirect Provider') and (leverCode eq ‘Azure Enterprise and Self-Service Motion’) and (payoutStatus eq 'SENT')”

Nagłówek żądania

Nazwa Wymagane Typ Opis
Autoryzacja Tak Struna Token uwierzytelniający typu bearer.
ms-correlationid Nie Struna Wewnętrzny monitor żądań. Każde żądanie generuje nowy tracker (GUID).
ms-requestid Nie Struna Identyfikator idempotentności żądania.

Aby dowiedzieć się więcej, zobacz Nagłówki Centrum partnerskiego REST

Treść żądania

N/A.

Odpowiedź interfejsu API

HTTP/1.1 202 Accepted

Ładunek odpowiedzi interfejsu API zwraca następujące atrybuty:

Nazwa Fakultatywny Opis
Wartość fałszywy Aby uzyskać możliwe wartości i akcje, zobacz poniższą tabelę.

Możliwe wartości i akcje

Wartość Akcja klienta
requestId Identyfikator żądania eksportu
requestDateTime Data/godzina rozpoczęcia żądania eksportu
ścieżka żądania Ścieżka zapytania żądania eksportu.
requestQueryString Filtr używany jako część żądania eksportu.
BlobLocation Zasób blob z tokenem, gdy plik eksportowy jest gotowy
Stan Stan operacji eksportowania. Zapoznaj się z poniższą listą możliwych wartości stanu.

Możliwe wartości stanu

  • W kolejce:operacja eksportowania nie została uruchomiona
  • Przetwarzanie: operacja eksportowania jest w toku
  • Niepowodzenie: operacja eksportowania nie powiodła się po ponownych próbach, spróbuj umieścić w kolejce nowe żądanie
  • Ukończono: operacja eksportowania została ukończona, a plik eksportu jest gotowy do pobrania.

Przykładowa odpowiedź

{
    "value": [
        {
            "requestId": "93c2b3cf-c6d8-4e7e-ade1-007768a6eba4",
            "requestDateTime": "2023-05-25T21:20:46.3727561Z",
            "requestPath": "/v1.0/payouts/transactionhistory",
            "requestQueryString": "earningForDate ge 2023-03-01 and earningForDate le 2023-04-12",
            "blobLocation": "",
            "status": "Queued"
        }
    ],
    "nextLink": null,
    "totalCount": 1
}

Interfejs API zwraca stan HTTP 202.

Nazwa Opis
Zaakceptowano 202 Żądanie zostało zaakceptowane. Wykonaj zapytanie dotyczące adresu URL żądania GET, aby uzyskać stan żądania.

W zależności od żądania interfejs API może zwrócić inne standardowe stany:

Nazwa Opis
400 Nieprawidłowe żądanie Brak lub niepoprawne dane.
401 Brak autoryzacji Obiekt wywołujący nie jest uwierzytelniany i musi uwierzytelniać się w usłudze interfejsu API partnera przed wykonaniem pierwszego wywołania.
403 Zabronione Osoba dzwoniąca nie ma autoryzacji do składania żądania.
Błąd wewnętrzny serwera 500 Interfejs API lub jeden z jego zależności nie może spełnić żądania. Spróbuj ponownie później.
404 Nie znaleziono Zasób jest niedostępny z parametrami wejściowymi.
429 Ograniczanie szybkości Zbyt wiele żądań tego samego typu. Spróbuj po pewnym czasie.