Partilhar via


Gerir as suas lojas

Nota

O recurso loja está disponível apenas para participantes de versão beta fechada. Para obter informações sobre como participar no programa closed-beta ou open-beta, contacte o gestor de conta.

Todos os elementos de programação e documentação da Store estão sujeitos a alterações durante a versão beta.

Para criar um arquivo, utilize o modelo ARQUIVOS POST. O corpo do POST é um objeto StoreCreate . Tem de especificar os storeNamecampos , storeDestinationUrle notificationEmail . Os outros campos são opcionais. Tem de ter verificado e reclamado anteriormente o URL do seu site.

Segue-se um pedido de exemplo que especifica apenas os campos necessários.

curl -X POST -H "AuthenticationToken: <access token goes here>" -H "DeveloperToken: <developer token goes here>" -H "Content-Type: application/json" --data "{\"storeName\": \"Contoso Sports\",\"storeUrl\": \"https://contoso.com\",\"notificationEmail\": [\"someone@example.com\"]}"  https://content.api.ads.microsoft.com/v9.1/bmc/stores

Se o pedido for bem-sucedido, o corpo da resposta contém um objeto Store . O objeto contém os campos que especificou no pedido e todos os campos opcionais que fornecem valores predefinidos. O merchantId campo contém o ID do novo arquivo e o storeStatus campo indica se o arquivo foi aprovado.

{
  "merchantId": 123456,
  "storeName": "Contoso Sports",
  "storeUrl": "https://contoso.com/",
  "notificationEmail": [
    "someone@example.com"
  ],
  "notificationLanguage": "en-US",
  "isSslCheckout": true,
  "isBlockAggregator": false,
  "storeStatus": {
    "status": "Approved"
  }
}

Se o estado for Desaprovado, o objeto StoreStatus inclui o message campo , o que indica o motivo pelo qual o arquivo não foi aprovado. No exemplo seguinte, a loja foi desaprovada porque isSslCheckout é falsa.

  "storeStatus": {
    "status": "Disapproved",
    "message": "UnSecuredCheckOut"
  }

Se o pedido POST falhar a validação, o corpo da resposta será um objeto ErrorResponse . Para obter uma lista de possíveis códigos de erro, veja Códigos de erro.

{
  "errors": [
    {
      "code": "DuplicateStoreNameErr",
      "message": "Another store with the specified store name exists; store names must be unique with Microsoft Merchant Center."
    },
    {
      "code": "NotificationLanguageNotSupportedErr",
      "message": "The market that you specified in the notificationLanguage field is not valid."
    }
  ]
}

Obter uma lista de lojas

Para obter uma lista de lojas às quais o utilizador tem acesso, utilize o modelo Lojas GET. Se for uma agência, inclua os CustomerIdcabeçalhos e CustomerAccountId .

curl -H "AuthenticationToken: <access token goes here>" -H "DeveloperToken: <developer token goes here>"  https://content.api.ads.microsoft.com/v9.1/bmc/stores

A resposta é um objeto StoreCollection . O stores campo contém uma matriz de objetos Store .

{
  "stores": [
    {
      "merchantId": 12345,
      "storeName": "Alpine Ski House",
      "storeUrl": "https://alpineskihouse.com/",
      "notificationEmail": [
        "someone@alpineskihouse.com"],
      "notificationLanguage": "de-De",
      "isSslCheckout": true,
      "isBlockAggregator": false,
      "storeStatus": {
        "status": "Approved"
      }
    },

    . . .

    {
      "merchantId": 67890,
      "storeName": "Fabrikam",
      "storeUrl": "https://fabrikam.com/",
      "notificationEmail": [
        "someone@fabrikam.com"],
      "notificationLanguage": "en-us",
      "isSslCheckout": true,
      "isBlockAggregator": false,
      "storeStatus": {
        "status": "Approved"
      }
    }
  ]
}

Obter um arquivo específico

Para obter um arquivo específico ao qual o utilizador tem acesso, utilize o modelo de loja GET. Se for uma agência, inclua os CustomerIdcabeçalhos e CustomerAccountId .

curl -H "AuthenticationToken: <access token goes here>" -H "DeveloperToken: <developer token goes here>"  https://content.api.ads.microsoft.com/v9.1/bmc/stores/12345

A resposta é um objeto Store .

{
  "merchantId": 12345,
  "storeName": "Alpine Ski House",
  "storeUrl": "http://www.alpineskihouse.com",
  "notificationEmail": [
    "someone@alpineskihouse.com"],
  "notificationLanguage": "de-DE",
  "isSslCheckout": true,
  "isBlockAggregator": false,
  "storeStatus": {
    "status": "Approved"
  }
}