+ POST + /collaboration/sessions +
+Create collaborative editing session.
+ +Accept
+If set, the new session is returned in XML or JSON format.
+Property | +Value | +
---|---|
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.
+Property | +Value | +
---|---|
Type | ++ + + string + + + + + | +
Examples | +
+ application/vnd.ibexa.api.CollaborationSessionCreate+json application/vnd.ibexa.api.CollaborationSessionCreate+xml
+ |
+
Code | +Description | +
---|---|
+ + 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. + |
+
Type | +Description | +
---|---|
+ + 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
+
+ + 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"
+
+ 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
+
+ + 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"
+ },
+ {
+
+
+ + DELETE + /collaboration/sessions/{sessionId} +
+The collaboration session is deleted.
+ +Cookie
+{sessionName}={sessionID}
+Property | +Value | +
---|---|
Type | ++ + + string + + + + + | +
X-CSRF-Token
+The {csrfToken} needed on all unsafe HTTP methods with session.
+Property | +Value | +
---|---|
Type | ++ + + string + + + + + | +
Code | +Description | +
---|---|
+ 204 + | +
+ OK - session deleted. + |
+
+ 404 + | +
+ Error - the session does not exist. + |
+
+ GET + /collaboration/sessions/{sessionId} +
+Get the collaboration session's information.
+ +Cookie
+{sessionName}={sessionID}
+Property | +Value | +
---|---|
Type | ++ + + string + + + + + | +
X-CSRF-Token
+The {csrfToken} needed on all unsafe HTTP methods with session.
+Property | +Value | +
---|---|
Type | ++ + + string + + + + + | +
Accept
+ +Property | +Value | +
---|---|
Type | ++ + + string + + + + + | +
Examples | +
+ application/vnd.ibexa.api.CollaborationSession+xml
+application/vnd.ibexa.api.CollaborationSession+json
+
+ |
+
Code | +Description | +
---|---|
+ + 200 + + | ++ + | +
+ 404 + | +
+ Error - the session does not exist. + |
+
Type | +Description | +
---|---|
+ + 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
+
+ + 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"
+ },
+ {
+
+
+ + GET + /collaboration/sessions/{sessionId}/participants +
+Loads participant list.
+ +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
+Property | +Value | +
---|---|
Type | ++ + + string + + + + + | +
Property | +Type | +Value | +
---|---|---|
+ sessionId + | ++ + + string + + + + + | +
+ Retrieves the participant list for a given collaboration session ID (e.g. GET /collaboration/session/1234). + + |
+
Code | +Description | +
---|---|
+ + 200 + + | +
+ OK - Loads participants for a given collaboration session ID. + |
+
+ 404 + | +
+ If there are no visibile participants matching the filter. + |
+
Type | +Description | +
---|---|
+ + 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>
+
+ + 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
+
+ + POST + /collaboration/sessions/{sessionId}/participant +
+Adds new participant.
+ +Accept
+If set, the new participant is returned in XML or JSON format.
+Property | +Value | +
---|---|
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.
+Property | +Value | +
---|---|
Type | ++ + + string + + + + + | +
Examples | +
+ application/vnd.ibexa.api.ParticipantListCreate+json application/vnd.ibexa.api.ParticipantListCreate+xml
+ |
+
Code | +Description | +
---|---|
+ + 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. + |
+
Type | +Description | +
---|---|
+ + 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>
+
+ + 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"
+ }
+ ]
+ }
+}
+
+ 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">
+
+
+ + 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
+
+ + PATCH + /collaboration/sessions/{sessionId}/participant/{participantId} +
+Updates a participant.
+ +Accept
+If set, the updated participant is returned in XML or JSON format.
+Property | +Value | +
---|---|
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.
+Property | +Value | +
---|---|
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.
+Property | +Value | +
---|---|
Type | ++ + + string + + + + + | +
Code | +Description | +
---|---|
+ + 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. + |
+
Type | +Description | +
---|---|
+ + ParticipantUpdate + + | ++ |
+ + Participant + + | ++ |
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>
+
+ + 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"
+ }
+}
+
+ + DELETE + /collaboration/sessions/{sessionId}/participant/{participantId} +
+Deletes the given participant.
+ + + +Code | +Description | +
---|---|
+ 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. + |
+
+ POST + /collaboration/sessions/{sessionId}/invitations +
+Creates an invitation to a session.
+ +Accept
+If set, the new invitationt is returned in XML or JSON format.
+Property | +Value | +
---|---|
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.
+Property | +Value | +
---|---|
Type | ++ + + string + + + + + | +
Examples | +
+ application/vnd.ibexa.api.InvitationCreate+json application/vnd.ibexa.api.InvitationCreate+xml
+ |
+
Code | +Description | +
---|---|
+ + 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. + |
+
Type | +Description | +
---|---|
+ + 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>
+
+ + 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"
+ }
+ }
+ }
+}
+
+ 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>
+
+ + 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"
+ }
+ }
+}
+
+