curl --request GET \
--url https://api.openworklabs.com/v1/plugins \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.openworklabs.com/v1/plugins"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.openworklabs.com/v1/plugins', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.openworklabs.com/v1/plugins",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.openworklabs.com/v1/plugins"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.openworklabs.com/v1/plugins")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.openworklabs.com/v1/plugins")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"items": [
{
"id": "<string>",
"organizationId": "<string>",
"name": "<string>",
"description": "<string>",
"sourceRepositoryUrl": "<string>",
"sourceFormat": "agent-plugin",
"sourceSchemaVersion": "<string>",
"status": "active",
"createdByOrgMembershipId": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"deletedAt": "2023-11-07T05:31:56Z",
"memberCount": 4503599627370495,
"marketplaces": [
{
"id": "<string>",
"name": "<string>"
}
],
"extension": {
"id": "<string>",
"name": "<string>",
"description": "<string>",
"sourceFormat": "agent-plugin",
"manifest": {
"schemaVersion": 1,
"id": "<string>",
"name": "<string>",
"description": "<string>",
"source": {
"format": "agent-plugin",
"trusted": true,
"origin": "builtin",
"reference": "<string>"
},
"resources": [
{}
],
"contributions": [
{}
],
"setup": {},
"lifecycle": {}
}
},
"access": [
{
"id": "<string>",
"orgMembershipId": "<string>",
"teamId": "<string>",
"orgWide": true,
"role": "viewer",
"createdByOrgMembershipId": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"removedAt": "2023-11-07T05:31:56Z"
}
]
}
],
"nextCursor": "<string>",
"total": 4503599627370495,
"teamCounts": [
{
"id": "<string>",
"count": 4503599627370495
}
],
"ownerCounts": [
{
"id": "<string>",
"count": 4503599627370495
}
]
}{
"error": "invalid_request",
"details": [
{
"message": "<string>",
"path": [
"<string>"
]
}
],
"message": "<string>",
"capability": "<string>"
}{
"error": "unauthorized"
}List plugins
Lists plugins visible to the current organization member.
curl --request GET \
--url https://api.openworklabs.com/v1/plugins \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.openworklabs.com/v1/plugins"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.openworklabs.com/v1/plugins', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.openworklabs.com/v1/plugins",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.openworklabs.com/v1/plugins"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.openworklabs.com/v1/plugins")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.openworklabs.com/v1/plugins")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"items": [
{
"id": "<string>",
"organizationId": "<string>",
"name": "<string>",
"description": "<string>",
"sourceRepositoryUrl": "<string>",
"sourceFormat": "agent-plugin",
"sourceSchemaVersion": "<string>",
"status": "active",
"createdByOrgMembershipId": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"deletedAt": "2023-11-07T05:31:56Z",
"memberCount": 4503599627370495,
"marketplaces": [
{
"id": "<string>",
"name": "<string>"
}
],
"extension": {
"id": "<string>",
"name": "<string>",
"description": "<string>",
"sourceFormat": "agent-plugin",
"manifest": {
"schemaVersion": 1,
"id": "<string>",
"name": "<string>",
"description": "<string>",
"source": {
"format": "agent-plugin",
"trusted": true,
"origin": "builtin",
"reference": "<string>"
},
"resources": [
{}
],
"contributions": [
{}
],
"setup": {},
"lifecycle": {}
}
},
"access": [
{
"id": "<string>",
"orgMembershipId": "<string>",
"teamId": "<string>",
"orgWide": true,
"role": "viewer",
"createdByOrgMembershipId": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"removedAt": "2023-11-07T05:31:56Z"
}
]
}
],
"nextCursor": "<string>",
"total": 4503599627370495,
"teamCounts": [
{
"id": "<string>",
"count": 4503599627370495
}
],
"ownerCounts": [
{
"id": "<string>",
"count": 4503599627370495
}
]
}{
"error": "invalid_request",
"details": [
{
"message": "<string>",
"path": [
"<string>"
]
}
],
"message": "<string>",
"capability": "<string>"
}{
"error": "unauthorized"
}Authorizations
Session token passed as Authorization: Bearer <session-token> for user-authenticated Den routes.
Query Parameters
Opaque cursor returned as nextCursor by the previous page. Omit for the first page.
1 - 2001 <= x <= 100active, inactive, deleted, archived 1 - 255Case-insensitive substring of the plugin name.
1 - 255Plugins effectively accessible to this team, including organization and collection access.
30Plugins effectively accessible to this member, including team, organization and collection access.
29When true, each plugin the caller manages includes its active access grants.
true, false When true, returns the total matching plugins before the cursor.
true, false Plugins created by this organization member.
29Include team and owner counts across all matching pages. Each facet ignores its own current selection.
true, false Was this page helpful?