Overops General API
Fetch general information about provisioned OverOps enviroments
Fetch general information about provisioned OverOps enviroments
openapi: 3.0.0
info:
version: v1
title: Services Alerts General API
contact:
email: hello@overops.com
description: "Main OverOps API.\nThe REST API layer enables OverOps admins and users to perform and automate all actions\nprovided by the OverOps UI available at https://app.overops.com (or On-premises equivalent URL) via a platform independent programmatic interface.\nA wrapper Java client API library that leverages these APIs for convenience by\nJava and Scala developers is available at https://github.com/takipi/api-client and on Maven Central.\n\nAll calls must be authenticated using one of the following methods:\n 1. Using `x-api-key` header (To generate the token, go to `Settings` --> `Account Settings` in the OverOps App). This is the recommended method.\n 2. Using Basic auth with `username:password` combo.\n"
servers:
- url: https://api.overops.com/api/v1
security:
- basicAuth: []
- ApiKeyAuth: []
tags:
- name: General
description: Fetch general information about provisioned OverOps enviroments
paths:
/services:
get:
tags:
- General
summary: List all environments
description: List all environments accessible to the calling user
parameters:
- in: query
name: name
description: Environment key name
schema:
type: string
responses:
'200':
description: List of all accessible environments to the calling user
content:
'*/*':
schema:
type: object
properties:
services:
type: array
description: list of environment
items:
$ref: '#/components/schemas/EnvironmentWithRole'
'401':
$ref: '#/components/responses/UnauthorizedError'
put:
tags:
- General
summary: Generate a new environment key
description: Defines a new environment
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
responses:
'200':
description: New environment key properties
content:
'*/*':
schema:
$ref: '#/components/schemas/EnvironmentBasic'
'401':
$ref: '#/components/responses/UnauthorizedError'
/services/{env_id}:
get:
tags:
- General
summary: Get information about an environment
description: Get information about an environment
parameters:
- in: path
name: env_id
description: Environment ID to use (e.g. S1234)
required: true
schema:
type: string
responses:
'200':
description: Environment data
content:
'*/*':
schema:
type: object
properties:
services:
type: array
description: Data for a single environment
items:
$ref: '#/components/schemas/EnvironmentBasic'
post:
tags:
- General
summary: Rename an environment
description: Rename an environment. This call is allowed for admins only
parameters:
- in: path
name: env_id
description: Environment ID to use (e.g. S1234)
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
properties:
name:
type: string
responses:
'200':
description: Updated environment properties
content:
'*/*':
schema:
$ref: '#/components/schemas/EnvironmentBasic'
'401':
$ref: '#/components/responses/UnauthorizedError'
/services/{env_id}/settings:
get:
tags:
- General
summary: Get environment settings
description: Get environment settings
parameters:
- in: path
name: env_id
description: Environment ID to use (e.g. S1234)
required: true
schema:
type: string
responses:
'200':
$ref: '#/components/responses/TBD'
'401':
$ref: '#/components/responses/UnauthorizedError'
/services/{env_id}/servers:
get:
tags:
- General
summary: List servers
description: List all (or just active) servers that were used to monitor applications. These can be either the IP/Hostname of a host or a cluster identifier. [How to name your Server](https://doc.overops.com/docs/naming-your-application-server-deployment)
parameters:
- in: path
name: env_id
description: Environment ID to use (e.g. S1234)
required: true
schema:
type: string
- in: query
name: active
description: Show only active servers
schema:
type: boolean
responses:
'200':
description: List of servers
content:
'*/*':
schema:
properties:
servers:
type: array
items:
$ref: '#/components/schemas/Server'
'401':
$ref: '#/components/responses/UnauthorizedError'
/services/{env_id}/applications:
get:
tags:
- General
summary: List applications
description: List all (or just active) applications that were used to monitor applications. These can be either an application name, an integration suite name or a specific instance. [How to name your Application](https://doc.overops.com/docs/naming-your-application-server-deployment)
parameters:
- in: path
name: env_id
description: Environment ID to use (e.g. S1234)
required: true
schema:
type: string
- in: query
name: active
description: Show only active applications
schema:
type: boolean
responses:
'200':
description: List of applications
content:
'*/*':
schema:
properties:
applications:
type: array
items:
$ref: '#/components/schemas/Application'
'401':
$ref: '#/components/responses/UnauthorizedError'
/services/{env_id}/deployments:
get:
tags:
- General
summary: List deployments
description: List all (or just active) deployments that were monitoring in the environment. These can be either the Jenkins build number, Git commit, Maven version, etc. [How to tag your deployment](https://doc.overops.com/docs/naming-your-application-server-deployment)
parameters:
- in: path
name: env_id
description: Environment ID to use (e.g. S1234)
required: true
schema:
type: string
- in: query
name: active
description: Show only active deployments
schema:
type: boolean
responses:
'200':
description: List of deployments
content:
'*/*':
schema:
properties:
deployments:
type: array
items:
$ref: '#/components/schemas/Deployment'
'401':
$ref: '#/components/responses/UnauthorizedError'
/services/{env_id}/settings/storage-settings:
get:
tags:
- General
summary: Get storage settings of an environment
description: In Hybrid OverOps installation, data collected from your JVMs is locally redacted for PII and encrypted using your private encryption key before it is stored in a server that resides behind your firewall. Use this API call to fetch the current settings of your storage server. Visit OverOps [On-Premises Data Installation](https://doc.overops.com/docs/hybrid-installation) for full information
parameters:
- in: path
name: env_id
description: Environment to use
required: true
schema:
type: string
responses:
'200':
description: Storage settings
content:
'*/*':
schema:
$ref: '#/components/schemas/StorageSettings'
'401':
$ref: '#/components/responses/UnauthorizedError'
'404':
$ref: '#/components/responses/NotFoundError'
post:
tags:
- General
summary: Set storage settings for a service
description: In Hybrid OverOps installation, data collected from your JVMs is locally redacted for PII and encrypted using your private encryption key before it is stored in a server that resides behind your firewall. This API call allows you to configure your storage server as part of your Hybrid OverOps setup. Visit OverOps [On-Premises Data Installation](https://doc.overops.com/docs/hybrid-installation) for full information
parameters:
- in: path
name: env_id
description: Environment to use
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/StorageSettings'
required: true
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/BadRequestError'
'401':
$ref: '#/components/responses/UnauthorizedError'
'404':
$ref: '#/components/responses/NotFoundError'
/services/{env_id}/settings/advanced-settings:
get:
tags:
- General
summary: Get advanced settings for an environment
description: Get advanced settings for an environment
parameters:
- in: path
name: env_id
description: Environment to use
required: true
schema:
type: string
responses:
'200':
description: Environment advanced settings
content:
'*/*':
schema:
$ref: '#/components/schemas/EnvironmentAdvancedSettings'
'401':
$ref: '#/components/responses/UnauthorizedError'
'404':
$ref: '#/components/responses/NotFoundError'
post:
tags:
- General
summary: Set advanced settings for an environment
description: Set advanced settings for an environment
parameters:
- in: path
name: env_id
description: Environment to use
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/EnvironmentAdvancedSettings'
required: true
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/BadRequestError'
'401':
$ref: '#/components/responses/UnauthorizedError'
'404':
$ref: '#/components/responses/NotFoundError'
/services/{env_id}/settings/reliability-settings:
get:
tags:
- General
summary: Fetch reliability settings JSON
description: Fetch reliability settings JSON which defines all the thresholds and preferences for OverOps reliability tools - Grafana dashboards, Jenkins plugin, etc.
parameters:
- in: path
name: env_id
description: Environment to use
required: true
schema:
type: string
responses:
'200':
description: Reliability dashboards settings JSON
content:
'*/*':
schema:
type: object
properties:
reliability_settings_json:
type: string
format: binary
'401':
$ref: '#/components/responses/UnauthorizedError'
'404':
$ref: '#/components/responses/NotFoundError'
post:
tags:
- General
summary: Upload reliability settings JSON
description: Upload reliability settings JSON which defines all the thresholds and preferences for OverOps reliability tools - Grafana dashboards, Jenkins plugin, etc.
parameters:
- in: path
name: env_id
description: Environment to use
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
type: object
properties:
reliability_settings_json:
type: string
format: binary
required: true
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/BadRequestError'
'401':
$ref: '#/components/responses/UnauthorizedError'
'404':
$ref: '#/components/responses/NotFoundError'
components:
schemas:
EnvironmentBasic:
type: object
description: Basic information about a environment
properties:
id:
type: string
example: S100
name:
type: string
example: Pre-prod
full_key:
type: string
example: S35817XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Deployment:
type: object
properties:
name:
type: string
example: stage1.0.4
active:
type: boolean
example: true
first_seen:
type: string
description: Indicates the time when the deployment was first detected by OverOps
example: '2018-02-28T22:47:09.038Z'
last_seen:
type: string
description: The last time when the deployment was seen by OverOps
example: '2018-03-01T08:08:08.001Z'
EnvironmentAdvancedSettings:
type: object
description: Advanced settings for an environment
properties:
allowed_ips:
type: array
description: Limit access to a list of selected IPs
items:
type: string
example: 127.0.0.1
show_rethrows:
type: boolean
description: Show exception rethrows in the dashboard
example: true
show_log_links:
type: boolean
description: Enable log links for exceptions (requires JVM restart, supported in version 4.9.0 or above)
example: false
clear_env_filters:
type: boolean
description: Clear servers, applications and deployments filters when moving between views
example: false
enhanced_decompilation:
type: boolean
description: Enable enhanced decompilation (This will use raw bytecode but won't store it)
example: true
StorageSettings:
type: object
properties:
type:
type: string
enum:
- HYBRID
- HOSTED
example: HYBRID
hostname:
description: Relevant for hybrid storage only. Both hostname and ip may be used. For cloud storage, NA value will be returned
type: string
example: storage.company.com
frontend_hostname:
description: OPTIONAL Relevant for hybrid storage only. Both hostname and ip may be used. For cloud storage, NA value will be returned
type: string
example: 123.91.12.100
Application:
type: object
properties:
name:
type: string
example: jobs-api
active:
type: boolean
example: true
first_seen:
type: string
description: Indicates the time when the application was first detected by OverOps
example: '2018-02-28T22:47:09.038Z'
last_seen:
type: string
description: The last time when the application was seen by OverOps
example: '2018-03-01T08:08:08.001Z'
EnvironmentWithRole:
type: object
description: Environment data including user's role
properties:
id:
type: string
example: S100
name:
type: string
example: Pre-prod
full_key:
type: string
example: S35817XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
role:
type: string
description: user's role in the environment
example: admin
Server:
type: object
properties:
name:
type: string
example: ip57-110-0-18
active:
type: boolean
example: true
first_seen:
type: string
description: Indicates the time when the server was first detected by OverOps
example: '2018-02-28T22:47:09.038Z'
last_seen:
type: string
description: The last time when the server was seen by OverOps
example: '2018-03-01T08:08:08.001Z'
responses:
TBD:
description: TBD
NotFoundError:
description: Not Found
OK:
description: OK
UnauthorizedError:
description: Unauthorized
BadRequestError:
description: Bad Request
securitySchemes:
basicAuth:
type: http
scheme: basic
ApiKeyAuth:
type: apiKey
in: header
name: X-API-KEY