List one connection's tools - Spacefast Docs
List one connection's tools
Returns the tools reachable through one connection, each with the effect policy resolves it to and the rule behind that effect.
GET /v1/connectors/connections/{connectionId}/tools
Authorization
Authorization Bearer token · header required
Authorization: Bearer <token> with an API key (sfa_ prefix), an OAuth access token, a session token, or a Space machine credential (sfm_ prefix).
or
Authorization OAuth2 access token · header required
OAuth 2.0 with Spacefast scopes. People use the authorization code flow; machines use client credentials.
Scopes: connectors:read
Path parameters
connectionIdstring required
min length 1
Query parameters
limitinteger required
min 1 · max 100 · default: 20cursorstring
min length 1 · max length 4096querystring
min length 1 · max length 200effectstring
Allowed:approve,require_approval,blockteamstring
min length 1 · max length 255
Responses
200 Response for status 200
$schemastring
Canonical JSON Schema URL for this response body. The server also sends it in theLink: rel="describedby"response header.dataobject[] required
Array ofobjectaddressstring required<connectionId>/<tool>— the one address grammar. Pass this straight to a connector run.namestring required
Tool name within its connector.summarystring required
One line on what the tool does, from the source spec.safetystring required
What the tool does to the far side, read from the source spec. Not configurable.
Allowed:read_only,write,destructiveeffectstring required
What actually happens when an agent calls this, after policy resolution.
Allowed:approve,require_approval,blockdecidedByobject | any required
The rule behindeffect; null when nothing matched and the spec's own default applied.ruleIdstring required
Policy rule that decided it.patternstring required
The pattern that matched.ownerstring required
Whose rule it is. Team rules are a floor members cannot loosen.
Allowed:team,personal
inputSchemaobject required
JSON Schema for the tool's arguments.
paginationobject requirednextCursorstring | any required
Opaque cursor for the next page; null when there are no more results.hasMoreboolean required
Whether another page exists after this one.
default Problem details (RFC 9457)
Any 4xx/5xx response is one application/problem+json document.
$schemastring
Canonical JSON Schema URL for this response body. The server also sends it in theLink: rel="describedby"response header.typestring required
URL of the documentation page for this error. Derived fromcode.titlestring required
Human-readable name of the error type. Derived fromcode.statusinteger required
HTTP status of the response, repeated in the body.detailstring required
What went wrong in this request.codestring required
Stable snake_case error code. Match on this, not ondetail.pointerstring
RFC 6901 JSON Pointer to the request field or batch entry that failed, for example/files/37/path. Present on validation failures.detailsobject Machine-readable context keyed by the error code.suggestionsstring[]
Recovery steps safe to show to a person.nextstring[]
Commands or API requests to run next, usable as written.requestIdstring required
ID of this request, from theX-Request-Idheader or generated. Quote it when contacting support.
Try it
Server
Base URL: https://api.spacefast.com
Authorization
Bearer token
Remember on this device
Include my values in samples
Parameters
connectionIdpath*limitquery*cursorqueryqueryqueryeffectquery —approve,require_approval,blockteamquery
Send
Request
cURL
curl -X GET "https://api.spacefast.com/v1/connectors/connections/string/tools?limit=20" \
-H "Authorization: Bearer YOUR_TOKEN"
JavaScript
const response = await fetch("https://api.spacefast.com/v1/connectors/connections/string/tools?limit=20", {
method: "GET",
headers: {
"Authorization": "Bearer YOUR_TOKEN"
}
});
Python
import requests
response = requests.get(
"https://api.spacefast.com/v1/connectors/connections/string/tools?limit=20",
headers={
"Authorization": "Bearer YOUR_TOKEN"
},
)
Response
200 default
{
"$schema": "http://example.com",
"data": [
{
"address": "string",
"name": "string",
"summary": "string",
"safety": "read_only",
"effect": "approve",
"decidedBy": {
"ruleId": "string",
"pattern": "string",
"owner": "team"
},
"inputSchema": {
"property1": null,
"property2": null
}
}
],
"pagination": {
"nextCursor": "string",
"hasMore": true
}
}
Error Response
{
"$schema": "http://example.com",
"type": "string",
"title": "string",
"status": -9007199254740991,
"detail": "string",
"code": "string",
"pointer": "string",
"details": {
"property1": null,
"property2": null
},
"suggestions": [
"string"
],
"next": [
"string"
],
"requestId": "string"
}