diff --git a/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/PATCH/InternalParticipant.json.example b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/PATCH/InternalParticipant.json.example new file mode 100644 index 0000000000..e1e910e1f2 --- /dev/null +++ b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/PATCH/InternalParticipant.json.example @@ -0,0 +1,11 @@ +{ + "Participant": { + "_media-type": "application/vnd.ibexa.api.ExternalParticipant+json", + "id": 46, + "name": "user@link.invalid", + "scope": "view", + "email": "user@link.invalid", + "createdAt": "2024-11-14T14:09:47+00:00", + "updatedAt": "2024-11-15T13:13:22+00:00" + } +} \ No newline at end of file diff --git a/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/PATCH/InternalParticipant.xml.example b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/PATCH/InternalParticipant.xml.example new file mode 100644 index 0000000000..8f6e80dc53 --- /dev/null +++ b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/PATCH/InternalParticipant.xml.example @@ -0,0 +1,9 @@ + + + 46 + user@link.invalid + edit + user@link.invalid + 2024-11-14T14:09:47+00:00 + 2024-11-15T12:50:03+00:00 + \ No newline at end of file diff --git a/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/PATCH/InternalParticipantUpdate.json.example b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/PATCH/InternalParticipantUpdate.json.example new file mode 100644 index 0000000000..2056c28f21 --- /dev/null +++ b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/PATCH/InternalParticipantUpdate.json.example @@ -0,0 +1,5 @@ +{ + "InternalParticipantUpdate": { + "scope": "view" + } +} \ No newline at end of file diff --git a/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/PATCH/InternalParticipantUpdate.xml.example b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/PATCH/InternalParticipantUpdate.xml.example new file mode 100644 index 0000000000..8a39393511 --- /dev/null +++ b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/PATCH/InternalParticipantUpdate.xml.example @@ -0,0 +1,4 @@ + + + edit + \ No newline at end of file diff --git a/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/PATCH/ParticipantListCreate.json.example b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/PATCH/ParticipantListCreate.json.example new file mode 100644 index 0000000000..0bc26687a1 --- /dev/null +++ b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/PATCH/ParticipantListCreate.json.example @@ -0,0 +1,19 @@ +{ + "ParticipantListCreate": { + "ParticipantCreate": [ + { + "_media-type": "application\/vnd.ibexa.api.InternalParticipantCreate+json", + "User": { + "_media-type": "application/vnd.ibexa.api.User+json", + "_href": "/api/ibexa/v2/user/users/14" + }, + "scope": "view" + }, + { + "_media-type": "application\/vnd.ibexa.api.ExternalParticipantCreate+json", + "email": "user@link.invalid", + "scope": "view" + } + ] + } +} \ No newline at end of file diff --git a/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/PATCH/ParticipantUpdate.xml.example b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/PATCH/ParticipantUpdate.xml.example new file mode 100644 index 0000000000..14bc09f82e --- /dev/null +++ b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/PATCH/ParticipantUpdate.xml.example @@ -0,0 +1,4 @@ + + + view + \ No newline at end of file diff --git a/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/POST/ParticipantList.json.example b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/POST/ParticipantList.json.example new file mode 100644 index 0000000000..3ab15756f5 --- /dev/null +++ b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/POST/ParticipantList.json.example @@ -0,0 +1,112 @@ +{ + "ParticipantList": { + "_media-type": "application/vnd.ibexa.api.ParticipantList+json", + "Participants": [ + { + "_media-type": "application/vnd.ibexa.api.InternalParticipant+json", + "id": 11, + "name": "Administrator User", + "scope": "edit", + "User": { + "_media-type": "application/vnd.ibexa.api.User+json", + "_href": "/api/ibexa/v2/user/users/14" + }, + "createdAt": "2024-11-13T11:01:24+00:00", + "updatedAt": "2024-11-13T11:01:24+00:00" + }, + { + "_media-type": "application/vnd.ibexa.api.ExternalParticipant+json", + "id": 12, + "name": "user@link.invalid", + "scope": "view", + "email": "user@link.invalid", + "createdAt": "2024-11-13T11:01:24+00:00", + "updatedAt": "2024-11-13T11:01:24+00:00" + }, + { + "_media-type": "application/vnd.ibexa.api.InternalParticipant+json", + "id": 13, + "name": "Administrator User", + "scope": "view", + "User": { + "_media-type": "application/vnd.ibexa.api.User+json", + "_href": "/api/ibexa/v2/user/users/14" + }, + "createdAt": "2024-11-13T11:02:22+00:00", + "updatedAt": "2024-11-13T11:02:22+00:00" + }, + { + "_media-type": "application/vnd.ibexa.api.ExternalParticipant+json", + "id": 14, + "name": "user@link.invalid", + "scope": "view", + "email": "user@link.invalid", + "createdAt": "2024-11-13T11:02:22+00:00", + "updatedAt": "2024-11-13T11:02:22+00:00" + }, + { + "_media-type": "application/vnd.ibexa.api.InternalParticipant+json", + "id": 15, + "name": "Administrator User", + "scope": "view", + "User": { + "_media-type": "application/vnd.ibexa.api.User+json", + "_href": "/api/ibexa/v2/user/users/14" + }, + "createdAt": "2024-11-13T11:10:29+00:00", + "updatedAt": "2024-11-13T11:10:29+00:00" + }, + { + "_media-type": "application/vnd.ibexa.api.ExternalParticipant+json", + "id": 16, + "name": "user@link.invalid", + "scope": "view", + "email": "user@link.invalid", + "createdAt": "2024-11-13T11:10:29+00:00", + "updatedAt": "2024-11-13T11:10:29+00:00" + }, + { + "_media-type": "application/vnd.ibexa.api.InternalParticipant+json", + "id": 17, + "name": "Administrator User", + "scope": "view", + "User": { + "_media-type": "application/vnd.ibexa.api.User+json", + "_href": "/api/ibexa/v2/user/users/14" + }, + "createdAt": "2024-11-13T11:43:20+00:00", + "updatedAt": "2024-11-13T11:43:20+00:00" + }, + { + "_media-type": "application/vnd.ibexa.api.ExternalParticipant+json", + "id": 18, + "name": "user@link.invalid", + "scope": "view", + "email": "user@link.invalid", + "createdAt": "2024-11-13T11:43:20+00:00", + "updatedAt": "2024-11-13T11:43:20+00:00" + }, + { + "_media-type": "application/vnd.ibexa.api.InternalParticipant+json", + "id": 45, + "name": "Administrator User", + "scope": "view", + "User": { + "_media-type": "application/vnd.ibexa.api.User+json", + "_href": "/api/ibexa/v2/user/users/14" + }, + "createdAt": "2024-11-14T14:09:47+00:00", + "updatedAt": "2024-11-14T14:09:47+00:00" + }, + { + "_media-type": "application/vnd.ibexa.api.ExternalParticipant+json", + "id": 46, + "name": "user@link.invalid", + "scope": "view", + "email": "user@link.invalid", + "createdAt": "2024-11-14T14:09:47+00:00", + "updatedAt": "2024-11-14T14:09:47+00:00" + } + ] + } +} \ No newline at end of file diff --git a/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/POST/ParticipantList.xml.example b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/POST/ParticipantList.xml.example new file mode 100644 index 0000000000..8a1a66f17b --- /dev/null +++ b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/POST/ParticipantList.xml.example @@ -0,0 +1,91 @@ + + + + 11 + Administrator User + edit + + 2024-11-13T11:01:24+00:00 + 2024-11-13T11:01:24+00:00 + + + 13 + Administrator User + view + + 2024-11-13T11:02:22+00:00 + 2024-11-13T11:02:22+00:00 + + + 14 + user@link.invalid + view + user@link.invalid + 2024-11-13T11:02:22+00:00 + 2024-11-13T11:02:22+00:00 + + + 15 + Administrator User + view + + 2024-11-13T11:10:29+00:00 + 2024-11-13T11:10:29+00:00 + + + 16 + user@link.invalid + view + user@link.invalid + 2024-11-13T11:10:29+00:00 + 2024-11-13T11:10:29+00:00 + + + 17 + Administrator User + view + + 2024-11-13T11:43:20+00:00 + 2024-11-13T11:43:20+00:00 + + + 18 + user@link.invalid + view + user@link.invalid + 2024-11-13T11:43:20+00:00 + 2024-11-13T11:43:20+00:00 + + + 45 + Administrator User + view + + 2024-11-14T14:09:47+00:00 + 2024-11-14T14:09:47+00:00 + + + 46 + user@link.invalid + view + user@link.invalid + 2024-11-14T14:09:47+00:00 + 2024-11-14T14:09:47+00:00 + + + 49 + Administrator User + view + + 2024-11-15T11:55:38+00:00 + 2024-11-15T11:55:38+00:00 + + + 50 + user@link.invalid + view + user@link.invalid + 2024-11-15T11:55:38+00:00 + 2024-11-15T11:55:38+00:00 + + \ No newline at end of file diff --git a/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/POST/ParticipantListCreate.json.example b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/POST/ParticipantListCreate.json.example new file mode 100644 index 0000000000..0bc26687a1 --- /dev/null +++ b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/POST/ParticipantListCreate.json.example @@ -0,0 +1,19 @@ +{ + "ParticipantListCreate": { + "ParticipantCreate": [ + { + "_media-type": "application\/vnd.ibexa.api.InternalParticipantCreate+json", + "User": { + "_media-type": "application/vnd.ibexa.api.User+json", + "_href": "/api/ibexa/v2/user/users/14" + }, + "scope": "view" + }, + { + "_media-type": "application\/vnd.ibexa.api.ExternalParticipantCreate+json", + "email": "user@link.invalid", + "scope": "view" + } + ] + } +} \ No newline at end of file diff --git a/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/POST/ParticipantListCreate.xml.example b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/POST/ParticipantListCreate.xml.example new file mode 100644 index 0000000000..1c3af64eae --- /dev/null +++ b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/add/POST/ParticipantListCreate.xml.example @@ -0,0 +1,14 @@ + + + + view + + + + + user@link.invalid + view + + \ No newline at end of file diff --git a/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/list/GET/ParticipantList.json.example b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/list/GET/ParticipantList.json.example new file mode 100644 index 0000000000..ec39a7561a --- /dev/null +++ b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/list/GET/ParticipantList.json.example @@ -0,0 +1,28 @@ +{ + "ParticipantList": { + "_media-type": "application/vnd.ibexa.api.ParticipantList+json", + "Participants": [ + { + "_media-type": "application/vnd.ibexa.api.InternalParticipant+json", + "id": 39, + "name": "Administrator User", + "scope": "edit", + "User": { + "_media-type": "application/vnd.ibexa.api.User+json", + "_href": "/api/ibexa/v2/user/users/14" + }, + "createdAt": "2024-11-14T11:34:41+00:00", + "updatedAt": "2024-11-14T11:34:41+00:00" + }, + { + "_media-type": "application/vnd.ibexa.api.ExternalParticipant+json", + "id": 40, + "name": "user@link.invalid", + "scope": "view", + "email": "user@link.invalid", + "createdAt": "2024-11-14T11:34:41+00:00", + "updatedAt": "2024-11-14T11:34:41+00:00" + } + ] + } +} \ No newline at end of file diff --git a/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/list/GET/ParticipantList.xml.example b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/list/GET/ParticipantList.xml.example new file mode 100644 index 0000000000..37d6de1f26 --- /dev/null +++ b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/participant/list/GET/ParticipantList.xml.example @@ -0,0 +1,19 @@ + + + + __FIXED_ID__ + Anonymous User + edit + + __CREATED_AT__ + __UPDATED_AT__ + + + __FIXED_ID__ + guest-foo@example.com + view + guest-foo@example.com + __CREATED_AT__ + __UPDATED_AT__ + + \ No newline at end of file diff --git a/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/GET/CollaborationSession.json.example b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/GET/CollaborationSession.json.example new file mode 100644 index 0000000000..a7eeffdb0d --- /dev/null +++ b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/GET/CollaborationSession.json.example @@ -0,0 +1,39 @@ +{ + "CollaborationSession": { + "_media-type": "application/vnd.ibexa.api.CollaborationSession+json", + "id": 17, + "token": "f637f415-688a-4655-a3c5-e209e2bd6771", + "createdAt": "2024-11-14T11:34:40+00:00", + "updatedAt": "2024-11-14T11:34:40+00:00", + "ParticipantList": { + "_media-type": "application/vnd.ibexa.api.ParticipantList+json", + "Participants": [ + { + "_media-type": "application/vnd.ibexa.api.InternalParticipant+json", + "id": 39, + "name": "Administrator User", + "scope": "edit", + "User": { + "_media-type": "application/vnd.ibexa.api.User+json", + "_href": "/api/ibexa/v2/user/users/14" + }, + "createdAt": "2024-11-14T11:34:41+00:00", + "updatedAt": "2024-11-14T11:34:41+00:00" + }, + { + "_media-type": "application/vnd.ibexa.api.ExternalParticipant+json", + "id": 40, + "name": "user@link.invalid", + "scope": "view", + "email": "user@link.invalid", + "createdAt": "2024-11-14T11:34:41+00:00", + "updatedAt": "2024-11-14T11:34:41+00:00" + } + ] + }, + "Owner": { + "_media-type": "application/vnd.ibexa.api.User+json", + "_href": "/api/ibexa/v2/user/users/14" + } + } +} \ No newline at end of file diff --git a/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/GET/CollaborationSession.xml.example b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/GET/CollaborationSession.xml.example new file mode 100644 index 0000000000..bc718458d6 --- /dev/null +++ b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/GET/CollaborationSession.xml.example @@ -0,0 +1,82 @@ + + + 6 + c7463355-746b-4913-86b3-26259c815b56 + 2024-11-13T11:01:24+00:00 + 2024-11-13T11:01:24+00:00 + + + 11 + Administrator User + edit + + 2024-11-13T11:01:24+00:00 + 2024-11-13T11:01:24+00:00 + + + 13 + Administrator User + view + + 2024-11-13T11:02:22+00:00 + 2024-11-13T11:02:22+00:00 + + + 14 + user@link.invalid + view + user@link.invalid + 2024-11-13T11:02:22+00:00 + 2024-11-13T11:02:22+00:00 + + + 15 + Administrator User + view + + 2024-11-13T11:10:29+00:00 + 2024-11-13T11:10:29+00:00 + + + 16 + user@link.invalid + view + user@link.invalid + 2024-11-13T11:10:29+00:00 + 2024-11-13T11:10:29+00:00 + + + 17 + Administrator User + view + + 2024-11-13T11:43:20+00:00 + 2024-11-13T11:43:20+00:00 + + + 18 + user@link.invalid + view + user@link.invalid + 2024-11-13T11:43:20+00:00 + 2024-11-13T11:43:20+00:00 + + + 45 + Administrator User + view + + 2024-11-14T14:09:47+00:00 + 2024-11-14T14:09:47+00:00 + + + 46 + user@link.invalid + view + user@link.invalid + 2024-11-14T14:09:47+00:00 + 2024-11-14T14:09:47+00:00 + + + + \ No newline at end of file diff --git a/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/create/POST/CollaborationSession.json.example b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/create/POST/CollaborationSession.json.example new file mode 100644 index 0000000000..a7eeffdb0d --- /dev/null +++ b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/create/POST/CollaborationSession.json.example @@ -0,0 +1,39 @@ +{ + "CollaborationSession": { + "_media-type": "application/vnd.ibexa.api.CollaborationSession+json", + "id": 17, + "token": "f637f415-688a-4655-a3c5-e209e2bd6771", + "createdAt": "2024-11-14T11:34:40+00:00", + "updatedAt": "2024-11-14T11:34:40+00:00", + "ParticipantList": { + "_media-type": "application/vnd.ibexa.api.ParticipantList+json", + "Participants": [ + { + "_media-type": "application/vnd.ibexa.api.InternalParticipant+json", + "id": 39, + "name": "Administrator User", + "scope": "edit", + "User": { + "_media-type": "application/vnd.ibexa.api.User+json", + "_href": "/api/ibexa/v2/user/users/14" + }, + "createdAt": "2024-11-14T11:34:41+00:00", + "updatedAt": "2024-11-14T11:34:41+00:00" + }, + { + "_media-type": "application/vnd.ibexa.api.ExternalParticipant+json", + "id": 40, + "name": "user@link.invalid", + "scope": "view", + "email": "user@link.invalid", + "createdAt": "2024-11-14T11:34:41+00:00", + "updatedAt": "2024-11-14T11:34:41+00:00" + } + ] + }, + "Owner": { + "_media-type": "application/vnd.ibexa.api.User+json", + "_href": "/api/ibexa/v2/user/users/14" + } + } +} \ No newline at end of file diff --git a/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/create/POST/CollaborationSession.xml.example b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/create/POST/CollaborationSession.xml.example new file mode 100644 index 0000000000..4f0c9095be --- /dev/null +++ b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/create/POST/CollaborationSession.xml.example @@ -0,0 +1,26 @@ + + + 20 + 076e749e-20ed-4df7-a8a0-e9c8ba8edbf5 + 2024-11-15T10:06:04+00:00 + 2024-11-15T10:06:04+00:00 + + + 47 + Administrator User + view + + 2024-11-15T10:06:04+00:00 + 2024-11-15T10:06:04+00:00 + + + 48 + user@link.invalid + view + user@link.invalid + 2024-11-15T10:06:04+00:00 + 2024-11-15T10:06:04+00:00 + + + + \ No newline at end of file diff --git a/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/create/POST/CollaborationSessionCreate.json.example b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/create/POST/CollaborationSessionCreate.json.example new file mode 100644 index 0000000000..80767a7386 --- /dev/null +++ b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/create/POST/CollaborationSessionCreate.json.example @@ -0,0 +1,30 @@ +{ + "CollaborationSessionCreate": { + "Owner": { + "_media-type": "application/vnd.ibexa.api.User+json", + "_href": "/api/ibexa/v2/user/users/14" + }, + "SessionTypeCreate": { + "_media-type": "application/vnd.ibexa.api.ExampleSessionCreate+json", + "subject": "example" + }, + "ParticipantListCreate": { + "_media-type": "application\/vnd.ibexa.api.ParticipantListCreate+json", + "ParticipantCreate": [ + { + "_media-type": "application\/vnd.ibexa.api.InternalParticipantCreate+json", + "User": { + "_media-type": "application/vnd.ibexa.api.User+json", + "_href": "/api/ibexa/v2/user/users/14" + }, + "scope": "edit" + }, + { + "_media-type": "application\/vnd.ibexa.api.ExternalParticipantCreate+json", + "email": "user@link.invalid", + "scope": "view" + } + ] + } + } +} \ No newline at end of file diff --git a/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/create/POST/CollaborationSessionCreate.xml.example b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/create/POST/CollaborationSessionCreate.xml.example new file mode 100644 index 0000000000..3582b03c7b --- /dev/null +++ b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/create/POST/CollaborationSessionCreate.xml.example @@ -0,0 +1,23 @@ + + + + + + + view + + + + + user@link.invalid + view + + + + example + + \ No newline at end of file diff --git a/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/create/POST/Invitation.json.example b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/create/POST/Invitation.json.example new file mode 100644 index 0000000000..dbef5cba73 --- /dev/null +++ b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/create/POST/Invitation.json.example @@ -0,0 +1,20 @@ +{ + "Invitation": { + "_media-type": "application/vnd.ibexa.api.Invitation+json", + "id": 1, + "status": "pending", + "createdAt": "2024-11-15T14:28:44+00:00", + "updatedAt": "2024-11-15T14:28:44+00:00", + "context": { + "name": { + "bar": "bar_value", + "baz": "baz_value", + "foo": "foo_value" + } + }, + "Sender": { + "_media-type": "application/vnd.ibexa.api.User+json", + "_href": "/api/ibexa/v2/user/users/14" + } + } +} \ No newline at end of file diff --git a/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/create/POST/Invitation.xml.example b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/create/POST/Invitation.xml.example new file mode 100644 index 0000000000..1e83af69af --- /dev/null +++ b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/create/POST/Invitation.xml.example @@ -0,0 +1,26 @@ + + + 3 + pending + 2024-11-18T08:04:28+00:00 + 2024-11-18T08:04:28+00:00 + + + + test + value1 + value2 + value3 + value4 + value5 + + + value + + bar_value + baz_value + foo_value + + + + \ No newline at end of file diff --git a/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/create/POST/InvitationCreate.json.example b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/create/POST/InvitationCreate.json.example new file mode 100644 index 0000000000..f788e1c1a7 --- /dev/null +++ b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/create/POST/InvitationCreate.json.example @@ -0,0 +1,18 @@ +{ + "InvitationCreate": { + "email": "anonymous@link.invalid", + "Sender": { + "_media-type": "application/vnd.ibexa.api.User+json", + "_href": "/api/ibexa/v2/user/users/14" + }, + "context": { + "single_value": "value", + "simple_array": ["test","value1","value2","value3","value4","value5"], + "extended_array": { + "foo": "foo_value", + "bar": "bar_value", + "baz": "baz_value" + } + } + } +} \ No newline at end of file diff --git a/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/create/POST/InvitationCreate.xml.example b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/create/POST/InvitationCreate.xml.example new file mode 100644 index 0000000000..8886bbac14 --- /dev/null +++ b/docs/api/rest_api/rest_api_reference/input/examples/collaborative_editing/session/create/POST/InvitationCreate.xml.example @@ -0,0 +1,25 @@ + + + + + + anonymous@link.invalid + + + test + value1 + value2 + value3 + value4 + value5 + + value + + bar_value + baz_value + foo_value + + + \ No newline at end of file diff --git a/docs/api/rest_api/rest_api_reference/input/ibexa-collaborativeediting-session.raml b/docs/api/rest_api/rest_api_reference/input/ibexa-collaborativeediting-session.raml new file mode 100644 index 0000000000..d6f0cbbbab --- /dev/null +++ b/docs/api/rest_api/rest_api_reference/input/ibexa-collaborativeediting-session.raml @@ -0,0 +1,236 @@ +post: + displayName: Create session + description: Create collaborative editing session. + headers: + Accept: + description: If set, the new session is returned in XML or JSON format. + example: + application/vnd.ibexa.api.CollaborationSession+json + application/vnd.ibexa.api.CollaborationSession+xml + Content-Type: + description: The session schema encoded in XML or JSON format. + example: + application/vnd.ibexa.api.CollaborationSessionCreate+json + application/vnd.ibexa.api.CollaborationSessionCreate+xml + body: + application/vnd.ibexa.api.ParticipantList+xml: + type: Session + example: !include examples/collaborative_editing/session/create/POST/CollaborationSessionCreate.xml.example + application/vnd.ibexa.api.ParticipantList+json: + type: Session + example: !include examples/collaborative_editing/session/create/POST/CollaborationSessionCreate.json.example + responses: + 201: + body: + application/vnd.ibexa.api.CollaborationSession+xml: + type: Session + example: !include examples/collaborative_editing/session/create/POST/CollaborationSession.xml.example + application/vnd.ibexa.api.CollaborationSession+json: + type: Session + example: !include examples/collaborative_editing/session/create/POST/CollaborationSession.json.example + 400: + description: Error - the input does not match the input schema definition. + 401: + description: Error - the user is not authorized to update this session. + 403: + description: Error - a session with the same ID already exists. + 404: + description: Error - no session with the given ID exists. + +/{sessionId}: + delete: + displayName: Delete session (collaboration) + description: The collaboration session is deleted. + headers: + Cookie: + description: "{sessionName}={sessionID}" + X-CSRF-Token: + description: The {csrfToken} needed on all unsafe HTTP methods with session. + responses: + 204: + description: OK - session deleted. + 404: + description: Error - the session does not exist. + get: + displayName: Retrieve session details + description: Get the collaboration session's information. + headers: + Cookie: + description: "{sessionName}={sessionID}" + X-CSRF-Token: + description: The {csrfToken} needed on all unsafe HTTP methods with session. + Accept: + example: | + application/vnd.ibexa.api.CollaborationSession+xml + application/vnd.ibexa.api.CollaborationSession+json + responses: + 200: + body: + application/vnd.ibexa.api.CollaborationSession+xml: + type: CollaborationSession + example: !include examples/collaborative_editing/session/GET/CollaborationSession.xml.example + application/vnd.ibexa.api.CollaborationSession+json: + type: CollaborationSession + example: !include examples/collaborative_editing/session/GET/CollaborationSession.json.example + 404: + description: Error - the session does not exist. +/{sessionId}/participants: + get: + displayName: Load participant list + description: Loads participant list. + queryParameters: + sessionId: + description: Retrieves the participant list for a given collaboration session ID (e.g. GET /collaboration/session/1234). + headers: + Accept: + description: ParticipantList - If set, the participant list is returned in XML or JSON format. + application/vnd.ibexa.api.ParticipantList+xml + application/vnd.ibexa.api.ParticipantList+json + responses: + 200: + description: OK - Loads participants for a given collaboration session ID. + body: + application/vnd.ibexa.api.ParticipantList+xml: + type: ParticipantList + example: !include examples/collaborative_editing/participant/list/GET/ParticipantList.xml.example + application/vnd.ibexa.api.ParticipantList+json: + type: ParticipantList + example: !include examples/collaborative_editing/participant/list/GET/ParticipantList.json.example + 404: + description: If there are no visibile participants matching the filter. + +/{sessionId}/participants: + post: + displayName: Add participant + description: Adds new participant. + headers: + Accept: + description: If set, the new participant is returned in XML or JSON format. + example: + application/vnd.ibexa.api.ParticipantList+json + application/vnd.ibexa.api.ParticipantList+xml + Content-Type: + description: The participant schema encoded in XML or JSON format. + example: + application/vnd.ibexa.api.ParticipantListCreate+json + application/vnd.ibexa.api.ParticipantListCreate+xml + body: + application/vnd.ibexa.api.ParticipantListCreate+xml: + type: ParticipantList + example: !include examples/collaborative_editing/participant/add/POST/ParticipantListCreate.xml.example + application/vnd.ibexa.api.ParticipantListCreate+json: + type: ParticipantList + example: !include examples/collaborative_editing/participant/add/POST/ParticipantListCreate.json.example + responses: + 201: + body: + application/vnd.ibexa.api.ParticipantList+xml: + type: ParticipantList + example: !include examples/collaborative_editing/participant/add/POST/ParticipantList.xml.example + application/vnd.ibexa.api.ParticipantList+json: + type: ParticipantList + example: !include examples/collaborative_editing/participant/add/POST/ParticipantList.json.example + 400: + description: Error - the input does not match the input schema definition. + 401: + description: Error - the user is not authorized to update this pparticipant. + 403: + description: Error - a participant with the same name already exists. + 404: + description: Error - no participant with the given ID exists. + +/{sessionId}/participants/{participantId}: + patch: + displayName: Update participant + description: Updates a participant. + headers: + Accept: + description: If set, the updated participant is returned in XML or JSON format. + example: | + application/vnd.ibexa.api.Participant+json + application/vnd.ibexa.api.Participant+xml + Content-Type: + description: The ParticipantUpdate schema encoded in XML or JSON format. + example: | + application/vnd.ibexa.api.ParticipantUpdate+json + application/vnd.ibexa.api.ParticipantUpdate+xml + If-Match: + description: Performs a PATCH only if the specified ETag is the current one. + # example: ETag + body: + application/vnd.ibexa.api.ParticipantUpdate+xml: + type: ParticipantUpdate + example: !include examples/collaborative_editing/participant/add/PATCH/InternalParticipantUpdate.xml.example + application/vnd.ibexa.api.ParticipantUpdate+json: + type: ParticipantUpdate + example: !include examples/collaborative_editing/participant/add/PATCH/InternalParticipantUpdate.json.example + + responses: + 200: + description: OK - participant updated. + body: + application/vnd.ibexa.api.participant+xml: + type: Participant + example: !include examples/collaborative_editing/participant/add/PATCH/InternalParticipant.xml.example + application/vnd.ibexa.api.participant+json: + type: Participant + example: !include examples/collaborative_editing/participant/add/PATCH/InternalParticipant.json.example + 400: + description: Error - the input does not match the input schema definition. + 401: + description: Error - the user is not authorized to update the User. + 404: + description: Error - the User does not exist. + 412: + description: Error - the current ETag does not match with the provided one in the If-Match header. + delete: + displayName: Delete participant + description: Deletes the given participant. + responses: + 204: + description: No Content. + 401: + description: Error - the user is not authorized to delete this participant. + 403: + description: Error - the user is the same as the authenticated participant. + 404: + description: Error - the participant does not exist. +/{sessionId}/invitations: + post: + displayName: Create invitation + description: Creates an invitation to a session. + headers: + Accept: + description: If set, the new invitationt is returned in XML or JSON format. + example: + application/vnd.ibexa.api.Invitation+json + application/vnd.ibexa.api.Invitation+xml + Content-Type: + description: The invitation schema encoded in XML or JSON format. + example: + application/vnd.ibexa.api.InvitationCreate+json + application/vnd.ibexa.api.InvitationCreate+xml + body: + application/vnd.ibexa.api.InvitationCreate+xml: + type: Invitation + example: !include examples/collaborative_editing/session/create/POST/InvitationCreate.xml.example + application/vnd.ibexa.api.InvitationCreate+json: + type: Invitation + example: !include examples/collaborative_editing/session/create/POST/InvitationCreate.json.example + responses: + 201: + body: + application/vnd.ibexa.api.Invitation+xml: + type: Invitation + example: !include examples/collaborative_editing/session/create/POST/Invitation.xml.example + application/vnd.ibexa.api.Invitation+json: + type: Invitation + example: !include examples/collaborative_editing/session/create/POST/Invitation.json.example + 400: + description: Error - the input does not match the input schema definition. + 401: + description: Error - the user is not authorized to create an invitation. + 403: + description: Error - an invitation with the same ID already exists. + 404: + description: Error - no session with the given ID exists. \ No newline at end of file diff --git a/docs/api/rest_api/rest_api_reference/input/ibexa-types.raml b/docs/api/rest_api/rest_api_reference/input/ibexa-types.raml index 322512ef3d..8dab82afa0 100644 --- a/docs/api/rest_api/rest_api_reference/input/ibexa-types.raml +++ b/docs/api/rest_api/rest_api_reference/input/ibexa-types.raml @@ -5944,3 +5944,18 @@ ActivityLogGroup: ActivityLog: description: 'This class represents an activity log entry.' type: object + +CollaborationSession: + type: object +CollaborationSessionCreate: + type: object +Participant: + type: object +ParticipantList: + type: object +ParticipantUpdate: + type: object +InvitationCreate: + type: object +Invitation: + type: object \ No newline at end of file diff --git a/docs/api/rest_api/rest_api_reference/input/ibexa.raml b/docs/api/rest_api/rest_api_reference/input/ibexa.raml index 092f0da805..eaa54bd7d5 100644 --- a/docs/api/rest_api/rest_api_reference/input/ibexa.raml +++ b/docs/api/rest_api/rest_api_reference/input/ibexa.raml @@ -22,6 +22,10 @@ baseUri: ../rest_api_usage/rest_api_usage/ # /assets: !include ibexa-content-assets.raml #/binary: !include ibexa-content-binary.raml +/collaboration: + displayName: Collaborative editing + /sessions: !include ibexa-collaborativeediting-session.raml + /views: !include ibexa-views.raml /calendar: !include ibexa-calendar.raml diff --git a/docs/api/rest_api/rest_api_reference/rest_api_reference.html b/docs/api/rest_api/rest_api_reference/rest_api_reference.html index 697d84f8a2..dbbd21bc44 100644 --- a/docs/api/rest_api/rest_api_reference/rest_api_reference.html +++ b/docs/api/rest_api/rest_api_reference/rest_api_reference.html @@ -41570,6 +41570,4000 @@
Types
+ + +
+

+ Collaborative editing + +

+
+
+

/collaboration/sessions

+ +
+
+
+
+
+
+ Create session + +
+
+
+

+ POST + /collaboration/sessions +

+

Create collaborative editing session.

+

+
+
Header parameters
+
+

Accept

+

If set, the new session is returned in XML or JSON format.

+
+ + + + + + + + + + + + + + + + + +
PropertyValue
Type + + + string + + + + +
Examples + application/vnd.ibexa.api.CollaborationSession+json application/vnd.ibexa.api.CollaborationSession+xml +
+
+
+
+

Content-Type

+

The session schema encoded in XML or JSON format.

+
+ + + + + + + + + + + + + + + + + +
PropertyValue
Type + + + string + + + + +
Examples + application/vnd.ibexa.api.CollaborationSessionCreate+json application/vnd.ibexa.api.CollaborationSessionCreate+xml +
+
+
+
+ + +
+
Possible responses
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CodeDescription
+ + 201 + + +

+
+ 400 + +

Error - the input does not match the input schema definition.

+
+ 401 + +

Error - the user is not authorized to update this session.

+
+ 403 + +

Error - a session with the same ID already exists.

+
+ 404 + +

Error - no session with the given ID exists.

+
+
+
+ +
+
Types
+
+ + + + + + + + + + + + + +
TypeDescription
+ + Session + + Value for session.
+
+
+ +
+
+ +
+
+
+ +
+
+
+
+
+

+ file_copy + +

+
+                                <?xml version="1.0" encoding="UTF-8"?>
+<CollaborationSessionCreate>
+    <Owner media-type="application/vnd.ibexa.api.User+xml"
+           href="/api/ibexa/v2/user/users/14"
+    >
+    </Owner>
+    <ParticipantListCreate media-type="application/vnd.ibexa.api.ParticipantListCreate+xml">
+        <ParticipantCreate media-type="application/vnd.ibexa.api.InternalParticipantCreate+xml">
+            <scope>view</scope>
+            <User media-type="application/vnd.ibexa.api.User+xml"
+                  href="/api/ibexa/v2/user/users/14"
+            >
+            </User>
+        </ParticipantCreate>
+        <ParticipantCreate media-type="application/vnd.ibexa.api.ExternalParticipantCreate+xml">
+            <email>user@link.invalid</email>
+            <scope>view</scope>
+        </ParticipantCreate>
+    </ParticipantListCreate>
+    <SessionTypeCreate media-type="application/vnd.ibexa.api.ExampleSessionCreate+xml">
+        <subject>example</subject>
+    </SessionTypeCreate>
+</CollaborationSessionCr
+                            
+
+ View more +
+
+
+

+ file_copy + +

+
+                                {
+    "CollaborationSessionCreate": {
+        "Owner": {
+            "_media-type": "application/vnd.ibexa.api.User+json",
+            "_href": "/api/ibexa/v2/user/users/14"
+        },
+        "SessionTypeCreate": {
+            "_media-type": "application/vnd.ibexa.api.ExampleSessionCreate+json",
+            "subject": "example"
+        },
+        "ParticipantListCreate": {
+            "_media-type": "application\/vnd.ibexa.api.ParticipantListCreate+json",
+            "ParticipantCreate": [
+                {
+                    "_media-type": "application\/vnd.ibexa.api.InternalParticipantCreate+json",
+                    "User": {
+                        "_media-type": "application/vnd.ibexa.api.User+json",
+                        "_href": "/api/ibexa/v2/user/users/14"
+                    },
+                    "scope": "edit"
+                },
+                {
+                    "_media-type": "application\/vnd.ibexa.api.ExternalParticipantCreate+json",
+                    "email"
+                            
+
+ View more +
+
+
+ +
+
+
+
+
+ +
+ Code: 201 +
+
+
+
+
+
+

+ file_copy + +

+
+                                <?xml version="1.0" encoding="UTF-8"?>
+<CollaborationSession media-type="application/vnd.ibexa.api.CollaborationSession+xml">
+    <id>20</id>
+    <token>076e749e-20ed-4df7-a8a0-e9c8ba8edbf5</token>
+    <createdAt>2024-11-15T10:06:04+00:00</createdAt>
+    <updatedAt>2024-11-15T10:06:04+00:00</updatedAt>
+    <ParticipantList media-type="application/vnd.ibexa.api.ParticipantList+xml">
+        <Participant media-type="application/vnd.ibexa.api.InternalParticipant+xml">
+            <id>47</id>
+            <name>Administrator User</name>
+            <scope>view</scope>
+            <User media-type="application/vnd.ibexa.api.User+xml" href="/api/ibexa/v2/user/users/14"/>
+            <createdAt>2024-11-15T10:06:04+00:00</createdAt>
+            <updatedAt>2024-11-15T10:06:04+00:00</updatedAt>
+        </Participant>
+        <Participant media-type="application/vnd.ibexa.api.ExternalParticipant+xml">
+            <id>48</id>
+            <name>user@link.invalid</name>
+            <scope>view</scope
+                            
+
+ View more +
+
+
+

+ file_copy + +

+
+                                {
+    "CollaborationSession": {
+        "_media-type": "application/vnd.ibexa.api.CollaborationSession+json",
+        "id": 17,
+        "token": "f637f415-688a-4655-a3c5-e209e2bd6771",
+        "createdAt": "2024-11-14T11:34:40+00:00",
+        "updatedAt": "2024-11-14T11:34:40+00:00",
+        "ParticipantList": {
+            "_media-type": "application/vnd.ibexa.api.ParticipantList+json",
+            "Participants": [
+                {
+                    "_media-type": "application/vnd.ibexa.api.InternalParticipant+json",
+                    "id": 39,
+                    "name": "Administrator User",
+                    "scope": "edit",
+                    "User": {
+                        "_media-type": "application/vnd.ibexa.api.User+json",
+                        "_href": "/api/ibexa/v2/user/users/14"
+                    },
+                    "createdAt": "2024-11-14T11:34:41+00:00",
+                    "updatedAt": "2024-11-14T11:34:41+00:00"
+                },
+                {
+ 
+                            
+
+ View more +
+
+
+ +
+
+
+
+
+
+
+

/collaboration/sessions/{sessionId}

+ +
+
+
+
+
+
+ Delete session (collaboration) + +
+
+
+

+ DELETE + /collaboration/sessions/{sessionId} +

+

The collaboration session is deleted.

+

+
+
Header parameters
+
+

Cookie

+

{sessionName}={sessionID}

+
+ + + + + + + + + + + + + +
PropertyValue
Type + + + string + + + + +
+
+
+
+

X-CSRF-Token

+

The {csrfToken} needed on all unsafe HTTP methods with session.

+
+ + + + + + + + + + + + + +
PropertyValue
Type + + + string + + + + +
+
+
+
+ + +
+
Possible responses
+
+ + + + + + + + + + + + + + + + + +
CodeDescription
+ 204 + +

OK - session deleted.

+
+ 404 + +

Error - the session does not exist.

+
+
+
+ + +
+
+ +
+
+
+
+
+
+
+
+
+
+
+ Retrieve session details + +
+
+
+

+ GET + /collaboration/sessions/{sessionId} +

+

Get the collaboration session's information.

+

+
+
Header parameters
+
+

Cookie

+

{sessionName}={sessionID}

+
+ + + + + + + + + + + + + +
PropertyValue
Type + + + string + + + + +
+
+
+
+

X-CSRF-Token

+

The {csrfToken} needed on all unsafe HTTP methods with session.

+
+ + + + + + + + + + + + + +
PropertyValue
Type + + + string + + + + +
+
+
+
+

Accept

+

+
+ + + + + + + + + + + + + + + + + +
PropertyValue
Type + + + string + + + + +
Examples + application/vnd.ibexa.api.CollaborationSession+xml +application/vnd.ibexa.api.CollaborationSession+json + +
+
+
+
+ + +
+
Possible responses
+
+ + + + + + + + + + + + + + + + + +
CodeDescription
+ + 200 + + +

+
+ 404 + +

Error - the session does not exist.

+
+
+
+ +
+
Types
+
+ + + + + + + + + + + + + +
TypeDescription
+ + CollaborationSession + +
+
+
+ +
+
+ +
+
+
+
+
+ +
+ Code: 200 +
+
+
+
+
+
+

+ file_copy + +

+
+                                <?xml version="1.0" encoding="UTF-8"?>
+<CollaborationSession media-type="application/vnd.ibexa.api.CollaborationSession+xml">
+    <id>6</id>
+    <token>c7463355-746b-4913-86b3-26259c815b56</token>
+    <createdAt>2024-11-13T11:01:24+00:00</createdAt>
+    <updatedAt>2024-11-13T11:01:24+00:00</updatedAt>
+    <ParticipantList media-type="application/vnd.ibexa.api.ParticipantList+xml">
+        <Participant media-type="application/vnd.ibexa.api.InternalParticipant+xml">
+            <id>11</id>
+            <name>Administrator User</name>
+            <scope>edit</scope>
+            <User media-type="application/vnd.ibexa.api.User+xml" href="/api/ibexa/v2/user/users/14"/>
+            <createdAt>2024-11-13T11:01:24+00:00</createdAt>
+            <updatedAt>2024-11-13T11:01:24+00:00</updatedAt>
+        </Participant>
+        <Participant media-type="application/vnd.ibexa.api.InternalParticipant+xml">
+            <id>13</id>
+            <name>Administrator User</name>
+            <scope>view</scope
+                            
+
+ View more +
+
+
+

+ file_copy + +

+
+                                {
+    "CollaborationSession": {
+        "_media-type": "application/vnd.ibexa.api.CollaborationSession+json",
+        "id": 17,
+        "token": "f637f415-688a-4655-a3c5-e209e2bd6771",
+        "createdAt": "2024-11-14T11:34:40+00:00",
+        "updatedAt": "2024-11-14T11:34:40+00:00",
+        "ParticipantList": {
+            "_media-type": "application/vnd.ibexa.api.ParticipantList+json",
+            "Participants": [
+                {
+                    "_media-type": "application/vnd.ibexa.api.InternalParticipant+json",
+                    "id": 39,
+                    "name": "Administrator User",
+                    "scope": "edit",
+                    "User": {
+                        "_media-type": "application/vnd.ibexa.api.User+json",
+                        "_href": "/api/ibexa/v2/user/users/14"
+                    },
+                    "createdAt": "2024-11-14T11:34:41+00:00",
+                    "updatedAt": "2024-11-14T11:34:41+00:00"
+                },
+                {
+ 
+                            
+
+ View more +
+
+
+ +
+
+
+
+
+
+
+

/collaboration/sessions/{sessionId}/participants

+ +
+
+
+
+
+
+ Load participant list + +
+
+
+

+ GET + /collaboration/sessions/{sessionId}/participants +

+

Loads participant list.

+

+
+
Header parameters
+
+

Accept

+

ParticipantList - If set, the participant list is returned in XML or JSON format. application/vnd.ibexa.api.ParticipantList+xml application/vnd.ibexa.api.ParticipantList+json

+
+ + + + + + + + + + + + + +
PropertyValue
Type + + + string + + + + +
+
+
+
+ +
+
Query parameters
+
+ + + + + + + + + + + + + + + +
PropertyTypeValue
+ sessionId + + + + string + + + + + +

Retrieves the participant list for a given collaboration session ID (e.g. GET /collaboration/session/1234).

+ +
+
+
+ +
+
Possible responses
+
+ + + + + + + + + + + + + + + + + +
CodeDescription
+ + 200 + + +

OK - Loads participants for a given collaboration session ID.

+
+ 404 + +

If there are no visibile participants matching the filter.

+
+
+
+ +
+
Types
+
+ + + + + + + + + + + + + +
TypeDescription
+ + ParticipantList + +
+
+
+ +
+
+ +
+
+
+
+
+ +
+ Code: 200 +
+
+
+
+
+
+

+ file_copy + +

+
+                                <?xml version="1.0"?>
+<ParticipantList media-type="application/vnd.ibexa.api.ParticipantList+xml">
+    <Participant media-type="application/vnd.ibexa.api.InternalParticipant+xml">
+        <id>__FIXED_ID__</id>
+        <name>Anonymous User</name>
+        <scope>edit</scope>
+        <User href="/api/ibexa/v2/user/users/__FIXED_ID__" media-type="application/vnd.ibexa.api.User+xml"/>
+        <createdAt>__CREATED_AT__</createdAt>
+        <updatedAt>__UPDATED_AT__</updatedAt>
+    </Participant>
+    <Participant media-type="application/vnd.ibexa.api.ExternalParticipant+xml">
+        <id>__FIXED_ID__</id>
+        <name>guest-foo@example.com</name>
+        <scope>view</scope>
+        <email>guest-foo@example.com</email>
+        <createdAt>__CREATED_AT__</createdAt>
+        <updatedAt>__UPDATED_AT__</updatedAt>
+    </Participant>
+</ParticipantList>
+                            
+
+ View more +
+
+
+

+ file_copy + +

+
+                                {
+    "ParticipantList": {
+        "_media-type": "application/vnd.ibexa.api.ParticipantList+json",
+        "Participants": [
+            {
+                "_media-type": "application/vnd.ibexa.api.InternalParticipant+json",
+                "id": 39,
+                "name": "Administrator User",
+                "scope": "edit",
+                "User": {
+                    "_media-type": "application/vnd.ibexa.api.User+json",
+                    "_href": "/api/ibexa/v2/user/users/14"
+                },
+                "createdAt": "2024-11-14T11:34:41+00:00",
+                "updatedAt": "2024-11-14T11:34:41+00:00"
+            },
+            {
+                "_media-type": "application/vnd.ibexa.api.ExternalParticipant+json",
+                "id": 40,
+                "name": "user@link.invalid",
+                "scope": "view",
+                "email": "user@link.invalid",
+                "createdAt": "2024-11-14T11:34:41+00:00",
+                "updatedAt": "2024-11-14T11:34:41+00:00
+                            
+
+ View more +
+
+
+ +
+
+
+
+
+
+
+

/collaboration/sessions/{sessionId}/participant

+ +
+
+
+
+
+
+ Add participant + +
+
+
+

+ POST + /collaboration/sessions/{sessionId}/participant +

+

Adds new participant.

+

+
+
Header parameters
+
+

Accept

+

If set, the new participant is returned in XML or JSON format.

+
+ + + + + + + + + + + + + + + + + +
PropertyValue
Type + + + string + + + + +
Examples + application/vnd.ibexa.api.ParticipantList+json application/vnd.ibexa.api.ParticipantList+xml +
+
+
+
+

Content-Type

+

The participant schema encoded in XML or JSON format.

+
+ + + + + + + + + + + + + + + + + +
PropertyValue
Type + + + string + + + + +
Examples + application/vnd.ibexa.api.ParticipantListCreate+json application/vnd.ibexa.api.ParticipantListCreate+xml +
+
+
+
+ + +
+
Possible responses
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CodeDescription
+ + 201 + + +

+
+ 400 + +

Error - the input does not match the input schema definition.

+
+ 401 + +

Error - the user is not authorized to update this pparticipant.

+
+ 403 + +

Error - a participant with the same name already exists.

+
+ 404 + +

Error - no participant with the given ID exists.

+
+
+
+ +
+
Types
+
+ + + + + + + + + + + + + +
TypeDescription
+ + ParticipantList + +
+
+
+ +
+
+ +
+
+
+ +
+
+
+
+
+

+ file_copy + +

+
+                                <?xml version="1.0" encoding="UTF-8"?>
+<ParticipantListCreate>
+    <ParticipantCreate media-type="application/vnd.ibexa.api.InternalParticipantCreate+xml">
+        <scope>view</scope>
+        <User media-type="application/vnd.ibexa.api.User+xml"
+              href="/api/ibexa/v2/user/users/14"
+        >
+        </User>
+    </ParticipantCreate>
+    <ParticipantCreate media-type="application/vnd.ibexa.api.ExternalParticipantCreate+xml">
+        <email>user@link.invalid</email>
+        <scope>view</scope>
+    </ParticipantCreate>
+</ParticipantListCreate>
+                            
+
+ View more +
+
+
+

+ file_copy + +

+
+                                {
+    "ParticipantListCreate": {
+        "ParticipantCreate": [
+            {
+                "_media-type": "application\/vnd.ibexa.api.InternalParticipantCreate+json",
+                "User": {
+                    "_media-type": "application/vnd.ibexa.api.User+json",
+                    "_href": "/api/ibexa/v2/user/users/14"
+                },
+                "scope": "view"
+            },
+            {
+                "_media-type": "application\/vnd.ibexa.api.ExternalParticipantCreate+json",
+                "email": "user@link.invalid",
+                "scope": "view"
+            }
+        ]
+    }
+}
+                            
+
+ View more +
+
+
+ +
+
+
+
+
+ +
+ Code: 201 +
+
+
+
+
+
+

+ file_copy + +

+
+                                <?xml version="1.0" encoding="UTF-8"?>
+<ParticipantList media-type="application/vnd.ibexa.api.ParticipantList+xml">
+    <Participant media-type="application/vnd.ibexa.api.InternalParticipant+xml">
+        <id>11</id>
+        <name>Administrator User</name>
+        <scope>edit</scope>
+        <User media-type="application/vnd.ibexa.api.User+xml" href="/api/ibexa/v2/user/users/14"/>
+        <createdAt>2024-11-13T11:01:24+00:00</createdAt>
+        <updatedAt>2024-11-13T11:01:24+00:00</updatedAt>
+    </Participant>
+    <Participant media-type="application/vnd.ibexa.api.InternalParticipant+xml">
+        <id>13</id>
+        <name>Administrator User</name>
+        <scope>view</scope>
+        <User media-type="application/vnd.ibexa.api.User+xml" href="/api/ibexa/v2/user/users/14"/>
+        <createdAt>2024-11-13T11:02:22+00:00</createdAt>
+        <updatedAt>2024-11-13T11:02:22+00:00</updatedAt>
+    </Participant>
+    <Participant media-type="application/vnd.ibexa.api.ExternalParticipant+xml">
+ 
+                            
+
+ View more +
+
+
+

+ file_copy + +

+
+                                {
+    "ParticipantList": {
+        "_media-type": "application/vnd.ibexa.api.ParticipantList+json",
+        "Participants": [
+            {
+                "_media-type": "application/vnd.ibexa.api.InternalParticipant+json",
+                "id": 11,
+                "name": "Administrator User",
+                "scope": "edit",
+                "User": {
+                    "_media-type": "application/vnd.ibexa.api.User+json",
+                    "_href": "/api/ibexa/v2/user/users/14"
+                },
+                "createdAt": "2024-11-13T11:01:24+00:00",
+                "updatedAt": "2024-11-13T11:01:24+00:00"
+            },
+            {
+                "_media-type": "application/vnd.ibexa.api.ExternalParticipant+json",
+                "id": 12,
+                "name": "user@link.invalid",
+                "scope": "view",
+                "email": "user@link.invalid",
+                "createdAt": "2024-11-13T11:01:24+00:00",
+                "updatedAt": "2024-11-13T11:01:24+00:00
+                            
+
+ View more +
+
+
+ +
+
+
+
+
+
+
+

/collaboration/sessions/{sessionId}/participant/{participantId}

+ +
+
+
+
+
+
+ Update participant + +
+
+
+

+ PATCH + /collaboration/sessions/{sessionId}/participant/{participantId} +

+

Updates a participant.

+

+
+
Header parameters
+
+

Accept

+

If set, the updated participant is returned in XML or JSON format.

+
+ + + + + + + + + + + + + + + + + +
PropertyValue
Type + + + string + + + + +
Examples + application/vnd.ibexa.api.<Discriminator>Participant+json +application/vnd.ibexa.api.<Discriminator>Participant+xml + +
+
+
+
+

Content-Type

+

The ParticipantUpdate schema encoded in XML or JSON format.

+
+ + + + + + + + + + + + + + + + + +
PropertyValue
Type + + + string + + + + +
Examples + application/vnd.ibexa.api.<Discriminator>ParticipantUpdate+json +application/vnd.ibexa.api.<Discriminator>ParticipantUpdate+xml + +
+
+
+
+

If-Match

+

Performs a PATCH only if the specified ETag is the current one.

+
+ + + + + + + + + + + + + +
PropertyValue
Type + + + string + + + + +
+
+
+
+ + +
+
Possible responses
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CodeDescription
+ + 200 + + +

OK - participant updated.

+
+ 400 + +

Error - the input does not match the input schema definition.

+
+ 401 + +

Error - the user is not authorized to update the User.

+
+ 404 + +

Error - the User does not exist.

+
+ 412 + +

Error - the current ETag does not match with the provided one in the If-Match header.

+
+
+
+ +
+
Types
+
+ + + + + + + + + + + + + + + + + +
TypeDescription
+ + ParticipantUpdate + +
+ + Participant + +
+
+
+ +
+
+ +
+
+
+ +
+
+
+
+
+

+ file_copy + +

+
+                                <?xml version="1.0" encoding="UTF-8"?>
+<InternalParticipantUpdate>
+    <scope>edit</scope>
+</InternalParticipantUpdate>
+                            
+
+ View more +
+
+
+

+ file_copy + +

+
+                                {
+    "InternalParticipantUpdate": {
+        "scope": "view"
+    }
+}
+                            
+
+ View more +
+
+
+ +
+
+
+
+
+ +
+ Code: 200 +
+
+
+
+
+
+

+ file_copy + +

+
+                                <?xml version="1.0" encoding="UTF-8"?>
+<Participant media-type="application/vnd.ibexa.api.ExternalParticipant+xml">
+    <id>46</id>
+    <name>user@link.invalid</name>
+    <scope>edit</scope>
+    <email>user@link.invalid</email>
+    <createdAt>2024-11-14T14:09:47+00:00</createdAt>
+    <updatedAt>2024-11-15T12:50:03+00:00</updatedAt>
+</Participant>
+                            
+
+ View more +
+
+
+

+ file_copy + +

+
+                                {
+    "Participant": {
+        "_media-type": "application/vnd.ibexa.api.ExternalParticipant+json",
+        "id": 46,
+        "name": "user@link.invalid",
+        "scope": "view",
+        "email": "user@link.invalid",
+        "createdAt": "2024-11-14T14:09:47+00:00",
+        "updatedAt": "2024-11-15T13:13:22+00:00"
+    }
+}
+                            
+
+ View more +
+
+
+ +
+
+
+
+
+
+
+
+
+ Delete participant + +
+
+
+

+ DELETE + /collaboration/sessions/{sessionId}/participant/{participantId} +

+

Deletes the given participant.

+

+ + +
+
Possible responses
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
CodeDescription
+ 204 + +

No Content.

+
+ 401 + +

Error - the user is not authorized to delete this participant.

+
+ 403 + +

Error - the user is the same as the authenticated participant.

+
+ 404 + +

Error - the participant does not exist.

+
+
+
+ + +
+
+ +
+
+
+
+
+
+
+

/collaboration/sessions/{sessionId}/invitations

+ +
+
+
+
+
+
+ Create invitation + +
+
+
+

+ POST + /collaboration/sessions/{sessionId}/invitations +

+

Creates an invitation to a session.

+

+
+
Header parameters
+
+

Accept

+

If set, the new invitationt is returned in XML or JSON format.

+
+ + + + + + + + + + + + + + + + + +
PropertyValue
Type + + + string + + + + +
Examples + application/vnd.ibexa.api.Invitation+json application/vnd.ibexa.api.Invitation+xml +
+
+
+
+

Content-Type

+

The invitation schema encoded in XML or JSON format.

+
+ + + + + + + + + + + + + + + + + +
PropertyValue
Type + + + string + + + + +
Examples + application/vnd.ibexa.api.InvitationCreate+json application/vnd.ibexa.api.InvitationCreate+xml +
+
+
+
+ + +
+
Possible responses
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CodeDescription
+ + 201 + + +

+
+ 400 + +

Error - the input does not match the input schema definition.

+
+ 401 + +

Error - the user is not authorized to create an invitation.

+
+ 403 + +

Error - an invitation with the same ID already exists.

+
+ 404 + +

Error - no session with the given ID exists.

+
+
+
+ +
+
Types
+
+ + + + + + + + + + + + + +
TypeDescription
+ + Invitation + +
+
+
+ +
+
+ +
+
+
+ +
+
+
+
+
+

+ file_copy + +

+
+                                
+<?xml version="1.0" encoding="UTF-8"?>
+<InvitationCreate>
+    <Sender media-type="application/vnd.ibexa.api.User+xml"
+            href="/api/ibexa/v2/user/users/14"
+    >
+    </Sender>
+    <email>anonymous@link.invalid</email>
+    <context>
+        <simple_array>
+            <element>test</element>
+            <element>value1</element>
+            <element>value2</element>
+            <element>value3</element>
+            <element>value4</element>
+            <element>value5</element>
+        </simple_array>
+        <single_value>value</single_value>
+        <extended_array>
+            <bar>bar_value</bar>
+            <baz>baz_value</baz>
+            <foo>foo_value</foo>
+        </extended_array>
+    </context>
+</InvitationCreate>
+                            
+
+ View more +
+
+
+

+ file_copy + +

+
+                                {
+    "InvitationCreate": {
+        "email": "anonymous@link.invalid",
+        "Sender": {
+            "_media-type": "application/vnd.ibexa.api.User+json",
+            "_href": "/api/ibexa/v2/user/users/14"
+        },
+        "context": {
+            "single_value": "value",
+            "simple_array": ["test","value1","value2","value3","value4","value5"],
+            "extended_array": {
+                "foo": "foo_value",
+                "bar": "bar_value",
+                "baz": "baz_value"
+            }
+        }
+    }
+}
+                            
+
+ View more +
+
+
+ +
+
+
+
+
+ +
+ Code: 201 +
+
+
+
+
+
+

+ file_copy + +

+
+                                <?xml version="1.0" encoding="UTF-8"?>
+<Invitation media-type="application/vnd.ibexa.api.Invitation+xml">
+    <id>3</id>
+    <status>pending</status>
+    <createdAt>2024-11-18T08:04:28+00:00</createdAt>
+    <updatedAt>2024-11-18T08:04:28+00:00</updatedAt>
+    <context>
+        <value key="simple_array">
+            <value key="element">
+                <value>test</value>
+                <value>value1</value>
+                <value>value2</value>
+                <value>value3</value>
+                <value>value4</value>
+                <value>value5</value>
+            </value>
+        </value>
+        <value key="single_value">value</value>
+        <value key="extended_array">
+            <value key="bar">bar_value</value>
+            <value key="baz">baz_value</value>
+            <value key="foo">foo_value</value>
+        </value>
+    </context>
+    <Sender media-type="application/vnd.ibexa.api.User+xml" href="/api/ibexa/v2/user/users/14"/>
+</Invitation>
+                            
+
+ View more +
+
+
+

+ file_copy + +

+
+                                {
+    "Invitation": {
+        "_media-type": "application/vnd.ibexa.api.Invitation+json",
+        "id": 1,
+        "status": "pending",
+        "createdAt": "2024-11-15T14:28:44+00:00",
+        "updatedAt": "2024-11-15T14:28:44+00:00",
+        "context": {
+            "name": {
+                "bar": "bar_value",
+                "baz": "baz_value",
+                "foo": "foo_value"
+            }
+        },
+        "Sender": {
+            "_media-type": "application/vnd.ibexa.api.User+json",
+            "_href": "/api/ibexa/v2/user/users/14"
+        }
+    }
+}
+                            
+
+ View more +
+
+
+ +
+
+
+
@@ -163537,6 +167531,202 @@
Types
This class represents an activity log entry. +
+
    +
+
+ + + + + + + + + + +