Criar solicitação de exportação de lucros
Use essa API para enfileirar novos ganhos e solicitações de exportação de dados de transações/pagamentos subjacentes com filtros opcionais para fatiar os dados de ganhos e transações. Ele retorna um status HTTP 202 e uma ID de solicitação, que pode ser usada para fazer uma sondagem para verificar o status da solicitação de exportação de transação enfileirada.
Envie uma solicitação POST para o ponto de extremidade da API para enfileirar uma nova solicitação de exportação para transações/ganhos.
Solicitação REST
Método | URI da solicitação |
---|---|
POST | https://api.partner.microsoft.com/v1.0/payouts/transactionhistory?$filter={$filter}&fileformat=csv |
Parâmetros da solicitação
Nome | Em | Obrigatório | Type | Descrição |
---|---|---|---|---|
$filter | Consulta | Não | String | Embora seja um filtro opcional, é altamente recomendável usar filtros para um desempenho mais rápido e limitar seus dados de exportação em vez de exportar os últimos três anos de dados. Consulte a tabela a seguir para obter um conjunto completo de opções de $filter. |
fileFormat | Consulta | Não | String | Os valores suportados são .csv/.tsv. O padrão é .csv se nenhum valor for fornecido. |
O parâmetro de consulta $filter é um parâmetro opcional para criar uma operação de exportação. No entanto, é altamente recomendável usar $filters para melhor desempenho e disponibilidade mais rápida do relatório de exportação. A seguir estão alguns dos filtros de atributo chave que podem ser usados como parte da operação de exportação:
Nome | Descrição | Type | Amostra |
---|---|---|---|
enrollmentParticipantId |
ID do MPN registrado da organização. | Int | {baseUrl}/v1.0/payouts/transactionhistory?$filter= enrollmentParticipantId=12345 |
EarningForDate |
Data do período de ganho para a operação de exportação. | DateTime | {baseUrl}/v1.0/payouts/transactionhistory?$filter=earningForDate ge 2023-03-01 and earningForDate le 2023-04-12 |
transactionAmount |
Valor da transação. | Double | {baseUrl}/v1.0/payouts/transactionhistory?$filter=?$filter=transactionAmount ge 2000 and transactionAmount le 5000 |
earningAmount |
Valor de ganho em moeda de transação. | Double | {baseUrl}/v1.0/payouts/transactionhistory?$filter=?$filter=earningAmount ge 2000 and earningAmount le 5000 |
engagementName |
Aplicável apenas para os Incentivos do Microsoft Commerce. Valores de exemplo - 'Azure CSP motion incentives - Indirect Provider' . |
String | {baseUrl}/v1.0/payouts/transactionhistory?$filter=?$filter=engagementName=’Azure CSP motion incentives’ |
payableSubType |
Filtre pelo tipo de ganho. Valores de exemplo - 'REBATE' , , , 'COOP' 'FEE' ,'SELL' |
String | {baseUrl}/v1.0/payouts/transactionhistory?$filter=?$filter=payableSubType=’REBATE’ or payableSubType=’FEE’ |
payoutStatus |
Filtre as transações pelo status de pagamento. Valores de exemplo - 'SENT' , , 'IN PROGRESS' 'UPCOMING' . |
String | {baseUrl}/v1.0/payouts/transactionhistory?$filter=?$filter=payoutStatus=’IN PROGRESS’ |
Exemplo de filtro de histórico de transações com vários parâmetros de solicitação:
”?$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')”
Cabeçalho da solicitação
Nome | Obrigatória | Type | Descrição |
---|---|---|---|
Autorização | Sim | String | Token de portador de autorização. |
ms-correlationid | Não | String | Um rastreador de solicitações interno. Cada solicitação gera um novo rastreador (GUID). |
MS-RequestID | Não | String | O ID de idempotência da solicitação. |
Para saber mais, consulte Cabeçalhos REST do Partner Center
Corpo da solicitação
N/D
Resposta da API
HTTP/1.1 202 Accepted
A carga de resposta da API retorna os seguintes atributos:
Nome | Opcional | Descrição |
---|---|---|
Valor | false | Consulte a tabela a seguir para obter possíveis valores e ações. |
Valores e ações possíveis
Valor | Ação do cliente |
---|---|
requestId | ID da solicitação de exportação |
requestDateTime | Data/hora de início da solicitação de exportação |
requestPath | Caminho de consulta da solicitação de exportação. |
requestQueryString | Filtro usado como parte da solicitação de exportação. |
blobLocalização | Recurso de blob com token quando o arquivo de exportação estiver pronto |
Status | Status da operação de exportação. Consulte a lista a seguir de valores possíveis para status. |
Valores possíveis para status
- Enfileirado: a operação de exportação não foi iniciada
- Processamento: A operação de exportação está em andamento
- Falha: A operação de exportação falhou após tentativas, tente enfileirar uma nova solicitação
- Concluído: a operação de exportação foi concluída e o arquivo de exportação está pronto para download.
Resposta de exemplo
{
"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
}
A API retorna o status HTTP 202.
Nome | Descrição |
---|---|
202 Aceito | A solicitação foi aceita. Consulte a URL da solicitação GET para obter o status da solicitação. |
Dependendo da solicitação, a API pode retornar outros status padrão:
Nome | Descrição |
---|---|
400 Solicitação Incorreta | Havia dados ausentes ou incorretos. |
401 Não Autorizado | O chamador não é autenticado e deve autenticar com o serviço de API do parceiro antes de fazer a primeira chamada. |
403 Proibido | O chamador não está autorizado a fazer a solicitação. |
Erro interno de servidor 500 | A API ou uma de suas dependências não consegue atender à solicitação. Tente novamente mais tarde. |
404 Não Encontrado | Recurso não disponível com parâmetros de entrada. |
429 Limitação da taxa | Muitos pedidos do mesmo tipo. Tente depois de algum tempo. |