Przejdź do głównej zawartości

Zarządzaj AI Actions swojego AI Agenta za pomocą API.

AI Actions rozszerzają możliwości Twojego AI Agenta poza odpowiadanie na pytania z Bazy Wiedzy. Pozwalają zdefiniować wyzwalane zachowania — czynności, które AI powinien wykonać, gdy wykryje określone sytuacje w rozmowie.

Co robią AI Actions:

  • HTTP Request Actions — Wywołują zewnętrzne API po wyzwoleniu. Na przykład sprawdzają status zamówienia w Twoim backendzie, tworzą zgłoszenie do supportu lub wyszukują informacje o koncie — wszystko w trakcie rozmowy.
  • Akcje MCP: Łączą się z serwerami Model Context Protocol w celu zaawansowanych integracji narzędziowych (np. wyszukiwanie produktów w Shopify, niestandardowe zapytania do bazy danych).

Typowe zastosowania:

  • Wyszukiwanie informacji w czasie rzeczywistym (status zamówienia, szczegóły konta, stan magazynu) z Twoich systemów backendowych podczas rozmów
  • Tworzenie zgłoszeń, aktualizowanie rekordów w CRM lub wyzwalanie workflow w systemach zewnętrznych na podstawie kontekstu rozmowy
  • Dostarczanie spersonalizowanych rekomendacji poprzez odpytywanie Twojego katalogu produktów

Każda akcja ma name, description (w przypadku HTTP Request Actions opis mówi AI, kiedy ją wyzwolić) oraz konfigurację zależną od typu. Akcje można włączać/wyłączać indywidualnie przez API. Akcje są tworzone i w pełni konfigurowane w Dashboardzie Quickchat — API udostępnia operacje listowania, aktualizacji (włączanie/wyłączanie) i usuwania, a także dedykowane endpointy do tworzenia i konfigurowania Akcji MCP.

Scope: read_all

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

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

Response 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
}
]
FieldDescription
id
integer
Identyfikator AI Action
name
string
Nazwa wyświetlana
description
string
Kiedy akcja się wyzwala
is_active
boolean
Czy włączona
type
string
"http_request", "remote_mcp", "shopify_remote_mcp" lub "knowledge_base"
icon
string or null
Identyfikator ikony
icon_color
string or null
Kolor ikony
is_valid
boolean
Czy poprawnie skonfigurowana
Scope: write_all

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

Request Body

ParameterDescription
is_active
boolean
Włącz/wyłącz akcję
icon
string
Identyfikator ikony (maks. 200 znaków)
icon_color
string
Kolor ikony (maks. 50 znaków)
Okno terminala
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}'

Response 200 OK — Zwraca zaktualizowany snapshot AI Action.

Scope: write_all

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

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

Response 200 OK (puste body)

Scope: write_all

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

Łączy zdalny serwer MCP z Twoim Agentem AI jako Akcję MCP. Wymaga tokenu API ze scope write_all (tokeny API wymagają planu Business lub wyższego).

Request Body

ParameterDescription
remote_mcp_url
string, required
URL serwera MCP. Musi używać https://; URL-e wskazujące prywatne lub wewnętrzne adresy sieciowe są odrzucane
headers
array, required
Nagłówki połączenia wysyłane do serwera, np. statyczny token Authorization. Każdy wpis to {"id", "name", "value"} — jako id wybierz dowolny unikalny string. Wyślij [], jeśli serwer żadnych nie potrzebuje
allowed_tools
array, required
Przełączniki per narzędzie, każdy {"name", "is_active"}. Wyślij [], aby o dostępności narzędzi decydowało default_tool_is_active
name
string
Nazwa wyświetlana na liście akcji (maks. 100 znaków). Domyślnie etykieta wyprowadzona z hosta serwera
description
string
Opis wyświetlany na liście akcji (maks. 2500 znaków)
icon
string
Identyfikator ikony (maks. 200 znaków)
icon_color
string
Kolor ikony (maks. 50 znaków)

name i description to etykiety dla operatorów: identyfikują akcję w dashboardzie, a AI nigdy ich nie czyta. AI pracuje na opisach narzędzi publikowanych przez sam serwer MCP.

Okno terminala
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"
}'

Response 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": []
}
FieldDescription
remote_mcp_url
string
URL połączonego serwera MCP
default_tool_is_active
boolean
Czy wolno używać narzędzi niewymienionych w allowed_tools
allowed_tools
array
Przełączniki per narzędzie, {"name", "is_active"}
headers
array
Zapisane nagłówki połączenia
remote_mcp_auth_token
string or null
Pole legacy na statyczny token. Nie da się go ustawić przez to API — dane uwierzytelniające przekazuj przez headers
oauth
object or null
Status autoryzacji serwerów połączonych przez logowanie OAuth (w przeciwnym razie null)
recommended_tools
array
Nazwy narzędzi rekomendowane przez Quickchat dla serwerów z profilem dostrojonym przez Quickchat (tylko do odczytu)
validation_issues
array
Nazwy niezaliczonych kontroli konfiguracji; puste, gdy is_valid jest true

Pozostałe pola odpowiadają List All AI Actions.

Akcja jest tworzona z is_active: false. Dla serwerów bez profilu dostrojonego przez Quickchat startuje też z default_tool_is_active: true, więc każde narzędzie odkryte w momencie odpowiedzi jest dozwolone, dopóki go nie ograniczysz. Aby włączyć akcję, użyj endpointu Update AI Action powyżej: PATCH /v1/api/ai_actions/{action_id} z {"is_active": true}.

Scope: read_all

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

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

Response 200 OK — Zwraca konfigurację specyficzną dla MCP, w tym samym kształcie co odpowiedź przy tworzeniu powyżej.

Scope: write_all

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

Wszystkie pola są opcjonalne; zmieniają się tylko pola, które wyślesz.

Request Body

ParameterDescription
remote_mcp_url
string
Nowy URL serwera (walidowany jak przy tworzeniu). Zmiana URL serwera połączonego przez OAuth usuwa zapisaną autoryzację i wyłącza akcję
headers
array
Zastępuje nagłówki połączenia
allowed_tools
array
Zastępuje przełączniki per narzędzie, każdy {"name", "is_active"}
default_tool_is_active
boolean
Czy wolno używać narzędzi niewymienionych w allowed_tools
name
string
Nazwa wyświetlana (maks. 100 znaków)
description
string
Opis wyświetlany na liście akcji (maks. 2500 znaków)
Okno terminala
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
}'

Response 200 OK — Zwraca zaktualizowaną Akcję MCP, w tym samym kształcie co odpowiedź przy tworzeniu.