Grupos


Listar

Endpoint que lista todos os grupos cadastrados.

Method URI Headers Authorization
GET /api/v3/apportionments-groups Content-Type:application/json Authorization: Bearer {token}

Parameters

apportionment_id: 1 (integer) - "FIltra os grupos pelo Id do Rateio."
_q: 'texto' (string) - "Busca os grupos pelo nome."
_sort: 'id' (string) ('id') - "Define o campo de ordenação da lista."
_order: 'desc' (string) ('asc', 'desc') - "Define a ordem da lista com base no campo definido."
_limit: 10 (integer) - "Quantidade de itens por página."
_page: 1 (integer) - "Página a ser carregada."

Response

{success} Response 200 (application/json)

{
   "items": [
      {
         "id": 1,
         "apportionment_id": 1,
         "name": "Grupo 1",
         "number_equipments": 4,
         "equipments": [
            {
               "id": 1,
               "apportionment_group_id": 1,
               "equipment_id": 1
            },
            {
               "id": 4,
               "apportionment_group_id": 1,
               "equipment_id": 2
            },
            {
               "id": 6,
               "apportionment_group_id": 1,
               "equipment_id": 3
            },
            {
               "id": 7,
               "apportionment_group_id": 1,
               "equipment_id": 5
            }
         ]
      },
      {
         "id": 2,
         "apportionment_id": 2,
         "name": "Grupo 2",
         "number_equipments": 0,
         "equipments": []
      }
   ],
   "total": 2,
   "per_page": 10,
   "current_page": 1
}

{warning} Response 422 (application/json)

{
    "apportionment_id": [
        "O campo apportionment id selecionado é inválido."
    ],
    "_sort": [
        "O campo sort selecionado é inválido."
    ],
    "_order": [
        "O campo order selecionado é inválido."
    ],
    "_limit": [
        "O campo limit deve ser um número inteiro."
    ],
    "_page": [
        "O campo page deve ser um número inteiro."
    ]
}

{primary} Response 204 (application/json).

Quando os critérios de parâmetros não contiver registros a serem retornados.

Pegar

Endpoint que pega um grupo específico.

Method URI Headers Authorization
GET /api/v3/apportionments-groups/{id} Content-Type:application/json Authorization: Bearer {token}

Parameters

id: 1 (integer) - "Id do Grupo de Rateio"

Response

{success} Response 200 (application/json)

{
   "id": 1,
   "apportionment_id": 2,
   "name": "Grupo 1",
   "number_equipments": 3,
   "equipments": [
      {
         "id": 1,
         "apportionment_group_id": 1,
         "equipment_id": 2
      },
      {
         "id": 2,
         "apportionment_group_id": 1,
         "equipment_id": 5
      },
      {
         "id": 3,
         "apportionment_group_id": 1,
         "equipment_id": 6
      }
   ]
}

{primary} Response 204 (application/json)

Quando o registro não existir ou o usuário não tiver permissão de visualização.

Criar

Endpoint que cria um grupo de Rateio.

Method URI Headers Authorization
POST /api/v3/apportionments-groups Content-Type:application/json Authorization: Bearer {token}

Attributes

apportionment_id: 1 (integer, required) - "Id do Rateio",
name : "Grupo 1" (string, required) - "Nome do Grupo"

Response

{success} Response 201 (application/json)

{
   "apportionment_id": 1,
   "name": "Grupo 1",
   "id": 1,
   "number_equipments": 0,
   "equipments": []
}

{warning} Response 422 (application/json)

{
   "apportionment_id": [
      "O campo apportionment id selecionado é inválido.",
      "O campo apportionment id é obrigatório.",
      "O campo apportionment id deve ser um número inteiro."
   ],
   "name": [
      "O campo nome deve ser uma string.",
      "O campo nome é obrigatório."
   ]
}

{primary} Response 204 (application/json)

Quando o registro não existir ou o usuário não tiver permissão de visualização.

Atualizar

Endpoint que atualiza um grupo específico.

Method URI Headers Authorization
PUT /api/v3/apportionments-groups/{id} Content-Type:application/json Authorization: Bearer {token}

Parameters

id: 1 (integer, required) - "Id do Grupo de Rateio"

Attributes

name : "Grupo 1" (string) - "Nome do Grupo"

Response

{success} Response 200 (application/json)

{
   "id": 1,
   "apportionment_id": 2,
   "name": "Grupo 1",
   "number_equipments": 3,
   "equipments": [
      {
         "id": 1,
         "apportionment_group_id": 1,
         "equipment_id": 2
      },
      {
         "id": 2,
         "apportionment_group_id": 1,
         "equipment_id": 5
      },
      {
         "id": 3,
         "apportionment_group_id": 1,
         "equipment_id": 6
      }
   ]
}

{warning} Response 422 (application/json)

{
   "name": [
      "O campo nome deve ser uma string.",
      "O campo nome é obrigatório."
   ]
}

{primary} Response 204 (application/json)

Quando o registro não existir ou o usuário não tiver permissão de visualização.

Deletar

Endpoint que deleta um grupo específico.

Method URI Headers Authorization
DELETE /api/v3/apportionments-groups/{id} Content-Type:application/json Authorization: Bearer {token}

Parameters

id: 1 (integer, required) - "Id do Grupo de Rateio"

Response

{primary} Response 204 (application/json)

Quando o registro for excluído com sucesso.