List a connector's tools - Spacefast Docs

List a connector's tools

Returns every tool the connector exposes with its resolved policy effect and the rule that decided it, so a caller knows the answer before it calls.

GET/v1/connectors/{connectorRef}/tools

Authorization

AuthorizationBearer token · headerrequired

`Authorization: Bearer ` with an API key (`sfa_` prefix), an OAuth access token, a session token, or a Space machine credential (`sfm_` prefix).

or

AuthorizationOAuth2 access token · headerrequired

OAuth 2.0 with Spacefast scopes. People use the authorization code flow; machines use client credentials.

Scopes:`connectors:read`

Path parameters

connectorRefstringrequired

min length 1

Query parameters

limitintegerrequired

min 1 · max 100 · default: 20

cursorstring

min length 1 · max length 4096

querystring

min length 1 · max length 200

effectstring

Allowed:`approve``require_approval``block`

teamstring

min length 1 · max length 255

Responses

200Response for status 200

$schemastring

Canonical JSON Schema URL for this response body. The server also sends it in the `Link: rel="describedby"` response header.

dataobject[]required

Show propertiesHide properties

Array of `object`

`/` — the one address grammar. Pass this straight to a connector run.

Tool name within its connector.

One line on what the tool does, from the source spec.

What the tool does to the far side, read from the source spec. Not configurable.

Allowed:`read_only``write``destructive`

What actually happens when an agent calls this, after policy resolution.

Allowed:`approve``require_approval``block`

The rule behind `effect`; null when nothing matched and the spec's own default applied.

Show propertiesHide properties

Any of:

object

Policy rule that decided it.

The pattern that matched.

Whose rule it is. Team rules are a floor members cannot loosen.

Allowed:`team``personal`

any

inputSchemaobjectrequired

JSON Schema for the tool's arguments.

paginationobjectrequired

Show propertiesHide properties

Opaque cursor for the next page; null when there are no more results.

Show propertiesHide properties

Any of:

string

Whether another page exists after this one.

defaultProblem 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 the `Link: rel="describedby"` response header.

URL of the documentation page for this error. Derived from `code`.

Human-readable name of the error type. Derived from `code`.

HTTP status of the response, repeated in the body.

min -9007199254740991 · max 9007199254740991

What went wrong in this request.

Stable snake_case error code. Match on this, not on `detail`.

RFC 6901 JSON Pointer to the request field or batch entry that failed, for example `/files/37/path`. Present on validation failures.

Machine-readable context keyed by the error code.

Recovery steps safe to show to a person.

Commands or API requests to run next, usable as written.

ID of this request, from the `X-Request-Id` header or generated. Quote it when contacting support.

Try it

Server

Base URLhttps://api.spacefast.comCustom base URLOverrides the selected server when set.

Authorization

Bearer tokenRemember on this deviceInclude my values in samples

Parameters

connectorRefpath*limitquery*cursorqueryqueryqueryeffectquery—approverequire_approvalblockteamquery

Send

Request

cURL

curl -X GET "https://api.spacefast.com/v1/connectors/string/tools?limit=20" \
  -H "Authorization: Bearer YOUR_TOKEN"

JavaScript

const response = await fetch("https://api.spacefast.com/v1/connectors/string/tools?limit=20", {
  method: "GET",
  headers: {
    "Authorization": "Bearer YOUR_TOKEN"
  }
});

Python

import requests

response = requests.get(
    "https://api.spacefast.com/v1/connectors/string/tools?limit=20",
    headers={
        "Authorization": "Bearer YOUR_TOKEN"
    },
)

Response

200default

{
  "$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
  }
}
{
  "$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"
}