Alterar o estado de cobrança de uma assinatura para um usuário
Use esse método na API de compra da Microsoft Store para alterar o estado de cobrança de um complemento de assinatura para um determinado usuário. Você pode cancelar, estender, reembolsar ou desativar a renovação automática de uma assinatura.
Observação
Esse método só pode ser usado por contas de desenvolvedor que foram provisionadas pela Microsoft para poder criar complementos de assinatura para aplicativos UWP (Plataforma Universal do Windows). No momento, os complementos de assinatura não estão disponíveis para a maioria das contas de desenvolvedor.
A biblioteca Microsoft.StoreServices fornece a funcionalidade desse método por meio da API StoreServicesClient.RecurrenceChangeAysnc.
Pré-requisitos
Para usar este método, você precisará de:
- Um token de acesso do Azure AD que tem o valor
https://onestore.microsoft.com
do URI da audiência. - Uma chave de ID da Microsoft Store que representa a identidade do usuário que tem direito à assinatura que você deseja alterar.
Para obter mais informações, consulte Gerenciar direitos de produto de um serviço.
Solicitar
Sintaxe da solicitação
Método | URI da solicitação |
---|---|
POST | https://purchase.mp.microsoft.com/v8.0/b2b/recurrences/{recurrenceId}/change |
Cabeçalho da solicitação
Cabeçalho | Tipo | Descrição |
---|---|---|
Autorização | string | Obrigatório. O token de acesso do Azure AD no Token<de portador> do formulário. |
Host | string | Deve ser definido com o valor purchase.mp.microsoft.com. |
Content-Length | número | O tamanho do corpo da solicitação. |
Tipo de conteúdo | string | Especifica o tipo de solicitação e resposta. Atualmente, o único valor com suporte é application/json. |
Parâmetros da solicitação
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
recorrência | string | A ID da assinatura que você deseja alterar. Para obter essa ID, chame o método get subscriptions para um usuário, identifique a entrada do corpo da resposta que representa o complemento de assinatura que você deseja alterar e use o valor do campo id para a entrada. | Sim |
Corpo da solicitação
Campo | Type | Descrição | Obrigatório |
---|---|---|---|
b2bChave | string | A chave de ID da Microsoft Store que representa a identidade do usuário cuja assinatura você deseja alterar. | Sim |
changeType | string | Uma das seguintes cadeias de caracteres que identifica o tipo de alteração que você deseja fazer:
|
Sim |
extensionTimeInDays | string | Se o parâmetro changeType tiver o valor Extend, esse parâmetro especificará o número de dias para estender a assinatura. | Sim, se changeType tiver o valor Extend; caso contrário, não. |
Exemplo de solicitação
O exemplo a seguir demonstra como usar esse método para estender o período de assinatura em 5 dias. Substitua o valor b2bKey pela chave de ID da Microsoft Store que representa a identidade do usuário cuja assinatura você deseja alterar.
POST https://purchase.mp.microsoft.com/v8.0/b2b/recurrences/mdr:0:bc0cb6960acd4515a0e1d638192d77b7:77d5ebee-0310-4d23-b204-83e8613baaac/change HTTP/1.1
Authorization: Bearer <your access token>
Content-Type: application/json
Host: https://purchase.mp.microsoft.com
{
"b2bKey": "eyJ0eXAiOiJ...",
"changeType": "Extend",
"extensionTimeInDays": "5"
}
Resposta
Esse método retorna um corpo de resposta JSON que contém informações sobre o complemento de assinatura que foi modificado, incluindo todos os campos que foram modificados. O exemplo a seguir demonstra um corpo de resposta para esse método.
{
"items": [
{
"autoRenew":true,
"beneficiary":"pub:gFVuEBiZHPXonkYvtdOi+tLE2h4g2Ss0ZId0RQOwzDg=",
"expirationTime":"2017-06-16T03:07:49.2552941+00:00",
"id":"mdr:0:bc0cb6960acd4515a0e1d638192d77b7:77d5ebee-0310-4d23-b204-83e8613baaac",
"lastModified":"2017-01-10T21:08:13.1459644+00:00",
"market":"US",
"productId":"9NBLGGH52Q8X",
"skuId":"0024",
"startTime":"2017-01-10T21:07:49.2552941+00:00",
"recurrenceState":"Active"
}
]
}
Corpo da resposta
O corpo da resposta contém os dados a seguir.
Valor | Type | Descrição |
---|---|---|
renovação automática | Booliano | Indica se a assinatura está configurada para ser renovada automaticamente no final do período de assinatura atual. |
beneficiário | string | A ID do beneficiário do direito associado a essa assinatura. |
expirationTime | string | A data e a hora em que a assinatura expirará, no formato ISO 8601. Esse campo só está disponível quando a assinatura está em determinados estados. O tempo de expiração geralmente indica quando o estado atual expira. Por exemplo, para uma assinatura ativa, a data de expiração indica quando ocorrerá a próxima renovação automática. |
expirationTimeWithGrace | string | A data e a hora em que a assinatura expirará, incluindo o período de carência, no formato ISO 8601. Esse valor indica quando o usuário perderá o acesso à assinatura depois que a assinatura não for renovada automaticamente. |
ID | string | A ID da assinatura. Use esse valor para indicar qual assinatura você deseja modificar ao chamar o método alterar o estado de cobrança de uma assinatura para um usuário . |
é julgamento | Booliano | Indica se a assinatura é uma avaliação. |
lastModified | string | A data e a hora em que a assinatura foi modificada pela última vez, no formato ISO 8601. |
market | string | O código do país (no formato ISO 3166-1 alfa-2 de duas letras) no qual o usuário adquiriu a assinatura. |
productId | string | A ID da Loja do produto que representa o complemento de assinatura no catálogo da Microsoft Store. Um exemplo de ID da loja para um produto é 9NBLGGH42CFD. |
skuId | string | A ID da Loja para o SKU que representa o complemento de assinatura no catálogo da Microsoft Store. Um exemplo de ID da loja para um SKU é 0010. |
startTime | string | A data e hora de início da assinatura, no formato ISO 8601. |
estado de recorrência | string | Um dos seguintes valores:
Observação:
|
data de cancelamento | string | A data e a hora em que a assinatura do usuário foi cancelada, no formato ISO 8601. |