Update a connection - Spacefast Docs
Update a connection
Renames a connection or replaces the agent-visible note on what it is for. Credentials are immutable: to rotate one, reconnect.
PATCH /v1/connectors/connections/{connectionId}
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).
orAuthorization OAuth2 access token · header required
OAuth 2.0 with Spacefast scopes. People use the authorization code flow; machines use client credentials.
Scopes: connectors:write
Path parameters
connectionIdstring required
min length 1
Query parameters
teamstring
min length 1 · max length 255
Request body
required application/json
displayNamestring
Replacement label.
min length 1 · max length 255descriptionstring | any
Replacement agent-visible description.
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
A configured instance of a connector, with a credential the control plane holds and never hands out.
Properties
idstring required
Connection id (cxn_). This is also the first segment of every tool address it owns.connectorstring required
Slug of the connector this connection authenticates.ownerstring requiredteamis shared with everyone on the team;personalis yours, and only within this team — connecting the same account for another team is another connection. Allowed:team,personaldisplayNamestring required
What people call this connection, e.g. "Linear (support)".descriptionstring | any required
Agent-visible note on what this connection is for. Shown to models choosing between several.statusstring required
Derived connection state. Never stored, so it cannot drift from the credential it describes. Allowed:pending_authorization,active,degraded,needs_reauth,revokedidentityLabelstring | any required
Account label reported by the provider, when it identifies itself. Null until the first successful probe.credentialConfiguredboolean required
Whether a usable credential is stored. The credential itself is never returned by any endpoint.authMethodstring | any required
Slug of the connector auth method this connection used.scopesstring[] required
Scopes actually granted, when the provider reports them.isDefaultboolean required
Whether this is the connection an agent gets when it names the connector alone.toolCountinteger required
Tools reachable through this connection at the last sync.
min -9007199254740991 · max 9007199254740991createdBystring | any required
User who connected it; null for first-party connections Spacefast owns.lastCheckedAtstring| any required
Last health probe.revokedAtstring| any required
When it was disconnected. The credential is purged; the row tombstones.createdAtstringrequired
matches ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$updatedAtstringrequired
matches ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
Error Response
$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. min -9007199254740991 · max 9007199254740991detailstring 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 Custom base URL Overrides the selected server when set.
Parameters
connectionIdpath*teamquery
Body
application/json
displayNamestring
Replacement label.descriptionstring
Replacement agent-visible description.
Send
Request
cURL
curl -X PATCH "https://api.spacefast.com/v1/connectors/connections/string" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{\n "displayName": "string",\n "description": "string"\n}'
JavaScript
const response = await fetch("https://api.spacefast.com/v1/connectors/connections/string", {
method: "PATCH",
headers: {
"Authorization": "Bearer YOUR_TOKEN",
"Content-Type": "application/json"
},
body: "{\n \"displayName\": \"string\",\n \"description\": \"string\"\n}"
});
Python
import requests
response = requests.patch(
"https://api.spacefast.com/v1/connectors/connections/string",
headers={
"Authorization": "Bearer YOUR_TOKEN",
"Content-Type": "application/json"
},
data="{\n \"displayName\": \"string\",\n \"description\": \"string\"\n}",
)
Response
200 Default
{
"$schema": "http://example.com",
"data": {
"id": "string",
"connector": "string",
"owner": "team",
"displayName": "string",
"description": "string",
"status": "pending_authorization",
"identityLabel": "string",
"credentialConfigured": true,
"authMethod": "string",
"scopes": [\
"string"\
],
"isDefault": true,
"toolCount": -9007199254740991,
"createdBy": "string",
"lastCheckedAt": "2019-08-24T14:15:22Z",
"revokedAt": "2019-08-24T14:15:22Z",
"createdAt": "2019-08-24T14:15:22Z",
"updatedAt": "2019-08-24T14:15:22Z"
}
}
Error Example
{
"$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"
}