REST API

Browse the Layer5 Cloud REST API inside the docs, powered by the shared OpenAPI schema.

To create integrations, retrieve data, and automate your cloud native infrastructure, build with the Layer5 Cloud REST API.

In order to authenticate to Layer5 Cloud’s REST API, you need to generate and use a security token. Visit your user account’s security tokens and generate a long-lived token. Security tokens remain valid until you revoke them, and you can issue as many as you need.

To authenticate with the API, pass the token as a bearer token in the Authorization header. For example, in cURL:

curl <protocol>://<Layer5-cloud-hostname>/api/identity/users/profile \
-H "Authorization: Bearer <token>"
  • Replace <protocol> with http or https depending on your Layer5 Cloud instance.
  • Replace <Layer5-cloud-hostname> with the hostname or IP address of your hosted Layer5 Cloud instance. For example, https://cloud.layer5.io.
  • Replace the path with the API endpoint you want to access.
  • Replace <token> with the security token you generated.

There are two ways to control the organization context for your API requests:

Include the layer5-current-orgid header with your organization’s ID to specify the target organization for a request:

curl -X GET "https://cloud.layer5.io/api/environments" \
 -H "Authorization: Bearer <Your-Token>" \
 -H "layer5-current-orgid: <Your-Organization-ID>"
const token = "Your-Token";
const orgId = "Your-Organization-ID";

async function listEnvironments() {
  const res = await fetch("https://cloud.layer5.io/api/environments", {
    method: "GET",
    headers: {
      Authorization: `Bearer ${token}`,
      "layer5-current-orgid": orgId,
    },
  });
  const data = await res.json();
  console.log(data);
}

listEnvironments();
import requests

url = "https://cloud.layer5.io/api/environments"
headers = {
    "Authorization": "Bearer <Your-Token>",
    "layer5-current-orgid": "<Your-Organization-ID>"
}

res = requests.get(url, headers=headers)
print(res.json())

Alternatively, you can set your default organization and workspace using the Preferences API. This sets your user preferences so that subsequent API requests will use the specified organization and workspace context:

# Set organization and workspace preferences
curl -X PUT "https://cloud.layer5.io/api/identity/users/preferences" \
 -H "Authorization: Bearer <Your-Token>" \
 -H "Content-Type: application/json" \
 -d '{
   "selectedOrganization": "<Your-Organization-ID>",
   "selectedWorkspace": "<Your-Workspace-ID>"
 }'
const token = "Your-Token";

async function setPreferences() {
  const res = await fetch("https://cloud.layer5.io/api/identity/users/preferences", {
    method: "PUT",
    headers: {
      Authorization: `Bearer ${token}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({
      selectedOrganization: "<Your-Organization-ID>",
      selectedWorkspace: "<Your-Workspace-ID>",
    }),
  });
  const data = await res.json();
  console.log(data);
}

setPreferences();
import requests
import json

url = "https://cloud.layer5.io/api/identity/users/preferences"
headers = {
    "Authorization": "Bearer <Your-Token>",
    "Content-Type": "application/json"
}
payload = {
    "selectedOrganization": "<Your-Organization-ID>",
    "selectedWorkspace": "<Your-Workspace-ID>"
}

res = requests.put(url, headers=headers, data=json.dumps(payload))
print(res.json())

The following example demonstrate how to retrieve information from the Academy REST APIs.

Use the Layer5 Cloud API to retrieve the total number of registered learners. Pass your Security Token as a Bearer token in the Authorization header (as shown in Authenticating with API). The response JSON includes an array of user objects.

curl -s -X GET "https://cloud.layer5.io/api/academy/cirricula"  \
 -H "Authorization: Bearer <Your-Token>"  \
  | jq '[.data[].registration_count] | add'
const token = "Your-Token"

async function getTotalLearners() {
  const res = await fetch("https://cloud.layer5.io/api/academy/cirricula", {
    headers: { Authorization: `Bearer ${token}` },
  });
  const data = await res.json();
  const total = data.data.reduce((sum, path) => sum + path.registration_count, 0);
  console.log(total);
}

getTotalLearners();
import requests

url = "https://cloud.layer5.io/api/academy/cirricula"
headers = {"Authorization": "Bearer <Your-Token>"}

res = requests.get(url, headers=headers)
data = res.json()
total = sum(item["registration_count"] for item in data["data"])
print(total)
package main

import (
	"encoding/json"
	"fmt"
	"io"
	"net/http"
)

type Path struct {
	RegistrationCount int `json:"registration_count"`
}

type Response struct {
	Data []Path `json:"data"`
}

func main() {
	url := "https://cloud.layer5.io/api/academy/cirricula"

	req, _ := http.NewRequest("GET", url, nil)
	req.Header.Set("Authorization", "Bearer <your-token>")

	client := &http.Client{}
	res, err := client.Do(req)
	if err != nil {
		panic(err)
	}
	defer res.Body.Close()

	body, _ := io.ReadAll(res.Body)

	var response Response
	if err := json.Unmarshal(body, &response); err != nil {
		panic(err)
	}

	total := 0
	for _, path := range response.Data {
		total += path.RegistrationCount
	}

	fmt.Println(total)
}

This returns the number of Total registered learners:

130

Layer5 Cloud REST API reference

174 API endpoints across 23 categories. This reference is generated from the OpenAPI schema used by the Layer5 docs.

Categories

Showing all endpoints.

Ready to explore

Select an endpoint

Open a category, choose a tag, and pick an endpoint to view its request and response details here.

GET Academy Cloud

/api/academy/admin/registrations

Get academy registrations

Returns a list of academy registrations with user, curricula, and pagination details.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/academy/admin/registrations

Parameters

Query parameters

NameTypeRequiredDescription
pagesizeintegerNoNumber of results per page
pageintegerNoPage number
contentTypearray of stringNoFilter by content types
statusarray of stringNoFilter by registration status

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
List of registrations with pagination info

application/json

Schema: object

FieldTypeRequiredDescription
dataarray of objectYesThe data of the curricularegistrationsresponse.
pageintegerYesCurrent page number of the result set.
page_sizeintegerYesNumber of items per page.
total_countinteger (int64)YesTotal number of items available.
400
Invalid request parameters
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Server error
GET Academy Cloud

/api/academy/admin/summary

Get academy content summary

Returns a summary of all academy content with metrics.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/academy/admin/summary

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
A list of content with total count and registration metrics

application/json

Schema: object

Schema: object

400
Invalid request parameters
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Server error
GET Academy Cloud

/api/academy/certificates/{certificateId}

Get a certificate by ID

Returns a certificate identified by its ID.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/academy/certificates/{certificateId}

Parameters

Path parameters

NameTypeRequiredDescription
certificateIdstringYesThe ID of the certificate to retrieve

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
A single certificate

application/json

Schema: object

FieldTypeRequiredDescription
descriptionstringYesDescription of the certificate
expirationDatestring (date-time)NoDate when the certificate expires. Dynamically calculated from issued_date and expires_in; not specified by instructors.
expiresInintegerNoNumber of months after which the certificate expires
idstring (uuid)YesUnique identifier for the certificate
issuedDatestring (date-time)YesDate when the certificate was issued
issuingAuthoritiesarray of objectYesList of issuing authorities for the certificate
orgIdstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
recipientIdstring (uuid)YesID of the recipient (user) who received the certificate
recipientNamestringYesName of the recipient (user) who received the certificate
titlestringYesTitle of the certificate
400
Invalid request parameters
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Certificate not found
500
Server error
GET Academy Cloud

/api/academy/curricula

Get academy content

Returns a list of academy content with optional filtering.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/academy/curricula

Parameters

Query parameters

NameTypeRequiredDescription
contentTypearray of stringNoFilter content by content types
visibilityarray of stringNoFilter content by visibility (public/private)
levelarray of stringNoFilter content by difficulty level
orgIdarray of stringNoFilter content by organization IDs
categoryarray of stringNoFilter content by categories
statusarray of stringNoFilter by registration status
searchstringNoSearch content by title
sortstringNoSort results by a specific field (e.g., title, createdAt)
orderstringNoOrder of sorting (asc or desc)
pagesizeintegerNoNumber of results per page
pageintegerNoPage number

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
A list of content with total count

application/json

Schema: object

FieldTypeRequiredDescription
dataarray of objectYesThe data of the academycurriculawithmetricslistresponse.
totalintegerYesTotal number of Curricula
400
Invalid request parameters
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Server error
POST Academy Cloud

/api/academy/curricula

Create a new academy curricula

Creates a new academy curricula with the provided details.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/academy/curricula

Request body

application/json

Schema: object

Required
FieldTypeRequiredDescription
access_expires_atstringNoExpiry time for curricula access
access_statusstringYesCurrent access status of the curricula
badge_idstring (uuid)NoID of the badge to be awarded on completion of this curricula
metadataobjectYesAdditional metadata about the Curricula
org_idstringYesOrganization ID that owns this learning path
team_idstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
titlestringYesTitle of the curricula
typestringYesType of the curricula
workspace_idstringYesID of the workspace to which this Curricula belongs

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

201
created the curricula

application/json

Schema: object

AcademyCurricula entity schema.
FieldTypeRequiredDescription
badge_idstring (uuid)NoID of the badge to be awarded on completion of this curricula
created_atstringYesWhen the Curricula item was created
deleted_atstringYesNo description provided.
idstring (uuid)YesId of the Curricula
invite_idstringNoID of the invite associated with this Curricula
levelstringYesLevel of the Curricula
metadataobjectYesAdditional metadata about the Curricula
org_idstringYesOrganization ID that owns this learning path
slugstringYesslug of the Curricula
statusstringYesStatus of the Curricula
typestringYesNo description provided.
updated_atstringYesWhen the Curricula was last updated
visibilitystringYesVisibility of the Curricula
workspace_idstringNoID of the workspace to which this Curricula belongs
400
Invalid request parameters
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Server error
GET Academy Cloud

/api/academy/curricula/registered

Get academy content

Returns a list of academy content registered by the user with optional filtering.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/academy/curricula/registered

Parameters

Query parameters

NameTypeRequiredDescription
contentTypearray of stringNoFilter content by content types
orgIdarray of stringNoFilter content by organization IDs

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
A list of content with total count

application/json

Schema: object

FieldTypeRequiredDescription
dataarray of objectYesThe data of the academycurriculalistresponse.
totalintegerYesTotal number of Curricula
400
Invalid request parameters
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Server error
POST Academy Cloud

/api/academy/curricula/registrations/{id}/withdraw

Withdraw a user from academy content

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/academy/curricula/registrations/{id}/withdraw

Parameters

Path parameters

NameTypeRequiredDescription
idstringYesThe ID of the curricula

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
registered content

application/json

Schema: object

FieldTypeRequiredDescription
certificateobjectYesIssued certificate for completing the curricula under registration
content_idstring (uuid)YesID of the course content
created_atstring (date-time)YesWhen the registration was created
deleted_atstring (date-time)NoTimestamp when the resource was deleted.
idstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
metadataobjectYesAdditional metadata about the registration
org_idstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
statusstringYesStatus of the user’s course registration
updated_atstring (date-time)YesWhen the registration was updated
user_idstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
400
Invalid request parameters
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Server error
GET Academy Cloud

/api/academy/curricula/{id}

Get a single academy curricula by ID

Returns a single academy curricula identified by its ID.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/academy/curricula/{id}

Parameters

Path parameters

NameTypeRequiredDescription
idstringYesThe ID of the curricula

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
A single curricula

application/json

Schema: object

AcademyCurricula entity schema.
FieldTypeRequiredDescription
badge_idstring (uuid)NoID of the badge to be awarded on completion of this curricula
created_atstringYesWhen the Curricula item was created
deleted_atstringYesNo description provided.
idstring (uuid)YesId of the Curricula
invitationobjectNoInvitation entity schema.
invite_idstringNoID of the invite associated with this Curricula
levelstringYesLevel of the Curricula
metadataobjectYesAdditional metadata about the Curricula
org_idstringYesOrganization ID that owns this learning path
registration_countnumberYesNumber of registrations associated with this curriculum.
slugstringYesslug of the Curricula
statusstringYesStatus of the Curricula
typestringYesNo description provided.
updated_atstringYesWhen the Curricula was last updated
visibilitystringYesVisibility of the Curricula
workspace_idstringNoID of the workspace to which this Curricula belongs
400
Invalid request parameters
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Curricula not found
500
Server error
PUT Academy Cloud

/api/academy/curricula/{id}

Update an existing academy curricula by ID

Updates the details of an existing academy curricula identified by its ID.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/academy/curricula/{id}

Parameters

Path parameters

NameTypeRequiredDescription
idstringYesThe ID of the curricula

Request body

application/json

Schema: object

Required
FieldTypeRequiredDescription
access_expires_atstringNoExpiry time for curricula access
access_statusstringYesCurrent access status of the curricula
badge_idstring (uuid)NoID of the badge to be awarded on completion of this curricula
metadataobjectYesAdditional metadata about the Curricula
org_idstringYesOrganization ID that owns this learning path
team_idstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
titlestringYesTitle of the curricula
typestringYesType of the curricula
workspace_idstringYesID of the workspace to which this Curricula belongs

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
updated the curricula

application/json

Schema: object

AcademyCurricula entity schema.
FieldTypeRequiredDescription
badge_idstring (uuid)NoID of the badge to be awarded on completion of this curricula
created_atstringYesWhen the Curricula item was created
deleted_atstringYesNo description provided.
idstring (uuid)YesId of the Curricula
invitationobjectNoInvitation entity schema.
invite_idstringNoID of the invite associated with this Curricula
levelstringYesLevel of the Curricula
metadataobjectYesAdditional metadata about the Curricula
org_idstringYesOrganization ID that owns this learning path
registration_countnumberYesNumber of registrations associated with this curriculum.
slugstringYesslug of the Curricula
statusstringYesStatus of the Curricula
typestringYesNo description provided.
updated_atstringYesWhen the Curricula was last updated
visibilitystringYesVisibility of the Curricula
workspace_idstringNoID of the workspace to which this Curricula belongs
400
Invalid request parameters
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Curricula not found
500
Server error
DELETE Academy Cloud

/api/academy/curricula/{id}

Delete an academy curricula by ID

Deletes an existing academy curricula identified by its ID.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/academy/curricula/{id}

Parameters

Path parameters

NameTypeRequiredDescription
idstringYesThe ID of the curricula

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Curricula deleted
400
Invalid request parameters
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Curricula not found
500
Server error
POST Academy Cloud

/api/academy/register

Register a user to academy content

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/academy/register

Request body

application/json

Schema: object

Required
FieldTypeRequiredDescription
contentIdstring (uuid)YesID of the academy content to register for
contentTypestringNoNo description provided.
user_idstring (uuid)YesID of the user registering for the content.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

201
registered content

application/json

Schema: object

FieldTypeRequiredDescription
certificateobjectYesIssued certificate for completing the curricula under registration
content_idstring (uuid)YesID of the course content
created_atstring (date-time)YesWhen the registration was created
deleted_atstring (date-time)NoTimestamp when the resource was deleted.
idstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
metadataobjectYesAdditional metadata about the registration
org_idstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
statusstringYesStatus of the user’s course registration
updated_atstring (date-time)YesWhen the registration was updated
user_idstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
400
Invalid request parameters
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Server error
POST Academy Cloud

/api/academy/registrations/test-sessions/start

Start a Test by ID

Starts a new test session for the quiz identified by its ID.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/academy/registrations/test-sessions/start

Request body

application/json

Schema: object

Required
FieldTypeRequiredDescription
registrationIdstring (uuid)YesID of the associated registration.
testAbsPathstringYesThe test abs path of the starttestrequest.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
A single test

application/json

Schema: object

FieldTypeRequiredDescription
datestring (date)YesThe date of the quiz.
descriptionstringYesDescription of the quiz.
draftbooleanYesThe draft of the quiz.
filePathstringYesThe file path of the quiz.
finalbooleanYesIndicates if the quiz is final . i.e this quiz will used to evaluate the completion of parent section eg course , module , learning path
idstring (uuid)YesQuiz ID.
lastmodstring (date)YesThe lastmod of the quiz.
layoutstringYesThe layout of the quiz.
maxAttemptsintegerYesMaximum number of attempts allowed for the quiz. A value of 0 indicates unlimited attempts.
nextPageobjectYesNo description provided.
org_idstring (uuid)YesOrganization ID that owns this quiz
parentobjectNoNo description provided.
passPercentagenumber (float)YesThe pass percentage of the quiz.
permalinkstringYesThe permalink of the quiz.
prerequisitesarray of objectYesThe prerequisites of the quiz.
questionsarray of objectYesThe questions of the quiz.
relPermalinkstringYesThe rel permalink of the quiz.
sectionstringYesThe section of the quiz.
slugstringYesThe slug of the quiz.
timeLimitintegerYesTime limit for the quiz in minutes. A value of 0 indicates no time limit.
titlestringYesThe title of the quiz.
totalMarksintegerYesThe total marks of the quiz.
totalQuestionsintegerYesThe total questions of the quiz.
totalQuestionSetsintegerYesThe total question sets of the quiz.
totalQuestionsInBankintegerYesThe total questions in bank of the quiz.
typestringYesType of the resource.
400
Invalid request parameters
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Quiz not found
500
Server error
POST Academy Cloud

/api/academy/registrations/test-sessions/submit

Submit a quiz for evaluation

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/academy/registrations/test-sessions/submit

Request body

application/json

Schema: object

Required
FieldTypeRequiredDescription
answersarray of objectYesThe answers of the quizsubmission.
quizAbsPathstringYesThe quiz abs path of the quizsubmission.
registrationIdstring (uuid)YesID of the associated registration.
testSessionIdstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
user_idstring (uuid)YesID of the user who owns or created this resource.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Progress tracker updated

application/json

Schema: object

FieldTypeRequiredDescription
attemptedAtstring (date-time)YesThe attempted at of the quizevaluationresult.
attemptsintegerYesThe attempts of the quizevaluationresult.
correctSubmissionsobjectYesThe correct submissions of the quizevaluationresult.
passedbooleanYesThe passed of the quizevaluationresult.
passPercentagenumber (float)YesThe pass percentage of the quizevaluationresult.
percentageScorednumber (float)YesThe percentage scored of the quizevaluationresult.
quizobjectYesNo description provided.
scoreintegerYesThe score of the quizevaluationresult.
totalMarksintegerYesThe total marks of the quizevaluationresult.
400
Bad request

application/json

Schema: object

FieldTypeRequiredDescription
detailsstringNoThe details of the errorresponse.
errorstringNoThe error of the errorresponse.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Server error

application/json

Schema: object

FieldTypeRequiredDescription
detailsstringNoThe details of the errorresponse.
errorstringNoThe error of the errorresponse.
GET Academy Cloud

/api/academy/registrations/tests

Get test metadata

Returns metadata for test identified by its absolute path.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/academy/registrations/tests

Parameters

Query parameters

NameTypeRequiredDescription
absPathstringYesThe absolute path of the test to retrieve

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
A single test

application/json

Schema: object

FieldTypeRequiredDescription
datestring (date)YesThe date of the quiz.
descriptionstringYesDescription of the quiz.
draftbooleanYesThe draft of the quiz.
filePathstringYesThe file path of the quiz.
finalbooleanYesIndicates if the quiz is final . i.e this quiz will used to evaluate the completion of parent section eg course , module , learning path
idstring (uuid)YesQuiz ID.
lastmodstring (date)YesThe lastmod of the quiz.
layoutstringYesThe layout of the quiz.
maxAttemptsintegerYesMaximum number of attempts allowed for the quiz. A value of 0 indicates unlimited attempts.
nextPageobjectYesNo description provided.
org_idstring (uuid)YesOrganization ID that owns this quiz
parentobjectNoNo description provided.
passPercentagenumber (float)YesThe pass percentage of the quiz.
permalinkstringYesThe permalink of the quiz.
prerequisitesarray of objectYesThe prerequisites of the quiz.
questionsarray of objectYesThe questions of the quiz.
relPermalinkstringYesThe rel permalink of the quiz.
sectionstringYesThe section of the quiz.
slugstringYesThe slug of the quiz.
timeLimitintegerYesTime limit for the quiz in minutes. A value of 0 indicates no time limit.
titlestringYesThe title of the quiz.
totalMarksintegerYesThe total marks of the quiz.
totalQuestionsintegerYesThe total questions of the quiz.
totalQuestionSetsintegerYesThe total question sets of the quiz.
totalQuestionsInBankintegerYesThe total questions in bank of the quiz.
typestringYesType of the resource.
400
Invalid request parameters
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Quiz not found
500
Server error
GET Academy Cloud

/api/academy/registrations/{contentId}

Get registration information for academy content

Returns registration data for a specific content item, optionally filtered by status.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/academy/registrations/{contentId}

Parameters

Path parameters

NameTypeRequiredDescription
contentIdstringYesThe ID of the content to retrieve registration data for

Query parameters

NameTypeRequiredDescription
statusstringNoFilter registrations by status (e.g., registered, completed)

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Registration data for the specified content

application/json

Schema: object

FieldTypeRequiredDescription
certificateobjectYesIssued certificate for completing the curricula under registration
content_idstring (uuid)YesID of the course content
created_atstring (date-time)YesWhen the registration was created
deleted_atstring (date-time)NoTimestamp when the resource was deleted.
idstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
metadataobjectYesAdditional metadata about the registration
org_idstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
statusstringYesStatus of the user’s course registration
updated_atstring (date-time)YesWhen the registration was updated
user_idstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
400
Invalid request parameters
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Content not found
500
Server error
GET Academy Cloud

/api/academy/registrations/{id}/test-sessions

Get all tests for a registration

Returns all tests associated with a specific registration ID for a user.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/academy/registrations/{id}/test-sessions

Parameters

Path parameters

NameTypeRequiredDescription
idstringYesThe ID of the registration to retrieve tests for

Query parameters

NameTypeRequiredDescription
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
testAbsPathstringNoFilter tests by absolute path

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
A list of tests for the specified registration

application/json

Schema: array of array of object

Schema: array of array of object

400
Invalid request parameters
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Registration not found
500
Server error
POST Academy Cloud

/api/academy/registrations/{registrationId}/progress-tracker/update-current-item

Update the current item in the progress tracker

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/academy/registrations/{registrationId}/progress-tracker/update-current-item

Parameters

Path parameters

NameTypeRequiredDescription
registrationIdstringYesThe ID of the registration

Request body

application/json

Schema: object

Required
FieldTypeRequiredDescription
contentTypestringYesNo description provided.
itemDataobjectYesNo description provided.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Progress tracker updated

application/json

Schema: object

FieldTypeRequiredDescription
contentTypestringNoNo description provided.
itemDataobjectNoNo description provided.
messagestringNoThe message of the updatecurrentitemprogressresponse.
progressTrackerobjectNoNo description provided.
registrationIdstring (uuid)NoID of the associated registration.
400
Bad request

application/json

Schema: object

FieldTypeRequiredDescription
detailsstringNoThe details of the errorresponse.
errorstringNoThe error of the errorresponse.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Server error

application/json

Schema: object

FieldTypeRequiredDescription
detailsstringNoThe details of the errorresponse.
errorstringNoThe error of the errorresponse.
GET Academy Cloud

/api/academy/{type}/{orgId}/{slug}

Get a single learning path

Returns a learning path identified by type, orgId, and slug.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/academy/{type}/{orgId}/{slug}

Parameters

Path parameters

NameTypeRequiredDescription
typestringYesNo description provided.
orgIdstringYesNo description provided.
slugstringYesNo description provided.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
A single academy content

application/json

Schema: object

AcademyCurricula entity schema.
FieldTypeRequiredDescription
badge_idstring (uuid)NoID of the badge to be awarded on completion of this curricula
created_atstringYesWhen the Curricula item was created
deleted_atstringYesNo description provided.
idstring (uuid)YesId of the Curricula
invite_idstringNoID of the invite associated with this Curricula
levelstringYesLevel of the Curricula
metadataobjectYesAdditional metadata about the Curricula
org_idstringYesOrganization ID that owns this learning path
slugstringYesslug of the Curricula
statusstringYesStatus of the Curricula
typestringYesNo description provided.
updated_atstringYesWhen the Curricula was last updated
visibilitystringYesVisibility of the Curricula
workspace_idstringNoID of the workspace to which this Curricula belongs
400
Invalid request parameters
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Server error
GET Key Cloud

/api/auth/key/{keyId}

Get key by ID

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/auth/key/{keyId}

Parameters

Path parameters

NameTypeRequiredDescription
keyIdstring (uuid)YesKey ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Key response

application/json

Schema: object

Represents an authorization key used for access control.
FieldTypeRequiredDescription
idstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
ownerstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
functionstringYesOperation permitted by the key.
categorystringYesCategory for the key.
subcategorystringYesSubcategory for the key.
descriptionstringYesHuman readable description of the key.
created_atstring (date-time)YesTimestamp when the resource was created.
updated_atstring (date-time)YesTimestamp when the resource was updated.
deleted_atstring (date-time)NoSQL null Timestamp to handle null values of time.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Key Cloud

/api/auth/key/{keyId}

Delete key

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/auth/key/{keyId}

Parameters

Path parameters

NameTypeRequiredDescription
keyIdstring (uuid)YesKey ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Key deleted
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Keychain Cloud

/api/auth/keychains

List keychains

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/auth/keychains

Parameters

Query parameters

NameTypeRequiredDescription
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Keychain(s) fetched

application/json

Schema: object

FieldTypeRequiredDescription
pageintegerYesNo description provided.
page_sizeintegerYesNo description provided.
total_countintegerYesNo description provided.
keychainsarray of objectYesThe keychains of the keychainpage.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Keychain Cloud

/api/auth/keychains

Create a keychain

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/auth/keychains

Request body

application/json

Schema: object

Required
Input payload for creating or updating a keychain.
FieldTypeRequiredDescription
namestringYesName of the keychain.
ownerstring (uuid)NoOwner of the keychain.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Keychain created

application/json

Schema: object

Represents a collection of keys.
FieldTypeRequiredDescription
idstring (uuid)YesUnique identifier for the keychain.
namestringYesName of the keychain.
ownerstring (uuid)YesOwner of the keychain.
created_atstring (date-time)YesTimestamp when the resource was created.
updated_atstring (date-time)YesTimestamp when the resource was updated.
deleted_atstring (date-time)NoSQL null Timestamp to handle null values of time.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Keychain Cloud

/api/auth/keychains/{keychainId}

Get keychain by ID

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/auth/keychains/{keychainId}

Parameters

Path parameters

NameTypeRequiredDescription
keychainIdstring (uuid)YesKeychain ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Keychain fetched

application/json

Schema: object

Represents a collection of keys.
FieldTypeRequiredDescription
idstring (uuid)YesUnique identifier for the keychain.
namestringYesName of the keychain.
ownerstring (uuid)YesOwner of the keychain.
created_atstring (date-time)YesTimestamp when the resource was created.
updated_atstring (date-time)YesTimestamp when the resource was updated.
deleted_atstring (date-time)NoSQL null Timestamp to handle null values of time.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

PUT Keychain Cloud

/api/auth/keychains/{keychainId}

Update keychain

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/auth/keychains/{keychainId}

Parameters

Path parameters

NameTypeRequiredDescription
keychainIdstring (uuid)YesKeychain ID

Request body

application/json

Schema: object

Required
Input payload for creating or updating a keychain.
FieldTypeRequiredDescription
namestringYesName of the keychain.
ownerstring (uuid)NoOwner of the keychain.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Keychain updated

application/json

Schema: object

Represents a collection of keys.
FieldTypeRequiredDescription
idstring (uuid)YesUnique identifier for the keychain.
namestringYesName of the keychain.
ownerstring (uuid)YesOwner of the keychain.
created_atstring (date-time)YesTimestamp when the resource was created.
updated_atstring (date-time)YesTimestamp when the resource was updated.
deleted_atstring (date-time)NoSQL null Timestamp to handle null values of time.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Keychain Cloud

/api/auth/keychains/{keychainId}

Delete keychain

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/auth/keychains/{keychainId}

Parameters

Path parameters

NameTypeRequiredDescription
keychainIdstring (uuid)YesKeychain ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Keychain deleted
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Keychain Cloud

/api/auth/keychains/{keychainId}/keys

List keys in a keychain

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/auth/keychains/{keychainId}/keys

Parameters

Path parameters

NameTypeRequiredDescription
keychainIdstring (uuid)YesKeychain ID

Query parameters

NameTypeRequiredDescription
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Keys response

application/json

Schema: object

FieldTypeRequiredDescription
pageintegerYesNo description provided.
page_sizeintegerYesNo description provided.
total_countintegerYesNo description provided.
keysarray of objectYesThe keys of the keypage.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Keychain Cloud

/api/auth/keychains/{keychainId}/{keyId}

Add key to keychain

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/auth/keychains/{keychainId}/{keyId}

Parameters

Path parameters

NameTypeRequiredDescription
keychainIdstring (uuid)YesKeychain ID
keyIdstring (uuid)YesKey ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Key added to keychain
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Keychain Cloud

/api/auth/keychains/{keychainId}/{keyId}

Remove key from keychain

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/auth/keychains/{keychainId}/{keyId}

Parameters

Path parameters

NameTypeRequiredDescription
keychainIdstring (uuid)YesKeychain ID
keyIdstring (uuid)YesKey ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Key removed from keychain
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Key Cloud

/api/auth/keys

List key

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/auth/keys

Parameters

Query parameters

NameTypeRequiredDescription
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Keys fetched

application/json

Schema: object

FieldTypeRequiredDescription
pageintegerYesNo description provided.
page_sizeintegerYesNo description provided.
total_countintegerYesNo description provided.
keysarray of objectYesThe keys of the keypage.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Key Cloud

/api/auth/keys

Create or update a key

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/auth/keys

Request body

application/json

Schema: object

Required
Payload for creating or updating a key.
FieldTypeRequiredDescription
idstring (uuid)NoA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
functionstringNoOperation permitted by the key.
categorystringNoCategory for the key.
subcategorystringNoSubcategory for the key.
descriptionstringNoHuman readable description of the key.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Key upserted

application/json

Schema: object

Represents an authorization key used for access control.
FieldTypeRequiredDescription
idstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
ownerstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
functionstringYesOperation permitted by the key.
categorystringYesCategory for the key.
subcategorystringYesSubcategory for the key.
descriptionstringYesHuman readable description of the key.
created_atstring (date-time)YesTimestamp when the resource was created.
updated_atstring (date-time)YesTimestamp when the resource was updated.
deleted_atstring (date-time)NoSQL null Timestamp to handle null values of time.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Designs Cloud

/api/catalog/content/classes

Get catalog content classes

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/catalog/content/classes

Parameters

Query parameters

NameTypeRequiredDescription
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Catalog content classes

application/json

Schema: array of object

FieldTypeRequiredDescription
classstringNoThe class of the catalogcontentclass.
descriptionstringNoDescription of the catalogcontentclass.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Designs Cloud

/api/catalog/content/{type}

Get catalog content

Authentication
No authentication required

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/catalog/content/{type}

Parameters

Path parameters

NameTypeRequiredDescription
typestringYesNo description provided.

Query parameters

NameTypeRequiredDescription
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses
typestringNoNo description provided.
technologystringNoNo description provided.
metricsbooleanNoNo description provided.
classstringNoNo description provided.
userIdstringNoNo description provided.
orgIdstringNoNo description provided.
workspaceIdstringNoNo description provided.
teamIdstringNoNo description provided.
populatebooleanNoNo description provided.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Catalog content page

application/json

Schema: object

FieldTypeRequiredDescription
categoryCountarray of objectNoThe category count of the catalogcontentpage.
filtersarray of objectNoThe filters of the catalogcontentpage.
modelsCountarray of objectNoThe models count of the catalogcontentpage.
pageintegerNoCurrent page number of the result set.
page_sizeintegerNoNumber of items per page.
patternsarray of objectNoThe patterns of the catalogcontentpage.
total_countintegerNoTotal number of items available.
404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Designs Cloud

/api/catalog/content/{type}

Publish catalog content

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/catalog/content/{type}

Parameters

Path parameters

NameTypeRequiredDescription
typestringYesNo description provided.

Request body

application/json

Schema: object

Required

Schema: object

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Catalog request result

application/json

Schema: object

Schema: object

400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

409
Conflict
500
Internal server error

text/plain

Schema: string

Schema: string

POST Designs Cloud

/api/catalog/content/{type}/unpublish

Unpublish catalog content

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/catalog/content/{type}/unpublish

Parameters

Path parameters

NameTypeRequiredDescription
typestringYesNo description provided.

Request body

application/json

Schema: object

Required

Schema: object

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Catalog request result

application/json

Schema: object

Schema: object

400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

409
Conflict
500
Internal server error

text/plain

Schema: string

Schema: string

GET Designs Cloud

/api/catalog/requests

Get catalog requests

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/catalog/requests

Parameters

Query parameters

NameTypeRequiredDescription
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses
filterstringNoNo description provided.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Catalog requests page

application/json

Schema: object

FieldTypeRequiredDescription
catalogRequestsarray of objectNoThe catalog requests of the catalogrequestspage.
pageintegerNoCurrent page number of the result set.
page_sizeintegerNoNumber of items per page.
total_countintegerNoTotal number of items available.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Designs Cloud

/api/catalog/requests/approve

Approve a catalog request

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/catalog/requests/approve

Request body

application/json

Schema: object

Required

Schema: object

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Request approved

application/json

Schema: object

Schema: object

400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

409
Conflict
500
Internal server error

text/plain

Schema: string

Schema: string

POST Designs Cloud

/api/catalog/requests/deny

Deny a catalog request

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/catalog/requests/deny

Request body

application/json

Schema: object

Required

Schema: object

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Request denied

application/json

Schema: object

Schema: object

400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

409
Conflict
500
Internal server error

text/plain

Schema: string

Schema: string

POST Designs Cloud

/api/content/filters/clone/{id}

Clone filter

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/content/filters/clone/{id}

Parameters

Path parameters

NameTypeRequiredDescription
idstring (uuid)YesDesign (Pattern) ID

Request body

application/json

Schema: object

Required

Schema: object

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Cloned filter

application/json

Schema: object

Schema: object

400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Designs Cloud

/api/content/filters/{id}

Get filter by ID

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/content/filters/{id}

Parameters

Path parameters

NameTypeRequiredDescription
idstring (uuid)YesDesign (Pattern) ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Filter

application/json

Schema: object

Schema: object

400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Designs Cloud

/api/content/patterns

Get designs

Returns a paginated list of infrastructure designs accessible to the user.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/content/patterns

Parameters

Query parameters

NameTypeRequiredDescription
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses
visibilitystringNoFilter by visibility (public, private, published)
userIdstringNoUUID of User. Pass userId for fetching public and published designs.
orgIdstringNoUser’s organization ID.
metricsbooleanNoNo description provided.
workspaceIdstringNoNo description provided.
populatebooleanNoNo description provided.
sharedbooleanNoNo description provided.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Designs response

application/json

Schema: object

FieldTypeRequiredDescription
pageintegerNoCurrent page number of the result set.
page_sizeintegerNoNumber of items per page.
patternsarray of objectNoThe patterns of the mesherypatternpage.
resultTypestringNoThe result type of the mesherypatternpage.
total_countintegerNoTotal number of items available.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Designs Cloud

/api/content/patterns

Save design

Creates or updates an infrastructure design.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/content/patterns

Request body

application/json

Schema: object

Required
FieldTypeRequiredDescription
namestringNoName of the mesherypatternrequestbody.
pathstringNoNo description provided.
patternDataobjectNoNo description provided.
savebooleanNoThe save of the mesherypatternrequestbody.
urlstring (uri)Noendpoint

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Design saved

application/json

Schema: object

FieldTypeRequiredDescription
catalogDataobjectNoNo description provided.
created_atstring (date-time)NoNo description provided.
idstring (uuid)NoNo description provided.
locationobjectNoNo description provided.
namestringNoNo description provided.
patternFileobjectNoDesigns are your primary tool for collaborative authorship of your infrastructure, workflow, and processes.
updated_atstring (date-time)NoNo description provided.
user_idstring (uuid)NoNo description provided.
visibilitystringNoNo description provided.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Designs Cloud

/api/content/patterns/clone/{id}

Clone design

Creates a copy of an existing design.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/content/patterns/clone/{id}

Parameters

Path parameters

NameTypeRequiredDescription
idstring (uuid)YesDesign (Pattern) ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Design cloned

application/json

Schema: object

FieldTypeRequiredDescription
catalogDataobjectNoNo description provided.
created_atstring (date-time)NoNo description provided.
idstring (uuid)NoNo description provided.
locationobjectNoNo description provided.
namestringNoNo description provided.
patternFileobjectNoDesigns are your primary tool for collaborative authorship of your infrastructure, workflow, and processes.
updated_atstring (date-time)NoNo description provided.
user_idstring (uuid)NoNo description provided.
visibilitystringNoNo description provided.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Designs Cloud

/api/content/patterns/delete

Bulk delete designs

Deletes multiple designs by ID.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/content/patterns/delete

Request body

application/json

Schema: object

Required
FieldTypeRequiredDescription
patternsarray of objectNoThe patterns of the mesherypatterndeleterequestbody.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Designs deleted
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Designs Cloud

/api/content/patterns/download/{id}

Download design file

Downloads the raw design file for the specified design.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/content/patterns/download/{id}

Parameters

Path parameters

NameTypeRequiredDescription
idstring (uuid)YesDesign (Pattern) ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Design file content

application/yaml

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Designs Cloud

/api/content/patterns/resource

Get pattern resources

Returns pattern resource definitions.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/content/patterns/resource

Parameters

Query parameters

NameTypeRequiredDescription
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Pattern resources response
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Designs Cloud

/api/content/patterns/resource

Save pattern resource

Creates or updates a pattern resource definition.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/content/patterns/resource

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Pattern resource saved
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Designs Cloud

/api/content/patterns/resource/{id}

Get pattern resource by ID

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/content/patterns/resource/{id}

Parameters

Path parameters

NameTypeRequiredDescription
idstring (uuid)YesDesign (Pattern) ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Pattern resource response
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Designs Cloud

/api/content/patterns/resource/{id}

Delete pattern resource

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/content/patterns/resource/{id}

Parameters

Path parameters

NameTypeRequiredDescription
idstring (uuid)YesDesign (Pattern) ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Pattern resource deleted
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Designs Cloud

/api/content/patterns/upload/{id}

Upload design source content

Uploads or replaces the source content for a design.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/content/patterns/upload/{id}

Parameters

Path parameters

NameTypeRequiredDescription
idstring (uuid)YesDesign (Pattern) ID

Request body

multipart/form-data

Schema: object

Required
Choose the method you prefer to upload your design file. Select ‘File Upload’ if you have the file on your local system, or ‘URL Import’ if you have the file hosted online.
FieldTypeRequiredDescription
filestring (file)NoSupported formats: Kubernetes Manifests, Helm Charts, Docker Compose, and Meshery Designs. See Import Designs Documentation for details
fileNamestringNoThe name of the pattern file being imported.
namestringNoProvide a name for your design file. This name will help you identify the file more easily. You can also change the name of your design after importing it.
urlstring (uri)NoProvide the URL of the file you want to import. This should be a direct URL to a single file, for example: https://raw.github.com/your-design-file.yaml. Also, ensure that design is in a supported format: Kubernetes Manifest, Helm Chart, Docker Compose, or Meshery Design. See Import Designs Documentation for details

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Design source content uploaded
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Designs Cloud

/api/content/patterns/{id}

Get design by ID

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/content/patterns/{id}

Parameters

Path parameters

NameTypeRequiredDescription
idstring (uuid)YesDesign (Pattern) ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Design response

application/json

Schema: object

FieldTypeRequiredDescription
catalogDataobjectNoNo description provided.
created_atstring (date-time)NoNo description provided.
idstring (uuid)NoNo description provided.
locationobjectNoNo description provided.
namestringNoNo description provided.
patternFileobjectNoDesigns are your primary tool for collaborative authorship of your infrastructure, workflow, and processes.
updated_atstring (date-time)NoNo description provided.
user_idstring (uuid)NoNo description provided.
visibilitystringNoNo description provided.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Designs Cloud

/api/content/patterns/{id}

Delete design by ID

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/content/patterns/{id}

Parameters

Path parameters

NameTypeRequiredDescription
idstring (uuid)YesDesign (Pattern) ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Design deleted
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Designs Cloud

/api/content/views

Get views

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/content/views

Parameters

Query parameters

NameTypeRequiredDescription
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
filterstringNoNo description provided.
sharedbooleanNoNo description provided.
visibilitystringNoNo description provided.
orgIdstringNoNo description provided.
userIdstringNoNo description provided.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Views page

application/json

Schema: object

FieldTypeRequiredDescription
pageintegerNoCurrent page number of the result set.
page_sizeintegerNoNumber of items per page.
total_countintegerNoTotal number of items available.
viewsarray of objectNoThe views of the mesheryviewpage.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Designs Cloud

/api/content/views/{viewId}

Get a view by ID

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/content/views/{viewId}

Parameters

Path parameters

NameTypeRequiredDescription
viewIdstringYesNo description provided.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
View

application/json

Schema: object

Schema: object

400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

PUT Designs Cloud

/api/content/views/{viewId}

Update a view

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/content/views/{viewId}

Parameters

Path parameters

NameTypeRequiredDescription
viewIdstringYesNo description provided.

Request body

application/json

Schema: object

Required

Schema: object

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Updated view

application/json

Schema: object

Schema: object

400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Features Cloud

/api/entitlement/features

Get all features associated with plans

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/entitlement/features

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Features response

application/json

Schema: array of object

FieldTypeRequiredDescription
created_atstring (date-time)NoNo description provided.
idstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
namestringYesEnumeration of possible feature types
planobjectNoNo description provided.
plan_idstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
quantitynumberYesQuantity of the feature allowed, use 9999999999 for unlimited
updated_atstring (date-time)NoNo description provided.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Plans Cloud

/api/entitlement/plans

Get all plans supported by the system

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/entitlement/plans

Parameters

Query parameters

NameTypeRequiredDescription
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Plans response

application/json

Schema: array of object

FieldTypeRequiredDescription
cadencestringYesNo description provided.
currencystringYesNo description provided.
idstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
minimum_unitsintegerYesMinimum number of units required for the plan
namestringYesName of the plan
price_per_unitnumberYesPrice per unit of the plan
unitstringYesNo description provided.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Subscriptions Cloud

/api/entitlement/subscriptions

Read subscriptions

Returns all subscriptions for the organization
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Local development server

http://localhost:8080/api/entitlement/subscriptions

Parameters

Query parameters

NameTypeRequiredDescription
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
orderstringNoGet ordered responses
statusarray of stringNoFilter subscriptions by status

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Get subscription response

application/json

Schema: object

FieldTypeRequiredDescription
pageintegerYesCurrent page number of the result set.
page_sizeintegerYesNumber of items per page.
subscriptionsarray of objectYesSubscriptions returned in the current page of results.
total_countintegerYesTotal number of items available.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Subscriptions Cloud

/api/entitlement/subscriptions/create

Create a new subscription for an organization

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Local development server

http://localhost:8080/api/entitlement/subscriptions/create

Request body

application/json

Schema: object

Required
FieldTypeRequiredDescription
couponIdstringNoCoupon ID to apply
emailstring (email)NoEmail of the customer
orgIdstring (uuid)NoOrganization ID
paymentProcessorstringNoSupported payment processors
planIdstringNoPrice ID from the payment processor
userCountintegerNoNumber of users in the organization

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

201
A new subscription has been created

application/json

Schema: object

FieldTypeRequiredDescription
clientSecretstringNoClient secret returned by the payment processor for the subscription checkout flow.
subscriptionIdstringNoID of the associated subscription.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Features Cloud

/api/entitlement/subscriptions/organizations/{organizationId}/features

Get all features associated with plans

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/entitlement/subscriptions/organizations/{organizationId}/features

Parameters

Path parameters

NameTypeRequiredDescription
organizationIdstring (uuid)YesThe ID of the organization

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Features response

application/json

Schema: array of object

FieldTypeRequiredDescription
created_atstring (date-time)NoNo description provided.
idstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
namestringYesEnumeration of possible feature types
planobjectNoNo description provided.
plan_idstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
quantitynumberYesQuantity of the feature allowed, use 9999999999 for unlimited
updated_atstring (date-time)NoNo description provided.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Payment Processors Cloud

/api/entitlement/subscriptions/webhooks

Handle webhook events from payment processors

Authentication
No authentication required

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Local development server

http://localhost:8080/api/entitlement/subscriptions/webhooks

Request body

application/json

Schema: object

Required
Payload for webhook events from payment processors

Schema: object

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Webhook processed
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Subscriptions Cloud

/api/entitlement/subscriptions/{subscriptionId}/cancel

Cancel an existing subscription. The subscription will remain active until the end of the billing period and then it will be canceled.

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Local development server

http://localhost:8080/api/entitlement/subscriptions/{subscriptionId}/cancel

Parameters

Path parameters

NameTypeRequiredDescription
subscriptionIdstringYesSubscription ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200

No description provided.

application/json

Schema: object

FieldTypeRequiredDescription
pageintegerYesCurrent page number of the result set.
page_sizeintegerYesNumber of items per page.
subscriptionsarray of objectYesSubscriptions returned in the current page of results.
total_countintegerYesTotal number of items available.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Subscriptions Cloud

/api/entitlement/subscriptions/{subscriptionId}/upgrade

Upgrade or downgrade an existing subscription by changing one of the plans in the subscription

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Local development server

http://localhost:8080/api/entitlement/subscriptions/{subscriptionId}/upgrade

Parameters

Path parameters

NameTypeRequiredDescription
subscriptionIdstringYesSubscription ID

Request body

application/json

Schema: object

Required
FieldTypeRequiredDescription
newPlanIdstring (uuid)NoNew Plan id that is being changed to
oldPlanIdstring (uuid)NoOld Plan id that is being changed

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200

No description provided.

application/json

Schema: object

Subscription entity schema.
FieldTypeRequiredDescription
billing_idstringYesBilling ID of the subscription. This is the ID of the subscription in the billing system. eg Stripe
created_atstring (date-time)NoNo description provided.
deleted_atstring (date-time)NoNo description provided.
end_datestring (date-time)NoNo description provided.
idstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
org_idstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
planobjectNoPlan entity schema.
plan_idstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
quantityintegerYesnumber of units subscribed (eg number of users)
start_datestring (date-time)NoNo description provided.
statusstringYesPossible statuses of a Stripe subscription.
updated_atstring (date-time)NoNo description provided.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Subscriptions Cloud

/api/entitlement/subscriptions/{subscriptionId}/upgrade-preview

Preview the invoice for upgrading or downgrading an existing subscription by changing one of the plans in the subscription

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Local development server

http://localhost:8080/api/entitlement/subscriptions/{subscriptionId}/upgrade-preview

Parameters

Path parameters

NameTypeRequiredDescription
subscriptionIdstringYesSubscription ID

Request body

application/json

Schema: object

Required
FieldTypeRequiredDescription
newPlanIdstring (uuid)NoNew Plan id that is being changed to
oldPlanIdstring (uuid)NoOld Plan id that is being changed

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Preview of the upgraded subscription invoice

application/json

Schema: object

Schema: object

400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Environments Shared

/api/environments

Get all environments

Gets all environments
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Server development server URL (controlled via PORT environment variable)

http://localhost:9081/api/environments

Parameters

Query parameters

NameTypeRequiredDescription
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
orgIdstringYesUser’s organization ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Environments

application/json

Schema: object

FieldTypeRequiredDescription
environmentsarray of objectNoEnvironments associated with this resource.
pageintegerNoNo description provided.
page_sizeintegerNoNo description provided.
total_countintegerNoNo description provided.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Environments Shared

/api/environments

Create an environment

Creates a new environment
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Server development server URL (controlled via PORT environment variable)

http://localhost:9081/api/environments

Request body

Body for creating environment

application/json

Schema: object

Required
FieldTypeRequiredDescription
descriptionstringNoAn environment is a collection of resources, such as connections & credentail. Provide a detailed description to clarify the purpose of this environment and the types of resources it encompasses. You can modify the description at any Time. Learn more about environments here.
namestringYesAn environment is a collection of resources. Provide a name that meaningfully represents these resources. You can change the name of the environment even after its creation.
organization_idstring (uuid)YesSelect an organization in which you want to create this new environment. Keep in mind that the organization cannot be changed after creation.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

201
Created environment

application/json

Schema: object

Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments
FieldTypeRequiredDescription
idstring (uuid)YesID
schemaVersionstringYesSpecifies the version of the schema to which the environment conforms.
namestringYesEnvironment name
descriptionstringYesEnvironment description
organization_idstring (uuid)YesEnvironment organization ID
ownerstring (uuid)NoEnvironment owner
created_atstring (date-time)NoTimestamp when the resource was created.
metadataobjectNoAdditional metadata associated with the environment.
updated_atstring (date-time)NoTimestamp when the resource was updated.
deleted_atstring | null (date-time)NoTimestamp when the environment was soft deleted. Null while the environment remains active.

Example response

{
  "created_at": "0001-01-01T00:00:00Z",
  "deleted_at": null,
  "description": "Connections and credentials for the production cluster.",
  "id": "00000000-0000-0000-0000-000000000000",
  "metadata": {},
  "name": "Production Environment",
  "organization_id": "00000000-0000-0000-0000-000000000000",
  "owner": "00000000-0000-0000-0000-000000000000",
  "schemaVersion": "environments.meshery.io/v1beta1",
  "updated_at": "0001-01-01T00:00:00Z"
}
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Environments Shared

/api/environments/{environmentId}

Get environment by ID

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Server development server URL (controlled via PORT environment variable)

http://localhost:9081/api/environments/{environmentId}

Parameters

Path parameters

NameTypeRequiredDescription
environmentIdstring (uuid)YesEnvironment ID

Query parameters

NameTypeRequiredDescription
orgIdstringYesUser’s organization ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Environment page

application/json

Schema: object

FieldTypeRequiredDescription
environmentsarray of objectNoEnvironments associated with this resource.
pageintegerNoNo description provided.
page_sizeintegerNoNo description provided.
total_countintegerNoNo description provided.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

PUT Environments Shared

/api/environments/{environmentId}

Update an environment

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Server development server URL (controlled via PORT environment variable)

http://localhost:9081/api/environments/{environmentId}

Parameters

Path parameters

NameTypeRequiredDescription
environmentIdstring (uuid)YesEnvironment ID

Request body

Body for creating environment

application/json

Schema: object

Required
FieldTypeRequiredDescription
descriptionstringNoAn environment is a collection of resources, such as connections & credentail. Provide a detailed description to clarify the purpose of this environment and the types of resources it encompasses. You can modify the description at any Time. Learn more about environments here.
namestringYesAn environment is a collection of resources. Provide a name that meaningfully represents these resources. You can change the name of the environment even after its creation.
organization_idstring (uuid)YesSelect an organization in which you want to create this new environment. Keep in mind that the organization cannot be changed after creation.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Environment page

application/json

Schema: object

FieldTypeRequiredDescription
environmentsarray of objectNoEnvironments associated with this resource.
pageintegerNoNo description provided.
page_sizeintegerNoNo description provided.
total_countintegerNoNo description provided.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Environments Shared

/api/environments/{environmentId}

Delete an environment

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Server development server URL (controlled via PORT environment variable)

http://localhost:9081/api/environments/{environmentId}

Parameters

Path parameters

NameTypeRequiredDescription
environmentIdstring (uuid)YesEnvironment ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Environment deleted
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Environments Shared

/api/environments/{environmentId}/connections

Get environment connections

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Server development server URL (controlled via PORT environment variable)

http://localhost:9081/api/environments/{environmentId}/connections

Parameters

Path parameters

NameTypeRequiredDescription
environmentIdstring (uuid)YesEnvironment ID

Query parameters

NameTypeRequiredDescription
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
filterstringNoNo description provided.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Environment connections

application/json

Schema: object

FieldTypeRequiredDescription
connectionsarray of objectNoThe connections of the environmentconnectionspage.
pageintegerNoCurrent page number of the result set.
page_sizeintegerNoNumber of items per page.
total_countintegerNoTotal number of items available.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Connections Shared

/api/environments/{environmentId}/connections/{connectionId}

Add connection to environment

Associate a connection with an environment
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/environments/{environmentId}/connections/{connectionId}

Parameters

Path parameters

NameTypeRequiredDescription
environmentIdstring (uuid)YesEnvironment ID
connectionIdstring (uuid)YesConnection ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

201
Connection added to environment
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Connections Shared

/api/environments/{environmentId}/connections/{connectionId}

Remove connection from environment

Disassociate a connection from an environment
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/environments/{environmentId}/connections/{connectionId}

Parameters

Path parameters

NameTypeRequiredDescription
environmentIdstring (uuid)YesEnvironment ID
connectionIdstring (uuid)YesConnection ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Connection removed from environment
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Events Cloud

/api/events

Get events aggregate summary

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/events

Parameters

Query parameters

NameTypeRequiredDescription
cumulativebooleanNoNo description provided.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Events aggregate

application/json

Schema: object

FieldTypeRequiredDescription
auditintegerNoThe audit of the eventsaggregate.
401
Unauthorized
404
Not found
500
Server error
GET Events Cloud

/api/events/list

Get events list

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/events/list

Parameters

Query parameters

NameTypeRequiredDescription
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses
filterstringNoGet filtered reponses

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Events page

application/json

Schema: object

FieldTypeRequiredDescription
dataarray of objectNoThe data of the eventspage.
pageintegerNoNo description provided.
page_sizeintegerNoNo description provided.
total_countintegerNoNo description provided.
401
Unauthorized
404
Not found
500
Server error
GET Events Cloud

/api/events/summary

Get event summary by user

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/events/summary

Parameters

Query parameters

NameTypeRequiredDescription
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses
filterstringNoGet filtered reponses

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Event summary page

application/json

Schema: object

FieldTypeRequiredDescription
dataarray of objectNoThe data of the eventsummarypage.
pageintegerNoCurrent page number of the result set.
page_sizeintegerNoNumber of items per page.
total_countintegerNoTotal number of items available.
401
Unauthorized
404
Not found
500
Server error
GET Events Cloud

/api/events/types

Get event types

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/events/types

Parameters

Query parameters

NameTypeRequiredDescription
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Event types

application/json

Schema: array of object

FieldTypeRequiredDescription
actionstringNoThe action of the eventtype.
categorystringNoThe category of the eventtype.
401
Unauthorized
404
Not found
500
Server error
GET Badge Cloud

/api/identity/badges

Get available badges

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/identity/badges

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Available badges

application/json

Schema: object

FieldTypeRequiredDescription
badgesobjectNoThe badges of the badgespage.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Organizations Shared

/api/identity/orgs

Read organizations

Returns organizations for the current user.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/identity/orgs

Parameters

Query parameters

NameTypeRequiredDescription
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses
allbooleanNoGet all possible entries

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Organizations response

application/json

Schema: object

FieldTypeRequiredDescription
organizationsarray of objectNoThe organizations of the organizationspage.
pageintegerNoCurrent page number of the result set.
page_sizeintegerNoNumber of items per page.
total_countintegerNoTotal number of items available.
204
No content
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Organizations Shared

/api/identity/orgs

Create an organization

Creates a new organization.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/identity/orgs

Request body

Body for creating or updating an organization

application/json

Schema: object

Required
FieldTypeRequiredDescription
countrystringNoNo description provided.
descriptionstringNoNo description provided.
namestringNoNo description provided.
notifyOrgUpdatebooleanNoThe notify org update of the organization.
preferencesobjectNoNo description provided.
regionstringNoNo description provided.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

201
Single-organization page response

application/json

Schema: object

Single-organization wrapper used by current meshery-cloud organization handlers.
FieldTypeRequiredDescription
organizationsarray of objectNoThe organizations of the organizationpage.
pageintegerNoCurrent page number of the result set.
page_sizeintegerNoNumber of items per page.
total_countintegerNoTotal number of items available.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Organizations Shared

/api/identity/orgs/by-domain

Get organization by domain

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/identity/orgs/by-domain

Parameters

Query parameters

NameTypeRequiredDescription
domainstringYesNo description provided.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Successful response

application/json

Schema: object

FieldTypeRequiredDescription
countrystringYesThe country of the organization.
created_atstring (date-time)YesNo description provided.
deleted_atstring (date-time)NoNo description provided.
descriptionstringYesDescription of the organization.
domainstring | nullNoThe domain of the organization.
idstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
metadataobjectYesNo description provided.
namestringYesName of the organization.
ownerstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
regionstringYesThe region of the organization.
updated_atstring (date-time)YesNo description provided.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Organization not found
500
Internal server error
GET Organizations Shared

/api/identity/orgs/{orgId}

Read an organization

Returns the organization in the single-item page wrapper currently emitted by meshery-cloud.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/identity/orgs/{orgId}

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstring (uuid)YesNo description provided.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Single-organization page response

application/json

Schema: object

Single-organization wrapper used by current meshery-cloud organization handlers.
FieldTypeRequiredDescription
organizationsarray of objectNoThe organizations of the organizationpage.
pageintegerNoCurrent page number of the result set.
page_sizeintegerNoNumber of items per page.
total_countintegerNoTotal number of items available.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

PUT Organizations Shared

/api/identity/orgs/{orgId}

Update an organization

Updates the organization.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/identity/orgs/{orgId}

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstring (uuid)YesNo description provided.

Request body

Body for creating or updating an organization

application/json

Schema: object

Required
FieldTypeRequiredDescription
countrystringNoNo description provided.
descriptionstringNoNo description provided.
namestringNoNo description provided.
notifyOrgUpdatebooleanNoThe notify org update of the organization.
preferencesobjectNoNo description provided.
regionstringNoNo description provided.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Single-organization page response for the updated organization

application/json

Schema: object

Single-organization wrapper used by current meshery-cloud organization handlers.
FieldTypeRequiredDescription
organizationsarray of objectNoThe organizations of the organizationpage.
pageintegerNoCurrent page number of the result set.
page_sizeintegerNoNumber of items per page.
total_countintegerNoTotal number of items available.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Organizations Shared

/api/identity/orgs/{orgId}

Delete an organization

Deletes the organization.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/identity/orgs/{orgId}

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstring (uuid)YesNo description provided.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Organization deleted
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Organizations Shared

/api/identity/orgs/{orgId}/preferences

Get organization preferences

Returns preferences for the specified organization.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/identity/orgs/{orgId}/preferences

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstring (uuid)YesNo description provided.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Organization metadata, including preferences

application/json

Schema: object

FieldTypeRequiredDescription
preferencesobjectYesNo description provided.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Roles Cloud

/api/identity/orgs/{orgId}/roles

Get organization roles

Returns all roles defined for the specified organization.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.layer5.io/api/identity/orgs/{orgId}/roles

Meshery Cloud staging server URL

https://staging-cloud.layer5.io/api/identity/orgs/{orgId}/roles

Meshery Cloud development server URL

http://localhost:9876/api/identity/orgs/{orgId}/roles

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstring (uuid)YesOrganization ID

Query parameters

NameTypeRequiredDescription
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses
allbooleanNoGet all possible entries
selectorstringNoRole grouping selector such as provider, organization, or team.
teamIdstring (uuid)NoTeam ID used when selector is team.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Roles response

application/json

Schema: object

A paginated list of roles.
FieldTypeRequiredDescription
pageintegerYesCurrent page number (zero-based).
page_sizeintegerYesNumber of roles per page.
total_countintegerYesTotal number of roles across all pages.
rolesarray of objectYesThe roles of the rolespage.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Roles Cloud

/api/identity/orgs/{orgId}/roles

Upsert organization role

Creates or updates a role for the specified organization.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.layer5.io/api/identity/orgs/{orgId}/roles

Meshery Cloud staging server URL

https://staging-cloud.layer5.io/api/identity/orgs/{orgId}/roles

Meshery Cloud development server URL

http://localhost:9876/api/identity/orgs/{orgId}/roles

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstring (uuid)YesOrganization ID

Request body

application/json

Schema: object

Required
Role definition for Layer5 Cloud (Meshery).
FieldTypeRequiredDescription
idstring (uuid)NoA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
role_namestringYesUnique name of the role.
descriptionstringYesHuman-readable description of the role.
created_atstring (date-time)NoTimestamp when the resource was created.
updated_atstring (date-time)NoTimestamp when the resource was updated.
deleted_atstring (date-time)NoTimestamp when the role was soft-deleted.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Role upserted

application/json

Schema: object

Role definition for Layer5 Cloud (Meshery).
FieldTypeRequiredDescription
idstring (uuid)NoA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
role_namestringYesUnique name of the role.
descriptionstringYesHuman-readable description of the role.
created_atstring (date-time)NoTimestamp when the resource was created.
updated_atstring (date-time)NoTimestamp when the resource was updated.
deleted_atstring (date-time)NoTimestamp when the role was soft-deleted.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

PUT Roles Cloud

/api/identity/orgs/{orgId}/roles

Bulk edit role holders

Updates role assignments for multiple users in the organization.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.layer5.io/api/identity/orgs/{orgId}/roles

Meshery Cloud staging server URL

https://staging-cloud.layer5.io/api/identity/orgs/{orgId}/roles

Meshery Cloud development server URL

http://localhost:9876/api/identity/orgs/{orgId}/roles

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstring (uuid)YesOrganization ID

Request body

application/json

Schema: array of object

Required
FieldTypeRequiredDescription
idstring (uuid)NoA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
user_idstring (uuid)NoA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
usernamestringNoThe username of the userroleupdaterequest.
emailstring (email)NoEmail address.
firstNamestringNoThe first name of the userroleupdaterequest.
lastNamestringNoThe last name of the userroleupdaterequest.
statusstringNoCurrent status of the resource.
roleNamesarray of stringNoThe role names of the userroleupdaterequest.
created_atstring (date-time)NoNo description provided.
updated_atstring (date-time)NoNo description provided.
deleted_atstring (date-time)NoSQL null Timestamp to handle null values of time.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Role holders updated
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Roles Cloud

/api/identity/orgs/{orgId}/roles/{roleId}/keychains

Get keychains for role

Returns all keychains assigned to the specified role.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.layer5.io/api/identity/orgs/{orgId}/roles/{roleId}/keychains

Meshery Cloud staging server URL

https://staging-cloud.layer5.io/api/identity/orgs/{orgId}/roles/{roleId}/keychains

Meshery Cloud development server URL

http://localhost:9876/api/identity/orgs/{orgId}/roles/{roleId}/keychains

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstring (uuid)YesOrganization ID
roleIdstring (uuid)YesRole ID

Query parameters

NameTypeRequiredDescription
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Keychains response

application/json

Schema: object

FieldTypeRequiredDescription
pageintegerYesNo description provided.
page_sizeintegerYesNo description provided.
total_countintegerYesNo description provided.
keychainsarray of objectYesThe keychains of the keychainpage.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Roles Cloud

/api/identity/orgs/{orgId}/roles/{roleId}/keychains/{keychainId}

Assign keychain to role

Associates a keychain with the specified role.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.layer5.io/api/identity/orgs/{orgId}/roles/{roleId}/keychains/{keychainId}

Meshery Cloud staging server URL

https://staging-cloud.layer5.io/api/identity/orgs/{orgId}/roles/{roleId}/keychains/{keychainId}

Meshery Cloud development server URL

http://localhost:9876/api/identity/orgs/{orgId}/roles/{roleId}/keychains/{keychainId}

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstring (uuid)YesOrganization ID
roleIdstring (uuid)YesRole ID
keychainIdstring (uuid)YesKeychain ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Keychain assigned to role
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Roles Cloud

/api/identity/orgs/{orgId}/roles/{roleId}/keychains/{keychainId}

Unassign keychain from role

Removes the association between a keychain and a role.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.layer5.io/api/identity/orgs/{orgId}/roles/{roleId}/keychains/{keychainId}

Meshery Cloud staging server URL

https://staging-cloud.layer5.io/api/identity/orgs/{orgId}/roles/{roleId}/keychains/{keychainId}

Meshery Cloud development server URL

http://localhost:9876/api/identity/orgs/{orgId}/roles/{roleId}/keychains/{keychainId}

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstring (uuid)YesOrganization ID
roleIdstring (uuid)YesRole ID
keychainIdstring (uuid)YesKeychain ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Keychain unassigned from role
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Teams Shared

/api/identity/orgs/{orgId}/teams

Get all teams for an organization

Gets all teams within an organization
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/identity/orgs/{orgId}/teams

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/identity/orgs/{orgId}/teams

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/identity/orgs/{orgId}/teams

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstring (uuid)YesOrganization ID

Query parameters

NameTypeRequiredDescription
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Teams

application/json

Schema: object

Paginated list of teams
FieldTypeRequiredDescription
pageintegerNoNo description provided.
page_sizeintegerNoNo description provided.
teamsarray of objectNoThe teams of the teampage.
total_countintegerNoNo description provided.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Teams Shared

/api/identity/orgs/{orgId}/teams

Create a team

Creates a new team within an organization
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/identity/orgs/{orgId}/teams

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/identity/orgs/{orgId}/teams

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/identity/orgs/{orgId}/teams

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstring (uuid)YesOrganization ID

Request body

Body for creating a team

application/json

Schema: object

Required
Payload for creating a new team
FieldTypeRequiredDescription
descriptionstringNoA detailed description of the team’s purpose and responsibilities.
namestringYesTeam name. Provide a meaningful name that represents this team.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

201
Created team

application/json

Schema: object

A Team is a group of one or more users. Teams are often used as a grouping mechanism for assigning permissions, whether in the context of an organization, a workspace, or some other domain within Meshery. Learn more at https://docs.meshery.io/concepts/logical/teams
FieldTypeRequiredDescription
idstring (uuid)YesTeam ID
namestringYesTeam name
descriptionstringNoTeam description
ownerstring (uuid)NoUser ID of the owner of the team
metadataobjectNoAdditional metadata for the team
created_atstring (date-time)NoNo description provided.
updated_atstring (date-time)NoNo description provided.
deleted_atstring (date-time)NoSQL null Timestamp to handle null values of time.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Teams Shared

/api/identity/orgs/{orgId}/teams/{teamId}

Get a team by ID

Gets a team by its ID
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/identity/orgs/{orgId}/teams/{teamId}

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/identity/orgs/{orgId}/teams/{teamId}

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/identity/orgs/{orgId}/teams/{teamId}

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstring (uuid)YesOrganization ID
teamIdstring (uuid)YesTeam ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Team

application/json

Schema: object

A Team is a group of one or more users. Teams are often used as a grouping mechanism for assigning permissions, whether in the context of an organization, a workspace, or some other domain within Meshery. Learn more at https://docs.meshery.io/concepts/logical/teams
FieldTypeRequiredDescription
idstring (uuid)YesTeam ID
namestringYesTeam name
descriptionstringNoTeam description
ownerstring (uuid)NoUser ID of the owner of the team
metadataobjectNoAdditional metadata for the team
created_atstring (date-time)NoNo description provided.
updated_atstring (date-time)NoNo description provided.
deleted_atstring (date-time)NoSQL null Timestamp to handle null values of time.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Organizations Shared

/api/identity/orgs/{orgId}/teams/{teamId}

Add team to organization or soft delete team

Adds a team to an organization. If request body contains action=delete, tombstones a team by setting its deleted_at timestamp. The team’s organization mapping remains intact.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/identity/orgs/{orgId}/teams/{teamId}

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/identity/orgs/{orgId}/teams/{teamId}

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/identity/orgs/{orgId}/teams/{teamId}

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstring (uuid)YesNo description provided.
teamIdstring (uuid)YesNo description provided.

Request body

application/json

Schema: object

Optional
Optional action payload for POST on /api/identity/orgs/{orgId}/teams/{teamId}.
FieldTypeRequiredDescription
actionstringNoInternal action to perform on the team resource.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

201
Team added to organization or team tombstoned

application/json

Schema: one of object

object

FieldTypeRequiredDescription
pageintegerNoCurrent page number of the result set.
page_sizeintegerNoNumber of items per page.
teamsOrganizationsMappingarray of objectNoThe teams organizations mapping of the teamsorganizationsmappingpage.
total_countintegerNoTotal number of items available.

object

FieldTypeRequiredDescription
pageintegerNoCurrent page number of the result set.
page_sizeintegerNoNumber of items per page.
teamsarray of objectNoThe teams of the teamspage.
total_countintegerNoTotal number of items available.
400
Bad request
401
Unauthorized
404
Not found
500
Internal server error
PUT Teams Shared

/api/identity/orgs/{orgId}/teams/{teamId}

Update a team

Updates a team’s information
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/identity/orgs/{orgId}/teams/{teamId}

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/identity/orgs/{orgId}/teams/{teamId}

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/identity/orgs/{orgId}/teams/{teamId}

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstring (uuid)YesOrganization ID
teamIdstring (uuid)YesTeam ID

Request body

Body for updating a team

application/json

Schema: object

Required
Payload for updating an existing team
FieldTypeRequiredDescription
descriptionstringNoUpdated team description
namestringNoUpdated team name

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Updated team

application/json

Schema: object

A Team is a group of one or more users. Teams are often used as a grouping mechanism for assigning permissions, whether in the context of an organization, a workspace, or some other domain within Meshery. Learn more at https://docs.meshery.io/concepts/logical/teams
FieldTypeRequiredDescription
idstring (uuid)YesTeam ID
namestringYesTeam name
descriptionstringNoTeam description
ownerstring (uuid)NoUser ID of the owner of the team
metadataobjectNoAdditional metadata for the team
created_atstring (date-time)NoNo description provided.
updated_atstring (date-time)NoNo description provided.
deleted_atstring (date-time)NoSQL null Timestamp to handle null values of time.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Teams Shared

/api/identity/orgs/{orgId}/teams/{teamId}

Delete a team

Deletes a team by its ID
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/identity/orgs/{orgId}/teams/{teamId}

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/identity/orgs/{orgId}/teams/{teamId}

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/identity/orgs/{orgId}/teams/{teamId}

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstring (uuid)YesOrganization ID
teamIdstring (uuid)YesTeam ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Team deleted
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Organizations Shared

/api/identity/orgs/{orgId}/teams/{teamId}/remove

Remove team from organization

Removes (unassigns) a team from an organization.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/identity/orgs/{orgId}/teams/{teamId}/remove

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstring (uuid)YesNo description provided.
teamIdstring (uuid)YesNo description provided.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Team removed from organization

application/json

Schema: object

FieldTypeRequiredDescription
pageintegerNoCurrent page number of the result set.
page_sizeintegerNoNumber of items per page.
teamsOrganizationsMappingarray of objectNoThe teams organizations mapping of the teamsorganizationsmappingpage.
total_countintegerNoTotal number of items available.
400
Bad request
401
Unauthorized
404
Not found
500
Internal server error
GET Teams Shared

/api/identity/orgs/{orgId}/teams/{teamId}/users

Get users that are not in a team

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/identity/orgs/{orgId}/teams/{teamId}/users

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/identity/orgs/{orgId}/teams/{teamId}/users

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/identity/orgs/{orgId}/teams/{teamId}/users

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstring (uuid)YesOrganization ID
teamIdstring (uuid)YesTeam ID

Query parameters

NameTypeRequiredDescription
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Users not currently in the team

application/json

Schema: object

FieldTypeRequiredDescription
dataarray of objectNoThe data of the teammemberspage.
pageintegerNoCurrent page number of the result set.
page_sizeintegerNoNumber of items per page.
total_countintegerNoTotal number of items available.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Teams Shared

/api/identity/orgs/{orgId}/teams/{teamId}/users/{userId}

Add a user to a team

Assigns a user to a team
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/identity/orgs/{orgId}/teams/{teamId}/users/{userId}

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/identity/orgs/{orgId}/teams/{teamId}/users/{userId}

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/identity/orgs/{orgId}/teams/{teamId}/users/{userId}

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstring (uuid)YesOrganization ID
teamIdstring (uuid)YesTeam ID
userIdstringYesUser ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

201
User added to team

application/json

Schema: object

Mapping between teams and users
FieldTypeRequiredDescription
created_atstring (date-time)NoTimestamp when the resource was created.
deleted_atstring (date-time)NoSQL null Timestamp to handle null values of time.
idstring (uuid)NoNo description provided.
team_idstring (uuid)NoNo description provided.
updated_atstring (date-time)NoTimestamp when the resource was updated.
user_idstringNouser’s email or username
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Teams Shared

/api/identity/orgs/{orgId}/teams/{teamId}/users/{userId}

Remove a user from a team

Unassigns a user from a team
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/identity/orgs/{orgId}/teams/{teamId}/users/{userId}

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/identity/orgs/{orgId}/teams/{teamId}/users/{userId}

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/identity/orgs/{orgId}/teams/{teamId}/users/{userId}

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstring (uuid)YesOrganization ID
teamIdstring (uuid)YesTeam ID
userIdstringYesUser ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
User removed from team
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Users Shared

/api/identity/orgs/{orgId}/users

Get organization users

Returns organization users, optionally filtered by team membership.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/identity/orgs/{orgId}/users

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstring (uuid)YesOrganization ID

Query parameters

NameTypeRequiredDescription
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses
filterstringNoGet filtered reponses
teamIdstring (uuid)NoOptional team filter when listing organization users

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Paginated list of organization users

application/json

Schema: object

Paginated list of users with organization and team role context
FieldTypeRequiredDescription
dataarray of objectNoThe data of the userspageforadmin.
pageintegerNoCurrent page number of the result set.
page_sizeintegerNoNumber of items per page.
total_countintegerNoTotal number of items available.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Invitation Cloud

/api/identity/orgs/{orgId}/users/invite

Invite users to an organization

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/identity/orgs/{orgId}/users/invite

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstringYesThe ID of the organization

Request body

application/json

Schema: object

Required

Schema: object

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Invitation request accepted

application/json

Schema: object

Schema: object

400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Key Shared

/api/identity/orgs/{orgId}/users/keys

Get User Keys

Get all keys based on roles assigned to user
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/identity/orgs/{orgId}/users/keys

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstring (uuid)YesOrganization ID

Query parameters

NameTypeRequiredDescription
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Returns user keys based on roles assigned to user

application/json

Schema: object

FieldTypeRequiredDescription
pageintegerYesNo description provided.
page_sizeintegerYesNo description provided.
total_countintegerYesNo description provided.
keysarray of objectYesThe keys of the keypage.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Organizations Shared

/api/identity/orgs/{orgId}/users/{userId}

Add user to organization

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/identity/orgs/{orgId}/users/{userId}

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstring (uuid)YesNo description provided.
userIdstringYesNo description provided.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

201
User added to organization

application/json

Schema: object

Schema: object

400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Unauthorized
404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error
DELETE Organizations Shared

/api/identity/orgs/{orgId}/users/{userId}

Remove user from organization

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/identity/orgs/{orgId}/users/{userId}

Parameters

Path parameters

NameTypeRequiredDescription
orgIdstring (uuid)YesNo description provided.
userIdstringYesNo description provided.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
User removed from organization
401
Unauthorized
404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error
POST Roles Cloud

/api/identity/roles

Add role holder

Assigns a role to a user identified by email.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.layer5.io/api/identity/roles

Meshery Cloud staging server URL

https://staging-cloud.layer5.io/api/identity/roles

Meshery Cloud development server URL

http://localhost:9876/api/identity/roles

Request body

application/json

Schema: object

Required
Request body for assigning a role to a user.
FieldTypeRequiredDescription
emailstring (email)YesEmail of the user to assign roles to.
roleNamesarray of stringYesList of role names to assign.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

201
Role holder added
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Roles Cloud

/api/identity/roles/{id}

Delete role

Removes a role assignment by ID.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.layer5.io/api/identity/roles/{id}

Meshery Cloud staging server URL

https://staging-cloud.layer5.io/api/identity/roles/{id}

Meshery Cloud development server URL

http://localhost:9876/api/identity/roles/{id}

Parameters

Path parameters

NameTypeRequiredDescription
idstring (uuid)YesRole ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Role deleted
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Teams Shared

/api/identity/teams/{teamId}/users

Get all users in a team

Gets all users that belong to a team
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/identity/teams/{teamId}/users

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/identity/teams/{teamId}/users

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/identity/teams/{teamId}/users

Parameters

Path parameters

NameTypeRequiredDescription
teamIdstring (uuid)YesTeam ID

Query parameters

NameTypeRequiredDescription
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Team users mapping

application/json

Schema: object

Paginated list of team-user mappings
FieldTypeRequiredDescription
pageintegerNoNo description provided.
page_sizeintegerNoNo description provided.
teamsUsersMappingarray of objectNoThe teams users mapping of the teamsusersmappingpage.
total_countintegerNoNo description provided.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Tokens Cloud

/api/identity/tokens

Get tokens

Retrieves tokens associated with the authenticated user.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.layer5.io/api/identity/tokens

Meshery Cloud staging server URL

https://staging-cloud.layer5.io/api/identity/tokens

Meshery Cloud development server URL

http://localhost:9876/api/identity/tokens

Parameters

Query parameters

NameTypeRequiredDescription
isOAuthbooleanNoWhether to retrieve OAuth-backed sessions instead of API tokens.
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Tokens response

application/json

Schema: object

A paginated list of tokens.
FieldTypeRequiredDescription
tokensarray of objectYesThe tokens of the tokenpage.
total_countintegerYesTotal number of tokens across all pages.
pageintegerYesCurrent page number (zero-based).
page_sizeintegerYesNumber of tokens per page.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Tokens Cloud

/api/identity/tokens

Generate token

Generates a token for the authenticated user.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.layer5.io/api/identity/tokens

Meshery Cloud staging server URL

https://staging-cloud.layer5.io/api/identity/tokens

Meshery Cloud development server URL

http://localhost:9876/api/identity/tokens

Parameters

Query parameters

NameTypeRequiredDescription
namestringYesName of the token.
purposestringNoPurpose for which the token is generated.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Token generated

application/json

Schema: object

A paginated list of tokens.
FieldTypeRequiredDescription
tokensarray of objectYesThe tokens of the tokenpage.
total_countintegerYesTotal number of tokens across all pages.
pageintegerYesCurrent page number (zero-based).
page_sizeintegerYesNumber of tokens per page.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Tokens Cloud

/api/identity/tokens

Delete token

Deletes a specific token for the authenticated user.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.layer5.io/api/identity/tokens

Meshery Cloud staging server URL

https://staging-cloud.layer5.io/api/identity/tokens

Meshery Cloud development server URL

http://localhost:9876/api/identity/tokens

Parameters

Query parameters

NameTypeRequiredDescription
tokenIdstring (uuid)YesID of the token.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Token deleted

application/json

Schema: object

A paginated list of tokens.
FieldTypeRequiredDescription
tokensarray of objectYesThe tokens of the tokenpage.
total_countintegerYesTotal number of tokens across all pages.
pageintegerYesCurrent page number (zero-based).
page_sizeintegerYesNumber of tokens per page.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Tokens Cloud

/api/identity/tokens/infinite

Issue indefinite lifetime token

Creates a non-expiring user token for provider admin use cases.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.layer5.io/api/identity/tokens/infinite

Meshery Cloud staging server URL

https://staging-cloud.layer5.io/api/identity/tokens/infinite

Meshery Cloud development server URL

http://localhost:9876/api/identity/tokens/infinite

Parameters

Query parameters

NameTypeRequiredDescription
userIdstring (uuid)YesUUID of the user.
providerstringYesRemote provider.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Token generated

application/json

Schema: object

A paginated list of tokens.
FieldTypeRequiredDescription
tokensarray of objectYesThe tokens of the tokenpage.
total_countintegerYesTotal number of tokens across all pages.
pageintegerYesCurrent page number (zero-based).
page_sizeintegerYesNumber of tokens per page.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Tokens Cloud

/api/identity/tokens/{id}

Get token by ID

Retrieves a specific token by its ID.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.layer5.io/api/identity/tokens/{id}

Meshery Cloud staging server URL

https://staging-cloud.layer5.io/api/identity/tokens/{id}

Meshery Cloud development server URL

http://localhost:9876/api/identity/tokens/{id}

Parameters

Path parameters

NameTypeRequiredDescription
idstring (uuid)YesToken ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Token response

application/json

Schema: object

Represents a user-owned API token or OAuth session.
FieldTypeRequiredDescription
idstring (uuid)YesUnique identifier for the token.
user_idstring (uuid)YesUUID of the user who owns the token.
providerstringYesAuthentication provider associated with the token.
access_tokenstringNoAccess token value.
refresh_tokenstringNoRefresh token value when applicable.
namestringNoHuman-readable token name.
purposestringNoPurpose for which the token was created.
is_oauthbooleanNoWhether this entry represents an OAuth session.
created_atstring (date-time)NoTimestamp when the resource was created.
updated_atstring (date-time)NoTimestamp when the resource was updated.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

PUT Badge Cloud

/api/identity/users/badges

Assign badges to a user

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/identity/users/badges

Request body

application/json

Schema: object

Required
FieldTypeRequiredDescription
badgesarray of stringNoThe badges of the badgeassignment.
notifybooleanNoThe notify of the badgeassignment.
user_idstring (uuid)NoID of the user who owns or created this resource.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Badge assignment result

application/json

Schema: object

Schema: object

400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Users Shared

/api/identity/users/profile

Get current user profile

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/identity/users/profile

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Current user profile and role context

application/json

Schema: object

Represents a user in Layer5 Cloud (Meshery)
FieldTypeRequiredDescription
accepted_terms_atstring (date-time)NoTimestamp when user accepted terms and conditions
avatar_urlstring (uri)NoURL to user’s avatar image
biostringNoUser’s biography or description
countryobjectNoUser’s country information stored as JSONB
created_atstring (date-time)YesTimestamp when the user record was created
deleted_atstring | null (date-time)YesTimestamp when the user record was soft-deleted (null if not deleted)
emailstring (email)YesUser’s email address
first_login_timestring (date-time)NoTimestamp of user’s first login
first_namestringYesUser’s first name
idstring (uuid)YesUnique identifier for the user
last_login_timestring (date-time)YesTimestamp of user’s most recent login
last_namestringYesUser’s last name
organizationsobjectNoOrganizations the user belongs to with role information
preferencesobjectNoUser preferences stored as JSONB
providerstringYesAuthentication provider (e.g., Layer5 Cloud, Twitter, Facebook, Github)
regionobjectNoUser’s region information stored as JSONB
role_namesarray of stringNoList of global roles assigned to the user
socialsarray of objectNoVarious online profiles associated with the user account
statusstringYesUser account status
teamsobjectNoTeams the user belongs to with role information
updated_atstring (date-time)YesTimestamp when the user record was last updated
user_idstringYesUser identifier (username or external ID)
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Users Shared

/api/identity/users/profile/{id}

Get user profile by ID

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/identity/users/profile/{id}

Parameters

Path parameters

NameTypeRequiredDescription
idstring (uuid)YesUser ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
User profile for the requested ID

application/json

Schema: object

Represents a user in Layer5 Cloud (Meshery)
FieldTypeRequiredDescription
accepted_terms_atstring (date-time)NoTimestamp when user accepted terms and conditions
avatar_urlstring (uri)NoURL to user’s avatar image
biostringNoUser’s biography or description
countryobjectNoUser’s country information stored as JSONB
created_atstring (date-time)YesTimestamp when the user record was created
deleted_atstring | null (date-time)YesTimestamp when the user record was soft-deleted (null if not deleted)
emailstring (email)YesUser’s email address
first_login_timestring (date-time)NoTimestamp of user’s first login
first_namestringYesUser’s first name
idstring (uuid)YesUnique identifier for the user
last_login_timestring (date-time)YesTimestamp of user’s most recent login
last_namestringYesUser’s last name
organizationsobjectNoOrganizations the user belongs to with role information
preferencesobjectNoUser preferences stored as JSONB
providerstringYesAuthentication provider (e.g., Layer5 Cloud, Twitter, Facebook, Github)
regionobjectNoUser’s region information stored as JSONB
role_namesarray of stringNoList of global roles assigned to the user
socialsarray of objectNoVarious online profiles associated with the user account
statusstringYesUser account status
teamsobjectNoTeams the user belongs to with role information
updated_atstring (date-time)YesTimestamp when the user record was last updated
user_idstringYesUser identifier (username or external ID)
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Invitation Cloud

/api/identity/users/request

Get signup requests

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/identity/users/request

Parameters

Query parameters

NameTypeRequiredDescription
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses
filterstringNoGet filtered reponses

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Signup requests page

application/json

Schema: object

FieldTypeRequiredDescription
dataarray of objectNoThe data of the signuprequestspage.
pageintegerNoCurrent page number of the result set.
page_sizeintegerNoNumber of items per page.
total_countintegerNoTotal number of items available.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Invitation Cloud

/api/identity/users/request

Create a signup request

Authentication
No authentication required

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/identity/users/request

Request body

application/json

Schema: object

Required

Schema: object

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

201
Signup request created

application/json

Schema: object

Schema: object

400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Invitation Cloud

/api/identity/users/request/approve

Approve a signup request

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/identity/users/request/approve

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Signup request approved

application/json

Schema: object

Schema: object

400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Invitation Cloud

/api/identity/users/request/deny

Deny a signup request

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/identity/users/request/deny

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Signup request denied

application/json

Schema: object

Schema: object

400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Invitation Cloud

/api/identity/users/request/notification

Get signup request notification summary

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/identity/users/request/notification

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Signup request notification payload

application/json

Schema: object

Schema: object

204
No pending signup request notifications
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Connections Shared

/api/integrations/connections

Get all connections

Returns a paginated list of connections for the authenticated user with filtering, sorting and pagination support
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/integrations/connections

Parameters

Query parameters

NameTypeRequiredDescription
pageintegerNoPage number
pagesizeintegerNoNumber of items per page
searchstringNoSearch term
orderstringNoSort order
filterstringNoFilter connections (general filter string)
kindarray of stringNoFilter by connection kind (e.g., kubernetes, prometheus, grafana)
statusarray of stringNoFilter by connection status
typearray of stringNoFilter by connection type
namestringNoFilter by connection name (partial match supported)

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Paginated list of connections with summary information

application/json

Schema: object

Represents a page of connections with meta information about connections count
FieldTypeRequiredDescription
connectionsarray of objectYesList of connections on this page
total_countintegerYesTotal number of connections on all pages
pageintegerYesCurrent page number
page_sizeintegerYesNumber of elements per page
statusSummaryobjectNoAggregate count of connections grouped by status
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Connections Shared

/api/integrations/connections

Register a new connection

Register a new connection with credentials
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/integrations/connections

Request body

application/json

Schema: object

Required
Payload for creating or updating a connection
FieldTypeRequiredDescription
credential_idstring (uuid)NoAssociated credential ID
credentialSecretobjectNoCredential secret data
idstring (uuid)NoConnection ID
kindstringYesConnection kind
metadataobjectNoConnection metadata
namestringYesConnection name
statusstringYesConnection status
sub_typestringYesConnection sub-type
typestringYesConnection type

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

201
Connection registered

application/json

Schema: object

Meshery Connections are managed and unmanaged resources that either through discovery or manual entry are tracked by Meshery. Learn more at https://docs.meshery.io/concepts/logical/connections
FieldTypeRequiredDescription
idstring (uuid)YesConnection ID
namestringYesConnection Name
credential_idstring (uuid)NoAssociated Credential ID
typestringYesConnection Type (platform, telemetry, collaboration)
sub_typestringYesConnection Subtype (cloud, identity, metrics, chat, git, orchestration)
kindstringYesConnection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)
metadataobjectNoAdditional connection metadata
statusstringYesConnection Status
user_idstring (uuid)NoUser ID who owns this connection
created_atstring (date-time)NoNo description provided.
updated_atstring (date-time)NoNo description provided.
deleted_atstring (date-time)NoSQL null Timestamp to handle null values of time.
environmentsarray of objectNoAssociated environments for this connection
schemaVersionstringYesSpecifies the version of the schema used for the definition.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Connections Shared

/api/integrations/connections/kubernetes/{connectionId}/context

Get Kubernetes context

Get Kubernetes context for a specific connection
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/integrations/connections/kubernetes/{connectionId}/context

Parameters

Path parameters

NameTypeRequiredDescription
connectionIdstring (uuid)YesConnection ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Kubernetes context

application/json

Schema: object

Schema: object

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Connections Shared

/api/integrations/connections/meshery/{mesheryServerId}

Delete Meshery instance connection

Delete a Meshery server connection by server ID
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/integrations/connections/meshery/{mesheryServerId}

Parameters

Path parameters

NameTypeRequiredDescription
mesheryServerIdstring (uuid)YesMeshery server ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Meshery connection deleted
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Connections Shared

/api/integrations/connections/{connectionId}

Get connection by ID

Returns a specific connection by its ID
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/integrations/connections/{connectionId}

Parameters

Path parameters

NameTypeRequiredDescription
connectionIdstring (uuid)YesConnection ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Connection details

application/json

Schema: object

Meshery Connections are managed and unmanaged resources that either through discovery or manual entry are tracked by Meshery. Learn more at https://docs.meshery.io/concepts/logical/connections
FieldTypeRequiredDescription
idstring (uuid)YesConnection ID
namestringYesConnection Name
credential_idstring (uuid)NoAssociated Credential ID
typestringYesConnection Type (platform, telemetry, collaboration)
sub_typestringYesConnection Subtype (cloud, identity, metrics, chat, git, orchestration)
kindstringYesConnection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)
metadataobjectNoAdditional connection metadata
statusstringYesConnection Status
user_idstring (uuid)NoUser ID who owns this connection
created_atstring (date-time)NoNo description provided.
updated_atstring (date-time)NoNo description provided.
deleted_atstring (date-time)NoSQL null Timestamp to handle null values of time.
environmentsarray of objectNoAssociated environments for this connection
schemaVersionstringYesSpecifies the version of the schema used for the definition.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

PUT Connections Shared

/api/integrations/connections/{connectionId}

Update a connection

Update an existing connection
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/integrations/connections/{connectionId}

Parameters

Path parameters

NameTypeRequiredDescription
connectionIdstring (uuid)YesConnection ID

Request body

application/json

Schema: object

Required
Payload for creating or updating a connection
FieldTypeRequiredDescription
credential_idstring (uuid)NoAssociated credential ID
credentialSecretobjectNoCredential secret data
idstring (uuid)NoConnection ID
kindstringYesConnection kind
metadataobjectNoConnection metadata
namestringYesConnection name
statusstringYesConnection status
sub_typestringYesConnection sub-type
typestringYesConnection type

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Connection updated

application/json

Schema: object

Meshery Connections are managed and unmanaged resources that either through discovery or manual entry are tracked by Meshery. Learn more at https://docs.meshery.io/concepts/logical/connections
FieldTypeRequiredDescription
idstring (uuid)YesConnection ID
namestringYesConnection Name
credential_idstring (uuid)NoAssociated Credential ID
typestringYesConnection Type (platform, telemetry, collaboration)
sub_typestringYesConnection Subtype (cloud, identity, metrics, chat, git, orchestration)
kindstringYesConnection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)
metadataobjectNoAdditional connection metadata
statusstringYesConnection Status
user_idstring (uuid)NoUser ID who owns this connection
created_atstring (date-time)NoNo description provided.
updated_atstring (date-time)NoNo description provided.
deleted_atstring (date-time)NoSQL null Timestamp to handle null values of time.
environmentsarray of objectNoAssociated environments for this connection
schemaVersionstringYesSpecifies the version of the schema used for the definition.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Connections Shared

/api/integrations/connections/{connectionId}

Delete a connection

Delete a specific connection
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/integrations/connections/{connectionId}

Parameters

Path parameters

NameTypeRequiredDescription
connectionIdstring (uuid)YesConnection ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Connection deleted
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Credentials Cloud

/api/integrations/credentials

Get credentials

Retrieves all credentials belonging to the authenticated user.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.layer5.io/api/integrations/credentials

Meshery Cloud staging server URL

https://staging-cloud.layer5.io/api/integrations/credentials

Meshery Cloud development server URL

http://localhost:9876/api/integrations/credentials

Parameters

Query parameters

NameTypeRequiredDescription
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Credentials response

application/json

Schema: object

A paginated list of credentials.
FieldTypeRequiredDescription
credentialsarray of objectYesThe credentials of the credentialpage.
total_countintegerYesTotal number of credentials across all pages.
pageintegerYesCurrent page number (zero-based).
page_sizeintegerYesNumber of credentials per page.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Credentials Cloud

/api/integrations/credentials

Save credential

Saves a new credential for the authenticated user.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.layer5.io/api/integrations/credentials

Meshery Cloud staging server URL

https://staging-cloud.layer5.io/api/integrations/credentials

Meshery Cloud development server URL

http://localhost:9876/api/integrations/credentials

Request body

application/json

Schema: object

Required
Meshery Credentials store sensitive information such as API keys, tokens, and passwords used by connections to external systems.
FieldTypeRequiredDescription
idstring (uuid)NoUnique identifier for the credential.
namestringYesHuman-readable name for the credential.
user_idstring (uuid)NoUUID of the user who owns this credential.
typestringYesCredential type (e.g. token, basic, AWS).
secretobjectNoKey-value pairs containing the sensitive credential data.
created_atstring (date-time)NoTimestamp when the resource was created.
updated_atstring (date-time)NoTimestamp when the resource was updated.
deleted_atstring (date-time)NoTimestamp when the credential was soft-deleted.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

201
Credential saved

application/json

Schema: object

Meshery Credentials store sensitive information such as API keys, tokens, and passwords used by connections to external systems.
FieldTypeRequiredDescription
idstring (uuid)NoUnique identifier for the credential.
namestringYesHuman-readable name for the credential.
user_idstring (uuid)NoUUID of the user who owns this credential.
typestringYesCredential type (e.g. token, basic, AWS).
secretobjectNoKey-value pairs containing the sensitive credential data.
created_atstring (date-time)NoTimestamp when the resource was created.
updated_atstring (date-time)NoTimestamp when the resource was updated.
deleted_atstring (date-time)NoTimestamp when the credential was soft-deleted.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

PUT Credentials Cloud

/api/integrations/credentials

Update credential

Updates an existing credential for the authenticated user.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.layer5.io/api/integrations/credentials

Meshery Cloud staging server URL

https://staging-cloud.layer5.io/api/integrations/credentials

Meshery Cloud development server URL

http://localhost:9876/api/integrations/credentials

Request body

application/json

Schema: object

Required
Meshery Credentials store sensitive information such as API keys, tokens, and passwords used by connections to external systems.
FieldTypeRequiredDescription
idstring (uuid)NoUnique identifier for the credential.
namestringYesHuman-readable name for the credential.
user_idstring (uuid)NoUUID of the user who owns this credential.
typestringYesCredential type (e.g. token, basic, AWS).
secretobjectNoKey-value pairs containing the sensitive credential data.
created_atstring (date-time)NoTimestamp when the resource was created.
updated_atstring (date-time)NoTimestamp when the resource was updated.
deleted_atstring (date-time)NoTimestamp when the credential was soft-deleted.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Credential updated

application/json

Schema: object

Meshery Credentials store sensitive information such as API keys, tokens, and passwords used by connections to external systems.
FieldTypeRequiredDescription
idstring (uuid)NoUnique identifier for the credential.
namestringYesHuman-readable name for the credential.
user_idstring (uuid)NoUUID of the user who owns this credential.
typestringYesCredential type (e.g. token, basic, AWS).
secretobjectNoKey-value pairs containing the sensitive credential data.
created_atstring (date-time)NoTimestamp when the resource was created.
updated_atstring (date-time)NoTimestamp when the resource was updated.
deleted_atstring (date-time)NoTimestamp when the credential was soft-deleted.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Credentials Cloud

/api/integrations/credentials

Delete credential

Deletes a credential belonging to the authenticated user.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.layer5.io/api/integrations/credentials

Meshery Cloud staging server URL

https://staging-cloud.layer5.io/api/integrations/credentials

Meshery Cloud development server URL

http://localhost:9876/api/integrations/credentials

Parameters

Query parameters

NameTypeRequiredDescription
credentialIdstring (uuid)YesCredential ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Credential deleted
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Credentials Cloud

/api/integrations/credentials/{id}

Get credential by ID

Retrieves a specific credential by its ID.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.layer5.io/api/integrations/credentials/{id}

Meshery Cloud staging server URL

https://staging-cloud.layer5.io/api/integrations/credentials/{id}

Meshery Cloud development server URL

http://localhost:9876/api/integrations/credentials/{id}

Parameters

Path parameters

NameTypeRequiredDescription
idstring (uuid)YesCredential ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Credential response

application/json

Schema: object

Meshery Credentials store sensitive information such as API keys, tokens, and passwords used by connections to external systems.
FieldTypeRequiredDescription
idstring (uuid)NoUnique identifier for the credential.
namestringYesHuman-readable name for the credential.
user_idstring (uuid)NoUUID of the user who owns this credential.
typestringYesCredential type (e.g. token, basic, AWS).
secretobjectNoKey-value pairs containing the sensitive credential data.
created_atstring (date-time)NoTimestamp when the resource was created.
updated_atstring (date-time)NoTimestamp when the resource was updated.
deleted_atstring (date-time)NoTimestamp when the credential was soft-deleted.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Models Cloud

/api/integrations/meshmodels/models

Get mesh model models

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/integrations/meshmodels/models

Parameters

Query parameters

NameTypeRequiredDescription
pagestringNoNo description provided.
pagesizestringNoNo description provided.
searchstringNoNo description provided.
orderstringNoNo description provided.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Model and capabilities registry entries retrieved.

application/json

Schema: object

FieldTypeRequiredDescription
modelsarray of objectNoThe models of the meshmodelmodelspage.
pageintegerNoCurrent page number of the result set.
page_sizeintegerNoNumber of items per page.
total_countintegerNoTotal number of items available.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error
POST Models Shared

/api/meshmodels/register

Register mesh models

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/meshmodels/register

Request body

multipart/form-data

Schema: object

Required
FieldTypeRequiredDescription
importBodyone of File Import, URL Import, CSV Import, Model CreateYesNo description provided.
registerbooleanYesThe register of the importrequest.
uploadTypestringYesChoose the method you prefer to upload your model file. Select ‘File Import’ or ‘CSV Import’ if you have the file on your local system or ‘URL Import’ if you have the file hosted online.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

201
Successful registration

application/json

Schema: object

FieldTypeRequiredDescription
messagestringNoNo description provided.
400
Invalid request format
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error
POST Badge Cloud

/api/organizations/badges

Create a new badge or update an existing badge

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/organizations/badges

Request body

application/json

Schema: object

Required
Payload for creating or updating a badge.
FieldTypeRequiredDescription
descriptionstringYesA description of the milestone achieved, often including criteria for receiving this recognition.
idstring (uuid)NoExisting badge ID for updates; omit on create.
image_urlstring (uri)YesURL to the badge image
labelstringYesunique identifier for the badge ( auto generated )
namestringYesConcise descriptor for the badge or certificate.
org_idstring (uuid)YesThe ID of the organization in which this badge is available.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

201

No description provided.

application/json

Schema: object

FieldTypeRequiredDescription
created_atstring (date-time)YesTimestamp when the resource was created.
deleted_atstring (date-time)YesTimestamp when the resource was deleted, if applicable
descriptionstringYesA description of the milestone achieved, often including criteria for receiving this recognition.
idstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
image_urlstring (uri)YesURL to the badge image
labelstringYesunique identifier for the badge ( auto generated )
namestringYesConcise descriptor for the badge or certificate.
org_idstring (uuid)YesThe ID of the organization in which this badge is available .
updated_atstring (date-time)YesTimestamp when the resource was updated.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Badge Cloud

/api/organizations/badges/{id}

Get a badge by its ID

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/organizations/badges/{id}

Parameters

Path parameters

NameTypeRequiredDescription
idstring (uuid)YesUnique identifier

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200

No description provided.

application/json

Schema: object

FieldTypeRequiredDescription
created_atstring (date-time)YesTimestamp when the resource was created.
deleted_atstring (date-time)YesTimestamp when the resource was deleted, if applicable
descriptionstringYesA description of the milestone achieved, often including criteria for receiving this recognition.
idstring (uuid)YesA Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
image_urlstring (uri)YesURL to the badge image
labelstringYesunique identifier for the badge ( auto generated )
namestringYesConcise descriptor for the badge or certificate.
org_idstring (uuid)YesThe ID of the organization in which this badge is available .
updated_atstring (date-time)YesTimestamp when the resource was updated.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Badge Cloud

/api/organizations/badges/{id}

Delete a badge by its ID

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/organizations/badges/{id}

Parameters

Path parameters

NameTypeRequiredDescription
idstring (uuid)YesUnique identifier

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Badge deleted
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Invitation Cloud

/api/organizations/invitations

Get all invitations for the organization

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/organizations/invitations

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200

No description provided.

application/json

Schema: object

FieldTypeRequiredDescription
dataarray of objectYesList of invitations
totalintegerYesTotal number of invitations available
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Invitation Cloud

/api/organizations/invitations

Create a new invitation for the organization

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/organizations/invitations

Request body

application/json

Schema: object

Required
Payload for creating or updating an invitation.
FieldTypeRequiredDescription
descriptionstringYesDescription of the invitation.
emailsarray of stringYesThe emails of the invitation.
expires_atstring (date-time)NoTimestamp when the invitation expires, if applicable.
idstring (uuid)NoExisting invitation ID for updates; omit on create.
is_defaultbooleanNoIndicates whether the invitation is a default invitation (open invite).
namestringYesName of the invitation.
org_idstring (uuid)YesID of the organization to which the user is invited.
owner_idstring (uuid)NoID of the user who created the invitation.
quotaintegerNoQuota for the invitation.
rolesarray of stringYesThe roles of the invitation.
statusstringYesStatus of the invitation, where enabled means the invitation is active and can be used, disabled means the invitation is no longer valid and is temporarily inactive, disabled invitations can be re-enabled later.
teamsarray of stringYesThe teams of the invitation.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

201

No description provided.

application/json

Schema: object

Invitation entity schema.
FieldTypeRequiredDescription
accepted_byarray of stringYesList of user ids that have already accepted the invitation, null or empty string means the invitation has not been used yet
created_atstring (date-time)YesTimestamp when the invitation was created
deleted_atstring (date-time)YesTimestamp when the invitation was deleted, if applicable
descriptionstringYesDescription of the invitation, which can be used to provide additional information about the invitation, null or empty string means the invitation does not have a description
emailsarray of stringYesThe emails of the invitation.
expires_atstring (date-time)NoTimestamp when the invitation expires, if applicable , null or empty string means the invitation does not expire
idstring (uuid)YesUnique identifier for the invitation , is also used as the invitation code
is_defaultbooleanNoIndicates whether the invitation is a default invitation (open invite), which can be used to assign users when signing up from fqdn or custom domain, a organization can only have one default invitation
namestringYesName of the invitation, which can be used to identify the invitation, required and cant be empty string,
org_idstring (uuid)YesID of the organization to which the user is invited
owner_idstring (uuid)YesID of the user who created the invitation, this is used to track who created the invitation and can be used for auditing purposes
quotaintegerNoQuota for the invitation, which can be used to limit the number of users that can accept the invitation, null or empty string means the invitation does not have a quota
rolesarray of stringYesThe roles of the invitation.
statusstringYesStatus of the invitation, where enabled means the invitation is active and can be used, disabled means the invitation is no longer valid and is temporarily inactive, disabled invitations can be re-enabled later.
teamsarray of stringYesThe teams of the invitation.
updated_atstring (date-time)YesTimestamp when the invitation was last updated
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Invitation Cloud

/api/organizations/invitations/{invitationId}

Get an invitation by ID

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/organizations/invitations/{invitationId}

Parameters

Path parameters

NameTypeRequiredDescription
invitationIdstringYesThe ID of the invitation

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200

No description provided.

application/json

Schema: object

Invitation entity schema.
FieldTypeRequiredDescription
accepted_byarray of stringYesList of user ids that have already accepted the invitation, null or empty string means the invitation has not been used yet
created_atstring (date-time)YesTimestamp when the invitation was created
deleted_atstring (date-time)YesTimestamp when the invitation was deleted, if applicable
descriptionstringYesDescription of the invitation, which can be used to provide additional information about the invitation, null or empty string means the invitation does not have a description
emailsarray of stringYesThe emails of the invitation.
expires_atstring (date-time)NoTimestamp when the invitation expires, if applicable , null or empty string means the invitation does not expire
idstring (uuid)YesUnique identifier for the invitation , is also used as the invitation code
is_defaultbooleanNoIndicates whether the invitation is a default invitation (open invite), which can be used to assign users when signing up from fqdn or custom domain, a organization can only have one default invitation
namestringYesName of the invitation, which can be used to identify the invitation, required and cant be empty string,
org_idstring (uuid)YesID of the organization to which the user is invited
owner_idstring (uuid)YesID of the user who created the invitation, this is used to track who created the invitation and can be used for auditing purposes
quotaintegerNoQuota for the invitation, which can be used to limit the number of users that can accept the invitation, null or empty string means the invitation does not have a quota
rolesarray of stringYesThe roles of the invitation.
statusstringYesStatus of the invitation, where enabled means the invitation is active and can be used, disabled means the invitation is no longer valid and is temporarily inactive, disabled invitations can be re-enabled later.
teamsarray of stringYesThe teams of the invitation.
updated_atstring (date-time)YesTimestamp when the invitation was last updated
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

PUT Invitation Cloud

/api/organizations/invitations/{invitationId}

Update an existing invitation

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/organizations/invitations/{invitationId}

Parameters

Path parameters

NameTypeRequiredDescription
invitationIdstringYesThe ID of the invitation

Request body

application/json

Schema: object

Required
Payload for creating or updating an invitation.
FieldTypeRequiredDescription
descriptionstringYesDescription of the invitation.
emailsarray of stringYesThe emails of the invitation.
expires_atstring (date-time)NoTimestamp when the invitation expires, if applicable.
idstring (uuid)NoExisting invitation ID for updates; omit on create.
is_defaultbooleanNoIndicates whether the invitation is a default invitation (open invite).
namestringYesName of the invitation.
org_idstring (uuid)YesID of the organization to which the user is invited.
owner_idstring (uuid)NoID of the user who created the invitation.
quotaintegerNoQuota for the invitation.
rolesarray of stringYesThe roles of the invitation.
statusstringYesStatus of the invitation, where enabled means the invitation is active and can be used, disabled means the invitation is no longer valid and is temporarily inactive, disabled invitations can be re-enabled later.
teamsarray of stringYesThe teams of the invitation.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200

No description provided.

application/json

Schema: object

Invitation entity schema.
FieldTypeRequiredDescription
accepted_byarray of stringYesList of user ids that have already accepted the invitation, null or empty string means the invitation has not been used yet
created_atstring (date-time)YesTimestamp when the invitation was created
deleted_atstring (date-time)YesTimestamp when the invitation was deleted, if applicable
descriptionstringYesDescription of the invitation, which can be used to provide additional information about the invitation, null or empty string means the invitation does not have a description
emailsarray of stringYesThe emails of the invitation.
expires_atstring (date-time)NoTimestamp when the invitation expires, if applicable , null or empty string means the invitation does not expire
idstring (uuid)YesUnique identifier for the invitation , is also used as the invitation code
is_defaultbooleanNoIndicates whether the invitation is a default invitation (open invite), which can be used to assign users when signing up from fqdn or custom domain, a organization can only have one default invitation
namestringYesName of the invitation, which can be used to identify the invitation, required and cant be empty string,
org_idstring (uuid)YesID of the organization to which the user is invited
owner_idstring (uuid)YesID of the user who created the invitation, this is used to track who created the invitation and can be used for auditing purposes
quotaintegerNoQuota for the invitation, which can be used to limit the number of users that can accept the invitation, null or empty string means the invitation does not have a quota
rolesarray of stringYesThe roles of the invitation.
statusstringYesStatus of the invitation, where enabled means the invitation is active and can be used, disabled means the invitation is no longer valid and is temporarily inactive, disabled invitations can be re-enabled later.
teamsarray of stringYesThe teams of the invitation.
updated_atstring (date-time)YesTimestamp when the invitation was last updated
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Invitation Cloud

/api/organizations/invitations/{invitationId}

Delete an invitation by ID

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/organizations/invitations/{invitationId}

Parameters

Path parameters

NameTypeRequiredDescription
invitationIdstringYesThe ID of the invitation

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Invitation deleted
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Invitation Cloud

/api/organizations/invitations/{invitationId}/accept

Accept an invitation by ID

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/organizations/invitations/{invitationId}/accept

Parameters

Path parameters

NameTypeRequiredDescription
invitationIdstringYesThe ID of the invitation

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200

No description provided.

application/json

Schema: object

Invitation entity schema.
FieldTypeRequiredDescription
accepted_byarray of stringYesList of user ids that have already accepted the invitation, null or empty string means the invitation has not been used yet
created_atstring (date-time)YesTimestamp when the invitation was created
deleted_atstring (date-time)YesTimestamp when the invitation was deleted, if applicable
descriptionstringYesDescription of the invitation, which can be used to provide additional information about the invitation, null or empty string means the invitation does not have a description
emailsarray of stringYesThe emails of the invitation.
expires_atstring (date-time)NoTimestamp when the invitation expires, if applicable , null or empty string means the invitation does not expire
idstring (uuid)YesUnique identifier for the invitation , is also used as the invitation code
is_defaultbooleanNoIndicates whether the invitation is a default invitation (open invite), which can be used to assign users when signing up from fqdn or custom domain, a organization can only have one default invitation
namestringYesName of the invitation, which can be used to identify the invitation, required and cant be empty string,
org_idstring (uuid)YesID of the organization to which the user is invited
owner_idstring (uuid)YesID of the user who created the invitation, this is used to track who created the invitation and can be used for auditing purposes
quotaintegerNoQuota for the invitation, which can be used to limit the number of users that can accept the invitation, null or empty string means the invitation does not have a quota
rolesarray of stringYesThe roles of the invitation.
statusstringYesStatus of the invitation, where enabled means the invitation is active and can be used, disabled means the invitation is no longer valid and is temporarily inactive, disabled invitations can be re-enabled later.
teamsarray of stringYesThe teams of the invitation.
updated_atstring (date-time)YesTimestamp when the invitation was last updated
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Designs Shared

/api/pattern/import

Import Design

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/pattern/import

Request body

multipart/form-data

Schema: object

Required
Choose the method you prefer to upload your design file. Select ‘File Upload’ if you have the file on your local system, or ‘URL Import’ if you have the file hosted online.
FieldTypeRequiredDescription
filestring (file)NoSupported formats: Kubernetes Manifests, Helm Charts, Docker Compose, and Meshery Designs. See Import Designs Documentation for details
fileNamestringNoThe name of the pattern file being imported.
namestringNoProvide a name for your design file. This name will help you identify the file more easily. You can also change the name of your design after importing it.
urlstring (uri)NoProvide the URL of the file you want to import. This should be a direct URL to a single file, for example: https://raw.github.com/your-design-file.yaml. Also, ensure that design is in a supported format: Kubernetes Manifest, Helm Chart, Docker Compose, or Meshery Design. See Import Designs Documentation for details

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Successful Import

application/json

Schema: object

FieldTypeRequiredDescription
messagestringNoNo description provided.
400
Invalid request format
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error
POST Designs Cloud

/api/resource/{resourceType}/share/{resourceId}

Share a resource

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/resource/{resourceType}/share/{resourceId}

Parameters

Path parameters

NameTypeRequiredDescription
resourceTypestringYesNo description provided.
resourceIdstringYesNo description provided.

Request body

application/json

Schema: object

Required

Schema: object

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Resource access mapping

application/json

Schema: object

Schema: object

400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Designs Cloud

/api/resource/{resourceType}/share/{resourceId}/{actorType}

Get resource access actors by type

Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/resource/{resourceType}/share/{resourceId}/{actorType}

Parameters

Path parameters

NameTypeRequiredDescription
resourceTypestringYesNo description provided.
resourceIdstringYesNo description provided.
actorTypestringYesNo description provided.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Resource access actors

application/json

Schema: object

FieldTypeRequiredDescription
usersarray of objectNoThe users of the resourceaccessactorsresponse.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Users Shared

/api/users

Get public users

Returns publicly viewable user records.
Authentication
No authentication required

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/users

Parameters

Query parameters

NameTypeRequiredDescription
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses
filterstringNoGet filtered reponses

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Paginated list of public users

application/json

Schema: object

Paginated list of public user records
FieldTypeRequiredDescription
dataarray of objectNoThe data of the userspagefornonadmin.
pageintegerNoCurrent page number of the result set.
page_sizeintegerNoNumber of items per page.
total_countintegerNoTotal number of items available.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Workspaces Cloud

/api/workspaces

Get all workspaces

Gets all workspaces accessible to the current user.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/workspaces

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/workspaces

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/workspaces

Parameters

Query parameters

NameTypeRequiredDescription
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
filterstringNoJSON-encoded filter string used for assignment and soft-delete filters.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Workspaces

application/json

Schema: object

FieldTypeRequiredDescription
pageintegerNoNo description provided.
page_sizeintegerNoNo description provided.
total_countintegerNoNo description provided.
workspacesarray of objectNoThe workspaces of the workspacepage.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Workspaces Cloud

/api/workspaces

Create a workspace

Creates a new workspace.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/workspaces

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/workspaces

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/workspaces

Request body

Body for creating a workspace

application/json

Schema: object

Required
FieldTypeRequiredDescription
descriptionstringNoDescription of the workspace.
namestringYesName of the workspace.
organization_idstring (uuid)YesOrganization ID.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

201
Created workspace

application/json

Schema: object

FieldTypeRequiredDescription
created_atstring (date-time)NoTimestamp when the resource was created.
deleted_atstring (date-time)NoTimestamp when the resource was deleted.
descriptionstringNoNo description provided.
idstring (uuid)NoNo description provided.
metadataobjectNoNo description provided.
namestringNoNo description provided.
organization_idstring (uuid)NoWorkspace organization ID
ownerstringNoNo description provided.
updated_atstring (date-time)NoTimestamp when the resource was updated.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Workspaces Cloud

/api/workspaces/{workspaceId}

Get a workspace by ID

Gets a workspace by its ID.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/workspaces/{workspaceId}

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/workspaces/{workspaceId}

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/workspaces/{workspaceId}

Parameters

Path parameters

NameTypeRequiredDescription
workspaceIdstring (uuid)YesWorkspace ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Workspace

application/json

Schema: object

FieldTypeRequiredDescription
created_atstring (date-time)NoTimestamp when the resource was created.
deleted_atstring (date-time)NoTimestamp when the resource was deleted.
descriptionstringNoNo description provided.
idstring (uuid)NoNo description provided.
metadataobjectNoNo description provided.
namestringNoNo description provided.
organization_idstring (uuid)NoWorkspace organization ID
ownerstringNoNo description provided.
updated_atstring (date-time)NoTimestamp when the resource was updated.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

PUT Workspaces Cloud

/api/workspaces/{workspaceId}

Update a workspace

Updates a workspace.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/workspaces/{workspaceId}

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/workspaces/{workspaceId}

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/workspaces/{workspaceId}

Parameters

Path parameters

NameTypeRequiredDescription
workspaceIdstring (uuid)YesWorkspace ID

Request body

Body for updating a workspace

application/json

Schema: object

Required
FieldTypeRequiredDescription
descriptionstringNoDescription of the workspace.
namestringNoName of the workspace.
organization_idstring (uuid)YesOrganization ID.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Workspace

application/json

Schema: object

FieldTypeRequiredDescription
created_atstring (date-time)NoTimestamp when the resource was created.
deleted_atstring (date-time)NoTimestamp when the resource was deleted.
descriptionstringNoNo description provided.
idstring (uuid)NoNo description provided.
metadataobjectNoNo description provided.
namestringNoNo description provided.
organization_idstring (uuid)NoWorkspace organization ID
ownerstringNoNo description provided.
updated_atstring (date-time)NoTimestamp when the resource was updated.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Workspaces Cloud

/api/workspaces/{workspaceId}

Delete a workspace

Deletes a workspace by its ID.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/workspaces/{workspaceId}

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/workspaces/{workspaceId}

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/workspaces/{workspaceId}

Parameters

Path parameters

NameTypeRequiredDescription
workspaceIdstring (uuid)YesWorkspace ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Workspace deleted
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Workspaces Cloud

/api/workspaces/{workspaceId}/designs

Get designs assigned to a workspace

Gets designs assigned to or available for a workspace depending on the filter.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/workspaces/{workspaceId}/designs

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/workspaces/{workspaceId}/designs

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/workspaces/{workspaceId}/designs

Parameters

Path parameters

NameTypeRequiredDescription
workspaceIdstring (uuid)YesWorkspace ID

Query parameters

NameTypeRequiredDescription
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
filterstringNoJSON-encoded filter string used for assignment and soft-delete filters.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Designs

application/json

Schema: object

FieldTypeRequiredDescription
designsarray of objectNoThe designs of the mesherydesignpage.
pageintegerNoNo description provided.
page_sizeintegerNoNo description provided.
total_countintegerNoNo description provided.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Workspaces Cloud

/api/workspaces/{workspaceId}/designs/{designId}

Assign a design to a workspace

Assigns a design to a workspace.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/workspaces/{workspaceId}/designs/{designId}

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/workspaces/{workspaceId}/designs/{designId}

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/workspaces/{workspaceId}/designs/{designId}

Parameters

Path parameters

NameTypeRequiredDescription
workspaceIdstring (uuid)YesWorkspace ID
designIdstring (uuid)YesDesign ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Workspace design mappings

application/json

Schema: object

FieldTypeRequiredDescription
pageintegerNoNo description provided.
page_sizeintegerNoNo description provided.
total_countintegerNoNo description provided.
workspacesDesignsMappingarray of objectNoThe workspaces designs mapping of the workspacesdesignsmappingpage.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Workspaces Cloud

/api/workspaces/{workspaceId}/designs/{designId}

Unassign a design from a workspace

Removes a design from a workspace.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/workspaces/{workspaceId}/designs/{designId}

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/workspaces/{workspaceId}/designs/{designId}

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/workspaces/{workspaceId}/designs/{designId}

Parameters

Path parameters

NameTypeRequiredDescription
workspaceIdstring (uuid)YesWorkspace ID
designIdstring (uuid)YesDesign ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Workspace design mapping removed
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Workspaces Cloud

/api/workspaces/{workspaceId}/environments

Get environments assigned to a workspace

Gets environments assigned to or available for a workspace depending on the filter.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/workspaces/{workspaceId}/environments

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/workspaces/{workspaceId}/environments

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/workspaces/{workspaceId}/environments

Parameters

Path parameters

NameTypeRequiredDescription
workspaceIdstring (uuid)YesWorkspace ID

Query parameters

NameTypeRequiredDescription
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
filterstringNoJSON-encoded filter string used for assignment and soft-delete filters.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Environments

application/json

Schema: object

FieldTypeRequiredDescription
environmentsarray of objectNoEnvironments associated with this resource.
pageintegerNoNo description provided.
page_sizeintegerNoNo description provided.
total_countintegerNoNo description provided.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Workspaces Cloud

/api/workspaces/{workspaceId}/environments/{environmentId}

Assign an environment to a workspace

Assigns an environment to a workspace.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/workspaces/{workspaceId}/environments/{environmentId}

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/workspaces/{workspaceId}/environments/{environmentId}

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/workspaces/{workspaceId}/environments/{environmentId}

Parameters

Path parameters

NameTypeRequiredDescription
workspaceIdstring (uuid)YesWorkspace ID
environmentIdstring (uuid)YesEnvironment ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Workspace environment mappings

application/json

Schema: object

FieldTypeRequiredDescription
pageintegerNoNo description provided.
page_sizeintegerNoNo description provided.
total_countintegerNoNo description provided.
workspacesEnvironmentsMappingarray of objectNoThe workspaces environments mapping of the workspacesenvironmentsmappingpage.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Workspaces Cloud

/api/workspaces/{workspaceId}/environments/{environmentId}

Unassign an environment from a workspace

Removes an environment from a workspace.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/workspaces/{workspaceId}/environments/{environmentId}

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/workspaces/{workspaceId}/environments/{environmentId}

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/workspaces/{workspaceId}/environments/{environmentId}

Parameters

Path parameters

NameTypeRequiredDescription
workspaceIdstring (uuid)YesWorkspace ID
environmentIdstring (uuid)YesEnvironment ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Workspace environment mapping removed
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Events Cloud

/api/workspaces/{workspaceId}/events

Get workspace events

Gets events for a workspace.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/api/workspaces/{workspaceId}/events

Parameters

Path parameters

NameTypeRequiredDescription
workspaceIdstring (uuid)YesWorkspace ID

Query parameters

NameTypeRequiredDescription
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Workspace events

application/json

Schema: object

FieldTypeRequiredDescription
dataarray of objectNoThe data of the eventspage.
pageintegerNoNo description provided.
page_sizeintegerNoNo description provided.
total_countintegerNoNo description provided.
400
Invalid request

application/json

Schema: object

FieldTypeRequiredDescription
errorstringNoThe error of the errorresponse.
401
Unauthorized
404
Workspace not found
500
Server error
GET Workspaces Cloud

/api/workspaces/{workspaceId}/teams

Get teams assigned to a workspace

Gets teams assigned to or available for a workspace depending on the filter.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/workspaces/{workspaceId}/teams

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/workspaces/{workspaceId}/teams

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/workspaces/{workspaceId}/teams

Parameters

Path parameters

NameTypeRequiredDescription
workspaceIdstring (uuid)YesWorkspace ID

Query parameters

NameTypeRequiredDescription
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
filterstringNoJSON-encoded filter string used for assignment and soft-delete filters.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Teams

application/json

Schema: object

Paginated list of teams
FieldTypeRequiredDescription
pageintegerNoNo description provided.
page_sizeintegerNoNo description provided.
teamsarray of objectNoThe teams of the teampage.
total_countintegerNoNo description provided.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Workspaces Cloud

/api/workspaces/{workspaceId}/teams/{teamId}

Assign a team to a workspace

Assigns a team to a workspace.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/workspaces/{workspaceId}/teams/{teamId}

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/workspaces/{workspaceId}/teams/{teamId}

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/workspaces/{workspaceId}/teams/{teamId}

Parameters

Path parameters

NameTypeRequiredDescription
workspaceIdstring (uuid)YesWorkspace ID
teamIdstring (uuid)YesTeam ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Workspace team mappings

application/json

Schema: object

FieldTypeRequiredDescription
pageintegerNoNo description provided.
page_sizeintegerNoNo description provided.
total_countintegerNoNo description provided.
workspacesTeamsMappingarray of objectNoThe workspaces teams mapping of the workspacesteamsmappingpage.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Workspaces Cloud

/api/workspaces/{workspaceId}/teams/{teamId}

Unassign a team from a workspace

Removes a team from a workspace.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/workspaces/{workspaceId}/teams/{teamId}

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/workspaces/{workspaceId}/teams/{teamId}

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/workspaces/{workspaceId}/teams/{teamId}

Parameters

Path parameters

NameTypeRequiredDescription
workspaceIdstring (uuid)YesWorkspace ID
teamIdstring (uuid)YesTeam ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Workspace team mapping removed
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Workspaces Cloud

/api/workspaces/{workspaceId}/views

Get views assigned to a workspace

Gets views assigned to or available for a workspace depending on the filter.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/workspaces/{workspaceId}/views

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/workspaces/{workspaceId}/views

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/workspaces/{workspaceId}/views

Parameters

Path parameters

NameTypeRequiredDescription
workspaceIdstring (uuid)YesWorkspace ID

Query parameters

NameTypeRequiredDescription
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
filterstringNoJSON-encoded filter string used for assignment and soft-delete filters.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Views

application/json

Schema: object

FieldTypeRequiredDescription
pageintegerNoNo description provided.
page_sizeintegerNoNo description provided.
total_countintegerNoNo description provided.
viewsarray of objectNoThe views of the mesheryviewpage.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Workspaces Cloud

/api/workspaces/{workspaceId}/views/{viewId}

Assign a view to a workspace

Assigns a view to a workspace.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/workspaces/{workspaceId}/views/{viewId}

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/workspaces/{workspaceId}/views/{viewId}

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/workspaces/{workspaceId}/views/{viewId}

Parameters

Path parameters

NameTypeRequiredDescription
workspaceIdstring (uuid)YesWorkspace ID
viewIdstring (uuid)YesView ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Workspace view mappings

application/json

Schema: object

FieldTypeRequiredDescription
pageintegerNoNo description provided.
page_sizeintegerNoNo description provided.
total_countintegerNoNo description provided.
workspacesViewsMappingarray of objectNoThe workspaces views mapping of the workspacesviewsmappingpage.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Workspaces Cloud

/api/workspaces/{workspaceId}/views/{viewId}

Unassign a view from a workspace

Removes a view from a workspace.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.meshery.io/api/workspaces/{workspaceId}/views/{viewId}

Meshery Cloud staging server URL

https://staging-cloud.meshery.io/api/workspaces/{workspaceId}/views/{viewId}

Meshery Cloud development server URL (controlled via PORT environment variable)

http://localhost:9876/api/workspaces/{workspaceId}/views/{viewId}

Parameters

Path parameters

NameTypeRequiredDescription
workspaceIdstring (uuid)YesWorkspace ID
viewIdstring (uuid)YesView ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Workspace view mapping removed
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Events Shared

/events

Create a new event

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/events

Request body

application/json

Schema: object

Required

Schema: object

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

201
Event created
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Events Shared

/events/delete

Bulk delete events

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/events/delete

Request body

application/json

Schema: object

Required
FieldTypeRequiredDescription
idsarray of string (uuid)YesThe ids of the bulkdeleterequest.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
event deleted

application/json

Schema: object

FieldTypeRequiredDescription
deletedarray of string (uuid)NoNo description provided.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

PUT Events Shared

/events/status

Bulk update event status

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/events/status

Request body

application/json

Schema: object

Required
FieldTypeRequiredDescription
idsarray of string (uuid)YesThe ids of the bulkupdatestatusrequest.
statusstringYesCurrent status of the resource.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Events updated

application/json

Schema: object

FieldTypeRequiredDescription
updatedarray of string (uuid)NoNo description provided.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Events Shared

/events/{id}

Delete a single event

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/events/{id}

Parameters

Path parameters

NameTypeRequiredDescription
idstring (uuid)YesID of the event to delete

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Event deleted
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

PUT Events Shared

/events/{id}/status

Update status of a single event

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Layer5 Cloud default URL

https://cloud.layer5.io/events/{id}/status

Parameters

Path parameters

NameTypeRequiredDescription
idstring (uuid)YesID of the event

Request body

application/json

Schema: object

Required
FieldTypeRequiredDescription
statusstringYesCurrent status of the resource.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Event status updated

application/json

Schema: object

FieldTypeRequiredDescription
event_idstring (uuid)NoNo description provided.
messagestringNoNo description provided.
statusstringNoNo description provided.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Scheduler Cloud

/user/schedules

Get schedules

Returns all schedules for the authenticated user.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.layer5.io/user/schedules

Meshery Cloud staging server URL

https://staging-cloud.layer5.io/user/schedules

Meshery Cloud development server URL

http://localhost:9876/user/schedules

Parameters

Query parameters

NameTypeRequiredDescription
pagestringNoGet responses by page
pagesizestringNoGet responses by pagesize
searchstringNoGet responses that match search param value
orderstringNoGet ordered responses

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Schedules response

application/json

Schema: object

A paginated list of schedules.
FieldTypeRequiredDescription
pageintegerYesCurrent page number (zero-based).
page_sizeintegerYesNumber of schedules per page.
total_countintegerYesTotal number of schedules across all pages.
schedulesarray of objectYesThe schedules of the schedulepage.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

POST Scheduler Cloud

/user/schedules

Create or update schedule

Creates or updates a schedule for the authenticated user.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.layer5.io/user/schedules

Meshery Cloud staging server URL

https://staging-cloud.layer5.io/user/schedules

Meshery Cloud development server URL

http://localhost:9876/user/schedules

Request body

application/json

Schema: object

Required
A schedule defines a recurring cron-based trigger for performance tests or other automated tasks.
FieldTypeRequiredDescription
idstring (uuid)NoUnique identifier for the schedule.
namestringYesHuman-readable name for the schedule.
user_idstring (uuid)YesUUID of the user who owns this schedule.
cron_expressionstringYesCron expression defining the schedule’s recurrence (e.g. “0 0 * * *” for daily at midnight).
created_atstring (date-time)NoTimestamp when the resource was created.
updated_atstring (date-time)NoTimestamp when the resource was updated.

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Schedule upserted

application/json

Schema: object

A schedule defines a recurring cron-based trigger for performance tests or other automated tasks.
FieldTypeRequiredDescription
idstring (uuid)NoUnique identifier for the schedule.
namestringYesHuman-readable name for the schedule.
user_idstring (uuid)YesUUID of the user who owns this schedule.
cron_expressionstringYesCron expression defining the schedule’s recurrence (e.g. “0 0 * * *” for daily at midnight).
created_atstring (date-time)NoTimestamp when the resource was created.
updated_atstring (date-time)NoTimestamp when the resource was updated.
400
Invalid request body or request param

text/plain

Schema: string

Schema: string

401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

GET Scheduler Cloud

/user/schedules/{id}

Get schedule by ID

Returns a specific schedule by its ID.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.layer5.io/user/schedules/{id}

Meshery Cloud staging server URL

https://staging-cloud.layer5.io/user/schedules/{id}

Meshery Cloud development server URL

http://localhost:9876/user/schedules/{id}

Parameters

Path parameters

NameTypeRequiredDescription
idstring (uuid)YesSchedule ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

200
Schedule response

application/json

Schema: object

A schedule defines a recurring cron-based trigger for performance tests or other automated tasks.
FieldTypeRequiredDescription
idstring (uuid)NoUnique identifier for the schedule.
namestringYesHuman-readable name for the schedule.
user_idstring (uuid)YesUUID of the user who owns this schedule.
cron_expressionstringYesCron expression defining the schedule’s recurrence (e.g. “0 0 * * *” for daily at midnight).
created_atstring (date-time)NoTimestamp when the resource was created.
updated_atstring (date-time)NoTimestamp when the resource was updated.
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string

DELETE Scheduler Cloud

/user/schedules/{id}

Delete schedule

Deletes a schedule by its ID.
Authentication
Bearer JWT

Base URLs

Try this endpoint

Substitute your own Layer5 Cloud hostname when you are working against a hosted or self-managed instance.

Meshery Cloud production server URL

https://cloud.layer5.io/user/schedules/{id}

Meshery Cloud staging server URL

https://staging-cloud.layer5.io/user/schedules/{id}

Meshery Cloud development server URL

http://localhost:9876/user/schedules/{id}

Parameters

Path parameters

NameTypeRequiredDescription
idstring (uuid)YesSchedule ID

Returned data

Responses

Status codes, content types, and response schemas returned by this endpoint.

204
Schedule deleted
401
Expired JWT token used or insufficient privilege

text/plain

Schema: string

Schema: string

404
Result not found

text/plain

Schema: string

Schema: string

500
Internal server error

text/plain

Schema: string

Schema: string