Rasa Documentation

Rasa SDK - Action Server Endpoint (0.0.0)

Download OpenAPI specification: Download

API of the action server which is used by Rasa to execute custom actions.

Core request to execute a custom action

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.

Request Body schema: application/json

Describes the action to be called and provides information on the current state of the conversation.

next_action string
The name of the action which should be executed.
sender_id string
Unique id of the user who is having the current conversation.
tracker object
Conversation tracker which stores the conversation state.
domain object
The bot's domain.

Responses

200
Action was executed successfully.

400
Action execution was rejected. This is the same as returning an ActionExecutionRejected event.

500
The action server encountered an exception while running the action.

post/

Local development action server

http://localhost:5055/webhook/

Request samples

Content type

application/json

{"next_action": "string",

"sender_id": "string",

"tracker":
{"conversation_id": "default",

"slots":
[\
{"slot_name": "slot_value"\
\
}\
\
],

"latest_message":
{"entities":
[\
{"start": 0,

"end": 0,

"value": "string",

"entity": "string",

"confidence": 0\
\
}\
\
],

"intent":
{"confidence": 0.6323,

"name": "greet"

},

"intent_ranking":
[\
{"confidence": 0.6323,

"name": "greet"\
\
}\
\
],

"text": "Hello!"

},

"latest_event_time": 1537645578.314389,

"followup_action": "string",

"paused": false,

"events":
[\
{"event": "user",

"timestamp": null,

"metadata":
{"arbitrary_metadata_key": "some string",

"more_metadata": 1\
\
},

"text": "string",

"input_channel": "string",

"message_id": "string",

"parse_data":
{"entities":
[\
{"start": 0,

"end": 0,

"value": "string",

"entity": "string",

"confidence": 0\
\
}\
\
],

"intent":
{"confidence": 0.6323,

"name": "greet"\
\
},

"intent_ranking":
[\
{"confidence": 0.6323,

"name": "greet"\
\
}\
\
],

"text": "Hello!"\
\
}\
\
},

"latest_input_channel": "rest",

"latest_action_name": "action_listen",

"latest_action":
{"action_name": "string",

"action_text": "string"

},

"active_loop":
{"name": "restaurant_form"

}

},

"domain":
{"config":
{"store_entities_as_slots": false

},

"intents":
[\
{"property1":
{"use_entities": true\
\
},

"property2":
{"use_entities": true\
\
}\
\
}\
\
],

"entities":
["person",

"location"\
\
],

"slots":
{"property1":
{"auto_fill": true,

"initial_value": "string",

"type": "string",

"values":
["string"\
\
]

},

"property2":
{"auto_fill": true,

"initial_value": "string",

"type": "string",

"values":
["string"\
\
]

}

},

"responses":
{"property1":
{"text": "string"

},

"property2":
{"text": "string"

}

},

"actions":
["action_greet",

"action_goodbye",

"action_listen"\
\
]

}

Response samples

Content type

application/json

{"events":
[\
{"event": "user",

"timestamp": null,

"metadata":
{"arbitrary_metadata_key": "some string",

"more_metadata": 1\
\
},

"text": "string",

"input_channel": "string",

"message_id": "string",

"parse_data":
{"entities":
[\
{"start": 0,

"end": 0,

"value": "string",

"entity": "string",

"confidence": 0\
\
}\
\
],

"intent":
{"confidence": 0.6323,

"name": "greet"\
\
},

"intent_ranking":
[\
{"confidence": 0.6323,

"name": "greet"\
\
}\
\
],

"text": "Hello!"\
\
}\
\
},

"responses":
[\
{"text": "string"\
\
}\
\
]

}