Dashboards


Listar

Endpoint que lista todos os dashboards de uma entidade.

Method URI Headers Authorization
GET /api/v3/dashboards/{entityType}/{entityId}/list Content-Type:application/json Authorization: Bearer {token}

Parameters

entityType: 'company' (string) - "Tipo de entidade a quem o dashboard pertence. Valores permitidos: company e equipment"
entityId: 1 (integer) - "Represente a instância da entidade. "

Response

{success} Response 200 (application/json)

{
  "data": [
    {
      "value": 1,
      "label": "Dashaboard Name",
      "status": true,
      "structure": [
        [
          {
            "name": "Componente Name",
            "dataStructure": {
              "type": "card",
              "style": {
                "classType": "peak"
              },
              "cardOptions": {
                "title": "Consumo Ponta",
                "apiRoute": "/api/v3/energy-consumption/{instance}",
                "content": {
                  "title": "",
                  "description": "endDate",
                  "value": "value",
                  "unit": "MWh",
                  "peakTime": true
                }
              }
            },
            "position": "1"
          },
          {
            "name": "Componente Name",
            "dataStructure": [],
            "position": "1"
          }
        ]
      ]
    }
  ]
}

{primary} Response 204 (application/json).

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

Pegar

Endpoint que pega um dashboard específico.

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

Parameters

id: 1 (required, integer) - "Id do Dashboard"

Response

{success} Response 200 (application/json)

{
  "value": 1,
  "label": "Dashaboard Name",
  "status": true,
  "structure": [
    [
      {
        "name": "Componente Name",
        "dataStructure": {
          "type": "card",
          "style": {
            "classType": "peak"
          },
          "cardOptions": {
            "title": "Consumo Ponta",
            "apiRoute": "/api/v3/energy-consumption/{instance}",
            "content": {
              "title": "",
              "description": "endDate",
              "value": "value",
              "unit": "MWh",
              "peakTime": true
            }
          }
        },
        "position": "1"
      },
      {
        "name": "Componente Name",
        "dataStructure": [],
        "position": "1"
      }
    ]
  ]
}

{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 associa um template de dashboard a uma entidade.

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

Attributes

entities: [1,2] (required, array) - "Array com ids das entidades que devem ser associadas ao template",
entities_type: 'company' (required, string) - "Tipo das entidades sendo associadas. Valores permitidos: company, equipment",
template_id: 1 (required, integer) - "Id do Template de Dashboard"
replace: true (required, boolean) - "Indica se dashboards atuais devem ser substituidos, se true remove antigos dashboards, 
se falso combina template com dashboards já existentes"

Response

{success} Response 201 (application/json)

[
    "Registro cadastrado com sucesso!"
]

{warning} Response 422 (application/json)

{
    "entities_type": [
        "O campo entities type selecionado é inválido."
    ],
    "template_id": [
        "O campo template id selecionado é inválido."
    ],
    "replace": [
        "O campo replace deve ser verdadeiro ou falso."
    ],
    "entities.0": [
        "Permissões insuficientes para essa conta"
    ]
}

{primary} Response 204 (application/json)

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