Ampersand · Capability
Ampersand public API — Connection
Ampersand public API — Connection. 5 operations. Lead operation: Ampersand List Connections. Self-contained Naftiko capability covering one Ampersand business surface.
What You Can Do
GET
Listconnections
— Ampersand List Connections
/v1/projects/{projectidorname}/connections
GET
Getconnection
— Ampersand Get a Connection
/v1/projects/{projectidorname}/connections/{connectionid}
PATCH
Updateconnection
— Ampersand Update a Connection.
/v1/projects/{projectidorname}/connections/{connectionid}
DELETE
Deleteconnection
— Ampersand Delete a Connection
/v1/projects/{projectidorname}/connections/{connectionid}
POST
Generateconnection
— Ampersand Generate a New Connection
/v1/projects/{projectidorname}/connections-generate
MCP Tools
ampersand-list-connections
Ampersand List Connections
read-only
idempotent
ampersand-get-connection
Ampersand Get a Connection
read-only
idempotent
ampersand-update-connection
Ampersand Update a Connection.
idempotent
ampersand-delete-connection
Ampersand Delete a Connection
idempotent
ampersand-generate-new-connection
Ampersand Generate a New Connection
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Ampersand public API — Connection
description: 'Ampersand public API — Connection. 5 operations. Lead operation: Ampersand List Connections. Self-contained
Naftiko capability covering one Ampersand business surface.'
tags:
- Ampersand
- Connection
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
AMPERSAND_API_KEY: AMPERSAND_API_KEY
capability:
consumes:
- type: http
namespace: ampersand-connection
baseUri: https://api.withampersand.com/v1
description: Ampersand public API — Connection business capability. Self-contained, no shared references.
resources:
- name: projects-projectIdOrName-connections
path: /projects/{projectIdOrName}/connections
operations:
- name: listconnections
method: GET
description: Ampersand List Connections
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: projectIdOrName
in: path
type: string
description: The Ampersand project ID or project name.
required: true
- name: provider
in: query
type: string
description: The provider name (e.g. "salesforce", "hubspot")
- name: groupRef
in: query
type: string
description: The ID of the user group that has access to this installation.
- name: consumerRef
in: query
type: string
description: The consumer reference.
- name: projects-projectIdOrName-connections-connectionId
path: /projects/{projectIdOrName}/connections/{connectionId}
operations:
- name: getconnection
method: GET
description: Ampersand Get a Connection
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: projectIdOrName
in: path
type: string
description: The Ampersand project ID or project name.
required: true
- name: connectionId
in: path
type: string
required: true
- name: includeCreds
in: query
type: boolean
description: Whether to include credentials for `oauth2AuthorizationCode` in the response. If true, `accessToken`
and `scopes` are included. To include `refreshToken` as wel
- name: includeRefreshToken
in: query
type: boolean
description: Whether to include `refreshToken` for `oauth2AuthorizationCode` credentials in the response (along
with `accessToken` and `scopes`). If true, the `includeCreds`
- name: refresh
in: query
type: string
description: Whether to refresh the access token. If value is `ifExpired`, the access token will be refreshed only
if it has expired. If value is `force`, the access token w
- name: updateconnection
method: PATCH
description: Ampersand Update a Connection.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: projectIdOrName
in: path
type: string
description: The Ampersand project ID or project name.
required: true
- name: connectionId
in: path
type: string
description: The ID of the connection to update. You can find this via the [list connections endpoint](https://docs.withampersand.com/reference/connection/list-connections).
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: deleteconnection
method: DELETE
description: Ampersand Delete a Connection
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: projectIdOrName
in: path
type: string
description: The Ampersand project ID or project name.
required: true
- name: connectionId
in: path
type: string
required: true
- name: projects-projectIdOrName-connections:generate
path: /projects/{projectIdOrName}/connections:generate
operations:
- name: generateconnection
method: POST
description: Ampersand Generate a New Connection
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: projectIdOrName
in: path
type: string
description: The Ampersand project ID or project name.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: false
authentication:
type: bearer
token: '{{env.AMPERSAND_API_KEY}}'
exposes:
- type: rest
namespace: ampersand-connection-rest
port: 8080
description: REST adapter for Ampersand public API — Connection. One Spectral-compliant resource per consumed operation,
prefixed with /v1.
resources:
- path: /v1/projects/{projectidorname}/connections
name: projects-projectidorname-connections
description: REST surface for projects-projectIdOrName-connections.
operations:
- method: GET
name: listconnections
description: Ampersand List Connections
call: ampersand-connection.listconnections
with:
projectIdOrName: rest.projectIdOrName
provider: rest.provider
groupRef: rest.groupRef
consumerRef: rest.consumerRef
outputParameters:
- type: object
mapping: $.
- path: /v1/projects/{projectidorname}/connections/{connectionid}
name: projects-projectidorname-connections-connectionid
description: REST surface for projects-projectIdOrName-connections-connectionId.
operations:
- method: GET
name: getconnection
description: Ampersand Get a Connection
call: ampersand-connection.getconnection
with:
projectIdOrName: rest.projectIdOrName
connectionId: rest.connectionId
includeCreds: rest.includeCreds
includeRefreshToken: rest.includeRefreshToken
refresh: rest.refresh
outputParameters:
- type: object
mapping: $.
- method: PATCH
name: updateconnection
description: Ampersand Update a Connection.
call: ampersand-connection.updateconnection
with:
projectIdOrName: rest.projectIdOrName
connectionId: rest.connectionId
body: rest.body
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: deleteconnection
description: Ampersand Delete a Connection
call: ampersand-connection.deleteconnection
with:
projectIdOrName: rest.projectIdOrName
connectionId: rest.connectionId
outputParameters:
- type: object
mapping: $.
- path: /v1/projects/{projectidorname}/connections-generate
name: projects-projectidorname-connections-generate
description: REST surface for projects-projectIdOrName-connections:generate.
operations:
- method: POST
name: generateconnection
description: Ampersand Generate a New Connection
call: ampersand-connection.generateconnection
with:
projectIdOrName: rest.projectIdOrName
body: rest.body
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: ampersand-connection-mcp
port: 9090
transport: http
description: MCP adapter for Ampersand public API — Connection. One tool per consumed operation, routed inline through
this capability's consumes block.
tools:
- name: ampersand-list-connections
description: Ampersand List Connections
hints:
readOnly: true
destructive: false
idempotent: true
call: ampersand-connection.listconnections
with:
projectIdOrName: tools.projectIdOrName
provider: tools.provider
groupRef: tools.groupRef
consumerRef: tools.consumerRef
outputParameters:
- type: object
mapping: $.
- name: ampersand-get-connection
description: Ampersand Get a Connection
hints:
readOnly: true
destructive: false
idempotent: true
call: ampersand-connection.getconnection
with:
projectIdOrName: tools.projectIdOrName
connectionId: tools.connectionId
includeCreds: tools.includeCreds
includeRefreshToken: tools.includeRefreshToken
refresh: tools.refresh
outputParameters:
- type: object
mapping: $.
- name: ampersand-update-connection
description: Ampersand Update a Connection.
hints:
readOnly: false
destructive: false
idempotent: true
call: ampersand-connection.updateconnection
with:
projectIdOrName: tools.projectIdOrName
connectionId: tools.connectionId
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: ampersand-delete-connection
description: Ampersand Delete a Connection
hints:
readOnly: false
destructive: true
idempotent: true
call: ampersand-connection.deleteconnection
with:
projectIdOrName: tools.projectIdOrName
connectionId: tools.connectionId
outputParameters:
- type: object
mapping: $.
- name: ampersand-generate-new-connection
description: Ampersand Generate a New Connection
hints:
readOnly: false
destructive: false
idempotent: false
call: ampersand-connection.generateconnection
with:
projectIdOrName: tools.projectIdOrName
body: tools.body
outputParameters:
- type: object
mapping: $.