List an expiry's comments
Previewget
https://api.expiryedge.com/v2/expiries/{id}/commentsany member of the expiry's organization60/min
Request
curl 'https://api.expiryedge.com/v2/expiries/exp_4Tq9sLm2/comments?limit=50' \
-H "Authorization: Bearer $EXPIRYEDGE_API_KEY"Response
{
"data": [
{
"id": "cm_9Qa1",
"expiryId": "exp_4Tq9sLm2",
"organization_id": "org_northwind",
"text": "Board confirmed the renewal fee.",
"userId": "u_71bXq",
"username": "Priya Shah",
"userEmail": "priya.shah@northwinddental.example",
"source": "api",
"timestamp": "2026-09-27T14:20:00.000Z"
}
],
"next_cursor": "string",
"has_more": true
}Newest first, cursor-paginated. Fields as stored (the web app's camelCase: expiryId, userId, timestamp).
idstringrequired
sortstringOnly-timestamp(the default, newest first).Allowed-timestampcursorstringOpaquenext_cursorfrom the previous page. Only valid with the samesort.limitintegerPage size, 1-100 (values above 100 are clamped; default 50).Default50min: 1 · max: 100
200
A page of comments.
dataarray of objectsrequirednext_cursorstring | nullrequiredhas_morebooleanrequired
400 | Invalid parameters or body ( VALIDATION_FAILED; details names the fields). |
401 | Missing, invalid or expired token ( UNAUTHORIZED). |
403 | Your role can't do this, or your account has no organization ( FORBIDDEN). |
404 | No such record in your organization (records in other organizations are also 404). |
405 | Wrong HTTP method for this path; the Allow header lists the valid ones. |
429 | Too many requests for this endpoint from your IP. Wait Retry-After seconds. |
