Skip to main content
PATCH
/
api
/
sessions
/
:id
curl -X PATCH "https://app.joip.io/api/sessions/123" \
  -H "Content-Type: application/json" \
  -H "Cookie: connect.sid=YOUR_SESSION_COOKIE" \
  -d '{
    "title": "Updated Session Title",
    "intervalMin": 4,
    "intervalMax": 12
  }'
{
  "id": 123,
  "title": "Updated Session Title",
  "userId": "user_abc123",
  "subreddits": ["joi", "femdom"],
  "categoryId": 1,
  "intervalMin": 4,
  "intervalMax": 12,
  "transition": "fade",
  "thumbnail": "https://i.redd.it/thumb.jpg",
  "captionTheme": "joi",
  "isPublic": false,
  "shareToCommunity": false,
  "isFavorite": true,
  "isManualMode": false,
  "isImported": false,
  "createdAt": "2025-03-02T10:00:00Z",
  "updatedAt": "2025-03-02T12:30:00Z"
}

Authentication

This endpoint requires authentication. Users can only update sessions they own.

Path Parameters

id
integer
required
The unique session ID to update

Request Body

All fields are optional. Only provided fields will be updated.
title
string
Session title (minimum 1 character)
subreddits
string
Comma-separated list of subreddit names. Note: Cannot be modified for imported sessions
categoryId
integer | null
Category ID to assign. Pass null to reset to default category
intervalMin
integer
Minimum slide interval in seconds (1-60)
intervalMax
integer
Maximum slide interval in seconds (1-60)
transition
string
Transition effect: “fade”, “slide”, “zoom”, “flip”, or “none”
aiPrompt
string
Custom AI prompt. Note: Cannot be modified for imported sessions
captionTheme
string
Caption theme: “joi”, “forced-bi”, “beta”, “cbt”, “cuckold”, or “custom”. Note: Cannot be modified for imported sessions
thumbnail
string
Custom thumbnail URL. Pass empty string to auto-generate from subreddits
isPublic
boolean
Public accessibility flag
shareToCommunity
boolean
Whether to share to community feed. Enabling creates a persistent snapshot
isFavorite
boolean
Favorite status
isManualMode
boolean
Whether to disable auto-advance in player

Response

Returns the updated session object.
id
integer
Session identifier
title
string
Updated session title
subreddits
array
Updated subreddit list
categoryId
integer
Updated category ID
updatedAt
timestamp
Timestamp of this update
curl -X PATCH "https://app.joip.io/api/sessions/123" \
  -H "Content-Type: application/json" \
  -H "Cookie: connect.sid=YOUR_SESSION_COOKIE" \
  -d '{
    "title": "Updated Session Title",
    "intervalMin": 4,
    "intervalMax": 12
  }'
{
  "id": 123,
  "title": "Updated Session Title",
  "userId": "user_abc123",
  "subreddits": ["joi", "femdom"],
  "categoryId": 1,
  "intervalMin": 4,
  "intervalMax": 12,
  "transition": "fade",
  "thumbnail": "https://i.redd.it/thumb.jpg",
  "captionTheme": "joi",
  "isPublic": false,
  "shareToCommunity": false,
  "isFavorite": true,
  "isManualMode": false,
  "isImported": false,
  "createdAt": "2025-03-02T10:00:00Z",
  "updatedAt": "2025-03-02T12:30:00Z"
}

Notes

  • For imported sessions, the following fields cannot be modified:
    • subreddits
    • captionTheme
    • aiPrompt
  • If an empty thumbnail string is provided and subreddits exist, a new thumbnail is auto-generated
  • Enabling shareToCommunity creates a persistent community snapshot with media copied to durable storage
  • Disabling shareToCommunity removes the community snapshot
  • Activity is tracked for analytics with the updated caption theme (if changed)

Build docs developers (and LLMs) love