Live JSON
GET/api/v1/live-json/documents
Authorization
bearer_token In: header
Query Parameters
Search by name
Filter by content type
Page number
int320 <= valueItems per page
int320 <= valueResponse Body
application/json
curl -X GET "https://example.com/api/v1/live-json/documents"{ "documents": [ { "content_type": "string", "created_at": "2019-08-24T14:15:22Z", "id": "string", "is_shared": true, "locked": true, "name": "string", "owner_id": "string", "size_bytes": 0, "subscriber_count": 0, "updated_at": "2019-08-24T14:15:22Z" } ], "pagination": { "has_more": true, "page": 0, "page_size": 0, "total": 0 }}POST/api/v1/live-json/documents
Authorization
bearer_token In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Request for creating a new document
Response Body
application/json
curl -X POST "https://example.com/api/v1/live-json/documents" \ -H "Content-Type: application/json" \ -d '{ "content": null }'{ "created_at": "2019-08-24T14:15:22Z", "id": "string"}GET/api/v1/live-json/documents/{document_id}
Authorization
bearer_token In: header
Path Parameters
Document ID
Query Parameters
View: meta (default), content, or full
Response Body
application/json
curl -X GET "https://example.com/api/v1/live-json/documents/string"{ "content_type": "string", "created_at": "2019-08-24T14:15:22Z", "description": "string", "id": "string", "is_shared": true, "lock_expires_at": "2019-08-24T14:15:22Z", "locked": true, "locked_by": "string", "name": "string", "owner_id": "string", "size_bytes": 0, "subscriber_count": 0, "tags": { "property1": "string", "property2": "string" }, "ttl_seconds": 0, "updated_at": "2019-08-24T14:15:22Z"}DELETE/api/v1/live-json/documents/{document_id}
Authorization
bearer_token In: header
Path Parameters
Document ID
Response Body
curl -X DELETE "https://example.com/api/v1/live-json/documents/string"PUT/api/v1/live-json/documents/{document_id}
Authorization
bearer_token In: header
Path Parameters
Document ID
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Request for creating or updating a document (legacy/simple)
Response Body
curl -X PUT "https://example.com/api/v1/live-json/documents/string" \ -H "Content-Type: application/json" \ -d '{ "content": null }'GET/api/v1/live-json/documents/{document_id}/content
Authorization
bearer_token In: header
Path Parameters
Document ID
Response Body
application/json
curl -X GET "https://example.com/api/v1/live-json/documents/string/content"nullPATCH/api/v1/live-json/documents/{document_id}/content
Authorization
bearer_token In: header
Path Parameters
Document ID
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Request for patching a document with JSONPath
Response Body
curl -X PATCH "https://example.com/api/v1/live-json/documents/string/content" \ -H "Content-Type: application/json" \ -d '{ "path": "string", "value": null }'PUT/api/v1/live-json/documents/{document_id}/content
Authorization
bearer_token In: header
Path Parameters
Document ID
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Request for creating or updating a document (legacy/simple)
Response Body
curl -X PUT "https://example.com/api/v1/live-json/documents/string/content" \ -H "Content-Type: application/json" \ -d '{ "content": null }'GET/api/v1/live-json/documents/{document_id}/full
Authorization
bearer_token In: header
Path Parameters
Document ID
Response Body
application/json
curl -X GET "https://example.com/api/v1/live-json/documents/string/full"{ "content_type": "string", "created_at": "2019-08-24T14:15:22Z", "description": "string", "id": "string", "is_shared": true, "lock_expires_at": "2019-08-24T14:15:22Z", "locked": true, "locked_by": "string", "name": "string", "owner_id": "string", "size_bytes": 0, "subscriber_count": 0, "tags": { "property1": "string", "property2": "string" }, "ttl_seconds": 0, "updated_at": "2019-08-24T14:15:22Z", "content": null}POST/api/v1/live-json/documents/{document_id}/lock
Authorization
bearer_token In: header
Path Parameters
Document ID
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Request for acquiring a document lock
Response Body
application/json
curl -X POST "https://example.com/api/v1/live-json/documents/string/lock" \ -H "Content-Type: application/json" \ -d '{}'{ "document_id": "string", "lock_expires_at": "2019-08-24T14:15:22Z", "locked_by": "string"}DELETE/api/v1/live-json/documents/{document_id}/lock
Authorization
bearer_token In: header
Path Parameters
Document ID
Response Body
curl -X DELETE "https://example.com/api/v1/live-json/documents/string/lock"PATCH/api/v1/live-json/documents/{document_id}/metadata
Authorization
bearer_token In: header
Path Parameters
Document ID
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Request for updating document metadata only
Response Body
application/json
curl -X PATCH "https://example.com/api/v1/live-json/documents/string/metadata" \ -H "Content-Type: application/json" \ -d '{}'{ "content_type": "string", "created_at": "2019-08-24T14:15:22Z", "description": "string", "id": "string", "is_shared": true, "lock_expires_at": "2019-08-24T14:15:22Z", "locked": true, "locked_by": "string", "name": "string", "owner_id": "string", "size_bytes": 0, "subscriber_count": 0, "tags": { "property1": "string", "property2": "string" }, "ttl_seconds": 0, "updated_at": "2019-08-24T14:15:22Z"}GET/api/v1/live-json/stats
curl -X GET "https://example.com/api/v1/live-json/stats"{ "connections_active": 0, "documents_watched": 0, "total_subscriptions": 0}POST/api/v1/live-json/subscribe
Authorization
bearer_token In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
curl -X POST "https://example.com/api/v1/live-json/subscribe" \ -H "Content-Type: application/json" \ -d '{ "document": "string", "path": "string" }'{ "connection_id": "string", "initial_value": null, "subscription_id": "string"}GET/api/v1/live-json/subscriptions
Authorization
bearer_token In: header
Query Parameters
Filter by connection ID
Filter by document
Response Body
application/json
curl -X GET "https://example.com/api/v1/live-json/subscriptions"[ { "connection_id": "string", "created_at": "string", "document": "string", "path": "string", "subscription_id": "string" }]DELETE/api/v1/live-json/subscriptions/{subscription_id}
Authorization
bearer_token In: header
Path Parameters
Subscription ID to unsubscribe
Response Body
curl -X DELETE "https://example.com/api/v1/live-json/subscriptions/string"GET/ws/live-json/{document_id}
The document is fixed by the path. After the upgrade the server sends a
[LiveJsonServerMessage::ConnectionEstablished] frame, then the client picks
JSONPaths to watch by sending [LiveJsonClientMessage::Subscribe] over the
socket; every matching change arrives as a [LiveJsonServerMessage::Change].
Authorization
bearer_token In: header
Path Parameters
Document to watch
Query Parameters
JWT token (alternative to the Authorization header for browser clients).
Response Body
curl -X GET "https://example.com/ws/live-json/string"