Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

GET

/favourites/bookmarks/{id}

User permission required

Status codes

  • 200 = Bookmark found
  • 401 = User is not authorized
  • 404 = Bookmark ID not found
  • 500 = Internal server error

Related Use Case(s)

  • All info of a bookmark is retrieved to display it in the frontend.

FA03 | Retrieve bookmarks

...

GET

...

/favourites/bookmarks

User permission required

Query parameters

...

Status codes

  • 200 = Bookmark(s) found
  • 400 = Missing some search params
  • 401 = User not authorized
  • 500 = Internal server error

Related Use Case(s)

  • Bookmarks according to certain criteria are retrieved to be displayed in the frontend.

FA04 | Update bookmark

...

PUT

...

/favourites/bookmarks/{id}

User permission required

Remarks

...

  • Duplicates for folderIds are not possible because of using a set.

...

Request payload

Returns User JSON object:

{
    "nickname": "testuser-ri",
    "email": "testuser-ri@ddb.de",
    "pswd": "testuser-ri"
}

Response payload

Returns User JSON object:

{
    "id": "cb5d9c5810e985e7beda092b22e1e480",
    "nickname": "testuser-ri",
    "status": "CONFIRMED",
    "surName": "surname is unknown",
    "email": "testuser-ri-1@ddb.de",
    "created": "2024-01-31T12:13:30",
    "creatorId": "anonymous",
    "modified": "2024-01-31T12:13:30",
    "modifierId": "anonymous"
}

Status codes

  • 200 = Bookmark found
  • 401 = User is not authorized
  • 404 = Bookmark ID not found
  • 500 = Internal server error

Related Use Case(s)

  • All info of a bookmark is retrieved to display it in the frontend.


...

FA03 | Retrieve bookmarks

GET

/favourites/bookmarks

User permission required

Query parameters

NameValueOccurenceDefault
userIdfolderIdsID of userOnce-
itemIdsList of IDs
folder(s)Multiple-
offsetBeginn offset of resultsOnce-1
sizeSize data of resultsOnce-1

Status codes

  • 200 = Bookmark updated
  • 401 = User is not authorized
  • 404 = Bookmark ID not found
  • 500 = Internal server error

Related Use Case(s)

  • UC07 | Change bookmark description
    • A user changes the description of a bookmark.

FA05 | Delete bookmark

...

DELETE

...

/favourites/bookmarks/{id}

User permission required

Query parameters

...

Request payload

Returns User JSON object:

{
    "nickname": "testuser-ri",
    "email": "testuser-ri@ddb.de",
    "pswd": "testuser-ri"
}

Response payload

Returns User JSON object:

{
    "id": "cb5d9c5810e985e7beda092b22e1e480",
    "nickname": "testuser-ri",
    "status": "CONFIRMED",
    "surName": "surname is unknown",
    "email": "testuser-ri-1@ddb.de",
    "created": "2024-01-31T12:13:30",
    "creatorId": "anonymous",
    "modified": "2024-01-31T12:13:30",
    "modifierId": "anonymous"
}

Status codes

  • 200 = Bookmark(s) found
  • 400 = Missing some search params
  • 401 = User not authorized

Status codes

  • 200 = Bookmark deleted
  • 401 = User is not authorized
  • 404 = Bookmark ID not found
  • 500 = Internal server error

Related Use Case(s)

  • UC06 | Delete bookmarks in All Favorites
    • A user deletes a bookmark from favorites (and the rest of the lists).

FA06 | Create folder

  • Bookmarks according to certain criteria are retrieved to be displayed in the frontend.


...

FA04 | Update bookmark

PUT

/favourites/bookmarks/{id}

POST

/favourites/folders

User permission required

Status codes

  • 200 = Folder created
  • 400 = Title attribute is missing
  • 401 = User is not authorized
  • 409 = Folder already exists
  • 500 = Internal server error

Related Use Case(s)

  • UC05 | Add personal folder
    • A user creates a personal folder.

FA07 | Add bookmark to folder

...

POST

...

/favourites/{id}/bookmarks

User permission required

Remarks

  • A bookmark could not be added to the main folder (favorites), because it is added to this folder when you create a bookmark.
  • The folder ID and bookmark ID must exist before adding something.

Query parameters

...

Remarks

  • The parameter folderId defines all lists (folders) to add the bookmark.
    • Duplicates for folderIds are not possible because of using a set.
  • The folderId favorites is always used. If no folderId is specified, only favorites is used.
  • If the folder favorites not exists, because a new user adds the first bookmark, then the folder favorites is created.

Query parameters

NameValueOccurenceDefault
userIdID of userOnce-
itemIdsList of IDsMultiple-
offsetBeginn offset of resultsOnce-1
sizeSize data of resultsOnce-1

Request payload

Returns User JSON object:

{
    "nickname": "testuser-ri",
    "email": "testuser-ri@ddb.de",
    "pswd": "testuser-ri"
}

Response payload

Returns User JSON object:

{
    "id": "cb5d9c5810e985e7beda092b22e1e480",
    "nickname": "testuser-ri",
    "status": "CONFIRMED",
    "surName": "surname is unknown",
    "email": "testuser-ri-1@ddb.de",
    "created": "2024-01-31T12:13:30",
    "creatorId": "anonymous",
    "modified": "2024-01-31T12:13:30",
    "modifierId": "anonymous"
}

Status codes

  • 200 = Bookmark updated

Status codes

  • 200 = Bookmarks added
  • 400 = Bookmark ID not exist
  • 401 = User is not authorized
  • 404 = Folder ID not exist
  • 500 = Internal server error

Related Use Case(s)

  • UC02 | Assign bookmarks to selected lists
    • A user stores bookmarks (additionally) in personal lists.
  • UC08 | Copy bookmarks from All Favorites to personal lists
    • A user copies bookmarks into personal lists.
  • UC14 | Copy bookmarks to another personal list
    • A user copies bookmarks from a personal list to other personal lists.

FA08 | Retrieve folder

...

GET

...

/favourites/folders/{id}

User permission required

Status codes

  • 200 = Folder found
  • 401 = User is not authorized
  • 404 = Folder Bookmark ID not existfound
  • 500 = Internal server error

Related Use Case(s)

...

  • All info of a list is retrieved to display it in the frontend.

FA09 | Retrieve bookmarks of a folder

  • UC07 | Change bookmark description
    • A user changes the description of a bookmark.


...

FA05 | Delete bookmark

GET

DELETE

/favourites/foldersbookmarks/{id}/bookmarks

User permission required

Status codes

  • 200 = Folder found
  • 401 = User not authorized
  • 404 = Folder not exist
  • 500 = Internal server error

Query parameters

NameValueOccurenceDefault
folderIdsID of folder

...

(s)
  • UC04 | Retrieve bookmarks of a list
    • The user retrieves bookmarks of a specified list.

FA10 | Retrieve folders

...

GET

...

/favourites/folders

User permission required

Query parameters

...

Multiple-

Request payload

Returns User JSON object:

{
    "nickname": "testuser-ri",
    "email": "testuser-ri@ddb.de",
    "pswd": "testuser-ri"
}

Response payload

Returns User JSON object:

{
    "id": "cb5d9c5810e985e7beda092b22e1e480",
    "nickname": "testuser-ri",
    "status": "CONFIRMED",
    "surName": "surname is unknown",
    "email": "testuser-ri-1@ddb.de",
    "created": "2024-01-31T12:13:30",
    "creatorId": "anonymous",
    "modified": "2024-01-31T12:13:30",
    "modifierId": "anonymous"
}

Status codes

  • 200 = Bookmark deleted
  • 401 = User is not authorized
  • 404 = Bookmark

Status codes

  • 200 = Folder(s) found
  • 400 = Missing some search params
  • 401 = User not authorized
  • 500 = Internal server error

Related Use Case(s)

  • UC03 | Listennamen eines Benutzers abrufen
    • The user retrieves bookmarks of a specified list.

FA11 | Update folder

...

POST

...

/favourites/folders/{id}

User permission required

Query parameters

...

Status codes

  • 200 = Folder updated
  • 401 = User not authorized
  • 404 = Folder ID not found
  • 500 = Internal server error

Related Use Case(s)

  • UC09 | Publish or privatize personal list
    • A user publishes a list or make a published list private again.
  • UC10 | Change properties of personal list
    • Furthermore, the user can change name, description, private/public, name abbreviation of a personal list.

FA12 | Delete folder

...

DELETE

...

/favourites/folders/{id}

User permission required

Query parameters

...

  • UC06 | Delete bookmarks in All Favorites
    • A user deletes a bookmark from favorites (and the rest of the lists).


...

FA06 | Create folder

POST

/favourites/folders

User permission required

Request payload

Returns User JSON object:

{
    "nickname": "testuser-ri",
    "email": "testuser-ri@ddb.de",
    "pswd": "testuser-ri"
}

Response payload

Returns User JSON object:

{
    "id": "cb5d9c5810e985e7beda092b22e1e480",
    "nickname": "testuser-ri",
    "status": "CONFIRMED",
    "surName": "surname is unknown",
    "email": "testuser-ri-1@ddb.de",
    "created": "2024-01-31T12:13:30",
    "creatorId": "anonymous",
    "modified": "2024-01-31T12:13:30",
    "modifierId": "anonymous"
}

Status codes

  • 200 = Folder created
  • 400 = Title attribute is missing
  • 401 = User is not authorized
  • 409 = Folder already exists
  • 500 = Internal server error

Related Use Case(s)

  • UC05 | Add personal folder
    • A user creates a personal folder.


...

FA07 | Add bookmark to folder

POST

/favourites/{id}/bookmarks

User permission required

Remarks

  • A bookmark could not be added to the main folder (favorites), because it is added to this folder when you create a bookmark.
  • The folder ID and bookmark ID must exist before adding something.

Query parameters

NameValueOccurenceDefault
bookmarkIdID of bookmark to addOnce-

Request payload

Returns User JSON object:

{
    "nickname": "testuser-ri",
    "email": "testuser-ri@ddb.de",
    "pswd": "testuser-ri"
}

Response payload

Returns User JSON object:

{
    "id": "cb5d9c5810e985e7beda092b22e1e480",
    "nickname": "testuser-ri",
    "status": "CONFIRMED",
    "surName": "surname is unknown",
    "email": "testuser-ri-1@ddb.de",
    "created": "2024-01-31T12:13:30",
    "creatorId": "anonymous",
    "modified": "2024-01-31T12:13:30",
    "modifierId": "anonymous"
}

Status codes

  • 200 = Bookmarks added
  • 400 = Bookmark ID not exist
  • 401 = User is not authorized
  • 404 = Folder ID not exist
  • 500 = Internal server error

Related Use Case(s)

  • UC02 | Assign bookmarks to selected lists
    • A user stores bookmarks (additionally) in personal lists.
  • UC08 | Copy bookmarks from All Favorites to personal lists
    • A user copies bookmarks into personal lists.
  • UC14 | Copy bookmarks to another personal list
    • A user copies bookmarks from a personal list to other personal lists.


...

FA08 | Retrieve folder

GET

/favourites/folders/{id}

User permission required

Request payload

Returns User JSON object:

{
    "nickname": "testuser-ri",
    "email": "testuser-ri@ddb.de",
    "pswd": "testuser-ri"
}

Response payload

Returns User JSON object:

{
    "id": "cb5d9c5810e985e7beda092b22e1e480",
    "nickname": "testuser-ri",
    "status": "CONFIRMED",
    "surName": "surname is unknown",
    "email": "testuser-ri-1@ddb.de",
    "created": "2024-01-31T12:13:30",
    "creatorId": "anonymous",
    "modified": "2024-01-31T12:13:30",
    "modifierId": "anonymous"
}

Status codes

  • 200 = Folder found
  • 401 = User is not authorized
  • 404 = Folder not exist
  • 500 = Internal server error

Related Use Case(s)

  • All info of a list is retrieved to display it in the frontend.


...

FA09 | Retrieve bookmarks of a folder

GET

/favourites/folders/{id}/bookmarks

User permission required

Request payload

Returns User JSON object:

{
    "nickname": "testuser-ri",
    "email": "testuser-ri@ddb.de",
    "pswd": "testuser-ri"
}

Response payload

Returns User JSON object:

{
    "id": "cb5d9c5810e985e7beda092b22e1e480",
    "nickname": "testuser-ri",
    "status": "CONFIRMED",
    "surName": "surname is unknown",
    "email": "testuser-ri-1@ddb.de",
    "created": "2024-01-31T12:13:30",
    "creatorId": "anonymous",
    "modified": "2024-01-31T12:13:30",
    "modifierId": "anonymous"
}

Status codes

  • 200 = Folder found
  • 401 = User not authorized
  • 404 = Folder not exist
  • 500 = Internal server error

Related Use Case(s)

  • UC04 | Retrieve bookmarks of a list
    • The user retrieves bookmarks of a specified list.


...

FA10 | Retrieve folders

GET

/favourites/folders

User permission required

Query parameters

NameValueOccurenceDefault
userIdID of userOnce-
titleTitle of folderOnce-
offsetBeginn offset of resultsOnce-1
sizeSize data of resultsOnce-1

Request payload

Returns User JSON object:

{
    "nickname": "testuser-ri",
    "email": "testuser-ri@ddb.de",
    "pswd": "testuser-ri"
}

Response payload

Returns User JSON object:

{
    "id": "cb5d9c5810e985e7beda092b22e1e480",
    "nickname": "testuser-ri",
    "status": "CONFIRMED",
    "surName": "surname is unknown",
    "email": "testuser-ri-1@ddb.de",
    "created": "2024-01-31T12:13:30",
    "creatorId": "anonymous",
    "modified": "2024-01-31T12:13:30",
    "modifierId": "anonymous"
}

Status codes

  • 200 = Folder(s) found
  • 400 = Missing some search params
  • 401 = User not authorized
  • 500 = Internal server error

Related Use Case(s)

  • UC03 | Listennamen eines Benutzers abrufen
    • The user retrieves bookmarks of a specified list.


...

FA11 | Update folder

POST

/favourites/folders/{id}

User permission required

Query parameters

NameValueOccurence
folderIdsID of folder(s)Multiple

Request payload

Returns User JSON object:

{
    "nickname": "testuser-ri",
    "email": "testuser-ri@ddb.de",
    "pswd": "testuser-ri"
}

Response payload

Returns User JSON object:

{
    "id": "cb5d9c5810e985e7beda092b22e1e480",
    "nickname": "testuser-ri",
    "status": "CONFIRMED",
    "surName": "surname is unknown",
    "email": "testuser-ri-1@ddb.de",
    "created": "2024-01-31T12:13:30",
    "creatorId": "anonymous",
    "modified": "2024-01-31T12:13:30",
    "modifierId": "anonymous"
}

Status codes

  • 200 = Folder updated
  • 401 = User not authorized
  • 404 = Folder ID not found
  • 500 = Internal server error

Related Use Case(s)

  • UC09 | Publish or privatize personal list
    • A user publishes a list or make a published list private again.
  • UC10 | Change properties of personal list
    • Furthermore, the user can change name, description, private/public, name abbreviation of a personal list.


...

FA12 | Delete folder

DELETE

/favourites/folders/{id}

User permission required

Query parameters

NameValueOccurence
folderIdsID of folder(s)Multiple

Request payload

Returns User JSON object:

{
    "nickname": "testuser-ri",
    "email": "testuser-ri@ddb.de",
    "pswd": "testuser-ri"
}

Response payload

Returns User JSON object:

{
    "id": "cb5d9c5810e985e7beda092b22e1e480",
    "nickname": "testuser-ri",
    "status": "CONFIRMED",
    "surName": "surname is unknown",
    "email": "testuser-ri-1@ddb.de",
    "created": "2024-01-31T12:13:30",
    "creatorId": "anonymous",
    "modified": "2024-01-31T12:13:30",
    "modifierId": "anonymous"
}

Status codes

  • 200 = Folder deleted
  • 400 = Folder favorite could not be deleted
  • 401 = User not authorized
  • 404 = Folder ID not found
  • 500 = Internal server error

Related Use Case(s)

  • UC11 | Remove personal list with bookmarks
    • The user deletes a personal list with the contained bookmarks.


...

FA13 | Delete bookmark from folder

DELETE

/favourites/folders/{id}/bookmarks/{bookmarkId}

User permission required

Remarks

  • A bookmark could not be deleted from the main folder (favorites), because this is done only if the bookmark is deleted (see Delete Bookmark).
  • The folder ID and bookmark ID must exist before deleting something.

Request payload

Returns User JSON object:

{
    "nickname": "testuser-ri",
    "email": "testuser-ri@ddb.de",
    "pswd": "testuser-ri"
}

Response payload

Returns User JSON object:

{
    "id": "cb5d9c5810e985e7beda092b22e1e480",
    "nickname": "testuser-ri",
    "status": "CONFIRMED",
    "surName": "surname is unknown",
    "email": "testuser-ri-1@ddb.de",
    "created": "2024-01-31T12:13:30",
    "creatorId": "anonymous",
    "modified": "2024-01-31T12:13:30",
    "modifierId": "anonymous"
}

Status codes

  • 200 = Bookmark in Folder deleted
  • 400 = Bookmark ID not found

Status codes

  • 200 = Folder deleted
  • 400 = Folder favorite could not be deleted
  • 401 = User not authorized
  • 404 = Folder ID not found
  • 500 = Internal server error

Related Use Case(s)

  • FA13 | Delete bookmark from list
    • A bookmark is removed from
    UC11 | Remove personal list with bookmarks
    • The user deletes a personal list with the contained bookmarks.

...


...

FA14 | Delete

...

all bookmarks and folders

DELETE

/favourites/folders/{id}/bookmarks/{bookmarkId}

User permission required

Remarks

  • A bookmark could not be deleted from the main folder (favorites), because this is done only if the bookmark is deleted (see Delete Bookmark).
  • The folder ID and bookmark ID must exist before deleting something.

Status codes

  • 200 = Bookmark in Folder deleted
  • 400 = Bookmark ID not found
  • 401 = User not authorized
  • 404 = Folder ID not found
  • 500 = Internal server error

Related Use Case(s)

  • FA13 | Delete bookmark from list
    • A bookmark is removed from a personal list.

FA14 | Delete all bookmarks and folders

...

DELETE

...

/favourites/folders

User permission required

Query parameters

...

User permission required

Query parameters

NameValueOccurenceDefault
userIdID of user to deleteOnce-

Request payload

Returns User JSON object:

{
    "nickname": "testuser-ri",
    "email": "testuser-ri@ddb.de",
    "pswd": "testuser-ri"
}

Response payload

Returns User JSON object:

{
    "id": "cb5d9c5810e985e7beda092b22e1e480",
    "nickname": "testuser-ri",
    "status": "CONFIRMED",
    "surName": "surname is unknown",
    "email": "testuser-ri-1@ddb.de",
    "created": "2024-01-31T12:13:30",
    "creatorId": "anonymous",
    "modified": "2024-01-31T12:13:30",
    "modifierId": "anonymous"
}

...

Status codes

  • 200 = Bookmarks and Folders deleted
  • 401 = User not authorized
  • 404 = User ID not found
  • 500 = Internal server error

...