Create a new session that can be used to maintain conversation context across multiple API calls.
Base URL
Create Session
POST https://api.pathors.com/project/{projectId}/session
Path Parameters
Bearer token authentication using your API key
Request Body
A unique identifier for the session. This can be any string you choose to identify the conversation session.
Optional initial session variables that can be used within the pathway. These variables can be referenced in your pathway configuration.
Optional provider specification for the session (e.g., “api”, “web”)
Response
The created session ID (same as the one provided in the request)
The pathway ID for this project
Example
Request
curl -X POST https://api.pathors.com/project/{projectId}/session \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"session_id": "user-123-session-456",
"variables": {
"userName": "John Doe",
"userRole": "admin",
"customData": "value"
},
"provider": "api"
}'
Response
{
"sessionId": "user-123-session-456",
"pathwayId": "project-id-xxx"
}
Usage Notes
- Session ID: Choose a unique identifier for each conversation. This could be a UUID, user ID + timestamp, or any other unique string.
- Variables: Session variables can be used within your pathway logic. They persist throughout the session and can be referenced in conversation flows.
- Reusability: Once created, the session can be used in multiple completion requests by including the
session_id parameter or X-Session-ID header.
Error Responses
| Status Code | Description |
|---|
| 400 | Missing or invalid session_id |
| 401 | Invalid authentication |
| 500 | Internal server error |
Example error responses:
400 Bad Request:
{
"error": "session_id is required"
}
401 Unauthorized:
{
"error": {
"message": "Invalid authentication"
}
}
- End Session - End an existing session when the conversation is complete