The caller's trials
GET
/trial-cards
const url = 'https://api.harperharbor.com/open/v1/trial-cards';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://api.harperharbor.com/open/v1/trial-cards \ --header 'Authorization: Bearer <token>'Authorizations
Section titled “Authorizations”Responses
Section titled “Responses”{ list: [summary], slots: { used, max }, ttlHours }
Media typeapplication/json
object
list
Array<object>
object
clientKey
string
roleId
string
created
boolean
expiresAt
Earliest expiry time. Cleanup may run a few minutes later.
string format: date-time
slots
object
used
integer
max
integer
sections
Sha256 per section
object
key
additional properties
string
changed
Array<string>
worldbook
object
worldbookId
string
entries
integer
created
integer
deleted
integer
slots
object
ttlHours
integer
Examplegenerated
{ "list": [ { "clientKey": "example", "roleId": "example", "created": true, "expiresAt": "2026-04-15T12:00:00Z", "slots": { "used": 1, "max": 1 }, "sections": { "additionalProperty": "example" }, "changed": [ "example" ], "worldbook": { "worldbookId": "example", "entries": 1, "created": 1, "deleted": 1 } } ], "slots": {}, "ttlHours": 1}