• 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

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this