openapi: 3.0.2
info:
title: Rasa SDK - Action Server Endpoint Domain Rasa SDK Action Server Endpoint API
version: 0.0.0
description: API of the action server which is used by Rasa to execute custom actions.
servers:
- url: http://localhost:5055/webhook
description: Local development action server
tags:
- name: Rasa SDK Action Server Endpoint
paths:
/:
post:
summary: Core request to execute a custom action
description: Rasa Core sends a request to the action server to execute a certain custom action. As a response to the action call from Core, you can modify the tracker, e.g. by setting slots and send responses back to the user.
operationId: call_action
requestBody:
description: Describes the action to be called and provides information on the current state of the conversation.
required: true
content:
application/json:
schema:
type: object
properties:
next_action:
description: The name of the action which should be executed.
type: string
sender_id:
description: Unique id of the user who is having the current conversation.
type: string
tracker:
$ref: ./rasa.yml#/components/schemas/Tracker
domain:
$ref: ./rasa.yml#/components/schemas/Domain
responses:
200:
description: Action was executed succesfully.
content:
application/json:
schema:
type: object
properties:
events:
description: Events returned by the action.
type: array
items:
$ref: ./rasa.yml#/components/schemas/Event
responses:
description: List of responses which should be sent to the user
type: array
items:
$ref: '#/components/schemas/Response'
400:
description: Action execution was rejected. This is the same as returning an `ActionExecutionRejected` event.
content:
application/json:
schema:
type: object
properties:
action_name:
type: string
description: Name of the action which rejected its execution.
error:
type: string
description: The error message.
500:
description: The action server encountered an exception while running the action.
tags:
- Rasa SDK Action Server Endpoint
components:
schemas:
Response:
oneOf:
- $ref: '#/components/schemas/TextResponse'
- $ref: '#/components/schemas/TemplateResponse'
- $ref: '#/components/schemas/ButtonResponse'
ButtonResponse:
description: Text with buttons which should be sent to the user.
type: object
properties:
text:
type: string
description: Message
buttons:
type: array
items:
$ref: '#/components/schemas/Button'
TemplateResponse:
description: Response template the bot should utter.
type: object
properties:
template:
description: Name of the template
type: string
additionalProperties:
description: Keyword argument to fill the template
type: string
required:
- template
TextResponse:
description: Text which the bot should utter.
type: object
properties:
text:
description: The text which should be uttered.
type: string
required:
- text
Button:
description: A button which can be clicked by the user in the conversation.
type: object
properties:
title:
type: string
description: The text on the button
payload:
type: string
description: Payload which is sent if the button is pressed.