Say where you are
POST
/presence
const url = 'https://example.com/presence';const options = { method: 'POST', headers: { cookie: 'bottle.session_token=<bottle.session_token>', 'Content-Type': 'application/json' }, body: '{"tabId":"example","page":"example","focus":"example","state":"active"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://example.com/presence \ --header 'Content-Type: application/json' \ --cookie bottle.session_token=<bottle.session_token> \ --data '{ "tabId": "example", "page": "example", "focus": "example", "state": "active" }'A tab checking in: the page it is on and what it has open. Send on arriving, on changing what is open, and every twenty seconds. Answers with everybody here.
Authorizations
Section titled “Authorizations”Request Bodyrequired
Section titled “Request Bodyrequired”Media typeapplication/json
object
tabId
required
string
page
required
string
focus
string | null
state
string
Responses
Section titled “Responses”Here now
Media typeapplication/json
object
items
required
Array<object>
object
tabId
required
string
userId
required
string
name
required
string
page
required
string
focus
required
string | null
state
required
string
seenAt
required
string format: date-time
Example
{ "items": [ { "state": "active" } ]}Not signed in
Media typeapplication/json
object
error
required
string
message
required
string
Example
{ "error": "not_found", "message": "Customer not found"}Not a member, or without the permission this needs
Media typeapplication/json
object
error
required
string
message
required
string
Example
{ "error": "not_found", "message": "Customer not found"}Validation failed
Media typeapplication/json
object
error
required
string
message
required
string
issues
required
Array<object>
object
path
required
string
message
required
string
Example
{ "error": "validation", "issues": [ { "path": "email", "message": "Invalid email" } ]}