Skip to content
OpenSmartRoute

Marketplace

Browse, publish, install and rate agents, skills, personas, prompts, templates and tools.

API version 1.0.0

Browse, publish, install and rate agents, skills, personas, prompts, templates and tools. Each listing has a validated manifest the router can load; `GET /registry/{slug}/manifest` is what `registry://` references resolve to.

get/api/v1/me/installs

My Installs

Requires an API key.

Responses

200Successful Response
422Validation ErrorHTTPValidationError
401Missing, invalid or revoked API key
Requestbash
curl -s "$OSR_URL/api/v1/me/installs" \
  -H "Authorization: Bearer $OSR_API_KEY"

get/api/v1/me/listings

My Listings

Requires an API key.

Responses

200Successful Response
422Validation ErrorHTTPValidationError
401Missing, invalid or revoked API key
Requestbash
curl -s "$OSR_URL/api/v1/me/listings" \
  -H "Authorization: Bearer $OSR_API_KEY"

get/api/v1/registry

Search

No authentication.

Parameters

NameInTypeDefaultDescription
qquerystring""
kindquerystring | null
tagquerystring | null
pricequerystring | null
featuredqueryboolean | null
sortquerystring"popular"
limitqueryinteger24
offsetqueryinteger0

Responses

200Successful Response
422Validation ErrorHTTPValidationError
Requestbash
curl -s "$OSR_URL/api/v1/registry?q=&sort=popular"

post/api/v1/registry

Create

Requires an API key.

Request bodyListingIn

FieldTypeDefaultDescription
domainsstring[]
kind(required)string
licensestring"Apache-2.0"
manifestobject
name(required)string
price_usdnumber0
readmestring""
slugstring | null
submitbooleanfalse
summarystring""
tagsstring[]
versionstring"1.0.0"

Responses

201Successful Response
422Validation ErrorHTTPValidationError
401Missing, invalid or revoked API key
Requestbash
curl -s -X POST "$OSR_URL/api/v1/registry" \
  -H "Authorization: Bearer $OSR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "kind": "string", "name": "default" }'
Bodyjson
{
  "kind": "string",
  "name": "default"
}

get/api/v1/registry/kinds

Kinds

No authentication.

Responses

200Successful Response
Requestbash
curl -s "$OSR_URL/api/v1/registry/kinds"

get/api/v1/registry/{slug}

Get Listing

Requires an API key.

Parameters

NameInTypeDefaultDescription
slug(required)pathstring

Responses

200Successful Response
422Validation ErrorHTTPValidationError
401Missing, invalid or revoked API key
Requestbash
curl -s "$OSR_URL/api/v1/registry/<slug>" \
  -H "Authorization: Bearer $OSR_API_KEY"

patch/api/v1/registry/{slug}

Patch

Requires an API key.

Parameters

NameInTypeDefaultDescription
slug(required)pathstring

Request bodyListingPatch

FieldTypeDefaultDescription
domainsstring[] | null
licensestring | null
manifestobject | null
namestring | null
price_usdnumber | null
readmestring | null
summarystring | null
tagsstring[] | null

Responses

200Successful Response
422Validation ErrorHTTPValidationError
401Missing, invalid or revoked API key
Requestbash
curl -s -X PATCH "$OSR_URL/api/v1/registry/<slug>" \
  -H "Authorization: Bearer $OSR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "domains": [], "license": "string", "manifest": {}, "name": "default", "price_usd": 0.5, "readme": "string", "summary": "string", "tags": [] }'
Bodyjson
{
  "domains": [],
  "license": "string",
  "manifest": {},
  "name": "default",
  "price_usd": 0.5,
  "readme": "string",
  "summary": "string",
  "tags": []
}

post/api/v1/registry/{slug}/archive

Archive

Requires an API key.

Parameters

NameInTypeDefaultDescription
slug(required)pathstring

Responses

200Successful Response
422Validation ErrorHTTPValidationError
401Missing, invalid or revoked API key
Requestbash
curl -s -X POST "$OSR_URL/api/v1/registry/<slug>/archive" \
  -H "Authorization: Bearer $OSR_API_KEY"

post/api/v1/registry/{slug}/install

Install

Requires an API key.

Parameters

NameInTypeDefaultDescription
slug(required)pathstring

Responses

200Successful Response
422Validation ErrorHTTPValidationError
401Missing, invalid or revoked API key
Requestbash
curl -s -X POST "$OSR_URL/api/v1/registry/<slug>/install" \
  -H "Authorization: Bearer $OSR_API_KEY"

get/api/v1/registry/{slug}/manifest

Manifest

No authentication.

Parameters

NameInTypeDefaultDescription
slug(required)pathstring
versionquerystring | null

Responses

200Successful Response
422Validation ErrorHTTPValidationError
Requestbash
curl -s "$OSR_URL/api/v1/registry/<slug>/manifest"

get/api/v1/registry/{slug}/reviews

Reviews

No authentication.

Parameters

NameInTypeDefaultDescription
slug(required)pathstring

Responses

200Successful Response
422Validation ErrorHTTPValidationError
Requestbash
curl -s "$OSR_URL/api/v1/registry/<slug>/reviews"

put/api/v1/registry/{slug}/reviews

Review

Requires an API key.

Parameters

NameInTypeDefaultDescription
slug(required)pathstring

Request bodyReviewIn

FieldTypeDefaultDescription
bodystring""
rating(required)integer
titlestring""

Responses

200Successful Response
422Validation ErrorHTTPValidationError
401Missing, invalid or revoked API key
Requestbash
curl -s -X PUT "$OSR_URL/api/v1/registry/<slug>/reviews" \
  -H "Authorization: Bearer $OSR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "rating": 1 }'
Bodyjson
{
  "rating": 1
}

delete/api/v1/registry/{slug}/reviews

Delete Review

Requires an API key.

Parameters

NameInTypeDefaultDescription
slug(required)pathstring

Responses

204Successful Response
422Validation ErrorHTTPValidationError
401Missing, invalid or revoked API key
Requestbash
curl -s -X DELETE "$OSR_URL/api/v1/registry/<slug>/reviews" \
  -H "Authorization: Bearer $OSR_API_KEY"

post/api/v1/registry/{slug}/submit

Submit

Requires an API key.

Parameters

NameInTypeDefaultDescription
slug(required)pathstring

Responses

200Successful Response
422Validation ErrorHTTPValidationError
401Missing, invalid or revoked API key
Requestbash
curl -s -X POST "$OSR_URL/api/v1/registry/<slug>/submit" \
  -H "Authorization: Bearer $OSR_API_KEY"

post/api/v1/registry/{slug}/unarchive

Unarchive

Requires an API key.

Parameters

NameInTypeDefaultDescription
slug(required)pathstring

Responses

200Successful Response
422Validation ErrorHTTPValidationError
401Missing, invalid or revoked API key
Requestbash
curl -s -X POST "$OSR_URL/api/v1/registry/<slug>/unarchive" \
  -H "Authorization: Bearer $OSR_API_KEY"

post/api/v1/registry/{slug}/versions

Add Version

Requires an API key.

Parameters

NameInTypeDefaultDescription
slug(required)pathstring

Request bodyVersionIn

FieldTypeDefaultDescription
changelogstring""
manifest(required)object
version(required)string

Responses

201Successful Response
422Validation ErrorHTTPValidationError
401Missing, invalid or revoked API key
Requestbash
curl -s -X POST "$OSR_URL/api/v1/registry/<slug>/versions" \
  -H "Authorization: Bearer $OSR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "manifest": {}, "version": "string" }'
Bodyjson
{
  "manifest": {},
  "version": "string"
}