48 lines
1.5 KiB
JSON
48 lines
1.5 KiB
JSON
{
|
|
"name": "hermes_sessions_crud",
|
|
"table": "hermes_sessions",
|
|
"operations": {
|
|
"create": {
|
|
"method": "POST",
|
|
"url": "/api/hermes/sessions",
|
|
"description": "Create a new session record for current user"
|
|
},
|
|
"read": {
|
|
"method": "GET",
|
|
"url": "/api/hermes/sessions/{id}",
|
|
"description": "Read a session by ID (user-isolated)"
|
|
},
|
|
"update": {
|
|
"method": "PUT",
|
|
"url": "/api/hermes/sessions/{id}",
|
|
"description": "Update a session record (user-isolated)"
|
|
},
|
|
"delete": {
|
|
"method": "DELETE",
|
|
"url": "/api/hermes/sessions/{id}",
|
|
"description": "Delete a session record (user-isolated)"
|
|
},
|
|
"list": {
|
|
"method": "GET",
|
|
"url": "/api/hermes/sessions",
|
|
"description": "List all sessions for current user with optional filtering"
|
|
},
|
|
"search": {
|
|
"method": "GET",
|
|
"url": "/api/hermes/sessions/search",
|
|
"description": "Search sessions by title, preview, or tags (user-isolated)"
|
|
}
|
|
},
|
|
"fields": {
|
|
"id": {"type": "str", "required": true},
|
|
"user_id": {"type": "str", "required": true, "auto": "current_user_id"},
|
|
"title": {"type": "str", "required": false},
|
|
"preview": {"type": "text", "required": false},
|
|
"started_at": {"type": "datetime", "required": true},
|
|
"ended_at": {"type": "datetime", "required": false},
|
|
"tags": {"type": "text", "required": false}
|
|
},
|
|
"filters": {
|
|
"user_id": {"auto": "current_user_id"}
|
|
}
|
|
} |