Solvimon ingest API
The ingest API from Solvimon — 15 operation(s) for ingest.
The ingest API from Solvimon — 15 operation(s) for ingest.
openapi: 3.1.0
info:
title: Configuration alertRules ingest API
version: 1.0.0
servers:
- url: https://test.api.solvimon.com
description: The TEST environment for our API
- url: https://api.solvimon.com
description: The live environment for our API
tags:
- name: ingest
paths:
/v{version}/ingest/meter-data:
get:
operationId: getIngestMeterData
summary: Get a list of events for provided filters
description: Requires the METER_DATA.VIEW permission.
tags:
- ingest
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: customer_id
in: query
description: The resource id of the customer.
required: false
schema:
type: string
- name: reference
in: query
description: The reference of the ingest.
required: false
schema:
type: string
- name: meter_id
in: query
description: The resource id of the meter.
required: false
schema:
type: string
- name: deleted
in: query
description: Filter the response by deleted field value.
required: false
schema:
type: boolean
- name: processed_details_type
in: query
description: 'Filter the response by processing_details.type value. Ex.: NOT_MATCHED, DUPLICATE'
required: false
schema:
type: string
- name: expand[]
in: query
description: The id fields of the resources that are going to be expanded.
required: false
schema:
type: array
items:
type: string
- name: limit
in: query
description: The amount of records shown in the list
required: false
schema:
type: integer
- name: page
in: query
description: The page which is going to be shown
required: false
schema:
type: integer
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/IngestDataResponseWrapper'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
post:
operationId: postIngestMeterData
summary: Ingest an event
description: Requires the METER_DATA.INGEST permission.
tags:
- ingest
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: cost_prediction
in: query
description: The option to return cost prediction.
required: false
schema:
type: boolean
- name: meter_validation
in: query
description: The validation strategy applied to the referenced meter. STATIC (the default) requires the meter, its values and properties to already exist. DYNAMIC creates the meter and its missing values/properties/enum values on the fly during ingest.
required: false
schema:
type: string
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/MeterData'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/MeterDataCreateRequest'
/v{version}/ingest/meter-data/delete:
post:
operationId: postIngestMeterDataDelete
summary: Mark an event as deleted
description: Requires the METER_DATA.DELETE permission.
tags:
- ingest
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/MeterData'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/MeterDataCreateRequest'
/v{version}/ingest/meter-data/{resourceId}:
get:
operationId: getIngestMeterDataByResourceId
summary: Get an event by ID
description: Requires the METER_DATA.VIEW permission.
tags:
- ingest
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: resourceId
in: path
description: The ID of the resource to be requested.
required: true
schema:
type: string
default: ''
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/MeterData'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
/v{version}/ingest/meter-data/{resourceId}/event_trace:
get:
operationId: getIngestMeterDataByResourceIdEvent_trace
summary: Get the event trace history of the event.
description: Requires the METER_DATA.EVENT_TRACE.VIEW permission.
tags:
- ingest
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: resourceId
in: path
description: The ID of the resource to be requested.
required: true
schema:
type: string
default: ''
- name: expand[]
in: query
description: The id fields of the resources that are going to be expanded.
required: false
schema:
type: array
items:
type: string
- name: cost_prediction
in: query
description: The option to return cost prediction.
required: false
schema:
type: boolean
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/EventTrace'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
/v{version}/ingest/meter-data/{resourceId}/delete:
post:
operationId: postIngestMeterDataByResourceIdDelete
summary: Mark an event as deleted
description: Requires the METER_DATA.DELETE permission.
tags:
- ingest
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: resourceId
in: path
description: The ID of the resource for which the action is posted.
required: true
schema:
type: string
default: ''
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/MeterData'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
/v{version}/ingest/meter-datas:
post:
operationId: postIngestMeterDatas
summary: Ingest a list of meter events
description: Requires the METER_DATA.INGEST permission.
tags:
- ingest
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: cost_prediction
in: query
description: The option to return cost prediction.
required: false
schema:
type: boolean
- name: meter_validation
in: query
description: The validation strategy applied to the referenced meter. STATIC (the default) requires the meter, its values and properties to already exist. DYNAMIC creates the meter and its missing values/properties/enum values on the fly during ingest.
required: false
schema:
type: string
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/MeterDatas'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/MeterDatasCreateRequest'
/v{version}/ingest/persist-data:
post:
operationId: postIngestPersistData
summary: Ingest persist events
description: Requires the METER_DATA.INGEST permission.
tags:
- ingest
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/PersistData'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PersistDataCreateRequest'
/v{version}/events:
get:
operationId: getEvents
summary: Get a list of events for provided filters
description: Requires the METER_DATA.VIEW permission.
tags:
- ingest
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: customer_id
in: query
description: The resource id of the customer.
required: false
schema:
type: string
- name: reference
in: query
description: The reference of the ingest.
required: false
schema:
type: string
- name: meter_id
in: query
description: The resource id of the meter.
required: false
schema:
type: string
- name: deleted
in: query
description: Filter the response by deleted field value.
required: false
schema:
type: boolean
- name: processed_details_type
in: query
description: 'Filter the response by processing_details.type value. Ex.: NOT_MATCHED, DUPLICATE'
required: false
schema:
type: string
- name: expand[]
in: query
description: The id fields of the resources that are going to be expanded.
required: false
schema:
type: array
items:
type: string
- name: limit
in: query
description: The amount of records shown in the list
required: false
schema:
type: integer
- name: page
in: query
description: The page which is going to be shown
required: false
schema:
type: integer
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/IngestDataResponseWrapper'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
/v{version}/events/delete:
post:
operationId: postEventsDelete
summary: Mark an event as deleted
description: Requires the METER_DATA.DELETE permission.
tags:
- ingest
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/MeterData'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/MeterDataCreateRequest'
/v{version}/events/ingest:
post:
operationId: postEventsIngest
summary: Ingest an event
description: Requires the METER_DATA.INGEST permission.
tags:
- ingest
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: cost_prediction
in: query
description: The option to return cost prediction.
required: false
schema:
type: boolean
- name: meter_validation
in: query
description: The validation strategy applied to the referenced meter. STATIC (the default) requires the meter, its values and properties to already exist. DYNAMIC creates the meter and its missing values/properties/enum values on the fly during ingest.
required: false
schema:
type: string
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/MeterData'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/MeterDataCreateRequest'
/v{version}/events/ingest-list:
post:
operationId: postEventsIngestList
summary: Ingest a list of meter events
description: Requires the METER_DATA.INGEST permission.
tags:
- ingest
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: cost_prediction
in: query
description: The option to return cost prediction.
required: false
schema:
type: boolean
- name: meter_validation
in: query
description: The validation strategy applied to the referenced meter. STATIC (the default) requires the meter, its values and properties to already exist. DYNAMIC creates the meter and its missing values/properties/enum values on the fly during ingest.
required: false
schema:
type: string
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/MeterDatas'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/MeterDatasCreateRequest'
/v{version}/events/calculate:
post:
operationId: postEventsCalculate
summary: Calculate the costs for an event
description: Requires the METER_DATA.INGEST permission.
tags:
- ingest
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: cost_prediction
in: query
description: The option to return cost prediction.
required: false
schema:
type: boolean
- name: meter_validation
in: query
description: The validation strategy applied to the referenced meter. STATIC (the default) requires the meter, its values and properties to already exist. DYNAMIC creates the meter and its missing values/properties/enum values on the fly during ingest.
required: false
schema:
type: string
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/MeterData'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/MeterDataCreateRequest'
/v{version}/events/{resourceId}:
get:
operationId: getEventsByResourceId
summary: Get an event by ID
description: Requires the METER_DATA.VIEW permission.
tags:
- ingest
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: resourceId
in: path
description: The ID of the resource to be requested.
required: true
schema:
type: string
default: ''
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/MeterData'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
/v{version}/events/{resourceId}/event_trace:
get:
operationId: getEventsByResourceIdEvent_trace
summary: Get the event trace history of the event.
description: Requires the METER_DATA.EVENT_TRACE.VIEW permission.
tags:
- ingest
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: resourceId
in: path
description: The ID of the resource to be requested.
required: true
schema:
type: string
default: ''
- name: expand[]
in: query
description: The id fields of the resources that are going to be expanded.
required: false
schema:
type: array
items:
type: string
- name: cost_prediction
in: query
description: The option to return cost prediction.
required: false
schema:
type: boolean
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/EventTrace'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
# --- truncated at 32 KB (245 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/solvimon/refs/heads/main/openapi/solvimon-ingest-api-openapi.yml