Ignorar Navegação
Expandir
Ordem dos campos retornados na chamada REST API
Identificação da resposta 11356   |   Revisado 01/28/2020

Por que na resposta API os campos não estão na mesma ordem enviada na chamada REST API?

Ambiente:

Oracle Field Service (OFS)

Problema:

Estou tentando alterar/determinar a ordem dos campos exibidos na resposta REST API para acomodar a lógica interna, mas os campos retornam em ordem diferente.

Exemplo:

Ao executar uma chamada REST API  'Search for Activities':

api.etadirect.com/rest/ofscCore/v1/activities/custom-actions/search?searchInField=XA_ANY_ORDER&searchForValue=00001&fields=apptNumber,status,date&dateFrom=2019-11-01&dateTo=2022-11-01&includeNonScheduled=true&includeMultiday=parents

Espero receber na resposta a seguinte ordem dos campos:

{
   "totalResults": 3,
   "limit": 10,
   "offset": 0,
   "items":    [
            {
         "apptNumber": "ORCL-SCO00002",
         "status": "cancelled",
         "date": "2019-11-20"
      },
            {
         "apptNumber": "004003256453-0010",
         "status": "completed",
         "date": "2019-11-20"
      },
            {
         "apptNumber": "004003256453-0011",
         "status": "completed",
         "date": "2019-11-20",
      }

Resolução:

OFS não permite aos usuários alterar a ordem dos campos apresentados na resposta API. Portanto, os clientes não devem utilizar a ordem dos campos json retornados nas respostas API em nenhuma lógica interna contando com a ordem.

A resposta para o comando acima será:

{
   "totalResults": 3,
   "limit": 10,
   "offset": 0,
   "items":    [
            {
         "date": "2019-11-20",
         "apptNumber": "ORCL-SCO00002",
         "status": "cancelled"
   
      },
            {
         "date": "2019-11-20",
         "apptNumber": "004003256453-0010",
         "status": "completed"
      },
            {
         "date": "2019-11-20",
         "apptNumber": "004003256453-0011",
         "status": "completed"
      }