Создание запроса на экспорт прибыли

Используйте этот API, чтобы поставить в очередь запрос на экспорт новых данных о доходах, основных транзакций и платежей с необязательными фильтрами для детального анализа данных о доходах и транзакциях. Он возвращает состояние HTTP 202 и идентификатор запроса, который можно использовать для проверки состояния запроса экспорта транзакций в очереди.

Отправьте запрос POST в конечную точку API, чтобы поставить в очередь новый запрос на экспорт транзакций и доходов.

Запрос REST

Метод URI запроса
POST https://api.partner.microsoft.com/v1.0/payouts/transactionhistory?$filter={$filter}&fileformat=csv

Параметры запроса

Имя В Обязательно Тип Описание
$filter Запрос Нет Струна Несмотря на то что это необязательный фильтр, мы настоятельно рекомендуем использовать фильтры для повышения производительности и ограничения данных экспорта вместо экспорта последних трех лет данных. В следующей таблице приведен полный набор параметров $filter.
формат файла Запрос Нет Струна Поддерживаемые значения — .csv/.tsv. По умолчанию используется .csv, если значение не указано.

Параметр запроса $filter является необязательным параметром для создания операции экспорта. Однако мы настоятельно рекомендуем использовать $filters для повышения производительности и ускорения доступности отчета экспорта. Ниже приведены некоторые из фильтров ключевых атрибутов, которые можно использовать в рамках операции экспорта:

Имя Описание Тип Образец
enrollmentParticipantId Зарегистрированный идентификатор MPN организации. Int {baseUrl}/v1.0/payouts/transactionhistory?$filter= enrollmentParticipantId=12345
EarningForDate Дата периода заработка для экспортной операции. ДатаВремя {baseUrl}/v1.0/payouts/transactionhistory?$filter=earningForDate ge 2023-03-01 and earningForDate le 2023-04-12
transactionAmount Сумма транзакции. Двойной {baseUrl}/v1.0/payouts/transactionhistory?$filter=?$filter=transactionAmount ge 2000 and transactionAmount le 5000
earningAmount Сумма прибыли в валюте транзакции. Двойной {baseUrl}/v1.0/payouts/transactionhistory?$filter=?$filter=earningAmount ge 2000 and earningAmount le 5000
engagementName Применимо только для стимулов Microsoft Commerce. Примеры значений — 'Azure CSP motion incentives - Indirect Provider'. Струна {baseUrl}/v1.0/payouts/transactionhistory?$filter=?$filter=engagementName=’Azure CSP motion incentives’
payableSubType Фильтруйте по типу прибыли. Примеры значений — 'REBATE', 'COOP', 'FEE', 'SELL' Струна {baseUrl}/v1.0/payouts/transactionhistory?$filter=?$filter=payableSubType=’REBATE’ or payableSubType=’FEE’
payoutStatus Фильтрация транзакций по состоянию выплаты. Примеры значений — 'SENT', 'UPCOMING', 'IN PROGRESS'. Струна {baseUrl}/v1.0/payouts/transactionhistory?$filter=?$filter=payoutStatus=’IN PROGRESS’

Пример фильтра журнала транзакций с несколькими параметрами запроса:

”?$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')”

Заголовок запроса

Имя Обязательно Тип Описание
Авторизация Да Струна Маркер носителя авторизации.
ms-correlationid Нет Струна Внутреннее средство отслеживания запросов. Каждый запрос создает новый трекер (GUID).
ms-requestid Нет Струна Идентификатор идемпотентности запроса.

Для получения дополнительной информации см. раздел Заголовки REST Центра партнеров.

Текст запроса

N/A.

Ответ API

HTTP/1.1 202 Accepted

Ответ API возвращает следующие атрибуты в полезной нагрузке:

Имя Необязательный Описание
Ценность ложный В следующей таблице приведены возможные значения и действия.

возможные значения и действия

Ценность Действие клиента
идентификатор запроса Идентификатор запроса на экспорт
дата и время запроса Дата начала запроса на экспорт
путь запроса Путь запроса на экспорт.
requestQueryString Фильтр используется в рамках запроса на экспорт.
БлобЛокейшн Ресурс BLOB с маркером после завершения формирования файла экспорта
Статус Состояние операции экспорта. См. следующий список возможных значений для состояния.

Возможные значения для состояния

  • В очереди: операция экспорта не начата
  • обработка: выполняется операция экспорта
  • сбой: операция экспорта завершилась ошибкой после повторных попыток, попробуйте добавить новый запрос в очередь.
  • завершено: операция экспорта завершена, а файл экспорта готов к скачиванию.

Пример ответа

{
    "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
}

API возвращает состояние HTTP 202.

Имя Описание
Принято 202 Запрос был принят. Выполните запрос к URL-адресу GET для проверки состояния запроса.

В зависимости от запроса API может возвращать другие стандартные состояния:

Имя Описание
400 Недопустимый запрос Данные отсутствуют или являются неверными.
401 Несанкционированный доступ Вызывающий объект не аутентифицирован и должен аутентифицироваться в службе API партнера, прежде чем совершить первый вызов.
403 Запрещено Пользователь не имеет полномочий для выполнения запроса.
Ошибка внутреннего сервера 500 API или одна из его зависимостей не может выполнить запрос. Повторите попытку позже.
404 Не найдено Ресурс недоступен с входными параметрами.
Ограничение скорости 429 Слишком много запросов одного типа. Попробуйте через некоторое время.