REST API Reference

Self-generated documentation based on Meshery’s Open API specification for it’s REST API. Meshery’s REST API can be explored interactively using the Swagger UI Playground.

Endpoints

/api/application/

GET Handle GET request for Application Files

Description

Returns requests for all Meshery Applications

Responses
200 Returns all meshery applications
Name Format Type
applications Object array
page uint64 integer
page_size uint64 integer
total_count uint64 integer

POST Handle POST request for Application Files

Description

Save attached Meshery Application File

Responses
200 Fetches a single Meshery Application
Name Format Type
application_file Object string
created_at date-time string
id Object array
location Object object
name Object string
source_content Object array
type Object object
updated_at date-time string
user_id Object string

/api/application/deploy

POST

Description

Handle POST request for Application File Deploy Deploy an attached application file with the request

Parameters
Name Located in Description Type
Upload Yaml/Yml File formData File

Responses
200 Returns the response of the application files
Name Format Type
application_file Object string
created_at date-time string
id Object array
location Object object
name Object string
source_content Object array
type Object object
updated_at date-time string
user_id Object string

DELETE Handle DELETE request for Application File Deploy

Description

Delete a deployed application file with the request

Responses
200

/api/application/{id}

GET Handle GET request for Meshery Application with the given id

Description

Fetches the list of all applications saved by the current user

Parameters
Name Located in Description Type
id path id for a specific String

Responses
200 Fetches a single Meshery Application
Name Format Type
application_file Object string
created_at date-time string
id Object array
location Object object
name Object string
source_content Object array
type Object object
updated_at date-time string
user_id Object string

DELETE Handle Delete for a Meshery Application File

Description

Deletes a meshery application file with ID: id

Parameters
Name Located in Description Type
id path id for a specific String

Responses
200

/api/filter

GET Handle GET request for all filters

Description

Returns all the Meshery Filters saved by the current user

Responses
200 Returns all meshery filters
Name Format Type
filters Object array
page uint64 integer
page_size uint64 integer
total_count uint64 integer

POST Handle POST requests for Meshery Filters

Description

Used to save/update a Meshery Filter

Responses
200 Returns a single meshery filter
Name Format Type
created_at date-time string
filter_file Object string
id Object array
location Object object
name Object string
updated_at date-time string
user_id Object string

/api/filter/deploy

POST Handle POST request for Filter File Deploy

Description

Deploy an attached filter file with the request

Responses
200 Returns the response of the Filter files
Name Format Type
created_at date-time string
filter_file Object string
id Object array
location Object object
name Object string
updated_at date-time string
user_id Object string

DELETE Handle DELETE request for Filter File Deploy

Description

Delete a deployed filter file with the request

Responses
200

/api/filter/file/{id}

GET Handle GET request for filter file with given id

Description

Returns the Meshery Filter file saved by the current user with the given id

Responses
200 Returns a single meshery filter
Name Format Type
created_at date-time string
filter_file Object string
id Object array
location Object object
name Object string
updated_at date-time string
user_id Object string

/api/filter/{id}

GET Handle GET request for a Meshery Filter

Description

Fetches the Meshery Filter with the given id

Parameters
Name Located in Description Type
id path id for a specific String

Responses
200 Returns a single meshery filter
Name Format Type
created_at date-time string
filter_file Object string
id Object array
location Object object
name Object string
updated_at date-time string
user_id Object string

DELETE Handle Delete for a Meshery Filter

Description

Deletes a meshery filter with ID: id

Parameters
Name Located in Description Type
id path id for a specific String

Responses
200

/api/meshmodel/validate

POST Handle POST request for validate

Description

Validate the given value with the given schema

Responses
200

/api/oam/{type}

GET Handles the get requests for the OAM objects

Description

Getting list of workloads/traits/scopes {type} being of either trait, scope, workload; registration of adapter capabilities. Example: /api/oam/workload => Here {type} is "workload"

Responses
200

POST Handles registering OMA objects

Description

Adding a workload/trait/scope {type} being of either trait, scope, workload; registration of adapter capabilities. Example: /api/oam/trait => Here {type} is "trait"

Responses
200

/api/oam/{type}/{name}

GET Handles GET requests for component details for OAM objects

Description

Returns component details of a workload/trait/scope by given name in the URL {type} being of either trait, scope, workload; registration of adapter capabilities. Example: /api/oam/workload/Application => Here {type} is "workload" and {name} is "Application" it should be noted that both {type} and {name} should be valid

Responses
200

/api/oam/{type}/{name}/{id}

GET Handles GET requests for component details for OAM objects

Description

Returns details of a workload/trait/scope by given name and id in the URL {type} being of either trait, scope, workload; registration of adapter capabilities. Example: /api/oam/workload/Application/asdqe123sa275sasd => Here {type} is "workload" {name} is "Application" and {id} is "asdqe123sa275sasd". It should be noted that all of three, i.e {type}, {name} and {id} must be valid

Responses
200

/api/pattern

GET Handle GET request for patterns

Description

Returns the list of all the patterns saved by the current user This will return all the patterns with their details

Responses
200 Returns all meshery patterns
Name Format Type
page uint64 integer
page_size uint64 integer
patterns Object array
total_count uint64 integer

POST Handle POST requests for patterns

Description

Edit/update a meshery pattern

Responses
200 Returns a single meshery pattern
Name Format Type
created_at date-time string
id Object array
location Object object
name Object string
pattern_file Object string
updated_at date-time string
user_id Object string

/api/pattern/deploy

POST Handle POST request for Pattern Deploy

Description

Deploy an attached pattern with the request

Parameters
Name Located in Description Type
Upload Yaml/Yml File formData File

Responses
200

DELETE Handle DELETE request for Pattern Deploy

Description

Delete a deployed pattern with the request

Responses
200

/api/pattern/{id}

GET Handle GET for a Meshery Pattern

Description

Fetches the pattern with the given id

Parameters
Name Located in Description Type
id path id for a specific String

Responses
200 Returns a single meshery pattern
Name Format Type
created_at date-time string
id Object array
location Object object
name Object string
pattern_file Object string
updated_at date-time string
user_id Object string

DELETE Handle Delete for multiple Meshery Patterns

Description

DeleteMultiMesheryPatternsHandler deletes patterns with the given ids

Parameters
Name Located in Description Type
id path id for a specific String

Responses
200

/api/patterns

DELETE Handle Delete for multiple Meshery Patterns

Description

DeleteMultiMesheryPatternsHandler deletes patterns with the given ids

Parameters
Name Located in Description Type
id path id for a specific String

Responses
200

/api/perf/profile

GET Handle GET request to run a test

Description

Runs the load test with the given parameters

Parameters
Name Located in Description Type
Query query PerformanceTestParameters contains parameters to run a performance test Object
Body body Unknown

Responses
200

/api/perf/profile/result

GET Handles GET requests for perf results

Description

Returns pages of all the perf results from Remote Provider

Responses
200 Returns all performance results
Name Format Type
page uint64 integer
page_size uint64 integer
results Object array
total_count uint64 integer

/api/perf/profile/result/{id}

GET Handles GET requests for perf result

Description

Returns an individual result from provider

Responses
200 Returns Single test result
Name Format Type
ActualQPS double number
DetailsURI Object string
EndTime date-time string
EnvID Object string
Latencies Object object
MeshConfigID Object string
SMPVersion Object string
StartTime date-time string
TestID Object string

/api/provider

GET Handle GET request for the choice of provider

Description

Update the choice of provider in system

Parameters
Name Located in Description Type
provider query String

Responses
200

/api/provider/capabilities

GET Handle GET requests for Provider

Description

Returns the capabilities.json for the provider

Responses
200

/api/provider/extension

GET Handle GET request for React Components

Description

handles the requests to serve react components from the provider package

Responses
200

/api/providers

GET Handle GET request for list of providers

Description

Returns the available list of providers

Responses
200 Returns a list of available providers

/api/system/adapter/manage

POST Handle POST requests to persist adapter config

Description

Used to persist adapter config

Parameters
Name Located in Description Type
meshLocationURL body Unknown

Responses
200 Returns all the meshery adapters

DELETE Handle DELETE requests to delete adapter config

Description

Used to delete adapter configuration

Parameters
Name Located in Description Type
adapter query String

Responses
200

/api/system/adapter/operation

POST Handle POST requests for Adapter Operations

Description

Used to send operations to the adapters

Parameters
Name Located in Description Type
adapter query String
query query String
customBody query String
namespace query String
deleteOp query String

Responses
200

/api/system/adapters

GET Handle GET request for adapters

Description

Fetches and returns all the adapters and ping adapters

Parameters
Name Located in Description Type
adapter query String

Responses
200 Return all the adapters

/api/system/kubernetes

POST Handle POST request for Kubernetes Config

Description

Used to add kubernetes config to System

Responses
200 Returns saved kubernetes config

DELETE Handle DELETE request for Kubernetes Config

Description

Used to delete kubernetes config to System

Responses
200

/api/system/kubernetes/contexts

POST Handle POST requests for Kubernetes Context list

Description

Returns the context list for a given k8s config

Responses
200 Returns kubernetes context list

/api/system/kubernetes/ping?contexts={id}

GET Handle GET request for Kubernetes ping

Description

Fetches server version to simulate ping

Responses
200

/api/system/meshsync/grafana

GET Handle GET request for mesh-sync grafana

Description

Fetches Prometheus and Grafana

Responses
200 Returns a map for v1 services

/api/system/meshsync/prometheus

GET Handle GET request for fetching prometheus

Description

Fetches Prometheus

Responses
200 Returns a map for v1 services

/api/system/sync

GET Handle GET request for config sync

Description

Used to send session data to the UI for initial sync

Responses
200 Returns User Load Test Preferencee
Name Format Type
anonymousPerfResults Object boolean
anonymousUsageStats Object boolean
grafana Object object
loadTestPrefs Object object
meshAdapters Object array
prometheus Object object
updated_at date-time string
usersExtensionPreferences Object object

/api/system/version

GET Handle GET request for system/server version

Description

Returns the running Meshery version

Responses
200 Returns Meshery version
Name Format Type
build Object string
commitsha Object string
latest Object string
outdated Object boolean
release_channel Object string

/api/telemetry/metrics/board_import

POST Handle POST request for Prometheus board import

Description

Used for importing Grafana board for Prometheus

Responses
200 Response for prometheus board import
Name Format Type
org_id uint64 integer
panels Object array
slug Object string
template_vars Object array
title Object string
uid Object string
uri Object string

/api/telemetry/metrics/boards

POST Handle POST request for Prometheus board

Description

Used to persist selected board and panels

Parameters
Name Located in Description Type
Body body Unknown

Responses
200

/api/telemetry/metrics/config

GET Handle GET for Prometheus configuration

Description

Used for fetching Prometheus configuration

Responses
200 Returns prometheus configuration
Name Format Type
prometheusURL Object string
selectedPrometheusBoardsConfigs Object array

POST Handle POST for Prometheus configuration

Description

Used for persisting Prometheus configuration

Parameters
Name Located in Description Type
prometheusURL body Unknown

Responses
200

DELETE Handle DELETE for Prometheus configuration

Description

Used for deleting Prometheus configuration

Responses
200

/api/telemetry/metrics/grafana/boards

GET Handle GET request for Grafana boards

Description

Used for fetching Grafana boards and panels

Parameters
Name Located in Description Type
dashboardSearch query String

Responses
200 Returns Grafana boards and panels

POST Handle POST request for Grafana boards

Description

Used for persist Grafana boards and panel selections

Responses
200

/api/telemetry/metrics/grafana/config

GET Handle GET request for Grafana configuration

Description

Used for fetching Grafana configuration

Responses
200 Returns Grafana configs
Name Format Type
grafanaAPIKey Object string
grafanaURL Object string
selectedBoardsConfigs Object array

POST Handle POST request for Grafana configuration

Description

Used for persisting Grafana configuration

Parameters
Name Located in Description Type
Body body Unknown

Responses
200

DELETE Handle DELETE request for Grafana configuration

Description

Used for Delete Grafana configuration

Responses
200

/api/telemetry/metrics/grafana/ping

GET Handle GET request for Grafana ping

Description

Used to initiate a Grafana ping

Responses
200

/api/telemetry/metrics/grafana/query

GET Handle GET request for Grafana queries

Description

Used for handling Grafana queries

Responses
200

/api/telemetry/metrics/grafana/scan

GET Handle GET request for Grafana

Description

Fetches and returns Grafana

Responses
200 Returns a map for v1 services

/api/telemetry/metrics/ping

GET Handle GET request for Prometheus Ping

Description

Used to ping prometheus

Responses
200

/api/telemetry/metrics/query

GET Handle GET request for Prometheus Query

Description

Used to prometheus queries

Responses
200

/api/telemetry/metrics/static-board

GET Handle GET request for Prometheus static board

Description

Used to fetch the static board

Responses
200 Returns Prometheus static board

/api/user/login

GET Handlers GET request for User login

Description

Redirects user for auth or issues session

Responses
200

/api/user/logout

GET Handlers GET request for User logout

Description

Redirects user for auth or issues session

Responses
200

/api/user/performance/profiles

GET Handle GET requests for performance profiles

Description

Returns the list of all the performance profiles saved by the current user

Responses
200 Returns all the performance profiles
Name Format Type
page uint64 integer
page_size uint64 integer
profiles Object array
total_count uint64 integer

POST Handle POST requests for saving performance profile

Description

Save performance profile using the current provider's persistence mechanism

Parameters
Name Located in Description Type
Body body Unknown

Responses
200 Returns a single performance profile
Name Format Type
concurrent_request int64 integer
content_type Object string
created_at Object object
duration Object string
endpoints Object array
id Object array
last_run Object object
load_generators Object array
name Object string
qps int64 integer
request_body Object string
request_cookies Object string
request_headers Object string
schedule Object array
service_mesh Object string
total_results int64 integer
updated_at Object object

/api/user/performance/profiles/results

GET Handles GET requests for performance results

Description

Returns pages of all the performance results from Remote Provider

Responses
200 Returns all performance results
Name Format Type
page uint64 integer
page_size uint64 integer
results Object array
total_count uint64 integer

/api/user/performance/profiles/{id}

GET Handle GET requests for performance results of a profile

Description

Returns single performance profile with the given id

Parameters
Name Located in Description Type
id path id for a specific String

Responses
200 Returns a single performance profile
Name Format Type
concurrent_request int64 integer
content_type Object string
created_at Object object
duration Object string
endpoints Object array
id Object array
last_run Object object
load_generators Object array
name Object string
qps int64 integer
request_body Object string
request_cookies Object string
request_headers Object string
schedule Object array
service_mesh Object string
total_results int64 integer
updated_at Object object

DELETE Handle Delete requests for performance profiles

Description

Deletes a performance profile with the given id

Parameters
Name Located in Description Type
id path id for a specific String

Responses
200

/api/user/performance/profiles/{id}/results

GET Handle GET request for results of a profile

Description

Fetchs pages of results from Remote Provider for the given id

Parameters
Name Located in Description Type
id path id for a specific String

Responses
200 Returns all performance results
Name Format Type
page uint64 integer
page_size uint64 integer
results Object array
total_count uint64 integer

/api/user/performance/profiles/{id}/run

GET Handle GET request to run a performance test

Description

Runs the load test with the given parameters

Parameters
Name Located in Description Type
Body query PerformanceTestParameters contains parameters to run a performance test Object

Responses
200

/api/user/prefs

GET Handle GET for User Load Test Preferences

Description

Returns User Load Test Preferences

Responses
200 Returns User Load Test Preferencee
Name Format Type
anonymousPerfResults Object boolean
anonymousUsageStats Object boolean
grafana Object object
loadTestPrefs Object object
meshAdapters Object array
prometheus Object object
updated_at date-time string
usersExtensionPreferences Object object

POST Handle GET for User Load Test Preferences

Description

Updates User Load Test Preferences

Responses
200 Returns User Load Test Preferencee
Name Format Type
anonymousPerfResults Object boolean
anonymousUsageStats Object boolean
grafana Object object
loadTestPrefs Object object
meshAdapters Object array
prometheus Object object
updated_at date-time string
usersExtensionPreferences Object object

/api/user/prefs/perf

GET Handle GET request for load test preferences

Description

Used for fetching load test preferences

Parameters
Name Located in Description Type
uuid query String

Responses
200 Returns load test preferences
Name Format Type
clients Object array
duration Object string
id Object string
labels Object object
name Object string
smp_version Object string

POST Handle POST request for load test preferences

Description

Used for persisting load test preferences

Parameters
Name Located in Description Type
Body body Unknown

Responses
200

DELETE Handle DELETE request for load test preferences

Description

Used for deleting load test preferences

Parameters
Name Located in Description Type
uuid query String

Responses
200

/api/user/schedules

GET Handle GET reqeuest for Schedules

Description

Returns the list of all the schedules saved by the current user

Responses
200 Returns List of saved schedules
Name Format Type
page uint64 integer
page_size uint64 integer
schedules Object array
total_count uint64 integer

POST Handle POST reqeuest for Schedules

Description

Save schedule using the current provider's persistence mechanism

Responses
200 Returns a single schedules
Name Format Type
cron_expression Object string
id Object array

/api/user/schedules/{id}

GET Handle GET reqeuest for Schedules

Description

Fetches and returns the schedule with the given id

Parameters
Name Located in Description Type
id path id for a specific String

Responses
200 Returns a single schedules
Name Format Type
cron_expression Object string
id Object array

DELETE Handle DELETE reqeuest for Schedules

Description

Deletes a schedule with the given id

Parameters
Name Located in Description Type
id path id for a specific String

Responses
200 Returns List of saved schedules
Name Format Type
page uint64 integer
page_size uint64 integer
schedules Object array
total_count uint64 integer

/api/user/token

GET Handle GET request for tokens

Description

Returns token from the actual provider in a file resposese: 200:

POST Handle POST request for tokens

Description

Receives token from the actual provider resposese: 200:

/provider

GET Handle GET request to provider UI

Description

Servers providers UI

Responses
200