openapi: 3.2.0 info: version: 1.3.1 title: Metrics API description: This API enables you to create metrics and manage metrics policies. termsOfService: https://www.moogsoft.com/legal-information/express-terms-conditions/ contact: name: API Support url: https://docs.moogsoft.com/en/moogsoft-apis.html email: support@moogsoft.com license: url: https://www.moogsoft.com/legal-information name: Apex AIOps Incident Management Proprietary servers: - url: https://api.moogsoft.ai - url: https://api.dev.moogsoft.cloud security: - ApiKeyAuth: [] tags: - name: Metrics description: Metrics Generation for Moogsoft Cloud paths: /v1/integrations/metrics/telegraf-json: post: tags: - Metrics summary: Process metrics from the Telegraf JSON format description: 'Will accept a batch of metrics per the Telegraf JSON format here: https://docs.influxdata.com/telegraf/v1.19/data_formats/output/json/' operationId: postTelegrafMetric requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/TelegrafMetricsDto' responses: '202': description: Metric(s) accepted content: application/json: schema: $ref: '#/components/schemas/MoogResponse' '400': description: Bad Request '404': description: Requested object(s) not found content: application/json: schema: $ref: '#/components/schemas/MoogFailureResponse' 4XX: description: Authorization or other error content: application/json: schema: $ref: '#/components/schemas/MoogFailureResponse' 5XX: description: Error content: application/json: schema: $ref: '#/components/schemas/MoogErrorResponse' security: - ApiKeyAuth: [] servers: - url: https://api.moogsoft.ai - url: https://api.dev.moogsoft.cloud x-permissions: value: [] description: Required user permissions for this endpoint /v1/integrations/metrics/prometheus-remote-write: post: tags: - Metrics summary: Prometheus remote-write description: Accept one or more metrics via Prometheus remote-write protocol operationId: postPromRemoteWriteMetric parameters: - name: Content-Encoding in: header schema: type: string - name: X-Prometheus-Remote-Write-Version in: header schema: type: string - name: fqm-override in: query schema: type: string default: moog:integration:prometheus requestBody: required: true content: application/x-protobuf: schema: type: string contentMediaType: application/octet-stream responses: '200': description: Metric(s) accepted content: application/x-protobuf: {} '400': description: Invalid parameters or data validation violation content: application/json: schema: $ref: '#/components/schemas/MoogFailureResponse' '404': description: Requested object(s) not found content: application/json: schema: $ref: '#/components/schemas/MoogFailureResponse' 4XX: description: Authorization or other error content: application/json: schema: $ref: '#/components/schemas/MoogFailureResponse' 5XX: description: Error content: application/json: schema: $ref: '#/components/schemas/MoogErrorResponse' security: - ApiKeyAuth: [] servers: - url: https://api.moogsoft.ai - url: https://api.dev.moogsoft.cloud x-permissions: value: [] description: Required user permissions for this endpoint /v1/integrations/metrics: post: tags: - Metrics summary: Create one or more metrics description: Creates a single metric or a list of metrics operationId: postMetric requestBody: required: true content: application/json: schema: type: array minItems: 1 items: $ref: '#/components/schemas/WebMetricDto' responses: '202': description: Metric(s) accepted content: application/json: schema: $ref: '#/components/schemas/MoogResponse' '400': description: Bad Request '404': description: Requested object(s) not found content: application/json: schema: $ref: '#/components/schemas/MoogFailureResponse' 4XX: description: Authorization or other error content: application/json: schema: $ref: '#/components/schemas/MoogFailureResponse' 5XX: description: Error content: application/json: schema: $ref: '#/components/schemas/MoogErrorResponse' security: - ApiKeyAuth: [] servers: - url: https://api.moogsoft.ai - url: https://api.dev.moogsoft.cloud components: schemas: TelegrafMetric: type: object title: Telegraf Metric properties: fields: type: object minProperties: 1 name: type: string timestamp: type: integer format: int64 tags: type: object additionalProperties: type: string required: - fields - name - timestamp MoogErrorResponse: type: object description: Metrics API error response body properties: status: type: string description: Error status indicator (always "error") examples: - error message: type: string additional: type: array items: type: string required: - status - message WebMetricDto: type: object title: Web Metric Dto properties: metric: type: string description: A human-readable description of the metric examples: - your-metric data: type: number description: The numerical value of the data point examples: - 10 source: type: string description: The server, node, or other entity that generated the metric. tags.source used if source is missing. maxLength: 32500 examples: - www.your-source.com uuid: type: string fqm: type: string unit: type: string description: Optional, one of p, b, r, mb, %, kb, gb, + examples: - kb key: type: string description: This field is useful for classifying different metrics that share the same description examples: - eth0 time: type: integer description: Time of event, seconds or milliseconds since Jan 1, 1970 UTC. If not specified, arrival time is used. format: int64 utc_offset: type: string description: An offset to apply to a provided metric time in offset GMT offset form examples: - GMT+02:00 class: type: string tags: type: object required: - metric - data - source TelegrafMetricsDto: type: object title: Telegraf Metrics Dto properties: metrics: type: array minItems: 1 items: $ref: '#/components/schemas/TelegrafMetric' required: - metrics MoogFailureResponse: type: object description: Metrics API failure response body properties: status: type: string description: Failure status indicator (always "failure") examples: - failure message: type: string additional: type: array items: type: string required: - status - message MoogResponse: type: object title: Moog Response properties: status: type: string description: Success status indicator (always "success") data: {} required: - status securitySchemes: ApiKeyAuth: type: apiKey description: API Key for accessing Metrics API name: apiKey in: header externalDocs: url: https://docs.moogsoft.com/en/moogsoft-apis.html description: Find out more about Apex AIOps Incident Management