Skip to content
Hoody.com

Use these endpoints to persist cookies and authentication state across multiple curl requests. A session is identified by a caller-provided string and is created automatically the first time that string is supplied to a request endpoint. Cookies are updated after each request. Sessions are removed after the configured idle retention period (default 720 hours), unless retention is disabled. Expired ids can start a fresh empty jar; explicitly deleted ids are tombstoned and refused for 24 hours.

Common patterns include login flows (POST login, then reuse the session for follow-up calls), token-based API authentication, and multi-step workflows that need to carry cookies between steps.

Retrieve a list of all active cookie sessions, sorted by last used time.

Session lifecycle:

  1. Created automatically on first use with session_id.
  2. Cookies are updated after each request.
  3. Persists until explicitly deleted or removed by idle retention.

Common patterns:

  • Login flow: POST login, save cookies, subsequent requests use the same session.
  • API authentication: initial auth, the session preserves tokens.
  • Multi-step workflows: each step uses the same session.
NameInTypeRequiredDescription
pagequeryintegerNo1-based page number
limitqueryintegerNoItems per page. Current handler returns all items when omitted.

A paginated list of active sessions, sorted by last used time.

{
"items": [
{
"cookies": {
"csrftoken": "xyz789",
"sessionid": "abc123def456"
},
"created_at": "2024-01-15T10:00:00Z",
"id": "user-session-123",
"last_used": "2024-01-15T10:30:00Z"
},
{
"cookies": {
"auth_token": "bearer_token_here"
},
"created_at": "2024-01-15T09:00:00Z",
"id": "api-auth-session",
"last_used": "2024-01-15T10:15:00Z"
}
],
"meta": {
"limit": 50,
"page": 1,
"total": 2
}
}
Error CodeTitleDescriptionResolution
Terminal window
curl "https://{projectId}-{containerId}-curl-1.{server}.containers.hoody.com/api/v1/curl/sessions?page=1&limit=50"

The code field in the shared curl_CurlErrorResponse schema is a closed enum. The complete set of values the field may take is:

Code
INVALID_PARAMETER
INVALID_URL
INVALID_CRON_EXPRESSION
PAYLOAD_TOO_LARGE
ORIGIN_NOT_ALLOWED
JOB_NOT_FOUND
JOB_RESULT_NOT_READY
SESSION_NOT_FOUND
FILE_NOT_FOUND
SCHEDULE_NOT_FOUND
SCHEDULE_EXISTS
REQUEST_TIMEOUT
JOB_NOT_FINISHED
JOB_CANCELLED
STORAGE_ERROR
INTERNAL_ERROR
SSE_PARSE_ERROR
UPSTREAM_ERROR
DNS_RESOLUTION_FAILED
RESPONSE_TOO_LARGE
QUEUE_FULL
SSE_CAPACITY_EXHAUSTED
UPSTREAM_TIMEOUT
NOT_FOUND
METHOD_NOT_ALLOWED
REQUEST_HEADERS_TOO_LARGE

Retrieve complete details of a specific cookie session, including all stored cookies, creation time, and last usage timestamp.

Use cases:

  • Inspect authentication cookies.
  • Debug session state issues.
  • Verify cookie persistence.
NameInTypeRequiredDescription
idpathstringYesSession identifier (caller-provided string)

Session details with all cookies.

{
"cookies": {
"csrftoken": "xyz789",
"preferences": "theme=dark",
"sessionid": "abc123def456"
},
"created_at": "2024-01-15T10:00:00Z",
"id": "user-session-123",
"last_used": "2024-01-15T10:30:00Z"
}
Error CodeTitleDescriptionResolution
Terminal window
curl "https://{projectId}-{containerId}-curl-1.{server}.containers.hoody.com/api/v1/curl/sessions/user-session-123"

The code field in the shared curl_CurlErrorResponse schema is a closed enum. The complete set of values the field may take is:

Code
INVALID_PARAMETER
INVALID_URL
INVALID_CRON_EXPRESSION
PAYLOAD_TOO_LARGE
ORIGIN_NOT_ALLOWED
JOB_NOT_FOUND
JOB_RESULT_NOT_READY
SESSION_NOT_FOUND
FILE_NOT_FOUND
SCHEDULE_NOT_FOUND
SCHEDULE_EXISTS
REQUEST_TIMEOUT
JOB_NOT_FINISHED
JOB_CANCELLED
STORAGE_ERROR
INTERNAL_ERROR
SSE_PARSE_ERROR
UPSTREAM_ERROR
DNS_RESOLUTION_FAILED
RESPONSE_TOO_LARGE
QUEUE_FULL
SSE_CAPACITY_EXHAUSTED
UPSTREAM_TIMEOUT
NOT_FOUND
METHOD_NOT_ALLOWED
REQUEST_HEADERS_TOO_LARGE

Retrieve only the cookie snapshot from a session, without metadata. Unique cookie names are returned as plain keys. If the same cookie name exists under multiple domain or path scopes, the snapshot uses scope-qualified keys like name@example.com/ to avoid silently dropping entries.

NameInTypeRequiredDescription
idpathstringYesSession identifier

Returns the cookie jar as key-value pairs.

Error CodeTitleDescriptionResolution
Terminal window
curl "https://{projectId}-{containerId}-curl-1.{server}.containers.hoody.com/api/v1/curl/sessions/user-session-123/cookies"

The code field in the shared curl_CurlErrorResponse schema is a closed enum. The complete set of values the field may take is:

Code
INVALID_PARAMETER
INVALID_URL
INVALID_CRON_EXPRESSION
PAYLOAD_TOO_LARGE
ORIGIN_NOT_ALLOWED
JOB_NOT_FOUND
JOB_RESULT_NOT_READY
SESSION_NOT_FOUND
FILE_NOT_FOUND
SCHEDULE_NOT_FOUND
SCHEDULE_EXISTS
REQUEST_TIMEOUT
JOB_NOT_FINISHED
JOB_CANCELLED
STORAGE_ERROR
INTERNAL_ERROR
SSE_PARSE_ERROR
UPSTREAM_ERROR
DNS_RESOLUTION_FAILED
RESPONSE_TOO_LARGE
QUEUE_FULL
SSE_CAPACITY_EXHAUSTED
UPSTREAM_TIMEOUT
NOT_FOUND
METHOD_NOT_ALLOWED
REQUEST_HEADERS_TOO_LARGE

Permanently delete a session and all its stored cookies. This action cannot be undone. The deleted id is tombstoned and stays refused for 24 hours.

NameInTypeRequiredDescription
idpathstringYesSession identifier to delete

Session deleted successfully.

Error CodeTitleDescriptionResolution
Terminal window
curl -X DELETE "https://{projectId}-{containerId}-curl-1.{server}.containers.hoody.com/api/v1/curl/sessions/user-session-123"

The code field in the shared curl_CurlErrorResponse schema is a closed enum. The complete set of values the field may take is:

Code
INVALID_PARAMETER
INVALID_URL
INVALID_CRON_EXPRESSION
PAYLOAD_TOO_LARGE
ORIGIN_NOT_ALLOWED
JOB_NOT_FOUND
JOB_RESULT_NOT_READY
SESSION_NOT_FOUND
FILE_NOT_FOUND
SCHEDULE_NOT_FOUND
SCHEDULE_EXISTS
REQUEST_TIMEOUT
JOB_NOT_FINISHED
JOB_CANCELLED
STORAGE_ERROR
INTERNAL_ERROR
SSE_PARSE_ERROR
UPSTREAM_ERROR
DNS_RESOLUTION_FAILED
RESPONSE_TOO_LARGE
QUEUE_FULL
SSE_CAPACITY_EXHAUSTED
UPSTREAM_TIMEOUT
NOT_FOUND
METHOD_NOT_ALLOWED
REQUEST_HEADERS_TOO_LARGE