Medições - Demanda Contratada


Listar

Endpoint que lista as demandas contratadas do Equipamento.

Method URI Headers Authorization
GET /api/v4/equipment-demands Content-Type:application/json Authorization: Bearer {token}

Parameters

_sort: id (string) ("equipment_id", "type", "vigency_end") - "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."
equipment_id: 1 (required, integer) - "Id do Equipamento",
type: "peak" (string) - "Filtra pelo tipo da demanda. Valores permitidos: peak e off_peak"

Response

{success} Response 200 (application/json)

{
    "items": [
        {
            "id": 17,
            "equipment_id": 2,
            "vigency_start": "2024-01-01",
            "vigency_end": null,
            "type": "off_peak",
            "amount": 1000,
            "tolerance": 5
        },
        {
            "id": 18,
            "equipment_id": 2,
            "vigency_start": "2024-01-01",
            "vigency_end": "2026-01-01",
            "type": "peak",
            "amount": 100,
            "tolerance": 5
        }
    ],
    "total": 2,
    "per_page": 10,
    "current_page": 1,
    "last_page": 1
}

{primary} Response 204 (application/json)

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

{warning} Response 422 (application/json)

{
    "equipment_id": [
        "O campo medição selecionada é inválida."
    ]
}

{warning} Response 400 (application/json)

Quando ocorre algum erro ou usuário não tem permissão.

Pegar

Endpoint que pega os dados de uma demanda contratada da medição.

Method URI Headers Authorization
GET /api/v4/equipment-demands/{demandId} Content-Type:application/json Authorization: Bearer {token}

Parameters

demandId: 1 - (integer, required) - "Id da Demanda Contratada"

Response

{success} Response 200 (application/json)

{
    "id": 17,
    "equipment_id": 2,
    "vigency_start": "2024-01-01",
    "vigency_end": null,
    "type": "off_peak",
    "amount": 1000,
    "tolerance": 5
}

{warning} Response 400 (application/json)

Quando ocorre algum erro ou usuário não tem permissão.

Criar

Endpoint que cria uma demanda contratada para a medição.

Method URI Headers Authorization
POST /api/v4/equipment-demands Content-Type:application/json Authorization: Bearer {token}

Attributes

equipment_id: (required, integer) - "Id do Equipamento",
vigency_start: (required, date) - "Data do Início da vigência da Demanda",
vigency_end:  (date) = "Data do Início da vigência da Demanda",
type: "peak" (string) - "Tipo da Demanda. Valores permitidos: peak e off_peak",
amount: 250 (required, float) - "Valor Contratado"
tolerance: 5 (integer) - "Valor da tolerância do contrato da demanda"

Response

{success} Response 201 (application/json)

{
    "equipment_id": 1,
    "vigency_start": "2025-01-01",
    "vigency_end": "2025-02-01",
    "type": "off_peak",
    "amount": 20,
    "tolerance": 5
}

{warning} Response 422 (application/json)

{
    "equipment_id": [
        "O campo medição é obrigatório."
    ],
    "vigency_start": [
        "O campo vigency start é obrigatório."
    ],
    "type": [
        "O campo tipo é obrigatório."
    ],
    "amount": [
        "O campo amount é obrigatório."
    ],
    "tolerance": [
        "O campo tolerance deve ser um número inteiro."
    ]
}

{warning} Response 400 (application/json)

Quando ocorre algum erro ou usuário não tem permissão.

Atualizar

Endpoint que atualiza uma demanda contratada da medição.

Method URI Headers Authorization
PUT /api/v4/equipment-demands/{taxId} Content-Type:application/json Authorization: Bearer {token}

Attributes

equipment_id: (integer) - "Id do Equipamento",
vigency_start: (date) - "Data do Início da vigência da Demanda",
vigency_end:  (date) = "Data do Início da vigência da Demanda",
type: "peak" (string) - "Tipo da Demanda. Valores permitidos: peak e off_peak",
amount: 250 (float) - "Valor Contratado"
tolerance: 5 (integer) - "Valor da tolerância do contrato da demanda"

Response

{success} Response 200 (application/json)

{
    "equipment_id": 1,
    "vigency_start": "2025-01-01",
    "vigency_end": "2025-02-01",
    "type": "off_peak",
    "amount": 20,
    "tolerance": 5
}

{warning} Response 422 (application/json)

{
    "vigency_start": [
        "O campo vigency start não é uma data válida."
    ],
    "vigency_end": [
        "O campo vigency end não é uma data válida."
    ],
    "type": [
        "O campo tipo selecionado é inválido."
    ],
    "amount": [
        "O campo amount deve ser um número."
    ],
    "tolerance": [
        "O campo tolerance deve ser um número inteiro."
    ]
}

{warning} Response 400 (application/json)

Quando ocorre algum erro ou usuário não tem permissão.

Deletar

Endpoint que deleta uma demanda contratada da medição.

Method URI Headers Authorization
DELETE /api/v3/equipment-demands/1 Content-Type:application/json Authorization: Bearer {token}

Response

{primary} Response 204 (application/json)

Quando o registro for excluido com sucesso.

{warning} Response 400 (application/json)

Quando ocorre algum erro ou usuário não tem permissão.