Skip to content

List publications to continue

GET
/api/v1/me/continue-reading
curl --request GET \
--url 'http://localhost:8080/api/v1/me/continue-reading?limit=50' \
--header 'Authorization: Bearer <token>'

Publications the user has a position in and hasn’t finished, most recently read first. A position whose totalProgression is 1 counts as finished; one without it counts as started. Unavailable publications and libraries the user can no longer read are left out. Empty for a demo account, whose positions aren’t kept.

cursor
string

Opaque cursor from the previous page’s nextCursor.

limit
integer
default: 50 >= 1 <= 200

Items per page. Values outside the range are clamped.

One page of publications with the user’s position in each.

Media typeapplication/json
object
items
required
Array<object>
object
publication
required
object
id
required
integer format: int64
series
required
object
id
required
integer format: int64
title
required
string
title
required

From the file’s metadata, or its file name when it has none.

string
numberLabel
required

The number in its series as the file’s metadata writes it, such as “3”, “1.5” or “Vol. 3”.

string | null
format
required

Comic archives get their format from their bytes, so a ZIP named .cbr is cbz. A FictionBook zipped as .fb2.zip or .fbz is fb2 too; its file downloads as application/x-zip-compressed-fb2. remote is a chapter from an extension: it has pages but no file. A chapter from an extension whose source reads only EPUBs or only PDFs is epub or pdf, and its file is downloaded through the source.

string
Allowed values: epub pdf cbz cbt cbr cb7 mobi azw3 fb2 txt markdown remote
pageCount
required

Number of pages for comic formats.

integer | null
available
required

False when the file is missing from disk. Missing files are kept so progress survives.

boolean
hasCover
required

Whether /cover has an image for this publication.

boolean
progress
required
object
revision
required

Counts saves; 0 when nothing has been saved.

integer format: int64
locator
required
One of:

A Readium Locator. The server checks the fields below and stores the rest as sent, up to 16 KiB in all.

object
href
required
string
>= 1 characters
type
required

The resource’s media type.

string
title
string
locations
object
fragments
Array<string>
progression

Position within the resource.

number
<= 1
totalProgression

Position within the publication.

number
<= 1
position
integer
>= 1
text
object
before
string
highlight
string
after
string
device
required

The device name of the session that saved it.

string | null
updatedAt
required
string | null format: date-time
nextCursor

Pass as cursor to get the next page. Absent on the last page.

string

Example

{
"items": [
{
"publication": {
"format": "epub"
},
"progress": {
"locator": {
"type": "application/xhtml+xml"
}
}
}
]
}

The request was malformed.

Media typeapplication/json
object
code
required
string
Allowed values: bad_request unauthorized forbidden not_found unavailable scan_in_progress content_changed already_set_up name_taken last_admin progress_conflict too_many_attempts not_linked identity_taken last_sign_in provider_unavailable too_many_sign_ins repository_exists repository_not_allowed repository_unreadable repository_needs_token repository_needs_password repository_needs_credentials repository_credentials_refused extension_invalid source_failed source_unavailable source_check_failed internal
message
required

Explains the problem to a developer.

string

Example

{
"code": "bad_request"
}

The request has no valid session token.

Media typeapplication/json
object
code
required
string
Allowed values: bad_request unauthorized forbidden not_found unavailable scan_in_progress content_changed already_set_up name_taken last_admin progress_conflict too_many_attempts not_linked identity_taken last_sign_in provider_unavailable too_many_sign_ins repository_exists repository_not_allowed repository_unreadable repository_needs_token repository_needs_password repository_needs_credentials repository_credentials_refused extension_invalid source_failed source_unavailable source_check_failed internal
message
required

Explains the problem to a developer.

string

Example

{
"code": "bad_request"
}

The server failed; details are in its log.

Media typeapplication/json
object
code
required
string
Allowed values: bad_request unauthorized forbidden not_found unavailable scan_in_progress content_changed already_set_up name_taken last_admin progress_conflict too_many_attempts not_linked identity_taken last_sign_in provider_unavailable too_many_sign_ins repository_exists repository_not_allowed repository_unreadable repository_needs_token repository_needs_password repository_needs_credentials repository_credentials_refused extension_invalid source_failed source_unavailable source_check_failed internal
message
required

Explains the problem to a developer.

string

Example

{
"code": "bad_request"
}