Prior to using this API, you must:
- Enable advanced queries option in the console
- Deploy v4 series of the Velt SDK.
Endpoint
POST https://api.velt.dev/v2/commentannotations/get
Headers
Your API key.
Your Auth Token.
Body
Params
Show properties
Show properties
Organization ID
Document ID. Pass a single document Id or use the documentIds field to pass multiple document Ids.
Array of Document IDs. Limit: Only 30 IDs can be passed at a time.
If you don’t provide this, data for all documents will be fetched.
Data will be grouped by document ID.
Array of Location IDs. Limit: Only 30 IDs can be passed at a time.
Folder ID. Filters annotations by the folder.
Array of Annotation IDs. Limit: Only 30 IDs can be passed at a time.
Array of User IDs. Limit: Only 30 IDs can be passed at a time.
Status IDs of the annotations to filter on.
Filter annotations updated after the given lastUpdated timestamp (in milliseconds since epoch).
Filter annotations updated before the given lastUpdated timestamp (in milliseconds since epoch).
Filter annotations created after the given createdAt timestamp (in milliseconds since epoch).
Filter annotations created before the given createdAt timestamp (in milliseconds since epoch).
Number of items to be retrieved per page. Default: 1000.
Page token retrieved from previous API call.
Example Requests
1. Get annotations by organizationId and documentId
Copy
Ask AI
{
"data": {
"organizationId": "yourOrganizationId",
"documentId": "yourDocumentId",
"pageSize": 10,
"pageToken": "1720441573192",
"statusId": "OPEN"
}
}
2. Get annotations by organizationId and documentIds grouped by documentId
Copy
Ask AI
{
"data": {
"organizationId": "yourOrganizationId",
"documentIds": ["yourDocumentId1", "yourDocumentId2"],
"groupByDocumentId": true
}
}
3. Get annotations by organizationId, documentId, and locationIds
Copy
Ask AI
{
"data": {
"organizationId": "yourOrganizationId",
"documentId": "yourDocumentId",
"locationIds": [
"locationx"
],
"pageSize": 10,
"pageToken": "1720441573192",
"statusId": "OPEN"
}
}
4. Get annotations by organizationId, documentId, locationIds, and userIds
Copy
Ask AI
{
"data": {
"organizationId": "yourOrganizationId",
"documentId": "yourDocumentId",
"locationIds": [
"locationx"
],
"userIds": [
"yourUserId"
],
"pageSize": 10,
"pageToken": "1720441573192",
"statusId": "OPEN"
}
}
5. Get annotations by organizationId, documentId, and userIds
Copy
Ask AI
{
"data": {
"organizationId": "yourOrganizationId",
"documentId": "yourDocumentId",
"userIds": [
"yourUserId"
],
"pageSize": 10,
"pageToken": "1720441573192",
"statusId": "OPEN"
}
}
6. Get annotations by organizationId, documentId, and annotationIds
Copy
Ask AI
{
"data": {
"organizationId": "yourOrganizationId",
"documentId": "yourDocumentId",
"annotationIds": [
"yourAnnotationId1",
"yourAnnotationId2"
],
"pageSize": 10,
"pageToken": "1720441573192",
"statusId": "OPEN"
}
}
7. Get annotations by organizationId, documentId, locationIds, and annotationIds
Copy
Ask AI
{
"data": {
"organizationId": "yourOrganizationId",
"documentId": "yourDocumentId",
"locationIds": [
"locationx"
],
"annotationIds": [
"yourAnnotationId1",
"yourAnnotationId2"
],
"pageSize": 10,
"pageToken": "1720441573192",
"statusId": "OPEN"
}
}
8. Get annotations by organizationId, statusIds, updatedAfter, and updatedBefore
Copy
Ask AI
{
"data": {
"organizationId": "myorg1",
"statusIds": ["OPEN"],
"updatedAfter": 1720441573192,
"updatedBefore": 1720441573192,
}
}
9. Get annotations by organizationId, folderId
Copy
Ask AI
{
"data": {
"organizationId": "myorg1",
"folderId": "folderId1"
}
}
Response
Response Field Notes:
reactionAnnotationIds: Returns an array of reaction annotation IDs (strings), not full reaction objectsviewedBy: This field is not currently returned by this endpointcreatedAtandlastUpdated: Timestamps are returned in milliseconds since epoch for annotations and in ISO 8601 format for comments
Success Response with single documentId
Copy
Ask AI
{
"result": {
"status": "success",
"message": "Annotations fetched successfully.",
"data": [
{
"comments": [
{
"commentId": 123456,
"type": "text",
"to": [],
"status": "updated",
"attachments": [],
"recorders": [],
"reactionAnnotationIds": [
"TPVIZ7VH6rgh4nKm2xjs",
"REgRT9CY852tr12m3kto"
],
"taggedUserContacts": [],
"customList": [],
"toOrganizationUserGroup": [],
"commentText": "This is a sample comment text.",
"commentHtml": "<p>This is a sample comment text.</p>",
"lastUpdated": "2023-06-15T10:30:00Z",
"createdAt": 1687344600000,
"from": {
"userId": "user123",
"organizationId": "d448b95936703db7d0923122172fb13c",
"userSnippylyId": "1174701858709696",
"photoUrl": "",
"initial": "J",
"clientUserName": "John Doe",
"name": "John Doe",
"clientOrganizationId": "yourOrganizationId",
"plan": "trial",
"email": "john.doe@example.com",
"color": "#a259fe",
"textColor": "#FFFFFF",
"isAdmin": true
},
"isDraft": false,
"isCommentTextAvailable": true
}
],
"type": "comment",
"status": {
"id": "OPEN",
"name": "Open",
"color": "var(--velt-accent, #625DF5)",
"lightColor": "var(--velt-accent-light, #E7E8FA)",
"type": "default",
"svg": "\n <svg\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M8.00016 13.3333C10.9457 13.3333 13.3335 10.9455 13.3335 8.00001C13.3335 5.05449 10.9457 2.66668 8.00016 2.66668C5.05464 2.66668 2.66683 5.05449 2.66683 8.00001C2.66683 10.9455 5.05464 13.3333 8.00016 13.3333ZM8.00016 14.6667C11.6821 14.6667 14.6668 11.6819 14.6668 8.00001C14.6668 4.31811 11.6821 1.33334 8.00016 1.33334C4.31826 1.33334 1.3335 4.31811 1.3335 8.00001C1.3335 11.6819 4.31826 14.6667 8.00016 14.6667Z\"\n fill=\"currentColor\"\n />\n </svg>\n "
},
"pageInfo": {
"deviceInfo": {
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36",
"browserName": "Chrome",
"browserVersion": "142",
"deviceType": "Tablet",
"orientation": "landscape",
"osName": "Macintosh",
"osVersion": "10.15.7",
"screenWidth": 1512,
"screenHeight": 982
},
"url": "https://example.com/document",
"path": "/document",
"queryParams": "",
"baseUrl": "https://example.com",
"title": "Document Title",
"screenWidth": 1512,
"commentUrl": "https://example.com/document?scommentId=yourAnnotationId"
},
"customList": [],
"subscribedUsers": {
"061a01a98f80f415b1431236b62bb10b": {
"user": {
"userId": "user123"
},
"type": "auto"
}
},
"unsubscribedUsers": {},
"subscribedGroups": {},
"from": {
"userId": "user123",
"organizationId": "d448b95936703db7d0923122172fb13c",
"userSnippylyId": "1174701858709696",
"photoUrl": "",
"initial": "J",
"clientUserName": "John Doe",
"name": "John Doe",
"clientOrganizationId": "yourOrganizationId",
"plan": "trial",
"email": "john.doe@example.com",
"color": "#a259fe",
"textColor": "#FFFFFF",
"isAdmin": true
},
"lastUpdated": 1687344661000,
"createdAt": 1687344600000,
"annotationId": "yourAnnotationId",
"metadata": {
"apiKey": "yourApiKey",
"documentId": "yourDocumentId",
"organizationId": "yourOrganizationId"
},
"annotationNumber": 1,
"annotationIndex": 2
},
null // null is returned only if you provided an annotationId that doesn't exist
],
"nextPageToken": "pageToken"
}
}
Success Response with multiple documentIds with groupByDocumentId
Copy
Ask AI
{
"result": {
"status": "success",
"message": "Annotations fetched successfully.",
"data": {
"documentId1": [
{
"annotationId": "annotationId1",
"comments": [
//comment objects
],
"from": {
//from user object
},
"status": {
"color": "#625DF5",
"id": "OPEN",
"lightColor": "#E7E8FA",
"name": "Open",
"type": "default"
},
//other fields
},
{
"annotationId": "annotationId2",
"comments": [
//comment objects
],
"from": {
//from user object
},
"status": {
"color": "#625DF5",
"id": "OPEN",
"lightColor": "#E7E8FA",
"name": "Open",
"type": "default"
},
//other fields
},
],
"documentId1": [
{
"annotationId": "annotationId1",
"comments": [
//comment objects
],
"from": {
//from user object
},
"status": {
"color": "#625DF5",
"id": "OPEN",
"lightColor": "#E7E8FA",
"name": "Open",
"type": "default"
},
//other fields
},
{
"annotationId": "annotationId2",
"comments": [
//comment objects
],
"from": {
//from user object
},
"status": {
"color": "#625DF5",
"id": "OPEN",
"lightColor": "#E7E8FA",
"name": "Open",
"type": "default"
},
//other fields
},
]
},
"nextPageToken": "Ds7NMZw0wWSdmfJFLNioTw=="
}
}
Failure Response
Copy
Ask AI
{
"error": {
"message": "ERROR_MESSAGE",
"status": "INVALID_ARGUMENT"
}
}
Copy
Ask AI
{
"result": {
"status": "success",
"message": "Annotations fetched successfully.",
"data": [
{
"comments": [
{
"commentId": 123456,
"type": "text",
"to": [],
"status": "updated",
"attachments": [],
"recorders": [],
"reactionAnnotationIds": [
"TPVIZ7VH6rgh4nKm2xjs",
"REgRT9CY852tr12m3kto"
],
"taggedUserContacts": [],
"customList": [],
"toOrganizationUserGroup": [],
"commentText": "This is a sample comment text.",
"commentHtml": "<p>This is a sample comment text.</p>",
"lastUpdated": "2023-06-15T10:30:00Z",
"createdAt": 1687344600000,
"from": {
"userId": "user123",
"organizationId": "d448b95936703db7d0923122172fb13c",
"userSnippylyId": "1174701858709696",
"photoUrl": "",
"initial": "J",
"clientUserName": "John Doe",
"name": "John Doe",
"clientOrganizationId": "yourOrganizationId",
"plan": "trial",
"email": "john.doe@example.com",
"color": "#a259fe",
"textColor": "#FFFFFF",
"isAdmin": true
},
"isDraft": false,
"isCommentTextAvailable": true
}
],
"type": "comment",
"status": {
"id": "OPEN",
"name": "Open",
"color": "var(--velt-accent, #625DF5)",
"lightColor": "var(--velt-accent-light, #E7E8FA)",
"type": "default",
"svg": "\n <svg\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M8.00016 13.3333C10.9457 13.3333 13.3335 10.9455 13.3335 8.00001C13.3335 5.05449 10.9457 2.66668 8.00016 2.66668C5.05464 2.66668 2.66683 5.05449 2.66683 8.00001C2.66683 10.9455 5.05464 13.3333 8.00016 13.3333ZM8.00016 14.6667C11.6821 14.6667 14.6668 11.6819 14.6668 8.00001C14.6668 4.31811 11.6821 1.33334 8.00016 1.33334C4.31826 1.33334 1.3335 4.31811 1.3335 8.00001C1.3335 11.6819 4.31826 14.6667 8.00016 14.6667Z\"\n fill=\"currentColor\"\n />\n </svg>\n "
},
"pageInfo": {
"deviceInfo": {
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36",
"browserName": "Chrome",
"browserVersion": "142",
"deviceType": "Tablet",
"orientation": "landscape",
"osName": "Macintosh",
"osVersion": "10.15.7",
"screenWidth": 1512,
"screenHeight": 982
},
"url": "https://example.com/document",
"path": "/document",
"queryParams": "",
"baseUrl": "https://example.com",
"title": "Document Title",
"screenWidth": 1512,
"commentUrl": "https://example.com/document?scommentId=yourAnnotationId"
},
"customList": [],
"subscribedUsers": {
"061a01a98f80f415b1431236b62bb10b": {
"user": {
"userId": "user123"
},
"type": "auto"
}
},
"unsubscribedUsers": {},
"subscribedGroups": {},
"from": {
"userId": "user123",
"organizationId": "d448b95936703db7d0923122172fb13c",
"userSnippylyId": "1174701858709696",
"photoUrl": "",
"initial": "J",
"clientUserName": "John Doe",
"name": "John Doe",
"clientOrganizationId": "yourOrganizationId",
"plan": "trial",
"email": "john.doe@example.com",
"color": "#a259fe",
"textColor": "#FFFFFF",
"isAdmin": true
},
"lastUpdated": 1687344661000,
"createdAt": 1687344600000,
"annotationId": "yourAnnotationId",
"metadata": {
"apiKey": "yourApiKey",
"documentId": "yourDocumentId",
"organizationId": "yourOrganizationId"
},
"annotationNumber": 1,
"annotationIndex": 2
},
null // null is returned only if you provided an annotationId that doesn't exist
],
"nextPageToken": "pageToken"
}
}

