• 0
Sign in to follow this  
Tyzzy

Ordenando as perguntas por ITEM_ID

Question

Boa tarde!

 

Uso SDK em PHP. Minha intenção é ordenar o array das perguntas não respondidas em ordem do ID_ITEM. É possível observar as opções de ordenação disponível na própria matriz de retorno da REQUEST. Lá em baixo é possível conferir que temos algumas opções de ordenação:

 

 

["available_sorts"]=>
array(4) {
[0]=>
string(7) "item_id"
[1]=>
string(7) "from_id"
[2]=>
string(12) "date_created"
[3]=>
string(9) "seller_id"
}

 

Ok, mas como eu utilizo? Fiz o seguinte:

$perguntas = $meli->get("https://api.mercadolibre.com/my/received_questions/search?status=UNANSWERED&sort=item_id&access_token=MEU_TOKEN_DE_ACESSO");

Reparou que eu utilizei sort=item_id? Fiz isso assim como informado na matriz de retorno que mencionei anteriormente. Infelizmente não deu certo, as perguntas continuam sendo ordenadas por data. Eu tentei desse jeito porque funciona com a busca das compras recentes.

 

Alguém sabe como ordena por ID_ITEM?

 

Valeu desde já!

Share this post


Link to post
Share on other sites

5 answers to this question

Recommended Posts

  • 0

rodrigojob obrigado pela resposta!

 

Mas deve existir um jeito de receber o array já ordenado, senão as informações de available_sort não estariam disponíveis. Minha dúvida é como usar o sort na request das perguntas.

Share this post


Link to post
Share on other sites
  • 0

Vamos supor que tenho 2 perguntas e quero obtê-las.

 

Código:

$perguntas = $meli->get("https://api.mercadolibre.com/my/received_questions/search?status=UNANSWERED&access_token=".my_tokenzenho);

echo "<pre>";
var_dump($perguntas);
echo "</pre>";


Resultado: 

array(2) {
  ["body"]=>
  object(stdClass)#4 (6) {
    ["total"]=>
    int(2)
    ["limit"]=>
    int(50)
    ["questions"]=>
    array(2) {
      [0]=>
      object(stdClass)#5 (10) {
        ["date_created"]=>
        string(29) "2016-02-25T10:02:28.000-04:00"
        ["item_id"]=>
        string(12) "MLB743244332"
        ["seller_id"]=>
        int(205878581)
        ["status"]=>
        string(10) "UNANSWERED"
        ["text"]=>
        string(10) "pergunta 1"
        ["id"]=>
        float(3951361793)
        ["deleted_from_listing"]=>
        bool(false)
        ["hold"]=>
        bool(false)
        ["answer"]=>
        NULL
        ["from"]=>
        object(stdClass)#6 (2) {
          ["id"]=>
          int(206414171)
          ["answered_questions"]=>
          int(0)
        }
      }
      [1]=>
      object(stdClass)#7 (10) {
        ["date_created"]=>
        string(29) "2016-02-25T10:03:30.000-04:00"
        ["item_id"]=>
        string(12) "MLB743244332"
        ["seller_id"]=>
        int(205878581)
        ["status"]=>
        string(10) "UNANSWERED"
        ["text"]=>
        string(10) "pergunta 3"
        ["id"]=>
        float(3951251001)
        ["deleted_from_listing"]=>
        bool(false)
        ["hold"]=>
        bool(false)
        ["answer"]=>
        NULL
        ["from"]=>
        object(stdClass)#8 (2) {
          ["id"]=>
          int(206414171)
          ["answered_questions"]=>
          int(0)
        }
      }
    }
    ["filters"]=>
    object(stdClass)#9 (7) {
      ["limit"]=>
      int(50)
      ["offset"]=>
      int(0)
      ["is_admin"]=>
      bool(false)
      ["sorts"]=>
      array(0) {
      }
      ["caller"]=>
      int(205878581)
      ["seller"]=>
      string(9) "205878581"
      ["status"]=>
      string(10) "UNANSWERED"
    }
    ["available_filters"]=>
    array(5) {
      [0]=>
      object(stdClass)#10 (3) {
        ["id"]=>
        string(4) "item"
        ["name"]=>
        string(4) "Item"
        ["type"]=>
        string(4) "text"
      }
      [1]=>
      object(stdClass)#11 (3) {
        ["id"]=>
        string(4) "from"
        ["name"]=>
        string(12) "From user id"
        ["type"]=>
        string(6) "number"
      }
      [2]=>
      object(stdClass)#12 (3) {
        ["id"]=>
        string(14) "totalDivisions"
        ["name"]=>
        string(15) "total divisions"
        ["type"]=>
        string(6) "number"
      }
      [3]=>
      object(stdClass)#13 (3) {
        ["id"]=>
        string(8) "division"
        ["name"]=>
        string(8) "Division"
        ["type"]=>
        string(6) "number"
      }
      [4]=>
      object(stdClass)#14 (4) {
        ["id"]=>
        string(6) "status"
        ["name"]=>
        string(6) "Status"
        ["type"]=>
        string(4) "text"
        ["values"]=>
        array(6) {
          [0]=>
          string(8) "ANSWERED"
          [1]=>
          string(6) "BANNED"
          [2]=>
          string(17) "CLOSED_UNANSWERED"
          [3]=>
          string(7) "DELETED"
          [4]=>
          string(8) "DISABLED"
          [5]=>
          string(12) "UNDER_REVIEW"
        }
      }
    }
    ["available_sorts"]=>
    array(4) {
      [0]=>
      string(7) "item_id"
      [1]=>
      string(7) "from_id"
      [2]=>
      string(12) "date_created"
      [3]=>
      string(9) "seller_id"
    }
  }
  ["httpCode"]=>
  int(200)
}

Veja, junto com o array de retorno (em $perguntas['body']->available_sorts) recebo algumas informações sobre sort. 

Share this post


Link to post
Share on other sites
  • 0

está aí um endereço que eu desconhecia! KKK
 

E tenho uma notícia para você:

Para mim funcionou!

 

Usei https://api.mercadolibre.com/my/received_questions/search?status=ANSWERED&access_token=APP_USR-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&sort=item_id

 

Perceba que usei as já respondidas, pois não tenho nenhuma sem estar respondida. Mas como eu não sou um cara que responde levianamente, fui fazer o teste.

 

Aí  gerei perguntas... em anúncios aleatórios e depois refiz a consulta com UNANSWERED.

Miou, não rolou.

 

Isto é erro na API, ela não ordena com o filtro UNANSWERED. Alguma bobagem na programação.
Avise ao pessoal do desenvolvimento.

 

Abraço

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this