Ga naar inhoud

Beheer de AI-acties van je AI-agent via de API.

In een geschikte browser zijn deze controles ook beschikbaar als sitetools. De links openen de standaardformulieren.

AI-acties breiden de mogelijkheden van je AI-agent uit tot meer dan vragen beantwoorden uit de Kennisbank. Je definieert er gedrag op basis van triggers mee: dingen die de AI moet doen wanneer die specifieke situaties in een gesprek herkent.

Wat AI-acties doen:

  • HTTP-aanvraagacties: roepen externe API’s aan wanneer ze worden geactiveerd. Controleer bijvoorbeeld de bestelstatus in je backend, maak een supportticket aan of zoek accountinformatie op, allemaal tijdens het gesprek.
  • MCP-acties: verbinden met Model Context Protocol-servers voor geavanceerde toolintegraties (bijvoorbeeld Shopify-producten opzoeken of aangepaste databasequery’s).

Veelvoorkomende toepassingen:

  • Tijdens gesprekken actuele informatie (bestelstatus, accountgegevens, voorraad) uit je backendsystemen opvragen
  • Tickets maken, CRM-records bijwerken of workflows in externe systemen starten op basis van gesprekscontext
  • Gepersonaliseerde aanbevelingen doen door je productcatalogus te doorzoeken

Elke actie heeft een name, description (voor HTTP-aanvraagacties vertelt de beschrijving de AI wanneer de actie moet worden geactiveerd) en een typespecifieke configuratie. Acties kunnen afzonderlijk via de API worden in- of uitgeschakeld. Je maakt en configureert acties volledig in het Quickchat-dashboard. De API biedt bewerkingen voor opvragen, bijwerken (in- of uitschakelen) en verwijderen, plus specifieke endpoints voor het maken en configureren van MCP-acties.

Bereik: read_all

GET https://app.quickchat.ai/v1/api/ai_actions

Terminal window
curl https://app.quickchat.ai/v1/api/ai_actions \
-H 'Authorization: Bearer <API_TOKEN>'

Antwoord 200 OK

[
{
"id": 1,
"name": "Check Order Status",
"description": "Look up order status when customer asks about their order.",
"is_active": true,
"type": "http_request",
"icon": null,
"icon_color": null,
"is_valid": true
}
]
VeldBeschrijving
id
integer
Identificatie van de AI-actie
name
string
Weergavenaam
description
string
Wanneer de actie wordt geactiveerd
is_active
boolean
Of de actie is ingeschakeld
type
string
"http_request", "remote_mcp", "shopify_remote_mcp" of "knowledge_base"
icon
string of null
Identificatie van het pictogram
icon_color
string of null
Kleur van het pictogram
is_valid
boolean
Of de actie correct is geconfigureerd
Bereik: write_all

PATCH https://app.quickchat.ai/v1/api/ai_actions/{action_id}

Requestbody

ParameterBeschrijving
is_active
boolean
De actie in- of uitschakelen
icon
string
Identificatie van het pictogram (maximaal 200 tekens)
icon_color
string
Kleur van het pictogram (maximaal 50 tekens)
Terminal window
curl -X PATCH https://app.quickchat.ai/v1/api/ai_actions/1 \
-H 'Authorization: Bearer <API_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{"is_active": false}'

Antwoord 200 OK: retourneert de bijgewerkte momentopname van de AI-actie.

Bereik: write_all

DELETE https://app.quickchat.ai/v1/api/ai_actions/{action_id}

Terminal window
curl -X DELETE https://app.quickchat.ai/v1/api/ai_actions/1 \
-H 'Authorization: Bearer <API_TOKEN>'

Antwoord 200 OK (lege body)

Bereik: write_all

POST https://app.quickchat.ai/v1/api/ai_actions/remote_mcp

Koppelt een externe MCP-server aan je AI-agent als MCP-actie. Vereist een API-token met het bereik write_all (API-tokens vereisen het Business-abonnement of hoger).

Requestbody

ParameterBeschrijving
remote_mcp_url
string, verplicht
De URL van de MCP-server. Moet https:// gebruiken; URL’s die naar privé- of interne netwerkadressen verwijzen, worden geweigerd
headers
array, verplicht
Verbindingsheaders die naar de server worden gestuurd, bijvoorbeeld een statisch Authorization-token. Elke vermelding is {"id", "name", "value"}; kies een willekeurige unieke string als id. Stuur [] als de server geen headers nodig heeft
allowed_tools
array, verplicht
Schakelaars per tool, elk {"name", "is_active"}. Stuur [] om de beschikbaarheid van tools aan default_tool_is_active over te laten
name
string
Weergavenaam in de actielijst (maximaal 100 tekens). Standaard een label dat van de hostnaam van de server is afgeleid
description
string
Beschrijving in de actielijst (maximaal 2.500 tekens)
icon
string
Identificatie van het pictogram (maximaal 200 tekens)
icon_color
string
Kleur van het pictogram (maximaal 50 tekens)

name en description zijn labels voor beheerders: ze identificeren de actie in het dashboard en de AI leest ze nooit. De AI gebruikt de toolbeschrijvingen die de MCP-server zelf publiceert.

Terminal window
curl -X POST https://app.quickchat.ai/v1/api/ai_actions/remote_mcp \
-H 'Authorization: Bearer <API_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{
"remote_mcp_url": "https://mcp.example.com/mcp",
"headers": [
{"id": "h-1", "name": "Authorization", "value": "Bearer <SERVER_TOKEN>"}
],
"allowed_tools": [],
"name": "Example MCP"
}'

Antwoord 201 Created

{
"id": 2,
"name": "Example MCP",
"description": "Connected MCP server",
"is_active": false,
"type": "remote_mcp",
"icon": "FaMixcloud",
"icon_color": "#EF4444",
"is_valid": true,
"validation_issues": [],
"remote_mcp_url": "https://mcp.example.com/mcp",
"remote_mcp_auth_token": "",
"default_tool_is_active": true,
"allowed_tools": [],
"headers": [
{"id": 10, "name": "Authorization", "value": "Bearer <SERVER_TOKEN>"}
],
"oauth": null,
"recommended_tools": []
}
VeldBeschrijving
remote_mcp_url
string
De URL van de gekoppelde MCP-server
default_tool_is_active
boolean
Of tools die niet in allowed_tools staan mogen worden gebruikt
allowed_tools
array
Schakelaars per tool, {"name", "is_active"}
headers
array
Opgeslagen verbindingsheaders
remote_mcp_auth_token
string of null
Oud veld voor een statisch token. Dit kan niet via deze API worden ingesteld; geef inloggegevens in plaats daarvan mee via headers
oauth
object of null
Autorisatiestatus voor servers die via OAuth zijn gekoppeld (anders null)
recommended_tools
array
Toolnamen die Quickchat aanbeveelt voor servers met een samengesteld profiel (alleen lezen)
validation_issues
array
Namen van mislukte configuratiecontroles; leeg wanneer is_valid gelijk is aan true

De overige velden komen overeen met Alle AI-acties opvragen.

De actie wordt aangemaakt met is_active: false. Voor servers zonder samengesteld Quickchat-profiel begint de actie ook met default_tool_is_active: true, zodat elke tool die bij het antwoorden wordt ontdekt is toegestaan totdat je dit beperkt. Schakel de actie in via het bovenstaande endpoint AI-actie bijwerken: PATCH /v1/api/ai_actions/{action_id} met {"is_active": true}.

Bereik: read_all

GET https://app.quickchat.ai/v1/api/ai_actions/{action_id}/remote_mcp

Terminal window
curl https://app.quickchat.ai/v1/api/ai_actions/2/remote_mcp \
-H 'Authorization: Bearer <API_TOKEN>'

Antwoord 200 OK: retourneert de MCP-specifieke configuratie in hetzelfde formaat als het bovenstaande aanmaakantwoord.

Bereik: write_all

PATCH https://app.quickchat.ai/v1/api/ai_actions/{action_id}/remote_mcp

Alle velden zijn optioneel; alleen de verstuurde velden worden gewijzigd.

Requestbody

ParameterBeschrijving
remote_mcp_url
string
Nieuwe server-URL (gevalideerd zoals bij aanmaak). Het wijzigen van de URL van een via OAuth gekoppelde server wist de opgeslagen autorisatie en schakelt de actie uit
headers
array
Vervangt de verbindingsheaders
allowed_tools
array
Vervangt de schakelaars per tool, elk {"name", "is_active"}
default_tool_is_active
boolean
Of tools die niet in allowed_tools staan mogen worden gebruikt
name
string
Weergavenaam (maximaal 100 tekens)
description
string
Beschrijving in de actielijst (maximaal 2.500 tekens)
Terminal window
curl -X PATCH https://app.quickchat.ai/v1/api/ai_actions/2/remote_mcp \
-H 'Authorization: Bearer <API_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{
"allowed_tools": [
{"name": "search_docs", "is_active": true},
{"name": "delete_page", "is_active": false}
],
"default_tool_is_active": false
}'

Antwoord 200 OK: retourneert de bijgewerkte MCP-actie in hetzelfde formaat als het aanmaakantwoord.

Verbindingstests en tooldetectie, de controle achter Verbinden in het dashboard, zijn niet beschikbaar via de openbare API. Het dashboard voert de controle automatisch uit wanneer je een server koppelt of opnieuw verbindt. Servers met OAuth moeten hun autorisatie in het dashboard voltooien; het veld oauth in de bovenstaande antwoorden geeft die status aan.