Skip to content

skillett run

Terminal window
skillett run <integration> <endpoint> [--param value ...]

Executes an endpoint on a connected integration. Parameters are passed as flags. The response is always JSON containing the upstream API’s response.

Behind the scenes, the CLI calls POST /v1/:integration/:endpoint which validates your API key, loads your OAuth credentials, and proxies the request to the external service.

Parameters are dynamic — they depend on the endpoint being called. Use skillett skills <integration> <endpoint> to see available parameters.

FormatExampleInterpretation
String--title "Bug report""Bug report"
Boolean--drafttrue
Number--per_page 5050 (auto-detected)
Array--labels "bug,priority"["bug", "priority"]
JSON'{"key":"value"}'Parsed as object

POST /v1/:integration/:endpoint

Request body:

{
"params": {
"repo": "acme/webapp",
"title": "Bug report"
}
}

Create a GitHub issue:

Terminal window
$ skillett run github create_issue --repo acme/webapp --title "Bug report" --labels "bug"
{
"status": 200,
"data": {
"id": 42,
"number": 7,
"title": "Bug report",
"state": "open",
"html_url": "https://github.com/acme/webapp/issues/7"
}
}

List Gmail messages:

Terminal window
$ skillett run gmail list_messages --q "is:unread" --maxResults 5
{
"status": 200,
"data": {
"messages": [
{ "id": "abc123", "threadId": "def456" }
],
"resultSizeEstimate": 42
}
}

Error response:

Terminal window
$ skillett run github create_issue --repo nonexistent/repo --title "Test"
{
"status": 404,
"error": {
"message": "Not Found",
"documentation_url": "https://docs.github.com/rest"
}
}
  • 0 — Success (HTTP 2xx from upstream)
  • 1 — Client error (HTTP 4xx, bad params, not connected)
  • 2 — Network error, server error, or timeout