Skip to content

Instantly share code, notes, and snippets.

@yungyili
Last active December 3, 2020 08:25
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save yungyili/8af40827d1a8c5c7ba7fff443cc5f77e to your computer and use it in GitHub Desktop.
Save yungyili/8af40827d1a8c5c7ba7fff443cc5f77e to your computer and use it in GitHub Desktop.
swagger: '2.0'
info:
version: 3.0.0
title: 'Readmoo 讀墨 API 文件'
description: |
Readmoo 讀墨電子書 API 使用說明文件
要使用 swagger UI 測試前,請先點擊右方的 Authorize 按鈕,
在跳出的 Available authorizations 清單中勾選需要的 scopes 後,
點擊清單下方的 Authorize 按鈕,瀏覽器會另外開啟新頁籤要求登入,
登入並回到 swagger UI 的頁籤後,請點擊清單下方的 Close 按鈕回到文件頁。
有問題請至 [readmoo](https://readmoo.com) 網站詢問
host: api.localhost.readmoo
basePath: /store/v3
schemes:
- http
consumes:
- application/vnd.api+json
produces:
- application/vnd.api+json
tags:
- name: Activity
description: 活動
- name: Book
description: 書籍資訊
- name: Bookmark
description: 書籤
- name: Comment
description: 評論
- name: Device
description: 裝置
- name: Document
description: 個人文件
- name: Feedback
description: 回報
- name: Favor
description: 收藏
- name: Forever
description: 暢讀
- name: Highlight
description: 劃線註記
- name: Installment
description: 系列/連載
- name: Library
description: 書櫃
- name: Marathon
description: 閱讀馬拉松
- name: Me
description: 個人資訊
- name: Media
description: 媒體
- name: Navigation
description: 頁面區塊
- name: Note
description: 筆記
- name: Notification
description: 系統通知
- name: Pin
description: 有聲書書籤
- name: Playback
description: 播放資訊
- name: Reading
description: 閱讀資訊
- name: Review
description: 書評
- name: Subscription
description: 訂閱
- name: Tag
description: 自訂標籤
- name: Unlimited
description: 新版暢讀
- name: Wishlist
description: 願望書單
- name: User
description: 會員
- name: Community
description: 社群
- name: Ap
description: 聯盟行銷
securityDefinitions:
readmooAccessCode:
type: oauth2
flow: accessCode
authorizationUrl: 'http://member.localhost.readmoo/oauth'
tokenUrl: 'http://member.localhost.readmoo/oauth/access_token'
scopes:
book: 書籍(取得書籍清單與詳細資料)
bookmark: 書籤(取得、新增、修改或刪除使用者的書籤)
comment: 回應(取得、新增、修改或刪除對劃線或書評的回應)
event: 活動(取得活動清單與詳細資料)
forever: 暢讀(取得暢讀清單與詳細資料)
highlight: 劃線(取得、新增、修改或刪除使用者的劃線)
library: 書櫃(取得、新增或修改書櫃內的書籍清單)
like: 收藏(收藏自己或其他使用者的劃線、註記及書評)
me: 個人(取得自己的個人資料)
reading: 閱讀(取得、新增、修改或刪除使用者的閱讀紀錄)
review: 書評(取得、新增、修改或刪除使用者的完讀書評)
scribble: 塗鴉(取得、新增、修改或刪除使用者的塗鴉)
subscription: 訂閱(訂閱的暢讀清單)
user: 會員(取得會員資訊)
wishlist: 願望清單(個人願望清單)
readmooImplicit:
type: oauth2
flow: implicit
authorizationUrl: 'http://member.localhost.readmoo/oauth'
scopes:
book: 書籍(取得書籍清單與詳細資料)
bookmark: 書籤(取得、新增、修改或刪除使用者的書籤)
comment: 回應(取得、新增、修改或刪除對劃線或書評的回應)
event: 活動(取得活動清單與詳細資料)
forever: 暢讀(取得暢讀清單與詳細資料)
highlight: 劃線(取得、新增、修改或刪除使用者的劃線)
library: 書櫃(取得、新增或修改書櫃內的書籍清單)
like: 收藏(收藏自己或其他使用者的劃線、註記及書評)
me: 個人(取得自己的個人資料)
reading: 閱讀(取得、新增、修改或刪除使用者的閱讀紀錄)
review: 書評(取得、新增、修改或刪除使用者的完讀書評)
scribble: 塗鴉(取得、新增、修改或刪除使用者的塗鴉)
subscription: 訂閱(訂閱的暢讀清單)
user: 會員(取得會員資訊)
wishlist: 願望清單(個人願望清單)
readmooApiKey:
type: apiKey
in: header
name: Authorization
security:
- readmooAccessCode:
- book
- bookmark
- comment
- event
- forever
- highlight
- library
- like
- me
- reading
- review
- scribble
- subscription
- user
- wishlist
- readmooImplicit:
- book
- bookmark
- comment
- event
- forever
- highlight
- library
- like
- me
- reading
- review
- scribble
- subscription
- user
- wishlist
paths:
/badges:
get:
summary: /badges
description: 取得徽章清單資訊
security:
- readmooAccessCode:
- event
- readmooImplicit:
- event
- readmooApiKey: []
parameters:
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
- $ref: '#/parameters/FilterId'
- $ref: '#/parameters/FilterModifiedSince'
tags:
- Activity
responses:
200:
description: 成功
schema:
$ref: '#/definitions/BadgesResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/badges/{badge_id}:
get:
summary: /badges/:id
description: 取得指定編號徽章資訊
security:
- readmooAccessCode:
- event
- readmooImplicit:
- event
- readmooApiKey: []
parameters:
- $ref: '#/parameters/BadgeId'
tags:
- Activity
responses:
200:
description: 成功
schema:
$ref: '#/definitions/BadgeResponse'
404:
description: 無此資料
schema:
$ref: '#/definitions/Error'
/books:
get:
summary: /books
description: |
取得書籍資訊清單
可配合 filter[rel.type] 取得特定清單,如:
- 回傳指定的訂閱編號下對應的書籍資訊清單
filter[rel.type]=subscriptions&filter[rel.id]=7
- 回傳指定的系列/連載編號下對應的書籍資訊清單
filter[rel.type]=installments&filter[rel.id]=5
- 回傳指定的套書編號下對應的書籍資訊清單
filter[rel.type]=bundles&filter[rel.id]=210001057000101
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
- readmooApiKey: []
parameters:
- $ref: '#/parameters/FilterRelType'
- $ref: '#/parameters/FilterRelId'
- $ref: '#/parameters/FilterId'
- $ref: '#/parameters/FilterBlocks'
- $ref: '#/parameters/FilterCollections'
- $ref: '#/parameters/FilterRanks'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
- $ref: '#/parameters/Include'
- $ref: '#/parameters/BooksFields'
tags:
- Book
responses:
200:
description: 成功
schema:
$ref: '#/definitions/BooksResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/books/{readmoo_id}:
get:
summary: /books/:id
description: 藉由 Readmoo ID 取得書籍資訊
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
- readmooApiKey: []
parameters:
- $ref: '#/parameters/ReadmooId'
- $ref: '#/parameters/Include'
- $ref: '#/parameters/BooksFields'
tags:
- Book
responses:
200:
description: 成功
schema:
$ref: '#/definitions/BookResponse'
404:
description: 無此資料
schema:
$ref: '#/definitions/Error'
/books/{readmoo_id}/bundles:
get:
summary: /books/:id/bundles
description: 依據指定的 Readmoo ID 取得套賣資訊
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
- readmooApiKey: []
parameters:
- $ref: '#/parameters/ReadmooId'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
tags:
- Book
responses:
200:
description: 成功
schema:
$ref: '#/definitions/BundlesResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/books/{readmoo_id}/installments:
get:
summary: /books/:id/installments
description: 依據指定的 Readmoo ID 取得系列/連載資訊
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
- readmooApiKey: []
parameters:
- $ref: '#/parameters/ReadmooId'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
tags:
- Book
- Installment
responses:
200:
description: 成功
schema:
$ref: '#/definitions/InstallmentsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/books/{readmoo_id}/reviews:
get:
summary: /books/:id/reviews
description: 依據指定的 Readmoo ID 取得書評資訊
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
- readmooApiKey: []
parameters:
- $ref: '#/parameters/ReadmooId'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
tags:
- Book
responses:
200:
description: 成功
schema:
$ref: '#/definitions/ReviewsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/books/{readmoo_id}/highlights:
get:
summary: /books/:id/highlights
description: 依據指定的 Readmoo ID 取得劃線註記資訊清單
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
- readmooApiKey: []
parameters:
- $ref: '#/parameters/ReadmooId'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
tags:
- Book
responses:
200:
description: 成功
schema:
$ref: '#/definitions/BookHighlightsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/books/{readmoo_id}/subscriptions:
get:
summary: /books/:id/subscriptions
description: 依據指定的 Readmoo ID 取得訂閱資訊
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
- readmooApiKey: []
parameters:
- $ref: '#/parameters/ReadmooId'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
tags:
- Book
- Subscription
responses:
200:
description: 成功
schema:
$ref: '#/definitions/SubscriptionsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/bundles:
get:
summary: /bundles
description: 取得套書清單資訊
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
- readmooApiKey: []
parameters:
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
- $ref: '#/parameters/FilterId'
- $ref: '#/parameters/FilterModifiedSince'
tags:
- Book
responses:
200:
description: 成功
schema:
$ref: '#/definitions/BundlesResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/reviews:
get:
summary: /reviews
description: 取得書評清單資訊
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
- readmooApiKey: []
parameters:
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
- $ref: '#/parameters/FilterId'
tags:
- Book
responses:
200:
description: 成功
schema:
$ref: '#/definitions/ReviewsResponse'
404:
description: 'Error(error_code:error_919)'
schema:
$ref: '#/definitions/Error'
/reviews/{review_id}:
get:
summary: /reviews/:id
description: 依據指定的書評編號取得書評資訊
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
- readmooApiKey: []
parameters:
- $ref: '#/parameters/ReviewId'
tags:
- Book
responses:
200:
description: 成功
schema:
$ref: '#/definitions/ReviewResponse'
404:
description: 無此資料
schema:
$ref: '#/definitions/Error'
/highlights:
get:
summary: /highlights
description: 取得劃線註記資訊清單
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
- readmooApiKey: []
parameters:
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
- $ref: '#/parameters/FilterId'
tags:
- Book
responses:
200:
description: 成功
schema:
$ref: '#/definitions/BookHighlightsResponse'
404:
description: 'Error(error_code:error_919)'
schema:
$ref: '#/definitions/Error'
/highlights/{highlight_id}:
get:
summary: /highlight/:id
description: 依據指定的編號取得劃線註記資訊
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
- readmooApiKey: []
parameters:
- $ref: '#/parameters/HighlightId'
tags:
- Book
responses:
200:
description: 成功
schema:
$ref: '#/definitions/BookHighlightResponse'
404:
description: 無此資料
schema:
$ref: '#/definitions/Error'
/categories:
get:
summary: /categories
description: 取得分類清單資訊
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
- readmooApiKey: []
parameters:
- $ref: '#/parameters/FilterParent'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
tags:
- Book
responses:
200:
description: 成功
schema:
$ref: '#/definitions/CategoriesResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/categories/{category_id}:
get:
summary: /categories/:id
description: 依據分類編號取得資訊
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
- readmooApiKey: []
parameters:
- $ref: '#/parameters/CategoryId'
tags:
- Book
responses:
200:
description: 成功
schema:
$ref: '#/definitions/CategoryResponse'
404:
description: 無此資料
schema:
$ref: '#/definitions/Error'
/comments/{comment_id}:
get:
summary: /comments/:id
description: 取得指定的評論內容
security:
- readmooAccessCode:
- comment
- readmooImplicit:
- comment
- readmooApiKey: []
parameters:
- $ref: '#/parameters/CommentId'
tags:
- Comment
responses:
200:
description: 成功
schema:
$ref: '#/definitions/CommentResponse'
404:
description: 無此資料
schema:
$ref: '#/definitions/Error'
/me/comments/{comment_id}:
patch:
summary: /me/comments/:id
description: 依據編號更新個人的評論
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/CommentId'
- $ref: '#/parameters/UpdateComment'
tags:
- Comment
responses:
204:
description: 成功,且無更新額外屬性
404:
description: 無此資料
schema:
$ref: '#/definitions/Error'
delete:
summary: /me/comments/:id
description: 依據編號刪除個人的評論
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/CommentId'
tags:
- Comment
responses:
204:
description: 伺服器成功處理了請求,沒有返回任何內容。
404:
description: 無此資料
schema:
$ref: '#/definitions/Error'
/reviews/{review_id}/comments:
get:
summary: /reviews/:id/comments
description: 依據書評編號取得評論資訊
security:
- readmooAccessCode:
- review
- readmooImplicit:
- review
- readmooApiKey: []
parameters:
- $ref: '#/parameters/ReviewId'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
tags:
- Comment
responses:
200:
description: 成功
schema:
$ref: '#/definitions/CommentsResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
post:
summary: /reviews/:id/comments
description: 指定書評編號新增評論資訊
security:
- readmooAccessCode:
- review
- readmooImplicit:
- review
parameters:
- $ref: '#/parameters/ReviewId'
- $ref: '#/parameters/CreateComment'
tags:
- Comment
responses:
201:
description: 成功
headers:
Location:
description: 評論 API 的 GET URL
type: string
format: url
schema:
$ref: '#/definitions/CommentResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/confirmations:
post:
summary: /confirmations
description: 請求發送確認函
security:
- readmooApiKey: []
parameters:
- $ref: '#/parameters/Confirmation'
tags:
- Me
responses:
201:
description: 成功
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/contributors/{contributor_id}:
get:
summary: /contributors/:id
description: 依據貢獻者編號取得資訊
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
- readmooApiKey: []
parameters:
- $ref: '#/parameters/ContributorId'
tags:
- Book
responses:
200:
description: 成功
schema:
$ref: '#/definitions/ContributorResponse'
404:
description: 無此資料
schema:
$ref: '#/definitions/Error'
/devices/{device_id}:
patch:
summary: /devices/:id
description: 註冊裝置
security:
- readmooApiKey: []
parameters:
- $ref: '#/parameters/DeviceId'
- $ref: '#/parameters/RegisterDevice'
consumes:
- application/vnd.api+json
produces:
- application/json
tags:
- Device
responses:
200:
description: 成功
schema:
$ref: '#/definitions/AccessTokenResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/devices/{device_id}/notes:
get:
summary: /devices/:id/notes
description: 取得裝置的筆記清單
security:
- readmooApiKey: []
parameters:
- $ref: '#/parameters/DeviceId'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
tags:
- Note
responses:
200:
description: 成功
schema:
$ref: '#/definitions/NotesResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/feedbacks:
post:
summary: /feedbacks
description: 新增意見回報
security:
- readmooApiKey: []
parameters:
- $ref: '#/parameters/Feedback'
tags:
- Feedback
responses:
201:
description: 成功
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/forevers:
get:
summary: /forevers
description: 取得暢讀清單,包含使用者訂閱該方案的資訊
security:
- readmooAccessCode:
- forever
- readmooImplicit:
- forever
- readmooApiKey: []
parameters:
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
#- $ref: '#/parameters/IfNoneMatch'
tags:
- Forever
responses:
200:
description: 成功
schema:
$ref: '#/definitions/ForeversResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/forevers/{forever_id}:
get:
summary: /forevers/:id
description: 依照編號取得暢讀方案,包含使用者訂閱該方案的資訊
security:
- readmooAccessCode:
- forever
- readmooImplicit:
- forever
- readmooApiKey: []
parameters:
- $ref: '#/parameters/ForeverId'
tags:
- Forever
responses:
200:
description: 成功
schema:
$ref: '#/definitions/ForeverResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/forevers/{forever_id}/forever_items:
get:
summary: /forevers/:id/forever_items
description: 依照編號取得暢讀方案下的書刊清單,包含使用者訂閱資訊
security:
- readmooAccessCode:
- forever
- readmooImplicit:
- forever
- readmooApiKey: []
parameters:
- $ref: '#/parameters/ForeverId'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
- $ref: '#/parameters/Include'
- $ref: '#/parameters/BooksFields'
#- $ref: '#/parameters/IfNoneMatch'
tags:
- Forever
responses:
200:
description: 成功
schema:
$ref: '#/definitions/ForeverItemsResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/fragments/paths/{path_id}:
get:
summary: /fragments/paths/:id
description: |
書刊內文片段在 EPUB 內的路徑,
用於書籤的路徑紀錄,
以 EPUB [Canonical Fragment Identifiers (CFI)](https://www.idpf.org/epub/linking/cfi/) 格式紀錄,
可包含前後文內容、引用次數。
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
- readmooApiKey: []
parameters:
- $ref: '#/parameters/PathId'
tags:
- Book
responses:
200:
description: 成功
schema:
$ref: '#/definitions/FragmentPathResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/fragments/ranges/{range_id}:
get:
summary: /fragments/ranges/:id
description: |
書刊內文片段在 EPUB 內的範圍,
用於劃線註記的範圍紀錄,
以 EPUB [Canonical Fragment Identifiers (CFI)](http://www.idpf.org/epub/linking/cfi/) 格式紀錄,
可包含前後文內容、引用次數。
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
- readmooApiKey: []
parameters:
- $ref: '#/parameters/RangeId'
tags:
- Book
responses:
200:
description: 成功
schema:
$ref: '#/definitions/FragmentRangeResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/installments:
get:
summary: /installments
description: 取得系列/連載清單
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
- readmooApiKey: []
parameters:
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
- $ref: '#/parameters/IfNoneMatch'
tags:
- Book
- Installment
responses:
200:
description: 成功
schema:
$ref: '#/definitions/InstallmentsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/installments/{installment_id}:
get:
summary: /installments/:id
description: 依照編號取得系列 / 連載資訊
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
- readmooApiKey: []
parameters:
- $ref: '#/parameters/InstallmentId'
tags:
- Book
- Installment
responses:
200:
description: 成功
schema:
$ref: '#/definitions/InstallmentResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/marathons:
get:
summary: /marathons
description: 取得目前舉行的馬拉松活動清單
security:
- readmooAccessCode:
- event
- readmooImplicit:
- event
- readmooApiKey: []
parameters:
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
tags:
- Marathon
responses:
200:
description: 成功
schema:
$ref: '#/definitions/MarathonsResponse'
/marathons/{marathon_id}:
get:
summary: /marathons/:id
description: 依據編號取得書櫃中符合馬拉松活動的書單
security:
- readmooAccessCode:
- event
- readmooImplicit:
- event
- readmooApiKey: []
parameters:
- $ref: '#/parameters/MarathonId'
tags:
- Marathon
responses:
200:
description: 成功
schema:
$ref: '#/definitions/MarathonResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/marathons/{marathon_id}/relationships/library_items:
get:
summary: /me/marathons/:id/relationships/library_items
description: 依據編號取得符合閱讀馬拉松活動的書櫃書籍清單資訊
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
- readmooApiKey: []
parameters:
- $ref: '#/parameters/MarathonId'
- $ref: '#/parameters/IfNoneMatch'
tags:
- Marathon
responses:
200:
description: 成功
schema:
$ref: '#/definitions/RelLibraryItemsResponse'
204:
description: 成功,且無更新
304:
description: 成功,且無更新
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me:
get:
summary: /me
description: 使用者資訊
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
tags:
- Me
responses:
200:
description: 成功
schema:
$ref: '#/definitions/MeResponse'
patch:
summary: /me
description: 修改使用者資訊
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/UpdateMe'
tags:
- Me
responses:
204:
description: 成功,且無更新額外屬性
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/activity:
get:
summary: /me/activity
description: 回傳閱讀時間及相關統計資訊
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
tags:
- Activity
- Me
responses:
200:
description: 成功
schema:
$ref: '#/definitions/ActivityResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/analytics:
get:
summary: /me/analytics
description: 指定日期區間回傳閱讀時間統計資訊
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/PageFrom'
- $ref: '#/parameters/PageTo'
- $ref: '#/parameters/FilterYear'
- $ref: '#/parameters/FilterMonth'
- $ref: '#/parameters/FilterLastDays'
tags:
- Activity
- Me
responses:
200:
description: 成功
schema:
$ref: '#/definitions/RecordsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/media_items:
get:
summary: /me/media_items
description: |
取得會員個人的有聲書清單
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
parameters:
- $ref: '#/parameters/Keyword'
- $ref: '#/parameters/FilterId'
- $ref: '#/parameters/FilterArchive'
- $ref: '#/parameters/FilterPlaybackBook'
- $ref: '#/parameters/FilterPlaybackStatus'
- $ref: '#/parameters/FilterPlaybackPrivacy'
- $ref: '#/parameters/FilterModifiedSince'
- $ref: '#/parameters/MediaItemsSort'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
- $ref: '#/parameters/Include'
- $ref: '#/parameters/PlaybacksFields'
- $ref: '#/parameters/BooksFields'
- $ref: '#/parameters/MediaItemsFields'
tags:
- Media
responses:
200:
description: 成功
schema:
$ref: '#/definitions/MediaItemsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
post:
summary: /me/media_items
description: |
新增會員個人的有聲書清單,
可領取免費有聲書、使用 領書額度/犢幣/犢犢幣/信用卡 有聲書。
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
parameters:
- $ref: '#/parameters/CreateMediaItem'
tags:
- Media
responses:
201:
description: 成功
headers:
Location:
description: 已新增有聲書 的 GET URL
type: string
format: url
schema:
$ref: '#/definitions/MediaItemResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/media_items/{media_item_id}:
get:
summary: /me/media_items/:id
description: 取得會員指定的有聲書資訊
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
parameters:
- $ref: '#/parameters/MediaItemId'
- $ref: '#/parameters/Include'
- $ref: '#/parameters/PlaybacksFields'
- $ref: '#/parameters/MediaItemsFields'
tags:
- Media
responses:
200:
description: 成功
schema:
$ref: '#/definitions/MediaItemResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
patch:
summary: /me/media_items/:id
description: 更新會員指定有聲書的部分資訊
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
parameters:
- $ref: '#/parameters/MediaItemId'
- $ref: '#/parameters/UpdateMediaItem'
tags:
- Media
responses:
204:
description: 成功,且無更新額外屬性
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
delete:
summary: /me/media_items/:id
description: 刪除會員指定有聲書
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
parameters:
- $ref: '#/parameters/MediaItemId'
tags:
- Media
responses:
204:
description: 成功,且無更新額外屬性
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/media_items/bulk:
patch:
summary: /me/media_items/bulk
description: 批次處理會員的指定有聲書
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
parameters:
- $ref: '#/parameters/UpdateBulkMediaItems'
tags:
- Media
responses:
204:
description: 成功,且無更新額外屬性
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/bookmarks:
get:
summary: /me/bookmarks
description: 取得個人的書籤清單
security:
- readmooAccessCode:
- bookmark
- readmooImplicit:
- bookmark
parameters:
- $ref: '#/parameters/FilterRelType'
- $ref: '#/parameters/FilterRelId'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
- $ref: '#/parameters/Include'
- $ref: '#/parameters/ReadingsFields'
- $ref: '#/parameters/BooksFields'
tags:
- Bookmark
responses:
200:
description: 成功
schema:
$ref: '#/definitions/BookmarksResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/bookmarks/{bookmark_id}:
get:
summary: /me/bookmarks/:id
description: 取得個人指定的單筆書籤
security:
- readmooAccessCode:
- bookmark
- readmooImplicit:
- bookmark
parameters:
- $ref: '#/parameters/BookmarkId'
- $ref: '#/parameters/Include'
- $ref: '#/parameters/ReadingsFields'
- $ref: '#/parameters/BooksFields'
tags:
- Bookmark
responses:
200:
description: 成功
schema:
$ref: '#/definitions/BookmarkResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
patch:
summary: /me/bookmarks/:id
description: 依據編號更新個人的書籤
security:
- readmooAccessCode:
- bookmark
- readmooImplicit:
- bookmark
parameters:
- $ref: '#/parameters/BookmarkId'
- $ref: '#/parameters/UpdateBookmark'
tags:
- Bookmark
responses:
204:
description: 成功,且無更新額外屬性
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
delete:
summary: /me/bookmarks/:id
description: 依據編號刪除個人的書籤
security:
- readmooAccessCode:
- bookmark
- readmooImplicit:
- bookmark
- readmooApiKey: []
parameters:
- $ref: '#/parameters/BookmarkId'
tags:
- Bookmark
responses:
204:
description: 伺服器成功處理了請求,沒有返回任何內容。
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/daily_readings:
get:
summary: /me/daily_readings
description: 指定日期區間回傳每日閱讀時間,預設回傳當月紀錄
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/PageFrom'
- $ref: '#/parameters/PageTo'
- $ref: '#/parameters/FilterYear'
- $ref: '#/parameters/FilterMonth'
tags:
- Activity
- Me
responses:
200:
description: 成功
schema:
$ref: '#/definitions/GoalRecordsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/dashboard:
get:
summary: /me/dashboard
description: 包含每日閱讀目標、過去一週閱讀時間、指定日期區間閱讀時間、閱讀相關統計資訊等
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
tags:
- Activity
- Me
responses:
200:
description: 成功
schema:
$ref: '#/definitions/DashboardResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
patch:
summary: /me/dashboard
description: 設定每日閱讀目標
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/UpdateDailyReadingGoal'
tags:
- Activity
- Me
responses:
204:
description: 成功
/me/devices:
get:
summary: /me/devices
description: 取得會員的裝置清單
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/DevicesSort'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
tags:
- Device
responses:
200:
description: 成功
schema:
$ref: '#/definitions/DevicesResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/devices/{device_id}:
patch:
summary: /me/devices/:id
description: 註冊會員的裝置
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/DeviceId'
- $ref: '#/parameters/RegisterDevice'
tags:
- Device
responses:
204:
description: 成功
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/documents:
get:
summary: /me/documents
description: 會員上傳的文件清單
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/Keyword'
- $ref: '#/parameters/FilterFileStatus'
- $ref: '#/parameters/Sort'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
tags:
- Document
responses:
200:
description: 成功
schema:
$ref: '#/definitions/DocumentsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
post:
summary: /me/documents
description:
會員上傳文件,
可上傳 .epub, .pdf, .docx, .txt, .md, .cbz 格式文件,或是網頁網址
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/CreateDocument'
tags:
- Document
responses:
201:
description: 成功
headers:
Location:
description: 已新增文件 的 GET URL
type: string
format: url
schema:
$ref: '#/definitions/DocumentResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/documents/{document_id}:
get:
summary: /me/documents/:id
description: 會員上傳的文件資訊
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/DocumentId'
tags:
- Document
responses:
200:
description: 成功
schema:
$ref: '#/definitions/DocumentResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
patch:
summary: /me/documents/:id
description: 變更會員的文件閱讀資訊
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/DocumentId'
- $ref: '#/parameters/UpdateDocumentReading'
tags:
- Document
responses:
200:
description: 成功
schema:
$ref: '#/definitions/DocumentResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
delete:
summary: /me/documents/:id
description: 依據編號刪除個人的文件
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/DocumentId'
tags:
- Document
responses:
204:
description: 伺服器成功處理了請求,沒有返回任何內容。
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/documents/bulk:
delete:
summary: /me/documents/bulk
description: 批次依據編號刪除個人的文件
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/DeleteBulkDocuments'
tags:
- Document
responses:
204:
description: 伺服器成功處理了請求,沒有返回任何內容。
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/documents/{document_id}/doc_bookmarks:
get:
summary: /me/documents/:id/doc_bookmarks
description: 依據指定的文件編號取得所有書籤
security:
- readmooAccessCode:
- bookmark
- readmooImplicit:
- bookmark
parameters:
- $ref: '#/parameters/DocumentId'
- $ref: '#/parameters/Sort'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
tags:
- Document
responses:
200:
description: 成功
schema:
$ref: '#/definitions/DocumentBookmarksResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
post:
summary: /me/documents/:id/doc_bookmarks
description: 依據指定的文件編號建立書籤
security:
- readmooAccessCode:
- bookmark
- readmooImplicit:
- bookmark
parameters:
- $ref: '#/parameters/DocumentId'
- $ref: '#/parameters/CreateDocumentBookmark'
tags:
- Document
responses:
201:
description: 成功
headers:
Location:
description: 文件書籤 API 的 GET URL
type: string
format: url
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/documents/{document_id}/doc_highlights:
get:
summary: /me/documents/:id/doc_highlights
description: 依據指定的文件編號取得所有劃線註記
security:
- readmooAccessCode:
- highlight
- readmooImplicit:
- highlight
parameters:
- $ref: '#/parameters/DocumentId'
- $ref: '#/parameters/Sort'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
tags:
- Document
responses:
200:
description: 成功
schema:
$ref: '#/definitions/DocumentHighlightsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
post:
summary: /me/documents/:id/doc_highlights
description: 依據指定的文件編號建立劃線註記
security:
- readmooAccessCode:
- highlight
- readmooImplicit:
- highlight
parameters:
- $ref: '#/parameters/DocumentId'
- $ref: '#/parameters/CreateDocumentHighlight'
tags:
- Document
responses:
201:
description: 成功
headers:
Location:
description: 文件劃線註記 API 的 GET URL
type: string
format: url
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/documents/{document_id}/doc_readinglogs:
post:
summary: /me/documents/:id/doc_readinglogs
description: 依據指定的文件編號建立閱讀紀錄
security:
- readmooAccessCode:
- reading
- readmooImplicit:
- reading
parameters:
- $ref: '#/parameters/DocumentId'
- $ref: '#/parameters/CreateDocumentReadinglog'
tags:
- Document
responses:
202:
description: 伺服器已接受請求,但尚未處理。
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/doc_bookmarks/{bookmark_id}:
get:
summary: /me/doc_bookmarks/:id
description: 依據編號取得的文件書籤
security:
- readmooAccessCode:
- bookmark
- readmooImplicit:
- bookmark
parameters:
- $ref: '#/parameters/BookmarkId'
tags:
- Document
responses:
200:
description: 成功
schema:
$ref: '#/definitions/DocumentBookmarkResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
patch:
summary: /me/doc_bookmarks/:id
description: 依據編號更新個人的文件書籤
security:
- readmooAccessCode:
- bookmark
- readmooImplicit:
- bookmark
parameters:
- $ref: '#/parameters/BookmarkId'
- $ref: '#/parameters/UpdateDocumentBookmark'
tags:
- Document
responses:
204:
description: 成功,且無更新額外屬性
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
delete:
summary: /me/doc_bookmarks/:id
description: 依據編號刪除個人的書籤
security:
- readmooAccessCode:
- bookmark
- readmooImplicit:
- bookmark
- readmooApiKey: []
parameters:
- $ref: '#/parameters/BookmarkId'
tags:
- Document
responses:
204:
description: 伺服器成功處理了請求,沒有返回任何內容。
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/doc_highlights/{highlight_id}:
get:
summary: /me/doc_highlights/:id
description: 依據編號取得個人的文件劃線註記
security:
- readmooAccessCode:
- highlight
- readmooImplicit:
- highlight
parameters:
- $ref: '#/parameters/HighlightId'
tags:
- Document
responses:
200:
description: 成功
schema:
$ref: '#/definitions/DocumentHighlightResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
patch:
summary: /me/doc_highlights/:id
description: 依據編號更新個人的部分文件劃線註記
security:
- readmooAccessCode:
- highlight
- readmooImplicit:
- highlight
parameters:
- $ref: '#/parameters/HighlightId'
- $ref: '#/parameters/UpdateDocumentHighlight'
tags:
- Document
responses:
200:
description: 成功,且更新了其他屬性
schema:
$ref: '#/definitions/DocumentHighlightResponse'
204:
description: 成功,且無更新額外屬性
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
delete:
summary: /me/doc_highlights/:id
description: 依據編號刪除個人的部分文件劃線註記
security:
- readmooAccessCode:
- highlight
- readmooImplicit:
- highlight
- readmooApiKey: []
parameters:
- $ref: '#/parameters/HighlightId'
tags:
- Document
responses:
204:
description: 伺服器成功處理了請求,沒有返回任何內容。
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/doc_readinglogs/{readinglog_id}:
get:
summary: /me/doc_bookmarks/:id
description: 依據指定的文件編號與閱讀紀錄編號取得會員個人上傳文件的閱讀紀錄
security:
- readmooAccessCode:
- reading
- readmooImplicit:
- reading
parameters:
- $ref: '#/parameters/ReadinglogId'
tags:
- Document
responses:
200:
description: 成功
schema:
$ref: '#/definitions/DocumentReadinglogResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/favor_items:
get:
summary: /me/favor_items
description: |
取得個人的暢讀包收藏清單
可配合 filter[rel.type] 取得特定清單,如:
- 指定「暢讀包編號」回傳對應的收藏清單
filter[rel.type]=unlimiteds&filter[rel.id]=7
- 指定「暢讀書籍編號」回傳對應的收藏清單
filter[rel.type]=unlimited_items&filter[rel.id]=123
security:
- readmooAccessCode:
- forever
- readmooImplicit:
- forever
- readmooApiKey: []
parameters:
- $ref: '#/parameters/FilterRelType'
- $ref: '#/parameters/FilterRelId'
- $ref: '#/parameters/FilterModifiedSince'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
- $ref: '#/parameters/Include'
- $ref: '#/parameters/BooksFields'
tags:
- Favor
responses:
200:
description: 成功
schema:
$ref: '#/definitions/FavorItemsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
post:
summary: /me/favor_items
description: |
新增個人的暢讀收藏書籍
security:
- readmooAccessCode:
- forever
- readmooImplicit:
- forever
- readmooApiKey: []
parameters:
- $ref: '#/parameters/CreateFavorItem'
tags:
- Favor
responses:
201:
description: 成功
headers:
Location:
description: 已新增有聲書 的 GET URL
type: string
format: url
schema:
$ref: '#/definitions/FavorItemResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/favor_items/bulk:
post:
summary: /me/favor_items/bulk
description: |
批次新增個人的暢讀收藏書籍
security:
- readmooAccessCode:
- forever
- readmooImplicit:
- forever
- readmooApiKey: []
parameters:
- $ref: '#/parameters/CreateBulkFavorItem'
tags:
- Favor
responses:
201:
description: 成功
headers:
Location:
description: 已新增有聲書 的 GET URL
type: string
format: url
schema:
$ref: '#/definitions/FavorItemsResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
delete:
summary: /me/favor_items/bulk
description: |
批次刪除個人的暢讀收藏書籍
security:
- readmooAccessCode:
- forever
- readmooImplicit:
- forever
- readmooApiKey: []
parameters:
- $ref: '#/parameters/DeleteBulkFavorItem'
tags:
- Favor
responses:
204:
description: 成功,且無更新額外屬性
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/favor_items/{favor_item_id}:
get:
summary: /me/favor_items/:id
description: 取得指定的收藏書刊資訊
security:
- readmooAccessCode:
- forever
- readmooImplicit:
- forever
parameters:
- $ref: '#/parameters/FavorItemId'
tags:
- Favor
responses:
200:
description: 成功
schema:
$ref: '#/definitions/FavorItemResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
delete:
summary: /me/favor_items/:id
description: 刪除指定的收藏書刊資訊
security:
- readmooAccessCode:
- forever
- readmooImplicit:
- forever
parameters:
- $ref: '#/parameters/FavorItemId'
tags:
- Favor
responses:
204:
description: 成功,且無更新額外屬性
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/favors/relationships/unlimited_items:
post:
summary: /me/favors/relationships/unlimited_items
description: “新增” 收藏書單的 “指定” 暢讀書籍清單資訊
security:
- readmooAccessCode:
- forever
- readmooImplicit:
- forever
- readmooApiKey: []
parameters:
- $ref: '#/parameters/UnlimitedItemsToManyRelationships'
tags:
- Favor
responses:
204:
description: 成功,且無更新額外屬性
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
delete:
summary: /me/favors/relationships/unlimited_items
description: “刪除” 收藏書單的 “指定” 暢讀書籍清單資訊
security:
- readmooAccessCode:
- forever
- readmooImplicit:
- forever
- readmooApiKey: []
parameters:
- $ref: '#/parameters/UnlimitedItemsToManyRelationships'
tags:
- Favor
responses:
204:
description: 伺服器成功處理了請求,沒有返回任何內容。
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/favors/relationships/unlimited_lists:
post:
summary: /me/favors/relationships/unlimited_lists
description: “新增” 收藏書單的 “指定” 暢讀包分類清單
security:
- readmooAccessCode:
- forever
- readmooImplicit:
- forever
- readmooApiKey: []
parameters:
- $ref: '#/parameters/UnlimitedListsToManyRelationships'
tags:
- Favor
responses:
204:
description: 成功,且無更新額外屬性
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
delete:
summary: /me/favors/relationships/unlimited_lists
description: “刪除” 收藏書單的 “指定” 暢讀包分類清單
security:
- readmooAccessCode:
- forever
- readmooImplicit:
- forever
- readmooApiKey: []
parameters:
- $ref: '#/parameters/UnlimitedListsToManyRelationships'
tags:
- Favor
responses:
204:
description: 伺服器成功處理了請求,沒有返回任何內容。
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/auto_favors/relationships/unlimited_lists:
get:
summary: /me/auto_favors/relationships/unlimited_lists
description: |
“取得” 訂閱自動收藏的暢讀包分類清單
可配合 filter[rel.type] 取得特定清單,如:
- 指定「暢讀包編號」回傳對應的收藏清單
filter[rel.type]=unlimiteds&filter[rel.id]=7
security:
- readmooAccessCode:
- forever
- readmooImplicit:
- forever
- readmooApiKey: []
parameters:
- $ref: '#/parameters/FilterRelType'
- $ref: '#/parameters/FilterRelId'
tags:
- Favor
responses:
200:
description: 成功
schema:
$ref: '#/definitions/RelUnlimitedListsResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
post:
summary: /me/auto_favors/relationships/unlimited_lists
description: “新增” 訂閱自動收藏的 “指定” 暢讀包分類清單
security:
- readmooAccessCode:
- forever
- readmooImplicit:
- forever
- readmooApiKey: []
parameters:
- $ref: '#/parameters/UnlimitedListsToManyRelationships'
tags:
- Favor
responses:
204:
description: 成功,且無更新額外屬性
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
delete:
summary: /me/auto_favors/relationships/unlimited_lists
description: “刪除” 訂閱自動收藏的 “指定” 暢讀包分類清單
security:
- readmooAccessCode:
- forever
- readmooImplicit:
- forever
- readmooApiKey: []
parameters:
- $ref: '#/parameters/UnlimitedListsToManyRelationships'
tags:
- Favor
responses:
204:
description: 伺服器成功處理了請求,沒有返回任何內容。
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/forevers:
get:
summary: /me/forevers
description: 取得暢讀清單,包含使用者訂閱該方案的資訊
security:
- readmooAccessCode:
- forever
- readmooImplicit:
- forever
parameters:
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
tags:
- Forever
responses:
200:
description: 成功
schema:
$ref: '#/definitions/ForeversResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/forevers/{forever_id}:
get:
summary: /me/forevers/:id
description: 依照編號取得暢讀方案,包含使用者訂閱該方案的資訊
security:
- readmooAccessCode:
- forever
- readmooImplicit:
- forever
parameters:
- $ref: '#/parameters/ForeverId'
tags:
- Forever
responses:
200:
description: 成功
schema:
$ref: '#/definitions/ForeverResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/highlights:
get:
summary: /me/highlights
description: 取得個人的劃線註記清單
security:
- readmooAccessCode:
- highlight
- readmooImplicit:
- highlight
parameters:
- $ref: '#/parameters/FilterRelType'
- $ref: '#/parameters/FilterRelId'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
- $ref: '#/parameters/Include'
- $ref: '#/parameters/ReadingsFields'
- $ref: '#/parameters/BooksFields'
tags:
- Highlight
responses:
200:
description: 成功
schema:
$ref: '#/definitions/HighlightsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/highlights/{highlight_id}:
get:
summary: /me/highlights/:id
description: 取得個人指定的劃線註記
security:
- readmooAccessCode:
- highlight
- readmooImplicit:
- highlight
parameters:
- $ref: '#/parameters/HighlightId'
- $ref: '#/parameters/Include'
- $ref: '#/parameters/ReadingsFields'
- $ref: '#/parameters/BooksFields'
tags:
- Highlight
responses:
200:
description: 成功
schema:
$ref: '#/definitions/HighlightResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
patch:
summary: /me/highlights/:id
description: 依據編號更新個人的部分劃線註記
security:
- readmooAccessCode:
- highlight
- readmooImplicit:
- highlight
parameters:
- $ref: '#/parameters/HighlightId'
- $ref: '#/parameters/UpdateHighlight'
tags:
- Highlight
responses:
200:
description: 成功,且更新了其他屬性
schema:
$ref: '#/definitions/HighlightResponse'
204:
description: 成功,且無更新額外屬性
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
delete:
summary: /me/highlights/:id
description: 依據編號刪除個人的部分劃線註記
security:
- readmooAccessCode:
- highlight
- readmooImplicit:
- highlight
- readmooApiKey: []
parameters:
- $ref: '#/parameters/HighlightId'
tags:
- Highlight
responses:
204:
description: 伺服器成功處理了請求,沒有返回任何內容。
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/installments:
get:
summary: /me/installments
description: 取得會員個人書櫃中的系列/連載清單
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
parameters:
- $ref: '#/parameters/Keyword'
- $ref: '#/parameters/FilterModifiedSince'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
tags:
- Installment
responses:
200:
description: 成功
schema:
$ref: '#/definitions/InstallmentsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/installments/{installment_id}:
get:
summary: /me/installments/:id
description: 依據系列編號取得會員個人書櫃中的系列/連載清單
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
parameters:
- $ref: '#/parameters/InstallmentId'
tags:
- Installment
responses:
200:
description: 成功
schema:
$ref: '#/definitions/InstallmentResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/library_items:
get:
summary: /me/library_items
description: |
取得會員個人的書櫃內書刊清單,
可配合 filter[rel.type] 取得特定清單,如:
- 回傳所有進行中馬拉松活動的書刊清單
```
filter[rel.type]=marathons
```
- 回傳 american2017 馬拉松活動的書刊清單
```
filter[rel.type]=marathons&filter[rel.id]=american2017
```
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
parameters:
- $ref: '#/parameters/Keyword'
- $ref: '#/parameters/FilterRelType'
- $ref: '#/parameters/FilterRelId'
- $ref: '#/parameters/FilterId'
- $ref: '#/parameters/FilterArchive'
- $ref: '#/parameters/FilterReadingBook'
- $ref: '#/parameters/FilterReadingStatus'
- $ref: '#/parameters/FilterReadingPrivacy'
- $ref: '#/parameters/FilterModifiedSince'
- $ref: '#/parameters/LibraryItemsSort'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
- $ref: '#/parameters/Include'
- $ref: '#/parameters/ReadingsFields'
- $ref: '#/parameters/BooksFields'
- $ref: '#/parameters/LibraryItemsFields'
tags:
- Library
responses:
200:
description: 成功
schema:
$ref: '#/definitions/LibraryItemsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
post:
summary: /me/library_items
description: |
新增會員個人的書櫃內書刊清單,
可領取免費書籍、使用 領書額度/犢幣/犢犢幣/信用卡 購買書籍。
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
parameters:
- $ref: '#/parameters/CreateLibraryItem'
tags:
- Library
responses:
201:
description: 成功
headers:
Location:
description: 已新增書櫃書籍 的 GET URL
type: string
format: url
schema:
$ref: '#/definitions/LibraryItemResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/library_items/{library_item_id}:
get:
summary: /me/library_items/:id
description: 取得會員個人書櫃指定的書刊資訊
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
parameters:
- $ref: '#/parameters/LibraryItemId'
- $ref: '#/parameters/Include'
- $ref: '#/parameters/ReadingsFields'
- $ref: '#/parameters/BooksFields'
tags:
- Library
responses:
200:
description: 成功
schema:
$ref: '#/definitions/LibraryItemResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
patch:
summary: /me/library_item/:id
description: 更新會員個人書櫃指定書籍的部分資訊
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
parameters:
- $ref: '#/parameters/LibraryItemId'
- $ref: '#/parameters/UpdateLibraryItem'
tags:
- Library
responses:
204:
description: 成功,且無更新額外屬性
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
delete:
summary: /me/library_item/:id
description: 刪除會員個人書櫃指定書籍
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
parameters:
- $ref: '#/parameters/LibraryItemId'
tags:
- Library
responses:
204:
description: 成功,且無更新額外屬性
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/library_items/bulk:
patch:
summary: /me/library_item/bulk
description: 批次處理會員個人書櫃的指定書籍
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
parameters:
- $ref: '#/parameters/UpdateBulkLibraryItems'
tags:
- Library
responses:
204:
description: 成功,且無更新額外屬性
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/library_items/{library_item_id}/relationships/book_slips:
get:
summary: /me/library_items/:id/relationships/book_slips
description: 取得會員個人書櫃指定書刊的借書卡
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
parameters:
- $ref: '#/parameters/LibraryItemId'
tags:
- Library
responses:
200:
description: 成功
schema:
$ref: '#/definitions/ResourceIdentifier'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/notifications:
get:
summary: /me/notifications
description: |
取得個人通知訊息清單
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
tags:
- Notification
responses:
200:
description: 成功
schema:
$ref: '#/definitions/NotificationsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/notifications/bulk:
patch:
summary: /me/notifications/bulk
description: |
批次更新個人通知訊息
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/UpdateBulkNotifications'
tags:
- Notification
responses:
204:
description: 成功,且無更新額外屬性
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/pins:
get:
summary: /me/pins
description: 取得個人有聲書書籤清單
security:
- readmooAccessCode:
- bookmark
- readmooImplicit:
- bookmark
parameters:
- $ref: '#/parameters/FilterRelType'
- $ref: '#/parameters/FilterRelId'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
- $ref: '#/parameters/Include'
- $ref: '#/parameters/PlaybacksFields'
- $ref: '#/parameters/BooksFields'
tags:
- Pin
responses:
200:
description: 成功
schema:
$ref: '#/definitions/PinsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/pins/{pin_id}:
get:
summary: /me/pins/:id
description: 取得指定編號的個人有聲書書籤
security:
- readmooAccessCode:
- bookmark
- readmooImplicit:
- bookmark
parameters:
- $ref: '#/parameters/PinId'
- $ref: '#/parameters/Include'
- $ref: '#/parameters/PlaybacksFields'
- $ref: '#/parameters/BooksFields'
tags:
- Pin
responses:
200:
description: 成功
schema:
$ref: '#/definitions/PinResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
patch:
summary: /me/pins/:id
description: 更新指定編號的個人有聲書書籤
security:
- readmooAccessCode:
- bookmark
- readmooImplicit:
- bookmark
parameters:
- $ref: '#/parameters/PinId'
- $ref: '#/parameters/UpdatePin'
tags:
- Pin
responses:
204:
description: 成功,且無更新額外屬性
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
delete:
summary: /me/pins/:id
description: 刪除指定編號的個人有聲書書籤
security:
- readmooAccessCode:
- bookmark
- readmooImplicit:
- bookmark
- readmooApiKey: []
parameters:
- $ref: '#/parameters/PinId'
tags:
- Pin
responses:
204:
description: 伺服器成功處理了請求,沒有返回任何內容。
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/playbacks:
get:
summary: /me/playbacks
description: |
取得個人所有的有聲書播放資訊清單
可配合 filter[rel.type] 取得特定清單,如:
- 回傳 290000001000101 對應的 playback
```
filter[rel.type]=books&filter[rel.id]=290000001000101
```
security:
- readmooAccessCode:
- reading
- readmooImplicit:
- reading
parameters:
- $ref: '#/parameters/FilterRelType'
- $ref: '#/parameters/FilterRelId'
- $ref: '#/parameters/FilterHas'
- $ref: '#/parameters/FilterModifiedSince'
- $ref: '#/parameters/FilterLastDays'
- $ref: '#/parameters/FilterMonth'
- $ref: '#/parameters/FilterYear'
- $ref: '#/parameters/FilterStatus'
- $ref: '#/parameters/Sort'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
- $ref: '#/parameters/Include'
- $ref: '#/parameters/PlaybacksFields'
- $ref: '#/parameters/MediaItemsFields'
tags:
- Playback
responses:
200:
description: 成功
schema:
$ref: '#/definitions/PlaybacksResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
post:
summary: /me/playbacks
description: 新增個人的播放資訊清單
security:
- readmooAccessCode:
- reading
- readmooImplicit:
- reading
parameters:
- $ref: '#/parameters/CreatePlayback'
tags:
- Playback
responses:
201:
description: 成功
headers:
Location:
description: 播放資訊 API 的 GET URL
type: string
format: url
schema:
$ref: '#/definitions/PlaybackResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/playbacks/{playback_id}:
get:
summary: /me/playbacks/:id
description: 依據編號取得個人的播放資訊
security:
- readmooAccessCode:
- reading
- readmooImplicit:
- reading
parameters:
- $ref: '#/parameters/PlaybackId'
- $ref: '#/parameters/Include'
tags:
- Playback
responses:
200:
description: 成功
schema:
$ref: '#/definitions/PlaybackResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
patch:
summary: /me/playbacks/:id
description: 依據編號更新個人的部分閱讀資訊
security:
- readmooAccessCode:
- reading
- readmooImplicit:
- reading
parameters:
- $ref: '#/parameters/PlaybackId'
- $ref: '#/parameters/UpdatePlayback'
tags:
- Playback
responses:
200:
description: 成功,且更新了其他屬性
schema:
$ref: '#/definitions/PlaybackResponse'
204:
description: 成功,且無更新額外屬性
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/playbacks/bulk:
patch:
summary: /me/playbacks/bulk
description: 依據編號批次更新個人的播放資訊
security:
- readmooAccessCode:
- reading
- readmooImplicit:
- reading
parameters:
- $ref: '#/parameters/UpdateBulkPlaybacks'
tags:
- Playback
responses:
204:
description: 成功,且無更新額外屬性
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/playbacks/{playback_id}/pins:
get:
summary: /me/playbacks/:id/pins
description: 取得指定播放資訊編號的個人有聲書書籤清單
security:
- readmooAccessCode:
- bookmark
- readmooImplicit:
- bookmark
parameters:
- $ref: '#/parameters/PlaybackId'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
- $ref: '#/parameters/Include'
- $ref: '#/parameters/PlaybacksFields'
- $ref: '#/parameters/BooksFields'
tags:
- Pin
responses:
200:
description: 成功
schema:
$ref: '#/definitions/PinsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
post:
summary: /me/playbacks/:id/pins
description: 新增指定播放資訊編號的個人有聲書書籤
security:
- readmooAccessCode:
- bookmark
- readmooImplicit:
- bookmark
parameters:
- $ref: '#/parameters/PlaybackId'
- $ref: '#/parameters/CreatePin'
tags:
- Pin
responses:
201:
description: 成功
headers:
Location:
description: 有聲書書籤 API 的 GET URL
type: string
format: url
schema:
$ref: '#/definitions/PinResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/playbacks/{playback_id}/playbacklogs:
post:
summary: /me/playbacks/:id/playbacklogs
description: 依據指定的播放資訊建立播放紀錄
security:
- readmooAccessCode:
- reading
- readmooImplicit:
- reading
parameters:
- $ref: '#/parameters/PlaybackId'
- $ref: '#/parameters/CreatePlaybacklog'
tags:
- Playback
responses:
202:
description: 伺服器已接受請求,但尚未處理。
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/playbacklogs/{playbacklog_id}:
get:
summary: /me/playbacklogs/:id
description: 依據指定的編號取得播放紀錄
security:
- readmooAccessCode:
- reading
- readmooImplicit:
- reading
parameters:
- $ref: '#/parameters/PlaybacklogId'
tags:
- Playback
responses:
200:
description: 成功
schema:
$ref: '#/definitions/PlaybacklogResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/points/{point_id}:
get:
summary: /me/points/:id
description: |
取得指定犢幣的餘額:
- moopoint: 犢幣
- ipoint: 愛犢幣
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/PointId'
tags:
- Me
responses:
200:
description: 成功
schema:
$ref: '#/definitions/PointResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
patch:
summary: /me/points/:id
description: |
儲值愛犢幣
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/IPointId'
- $ref: '#/parameters/UpdatePoint'
tags:
- Me
responses:
200:
description: 成功
schema:
$ref: '#/definitions/UpdatePointResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/readings:
get:
summary: /me/readings
description: |
取得個人所有的閱讀資訊清單
可配合 filter[rel.type] 取得特定清單,如:
- 回傳 210000001000101 對應的 reading
```
filter[rel.type]=books&filter[rel.id]=210000001000101
```
security:
- readmooAccessCode:
- reading
- readmooImplicit:
- reading
parameters:
- $ref: '#/parameters/FilterRelType'
- $ref: '#/parameters/FilterRelId'
- $ref: '#/parameters/FilterHas'
- $ref: '#/parameters/FilterForever'
- $ref: '#/parameters/FilterModifiedSince'
- $ref: '#/parameters/FilterLastDays'
- $ref: '#/parameters/FilterMonth'
- $ref: '#/parameters/FilterYear'
- $ref: '#/parameters/FilterStatus'
- $ref: '#/parameters/Sort'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
- $ref: '#/parameters/Include'
- $ref: '#/parameters/ReadingsFields'
- $ref: '#/parameters/BooksFields'
# - $ref: '#/parameters/Keyword'
tags:
- Reading
responses:
200:
description: 成功
schema:
$ref: '#/definitions/ReadingsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
post:
summary: /me/readings
description: 新增個人的閱讀資訊
security:
- readmooAccessCode:
- reading
- readmooImplicit:
- reading
parameters:
- $ref: '#/parameters/CreateReading'
tags:
- Reading
responses:
201:
description: 成功
headers:
Location:
description: 閱讀資訊 API 的 GET URL
type: string
format: url
schema:
$ref: '#/definitions/ReadingResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/readings/{reading_id}:
get:
summary: /me/readings/:id
description: 依據編號取得個人的閱讀資訊
security:
- readmooAccessCode:
- reading
- readmooImplicit:
- reading
parameters:
- $ref: '#/parameters/ReadingId'
- $ref: '#/parameters/Include'
tags:
- Reading
responses:
200:
description: 成功
schema:
$ref: '#/definitions/ReadingResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
patch:
summary: /me/readings/:id
description: 依據編號更新個人的部分閱讀資訊
security:
- readmooAccessCode:
- reading
- readmooImplicit:
- reading
parameters:
- $ref: '#/parameters/ReadingId'
- $ref: '#/parameters/UpdateReading'
tags:
- Reading
responses:
200:
description: 成功,且更新了其他屬性
schema:
$ref: '#/definitions/ReadingResponse'
204:
description: 成功,且無更新額外屬性
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/readings/bulk:
patch:
summary: /me/readings/bulk
description: 依據編號批次更新個人的閱讀資訊
security:
- readmooAccessCode:
- reading
- readmooImplicit:
- reading
parameters:
- $ref: '#/parameters/UpdateBulkReadings'
tags:
- Reading
responses:
204:
description: 成功,且無更新額外屬性
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/readings/{reading_id}/bookmarks:
get:
summary: /me/readings/:id/bookmarks
description: 取得個人指定閱讀資訊的書籤清單
security:
- readmooAccessCode:
- bookmark
- readmooImplicit:
- bookmark
parameters:
- $ref: '#/parameters/ReadingId'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
- $ref: '#/parameters/Include'
- $ref: '#/parameters/ReadingsFields'
- $ref: '#/parameters/BooksFields'
tags:
- Bookmark
responses:
200:
description: 成功
schema:
$ref: '#/definitions/BookmarksResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
post:
summary: /me/readings/:id/bookmarks
description: 新增一筆書籤
security:
- readmooAccessCode:
- bookmark
- readmooImplicit:
- bookmark
parameters:
- $ref: '#/parameters/ReadingId'
- $ref: '#/parameters/CreateBookmark'
tags:
- Bookmark
responses:
201:
description: 成功
headers:
Location:
description: 書籤 API 的 GET URL
type: string
format: url
schema:
$ref: '#/definitions/BookmarkResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/readings/{reading_id}/highlights:
get:
summary: /me/readings/:id/highlights
description: 取得個人指定閱讀資訊的劃線註記清單
security:
- readmooAccessCode:
- highlight
- readmooImplicit:
- highlight
parameters:
- $ref: '#/parameters/ReadingId'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
- $ref: '#/parameters/Include'
- $ref: '#/parameters/ReadingsFields'
- $ref: '#/parameters/BooksFields'
tags:
- Highlight
responses:
200:
description: 成功
schema:
$ref: '#/definitions/HighlightsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
post:
summary: /me/readings/:id/highlights
description: 新增一筆劃線註記
security:
- readmooAccessCode:
- highlight
- readmooImplicit:
- highlight
parameters:
- $ref: '#/parameters/ReadingId'
- $ref: '#/parameters/CreateHighlight'
tags:
- Highlight
responses:
201:
description: 成功
headers:
Location:
description: 劃線註記 API 的 GET URL
type: string
format: url
schema:
$ref: '#/definitions/HighlightResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/readings/{reading_id}/relationships/export_highlight:
get:
summary: /me/readings/:id/relationships/export_highlight
description: 匯出個人指定閱讀資訊的劃線註記
security:
- readmooAccessCode:
- highlight
- readmooImplicit:
- highlight
parameters:
- $ref: '#/parameters/ReadingId'
- name: export_type
in: query
description: 劃線註記匯出格式
type: string
required: true
- name: dry_run
in: query
description: 是否空執行(空執行時不會真正匯出)
type: boolean
required: false
tags:
- Highlight
responses:
200:
description: 成功
schema:
$ref: '#/definitions/ExportHighlightResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/readings/{reading_id}/readinglogs:
post:
summary: /me/readings/:id/readinglogs
description: 依據指定的閱讀資訊建立閱讀紀錄
security:
- readmooAccessCode:
- reading
- readmooImplicit:
- reading
parameters:
- $ref: '#/parameters/ReadingId'
- $ref: '#/parameters/CreateReadinglog'
tags:
- Reading
responses:
202:
description: 伺服器已接受請求,但尚未處理。
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/readings/{reading_id}/review:
post:
summary: /me/readings/:id/review
description: 依據指定的閱讀資訊建立完讀書評
security:
- readmooAccessCode:
- review
- readmooImplicit:
- review
parameters:
- $ref: '#/parameters/ReadingId'
- $ref: '#/parameters/CreateReview'
tags:
- Review
responses:
201:
description: 成功
headers:
Location:
description: 完讀書評 API 的 GET URL
type: string
format: url
schema:
$ref: '#/definitions/ReviewResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/readinglogs/{readinglog_id}:
get:
summary: /me/readinglogs/:id
description: 依據指定的編號取得閱讀紀錄
security:
- readmooAccessCode:
- reading
- readmooImplicit:
- reading
parameters:
- $ref: '#/parameters/ReadinglogId'
tags:
- Reading
responses:
200:
description: 成功
schema:
$ref: '#/definitions/ReadinglogResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/relationships/badges:
get:
summary: /me/relationships/badges
description: 個人擁有徽章的關聯清單
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/IfNoneMatch'
tags:
- Me
responses:
200:
description: 成功
schema:
$ref: '#/definitions/RelBadgesResponse'
204:
description: 成功,且無更新
304:
description: 成功,且無更新
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/relationships/books:
get:
summary: /me/relationships/books
description: |
個人擁有書籍的關聯清單
可配合 filter[rel.type] 取得特定清單,如:
- 回傳指定的訂閱編號下對應的書籍資訊清單
filter[rel.type]=subscriptions&filter[rel.id]=7
- 回傳指定的系列 / 連載編號下對應的書籍資訊清單
filter[rel.type]=installments&filter[rel.id]=5
- 回傳指定的套書編號下對應的書籍資訊清單
filter[rel.type]=bundles&filter[rel.id]=210001057000101
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/FilterRelType'
- $ref: '#/parameters/FilterRelId'
- $ref: '#/parameters/FilterId'
tags:
- Me
responses:
200:
description: 成功
schema:
$ref: '#/definitions/RelBooksResponse'
204:
description: 成功,且無更新
304:
description: 成功,且無更新
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/relationships/documents:
get:
summary: /me/relationships/documents
description: 個人的文件關聯清單
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/IfNoneMatch'
tags:
- Document
responses:
200:
description: 成功
schema:
$ref: '#/definitions/RelDocumentsResponse'
204:
description: 成功,且無更新
304:
description: 成功,且無更新
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/relationships/favor_items:
get:
summary: /me/relationships/favor_items
description: |
個人與收藏暢讀書籍關聯清單
- 指定暢讀包編號
filter[rel.type]=unlimiteds&filter[rel.id]=7
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
parameters:
- $ref: '#/parameters/FilterRelType'
- $ref: '#/parameters/FilterRelId'
- $ref: '#/parameters/IfNoneMatch'
tags:
- Favor
responses:
200:
description: 成功
schema:
$ref: '#/definitions/RelFavorItemsResponse'
204:
description: 成功,且無更新
304:
description: 成功,且無更新
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/relationships/library_items:
get:
summary: /me/relationships/library_items
description: 個人的書櫃書籍關聯清單
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
parameters:
- $ref: '#/parameters/IfNoneMatch'
tags:
- Library
responses:
200:
description: 成功
schema:
$ref: '#/definitions/RelLibraryItemsResponse'
204:
description: 成功,且無更新
304:
description: 成功,且無更新
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/relationships/media_items:
get:
summary: /me/relationships/media_items
description: 個人的有聲書書櫃書籍關聯清單
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
parameters:
- $ref: '#/parameters/IfNoneMatch'
tags:
- Media
responses:
200:
description: 成功
schema:
$ref: '#/definitions/RelMediaItemsResponse'
204:
description: 成功,且無更新
304:
description: 成功,且無更新
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/relationships/unlimiteds:
get:
summary: /me/relationships/unlimiteds
description: 個人訂閱的暢讀包關聯清單
security:
- readmooAccessCode:
- forever
- readmooImplicit:
- forever
parameters:
- $ref: '#/parameters/IfNoneMatch'
tags:
- Unlimited
responses:
200:
description: 成功
schema:
$ref: '#/definitions/RelUnlimitedsResponse'
204:
description: 成功,且無更新
304:
description: 成功,且無更新
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/relationships/unlimited_items:
get:
summary: /me/relationships/unlimited_items
description: |
個人與暢讀書籍關聯清單
- 指定暢讀包編號
filter[rel.type]=unlimiteds&filter[rel.id]=7
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
parameters:
- $ref: '#/parameters/FilterRelType'
- $ref: '#/parameters/FilterRelId'
- $ref: '#/parameters/IfNoneMatch'
tags:
- Unlimited
responses:
200:
description: 成功
schema:
$ref: '#/definitions/RelUnlimitedItemsResponse'
204:
description: 成功,且無更新
304:
description: 成功,且無更新
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/reviews:
get:
summary: /me/reviews
description: |
取得個人所有的書評
security:
- readmooAccessCode:
- review
- readmooImplicit:
- review
parameters:
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
tags:
- Review
responses:
200:
description: 成功
schema:
$ref: '#/definitions/ReviewsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/reviews/{review_id}:
get:
summary: /me/reviews/:id
description: 依據編號取得完讀書評
security:
- readmooAccessCode:
- review
- readmooImplicit:
- review
- readmooApiKey: []
tags:
- Review
responses:
200:
description: 成功
schema:
$ref: '#/definitions/ReviewResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
patch:
summary: /me/reviews/:id
description: 依據編號更新部分書評
security:
- readmooAccessCode:
- review
- readmooImplicit:
- review
- readmooApiKey: []
parameters:
- $ref: '#/parameters/UpdateReview'
tags:
- Review
responses:
200:
description: 成功,且更新了其他屬性
schema:
$ref: '#/definitions/ReviewResponse'
204:
description: 成功,且無更新額外屬性
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
delete:
summary: /me/reviews/:id
description: 依據編號刪除書評
security:
- readmooAccessCode:
- review
- readmooImplicit:
- review
- readmooApiKey: []
tags:
- Review
responses:
204:
description: 伺服器成功處理了請求,沒有返回任何內容。
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
parameters:
- $ref: '#/parameters/ReviewId'
/me/subscriptions:
get:
summary: /me/subscriptions
description: 取得會員個人的雜誌清單,包含曾訂閱、已訂閱、零購雜誌
security:
- readmooAccessCode:
- subscription
- readmooImplicit:
- subscription
parameters:
- $ref: '#/parameters/Keyword'
- $ref: '#/parameters/FilterModifiedSince'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
tags:
- Subscription
responses:
200:
description: 成功
schema:
$ref: '#/definitions/SubscriptionsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/subscriptions/{subscription_id}:
get:
summary: /me/subscriptions/:id
description: 依據訂閱編號取得會員個人的雜誌資訊,包含曾訂閱、已訂閱、零購雜誌
security:
- readmooAccessCode:
- subscription
- readmooImplicit:
- subscription
parameters:
- $ref: '#/parameters/SubscriptionId'
tags:
- Subscription
responses:
200:
description: 成功
schema:
$ref: '#/definitions/SubscriptionResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/tags:
get:
summary: /me/tags
description: |
取得個人所有的自訂標籤,
若需要同時回傳各標籤對應的書籍的書封,
並指定最多不超過 3 筆,可以加上
?include=library_items&fields[books]=cover&filter[covers][count]=3
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
parameters:
- $ref: '#/parameters/Include'
- $ref: '#/parameters/FilterCoversCount'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
tags:
- Tag
responses:
200:
description: 成功
schema:
$ref: '#/definitions/TagsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
post:
summary: /me/tags
description: 新增個人自訂標籤
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
parameters:
- $ref: '#/parameters/CreateTag'
tags:
- Tag
responses:
201:
description: 成功
headers:
Location:
description: 自訂標籤 API 的 GET URL
type: string
format: url
schema:
$ref: '#/definitions/TagResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
409:
description: 新增資源與既有資源衝突
/me/tags/{tag_id}:
get:
summary: /me/tags/:id
description: 依據編號取得自訂標籤
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
- readmooApiKey: []
parameters:
- $ref: '#/parameters/TagId'
- $ref: '#/parameters/Include'
- $ref: '#/parameters/FilterCoversCount'
tags:
- Tag
responses:
200:
description: 成功
schema:
$ref: '#/definitions/TagResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
patch:
summary: /me/tags/:id
description: 依據編號更新自訂標籤
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
- readmooApiKey: []
parameters:
- $ref: '#/parameters/TagId'
- $ref: '#/parameters/UpdateTag'
tags:
- Tag
responses:
200:
description: 成功,且更新了其他屬性
schema:
$ref: '#/definitions/TagResponse'
204:
description: 成功,且無更新額外屬性
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
delete:
summary: /me/tags/:id
description: 依據編號自訂標籤
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
- readmooApiKey: []
parameters:
- $ref: '#/parameters/TagId'
tags:
- Tag
responses:
204:
description: 伺服器成功處理了請求,沒有返回任何內容。
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/tags/bulk:
post:
summary: /me/tags/bulk
description: |
批次新增個人自訂標籤,範例如下:
```
{
"data": [
{
"type": "tags",
"attributes": {
"name": "武俠小說1"
}
},
{
"type": "tags",
"attributes": {
"name": "武俠小說2"
}
},
{
"type": "tags",
"attributes": {
"name": "武俠小說3"
}
}
]
}
```
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
parameters:
- $ref: '#/parameters/CreateBulkTags'
tags:
- Tag
responses:
201:
description: 成功
schema:
$ref: '#/definitions/TagsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
delete:
summary: /me/tags/bulk
description: |
批次刪除個人自訂標籤,範例如下:
```
{
"data": [
{
"type": "tags",
"id": "1"
},
{
"type": "tags",
"id": "2"
},
{
"type": "tags",
"id": "3"
}
]
}
```
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
parameters:
- $ref: '#/parameters/DeleteBulkTags'
tags:
- Tag
responses:
204:
description: 伺服器成功處理了請求,沒有返回任何內容。
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/tags/{tag_id}/relationships/library_items:
get:
summary: /me/tags/:id/relationships/library_items
description: 依據編號取得自訂標籤相關的書櫃書籍清單資訊
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
- readmooApiKey: []
parameters:
- $ref: '#/parameters/TagId'
tags:
- Tag
responses:
200:
description: 成功
schema:
$ref: '#/definitions/RelLibraryItemsResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
post:
summary: /me/tags/:id/relationships/library_items
description: |
“新加” 指定編號之標籤到書櫃書籍中
```
{
"data": [
{ "type": "library_items", "id": "1" },
{ "type": "library_items", "id": "2" }
]
}
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
- readmooApiKey: []
parameters:
- $ref: '#/parameters/TagId'
- $ref: '#/parameters/UpdateTagsRelationshipLibraryItems'
tags:
- Tag
responses:
201:
description: 成功
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
patch:
summary: /me/tags/:id/relationships/library_items
description: |
“更新” 指定編號之標籤的 “所有” 書櫃書籍清單,範例如下:
```
{
"data": [
{ "type": "library_items", "id": "1" },
{ "type": "library_items", "id": "2" }
]
}
```
“清空” 指定編號之標籤的 “所有” 書櫃書籍清單,範例如下:
```
{
"data": []
}
```
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
- readmooApiKey: []
parameters:
- $ref: '#/parameters/TagId'
- $ref: '#/parameters/UpdateTagsRelationshipLibraryItems'
tags:
- Tag
responses:
204:
description: 成功,且無更新額外屬性
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
delete:
summary: /me/tags/:id/relationships/library_items
description: |
“刪除” 指定編號之標籤的 “指定” 書櫃書籍清單,範例如下:
```
{
"data": [
{ "type": "library_items", "id": "1" },
{ "type": "library_items", "id": "2" }
]
}
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
- readmooApiKey: []
parameters:
- $ref: '#/parameters/TagId'
- $ref: '#/parameters/UpdateTagsRelationshipLibraryItems'
tags:
- Tag
responses:
204:
description: 伺服器成功處理了請求,沒有返回任何內容。
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/tags/bulk/relationships/library_items:
post:
summary: /me/tags/bulk/relationships/library_items
description: |
“新增”指定編號之標籤清單到 “指定” 書櫃書籍清單,範例如下:
```
{
"meta": {
"tag_ids": [
"111",
"222",
"333"
]
},
"data": [
{
"type": "library_items",
"id": "1"
},
{
"type": "library_items",
"id": "2"
},
{
"type": "library_items",
"id": "3"
}
]
}
```
security:
- readmooAccessCode:
- library
- readmooImplicit:
- library
- readmooApiKey: []
parameters:
- $ref: '#/parameters/CreateBulkTagsRelationshipLibraryItems'
tags:
- Tag
responses:
201:
description: 成功
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/wishlist/relationships/books:
get:
summary: /me/wishlist/relationships/books
description: 取得願望書單的書籍清單資訊
security:
- readmooAccessCode:
- wishlist
- readmooImplicit:
- wishlist
- readmooApiKey: []
tags:
- Wishlist
responses:
200:
description: 成功
schema:
$ref: '#/definitions/ToMany'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
post:
summary: /me/wishlist/relationships/books
description: “新增” 願望書單的書籍清單資訊
security:
- readmooAccessCode:
- wishlist
- readmooImplicit:
- wishlist
- readmooApiKey: []
parameters:
- $ref: '#/parameters/ToManyRelationships'
tags:
- Wishlist
responses:
204:
description: 成功,且無更新額外屬性
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
delete:
summary: /me/wishlist/relationships/books
description: “刪除” 願望書單的的 “指定” 書籍清單資訊
security:
- readmooAccessCode:
- wishlist
- readmooImplicit:
- wishlist
- readmooApiKey: []
parameters:
- $ref: '#/parameters/ToManyRelationships'
tags:
- Wishlist
responses:
204:
description: 伺服器成功處理了請求,沒有返回任何內容。
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/navigations:
get:
summary: /navigations
description: 取得商店頁面區塊資料
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
- readmooApiKey: []
tags:
- Navigation
responses:
200:
description: 成功
schema:
$ref: '#/definitions/NavigationsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/action_cells/{action_cell_id}:
get:
summary: /action_cells/:id
description: 取得商店頁面按鈕區塊資訊
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
- readmooApiKey: []
parameters:
- $ref: '#/parameters/ActionCellId'
tags:
- Navigation
responses:
200:
description: 成功
schema:
$ref: '#/definitions/ActionCellResponse'
404:
description: 無此資料
schema:
$ref: '#/definitions/Error'
/book_cells/{book_cell_id}:
get:
summary: /book_cells/:id
description: 取得商店頁面書籍連結資訊
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
- readmooApiKey: []
parameters:
- $ref: '#/parameters/BookCellId'
tags:
- Navigation
responses:
200:
description: 成功
schema:
$ref: '#/definitions/BookCellResponse'
404:
description: 無此資料
schema:
$ref: '#/definitions/Error'
/notes:
# get:
# summary: /notes
# description: 取得個人筆記清單
# security:
# - readmooAccessCode:
# - me
# - readmooImplicit:
# - me
# parameters:
# - $ref: '#/parameters/PageOffset'
# - $ref: '#/parameters/PageCount'
# tags:
# - Note
# responses:
# 200:
# description: 成功
# schema:
# $ref: '#/definitions/NotesResponse'
# 400:
# description: 錯誤
# schema:
# $ref: '#/definitions/Error'
post:
summary: /notes
description: 新增筆記
security:
- readmooApiKey: []
parameters:
- $ref: '#/parameters/CreateNote'
tags:
- Note
responses:
201:
description: 成功
headers:
Location:
description: 已新增筆記的 GET URL
type: string
format: url
schema:
$ref: '#/definitions/NoteResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/publishers/{publisher_id}:
get:
summary: /publishers/:id
description: 依據出版社編號取得資訊
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
- readmooApiKey: []
parameters:
- $ref: '#/parameters/PublisherId'
tags:
- Book
responses:
200:
description: 成功
schema:
$ref: '#/definitions/PublisherResponse'
404:
description: 無此資料
schema:
$ref: '#/definitions/Error'
/unlimiteds:
get:
summary: /unlimiteds
description: 取得暢讀包清單
security:
- readmooAccessCode:
- forever
- readmooImplicit:
- forever
- readmooApiKey: []
parameters:
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
#- $ref: '#/parameters/IfNoneMatch'
tags:
- Unlimited
responses:
200:
description: 成功
schema:
$ref: '#/definitions/UnlimitedsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/unlimiteds/{unlimited_id}:
get:
summary: /unlimiteds/:id
description: 依據編號取得暢讀包資訊
security:
- readmooAccessCode:
- forever
- readmooImplicit:
- forever
- readmooApiKey: []
parameters:
- $ref: '#/parameters/UnlimitedId'
tags:
- Unlimited
responses:
200:
description: 成功
schema:
$ref: '#/definitions/UnlimitedResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/unlimiteds/{unlimited_id}/unlimited_lists:
get:
summary: /unlimiteds/:id/unlimited_lists
description: 取得指定暢讀包書刊清單資訊
security:
- readmooAccessCode:
- forever
- readmooImplicit:
- forever
- readmooApiKey: []
parameters:
- $ref: '#/parameters/UnlimitedId'
- $ref: '#/parameters/FilterProductType'
tags:
- Unlimited
responses:
200:
description: 成功
schema:
$ref: '#/definitions/UnlimitedListsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/unlimiteds/{unlimited_id}/unlimited_lists/{unlimited_list_id}:
get:
summary: /unlimiteds/:id/unlimited_lists/:id
description: 依據編號取得指定暢讀包書刊清單資訊
security:
- readmooAccessCode:
- forever
- readmooImplicit:
- forever
- readmooApiKey: []
parameters:
- $ref: '#/parameters/UnlimitedId'
- $ref: '#/parameters/UnlimitedListId'
tags:
- Unlimited
responses:
200:
description: 成功
schema:
$ref: '#/definitions/UnlimitedListResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/unlimiteds/{unlimited_id}/unlimited_items:
get:
summary: /unlimiteds/:id/unlimited_items
description: 依照編號取得暢讀包下的書刊清單
security:
- readmooAccessCode:
- forever
- readmooImplicit:
- forever
- readmooApiKey: []
parameters:
- $ref: '#/parameters/UnlimitedId'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
- $ref: '#/parameters/Include'
- $ref: '#/parameters/BooksFields'
- $ref: '#/parameters/Keyword'
- $ref: '#/parameters/FilterList'
tags:
- Unlimited
responses:
200:
description: 成功
schema:
$ref: '#/definitions/UnlimitedItemsResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/users:
post:
summary: /users
description: 註冊會員帳號
security:
- readmooApiKey: []
parameters:
- $ref: '#/parameters/CreateUser'
tags:
- User
responses:
201:
description: 成功
schema:
$ref: '#/definitions/UserResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/users/{user_id}:
get:
summary: /users/:id
description: 依據會員編號取得資訊
security:
- readmooAccessCode:
- user
- readmooImplicit:
- user
- readmooApiKey: []
parameters:
- $ref: '#/parameters/UserId'
tags:
- User
responses:
200:
description: 成功
schema:
$ref: '#/definitions/UserResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/agreement:
get:
summary: /agreement
description: 服務條款與隱私權條款
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
- readmooApiKey: []
tags:
- User
responses:
200:
description: 成功
schema:
$ref: '#/definitions/AgreementResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/subscriptions:
get:
summary: /subscriptions
description: 取得雜誌清單
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
parameters:
- $ref: '#/parameters/FilterModifiedSince'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
tags:
- Book
- Subscription
responses:
200:
description: 成功
schema:
$ref: '#/definitions/SubscriptionsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/subscriptions/{subscription_id}:
get:
summary: /subscriptions/:id
description: 依據編號取得雜誌資訊,包含曾訂閱、已訂閱、零購雜誌
security:
- readmooAccessCode:
- book
- readmooImplicit:
- book
parameters:
- $ref: '#/parameters/SubscriptionId'
tags:
- Book
- Subscription
responses:
200:
description: 成功
schema:
$ref: '#/definitions/SubscriptionResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/peerages:
get:
summary: /peerages
description: 取得會員等級清單
security:
- readmooAccessCode:
- user
- readmooImplicit:
- user
parameters:
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
tags:
- User
responses:
200:
description: 成功
schema:
$ref: '#/definitions/PeeragesResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/peerages/{peerage_id}/score_histories:
get:
summary: /peerages/:peerage_id/score_histories
description: 取得會員等級歷程清單
security:
- readmooAccessCode:
- user
- readmooImplicit:
- user
parameters:
- $ref: '#/parameters/PeerageId'
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
tags:
- User
responses:
200:
description: 成功
schema:
$ref: '#/definitions/ScoreHistoriesResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/family:
get:
summary: /me/family
description: 取得會員家庭資訊
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
tags:
- User
responses:
200:
description: 成功
schema:
$ref: '#/definitions/FamilyResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
patch:
summary: /me/family
description: 更新會員家庭資訊,目前只作為驗證密碼用
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/UpdateFamily'
tags:
- User
responses:
200:
description: 成功
schema:
$ref: '#/definitions/FamilyResponse'
204:
description: 成功,且無更新額外屬性
403:
description: 密碼驗證失敗
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/book_slips:
get:
summary: /me/book_slips
description: 取得會員借書單資訊
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
- $ref: '#/parameters/FilterId'
- $ref: '#/parameters/FilterLibraryItemType'
- $ref: '#/parameters/FilterLenderLibraryItemId'
- $ref: '#/parameters/FilterBorrowerLibraryItemId'
- $ref: '#/parameters/FilterLenderFamilyMemberId'
- $ref: '#/parameters/FilterBorrowerFamilyMemberId'
- name: filter[loan_status]
in: query
description: 只回傳指定借閱狀態的書單
type: string
enum:
- borrowed
- return
tags:
- User
responses:
200:
description: 成功
schema:
$ref: '#/definitions/BookSlipsResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
post:
summary: /me/book_slips
description: 借出書籍,並產生會員借書單資訊
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/CreateBookSlip'
tags:
- User
responses:
201:
description: 成功
headers:
Location:
description: 借書單 API 的 GET URL
type: string
format: url
schema:
$ref: '#/definitions/BookSlipResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
patch:
summary: /me/book_slips
description: 歸還或取回書籍,並更新會員借書單資訊
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/UpdateBookSlip'
tags:
- User
responses:
204:
description: 伺服器成功處理了請求,沒有返回任何內容。
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/book_slips/bulk:
post:
summary: /me/book_slips/bulk
description: 批次借出書籍,並產生會員借書單資訊
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/CreateBulkBookSlip'
tags:
- User
responses:
201:
description: 成功
schema:
$ref: '#/definitions/BookSlipsResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
patch:
summary: /me/book_slips
description: 批次歸還或取回書籍,並更新會員借書單資訊
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/UpdateBulkBookSlip'
tags:
- User
responses:
204:
description: 伺服器成功處理了請求,沒有返回任何內容。
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/book_slips/{book_slip_id}:
get:
summary: /me/book_slips/:id
description: 取得會員借書單資訊
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/BookSlipId'
- name: filter[loan_status]
in: query
description: 只回傳指定借閱狀態的書單
type: string
enum:
- borrowed
- return
tags:
- User
responses:
200:
description: 成功
schema:
$ref: '#/definitions/BookSlipResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/family/family_members/{family_member_id}/devices/{device_id}:
patch:
summary: /me/family/family_members/:family_member_id/devices/:device_id
description: 裝置切換小孩模式
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/FamilyMemberId'
- $ref: '#/parameters/DeviceId'
- $ref: '#/parameters/RegisterDevice'
consumes:
- application/vnd.api+json
produces:
- application/json
tags:
- User
responses:
200:
description: 成功
schema:
$ref: '#/definitions/UpdateDeviceResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/family_members:
get:
summary: /me/family_members
description: 取得會員借書單資訊
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
- $ref: '#/parameters/FilterId'
tags:
- User
responses:
200:
description: 成功
schema:
$ref: '#/definitions/FamilyMembersResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/family_members/{family_member_id}:
patch:
summary: /me/family_members/:family_member_id
description: 更新家庭成員資訊,也用來同意加入家庭
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/UpdateFamilyMember'
- $ref: '#/parameters/FamilyMemberId'
tags:
- User
responses:
200:
description: 成功
schema:
$ref: '#/definitions/FamilyMemberResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
delete:
summary: /me/family_members/:family_member_id
description: 刪除家庭成員資訊,也用來拒絕加入家庭
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/DeleteFamilyMember'
- $ref: '#/parameters/FamilyMemberId'
tags:
- User
responses:
204:
description: 成功,且無更新額外屬性
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/likes:
get:
summary: /me/likes
description: 取得會員按讚列表
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
- $ref: '#/parameters/FilterId'
- $ref: '#/parameters/FilterReadmooId'
- $ref: '#/parameters/FilterResourceId'
- name: filter[resource_type]
in: query
description: 只回傳指定類型的按讚
type: string
enum:
- highlights
- reviews
tags:
- Community
responses:
200:
description: 成功
schema:
$ref: '#/definitions/LikesResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
post:
summary: /me/likes
description: 按讚
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/CreateLike'
tags:
- Community
responses:
201:
description: 成功
headers:
Location:
description: 按讚 API 的 GET URL
type: string
format: url
schema:
$ref: '#/definitions/LikeResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/likes/{like_id}:
get:
summary: /me/likes/:like_id
description: 取得會員按讚資訊
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/LikeId'
tags:
- Community
responses:
200:
description: 成功
schema:
$ref: '#/definitions/LikeResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
delete:
summary: /me/likes/:like_id
description: 依據編號刪除個人的按讚
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/LikeId'
tags:
- Community
responses:
204:
description: 伺服器成功處理了請求,沒有返回任何內容。
404:
description: 無此資料
schema:
$ref: '#/definitions/Error'
/me/collects:
get:
summary: /me/collects
description: 取得會員收藏列表
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
- $ref: '#/parameters/FilterId'
- $ref: '#/parameters/FilterReadmooId'
- $ref: '#/parameters/FilterResourceId'
- name: filter[resource_type]
in: query
description: 只回傳指定類型的收藏
type: string
enum:
- highlights
- reviews
tags:
- Community
responses:
200:
description: 成功
schema:
$ref: '#/definitions/CollectsResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
post:
summary: /me/collects
description: 收藏
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/CreateCollect'
tags:
- Community
responses:
201:
description: 成功
headers:
Location:
description: 收藏 API 的 GET URL
type: string
format: url
schema:
$ref: '#/definitions/CollectResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/collects/{collect_id}:
get:
summary: /me/collects/:collect_id
description: 取得會員收藏資訊
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/CollectId'
tags:
- Community
responses:
200:
description: 成功
schema:
$ref: '#/definitions/CollectResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
delete:
summary: /me/collects/:collect_id
description: 依據編號刪除個人的收藏
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/CollectId'
tags:
- Community
responses:
204:
description: 伺服器成功處理了請求,沒有返回任何內容。
404:
description: 無此資料
schema:
$ref: '#/definitions/Error'
/me/ap/account:
get:
summary: /me/ap/account
description: 取得AP帳戶資訊
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
tags:
- Ap
responses:
200:
description: 成功
schema:
$ref: '#/definitions/ApAccountResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
post:
summary: /me/ap/account
description: 創建AP帳戶
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/CreateApAccount'
tags:
- Ap
responses:
201:
description: 成功
headers:
Location:
description: 取得AP帳戶資訊 API 的 GET URL
type: string
format: url
schema:
$ref: '#/definitions/ApAccountResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
patch:
summary: /me/ap/account
description: 更新AP帳戶資訊
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/UpdateApAccount'
tags:
- Ap
responses:
200:
description: 成功
schema:
$ref: '#/definitions/ApAccountResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/ap/shares:
get:
summary: /me/ap/shares
description: 取得AP分享資訊
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/PageOffset'
- $ref: '#/parameters/PageCount'
- $ref: '#/parameters/FilterId'
tags:
- Ap
responses:
200:
description: 成功
schema:
$ref: '#/definitions/ApSharesResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
post:
summary: /me/ap/shares
description: 創建AP分享資訊
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/CreateApShare'
tags:
- Ap
responses:
201:
description: 成功
headers:
Location:
description: 取得AP帳戶資訊 API 的 GET URL
type: string
format: url
schema:
$ref: '#/definitions/ApShareResponse'
400:
description: 錯誤
schema:
$ref: '#/definitions/Error'
/me/ap/shares/{ap_share_id}:
get:
summary: /me/ap/shares/:id
description: 取得AP分享資訊
security:
- readmooAccessCode:
- me
- readmooImplicit:
- me
parameters:
- $ref: '#/parameters/ApShareId'
tags:
- Ap
responses:
200:
description: 成功
schema:
$ref: '#/definitions/ApShareResponse'
404:
description: 錯誤
schema:
$ref: '#/definitions/Error'
parameters:
ReadmooId:
name: readmoo_id
in: path
description: 指定書籍編號(Readmoo ID)
type: string
required: true
CategoryId:
name: category_id
in: path
description: 指定分類編號
type: string
required: true
CommentId:
name: comment_id
in: path
description: 指定評論編號
type: string
required: true
ContributorId:
name: contributor_id
in: path
description: 指定貢獻者編號
type: string
required: true
PathId:
name: path_id
in: path
description: 指定內文路徑編號
type: string
required: true
RangeId:
name: range_id
in: path
description: 指定內文範圍編號
type: string
required: true
MarathonId:
name: marathon_id
in: path
description: 指定馬拉松活動編號
type: string
required: true
BookmarkId:
name: bookmark_id
in: path
description: 指定書籤編號
type: string
required: true
HighlightId:
name: highlight_id
in: path
description: 指定劃線註記編號
type: string
required: true
LibraryItemId:
name: library_item_id
in: path
description: 指定書櫃書刊編號
type: string
required: true
FavorItemId:
name: favor_item_id
in: path
description: 指定暢讀的收藏書刊編號
type: string
required: true
ForeverId:
name: forever_id
in: path
description: 指定暢讀方案編號
type: string
required: true
MagazineId:
name: magazine_id
in: path
description: 指定書櫃雜誌編號
type: string
required: true
SubscriptionId:
name: subscription_id
in: path
description: 指定訂閱編號
type: string
required: true
ReadingId:
name: reading_id
in: path
description: 指定閱讀資訊編號
type: string
required: true
ReadinglogId:
name: readinglog_id
in: path
description: 指定閱讀紀錄編號
type: string
required: true
ReviewId:
name: review_id
in: path
description: 指定書評編號
type: string
required: true
PublisherId:
name: publisher_id
in: path
description: 指定出版社編號
type: string
required: true
TagId:
name: tag_id
in: path
description: 自訂標籤編號
type: string
required: true
UserId:
name: user_id
in: path
description: 指定會員編號
type: string
required: true
DeviceId:
name: device_id
in: path
description: |
裝置識別碼,
可以是 UUID 或其他自訂格式,
但須注意字元使用 ASCII 字元,
並避免使用 RFC3986 的保留字元(! * ' ( ) ; : @ & = + $ , / ? # [ ]),
其他字元需使用 URL Encoding。
type: string
required: true
DocumentId:
name: document_id
in: path
description: 文件編號
type: string
required: true
PointId:
name: point_id
in: path
description: |
犢幣編號:
- moopoint: 犢幣
- ipoint: 愛犢幣
type: string
enum:
- moopoint
- ipoint
required: true
IPointId:
name: point_id
in: path
description: 愛犢幣
type: string
enum:
- ipoint
required: true
BadgeId:
name: badge_id
in: path
description: 徽章編號
type: string
required: true
InstallmentId:
name: installment_id
in: path
description: 指定系列 / 連載編號
type: string
required: true
PlaybackId:
name: playback_id
in: path
description: 指定播放資訊編號
type: string
required: true
PlaybacklogId:
name: playbacklog_id
in: path
description: 指定播放記錄編號
type: string
required: true
PinId:
name: pin_id
in: path
description: 指定有聲書書籤編號
type: string
required: true
MediaItemId:
name: media_item_id
in: path
description: 指定個人有聲書編號
type: string
required: true
NoteId:
name: note_id
in: path
description: 指定個人筆記編號
type: string
required: true
UnlimitedId:
name: unlimited_id
in: path
description: 指定暢讀包編號
type: string
required: true
UnlimitedListId:
name: unlimited_list_id
in: path
description: 指定暢讀包分類編號
type: string
required: true
PeerageId:
name: peerage_id
in: path
description: 會員等級資訊編號
type: string
required: true
ActionCellId:
name: action_cell_id
in: path
description: 指定書店頁面按鈕區塊編號
type: string
required: true
BookCellId:
name: book_sell_id
in: path
description: 指定商店頁面書籍連結區塊編號
type: string
required: true
FamilyId:
name: family_id
in: path
description: 家庭編號
type: string
required: true
FamilyMemberId:
name: family_member_id
in: path
description: 家庭成員編號
type: string
required: true
BookSlipId:
name: book_slip_id
in: path
description: 指定借書卡編號
type: string
required: true
LikeId:
name: like_id
in: path
description: 指定按讚編號
type: string
required: true
CollectId:
name: collect_id
in: path
description: 指定收藏編號
type: string
required: true
ApShareId:
name: ap_share_id
in: path
description: 指定AP分享編號
type: string
required: true
Include:
name: include
in: query
description: |
指定額外回傳的相依資源,指定相依資源內的其他相依資源可用 "."(U+002E FULL-STOP),
欲指定多個相依資源則可用 ","(U+002C COMMA)分隔不同資源名稱
type: string
BooksFields:
name: fields[books]
in: query
description: |
指定回傳書籍的屬性欄位,欲指定多個屬性則可用 ","(U+002C COMMA)分隔不同屬性名稱。
如:
```
fields[books]=title,cover
```
type: string
LibraryItemsFields:
name: fields[library_items]
in: query
description: |
指定回傳書櫃書籍的屬性欄位,欲指定多個屬性則可用 ","(U+002C COMMA)分隔不同屬性名稱。
如:
```
fields[library_items]=id 僅回傳 type 與 id。
```
type: string
PlaybacksFields:
name: fields[playbacks]
in: query
description: |
指定回傳播放資訊的屬性欄位,欲指定多個屬性則可用 ","(U+002C COMMA)分隔不同屬性名稱。
如:
```
fields[playbacks]=location,location_updated_at
```
type: string
ReadingsFields:
name: fields[readings]
in: query
description: |
指定回傳閱讀資訊的屬性欄位,欲指定多個屬性則可用 ","(U+002C COMMA)分隔不同屬性名稱。
如:
```
fields[readings]=position,position_updated_at,location
```
type: string
Keyword:
name: filter[keyword]
in: query
description: 以關鍵字搜尋/過濾清單內容
type: string
PageCount:
name: page[count]
in: query
description: 回傳資料分頁的單頁筆數上限,預設值為 20
type: integer
format: int32
default: 20
PageOffset:
name: page[offset]
in: query
description: 回傳資料分頁的起始值(offset),自第一筆資料開始取則設為 0
type: integer
format: int32
default: 0
PageFrom:
name: page[from]
in: query
description: 回傳資料清單的起始編號
type: string
PageTo:
name: page[to]
in: query
description: 回傳資料清單的結束編號
type: string
FilterCoversCount:
name: filter[covers][count]
in: query
description: 指定回傳書封數量的上限,預設值為 3
type: integer
format: int32
default: 3
FilterBooksCount:
name: filter[books][count]
in: query
description: 指定回傳的書櫃書籍數量的上限,預設值為 6
type: integer
format: int32
default: 6
FilterId:
name: filter[id]
in: query
description: |
回傳 id 為指定值的資料,
多 id 可用 ","(U+002C COMMA)分隔,
受限於 URL 長度限制,建議不要一次指定超過 100 筆資料。
type: string
FilterSubscriptionId:
name: filter[subscription.id]
in: query
description: |
回傳指定的訂閱編號下對應的書籍資訊清單
```
filter[subscription.id]=7
```
type: string
FilterInstallmentId:
name: filter[installment.id]
in: query
description: |
回傳指定的系列 / 連載編號下對應的書籍資訊清單
```
filter[installment.id]=5
```
type: string
FilterBundleId:
name: filter[bundle.id]
in: query
description: |
回傳指定的套書編號下對應的書籍資訊清單
```
filter[bundle.id]=210001057000101
```
type: string
FilterRelType:
name: filter[rel.type]
in: query
description: |
只回傳清單中符合 relationships type 不為空值的資料。
type: string
FilterRelId:
name: filter[rel.id]
in: query
description: |
需配合 filter[rel.type],
回傳符合前項條件的 relationships type,
且其 id 為指定值的資料,
多 id 可用 ","(U+002C COMMA)分隔。
type: string
FilterArchive:
name: filter[archive]
in: query
description: 回傳個人書櫃中的已封存書刊清單資訊
type: boolean
FilterReadingBook:
name: filter[reading.book]
in: query
description: |
回傳指定書刊編號的清單資訊,
指定多筆編號可用 ","(U+002C COMMA)分隔。
type: string
FilterReadingStatus:
name: filter[reading.status]
in: query
description: 回傳指定閱讀狀態的清單資訊
type: string
enum:
- new
- interesting
- reading
- finished
- abandoned
FilterStatus:
name: filter[status]
in: query
description: |
回傳指定狀態的清單資訊,
指定多狀態可用 ","(U+002C COMMA)分隔。
type: string
FilterFileStatus:
name: filter[file.status]
in: query
description: |
回傳指定狀態的清單資訊,
全部狀態可用 all,
其他狀態包含:uploaded、waiting、processing、finished、failed、unavailable
指定多狀態可用 ","(U+002C COMMA)分隔。
type: string
FilterPlaybackBook:
name: filter[playback.book]
in: query
description: |
回傳指定有聲書編號的清單資訊,
指定多筆編號可用 ","(U+002C COMMA)分隔。
type: string
FilterReadingPrivacy:
name: filter[reading.privacy]
in: query
description: 回傳閱讀資訊隱私狀態符合指定值的書刊清單資訊
type: string
enum:
- everyone
- friends
- self
FilterModifiedSince:
name: filter[modified_since]
in: query
description: |
只回傳指定日期之後有新增/變動的資料
格式須符合 [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601)
```
filter[modified_since]=2018-12-18T10:00:58Z
```
type: string
format: date-time
FilterYear:
name: filter[year]
in: query
description: |
回傳指定年度的資料
type: integer
format: int32
FilterMonth:
name: filter[month]
in: query
description: |
回傳指定月份的資料,
需配合指定年份參數,
如未指定則預設年份為當年度。
type: integer
format: int32
FilterLastDays:
name: filter[last_days]
in: query
description: |
回傳最近天數的資料
type: integer
format: int32
FilterHas:
name: filter[has]
in: query
description: |
只回傳個人書櫃中雜誌中,指定欄位有值的資料,
review: 有完讀書評
highlight: 有劃線註記
type: string
enum:
- review
- highlight
FilterForever:
name: filter[forever.id]
in: query
description: |
回傳指定的暢讀編號下書籍對應的閱讀資訊,
多 id 可用 ","(U+002C COMMA)分隔,
如:
```
filter[forever.id]=9,11
```
type: string
FilterPlaybackStatus:
name: filter[playback.status]
in: query
description: 回傳指定播放狀態的有聲書清單資訊
type: string
enum:
- new
- interesting
- playing
- finished
- abandoned
FilterPlaybackPrivacy:
name: filter[playback.privacy]
in: query
description: 回傳播放隱私狀態符合指定值的有聲書清單資訊
type: string
enum:
- everyone
- friends
- self
FilterList:
name: filter[list]
in: query
description: 指定暢讀包的子清單編號
type: string
FilterProductType:
name: filter[for_product_type]
in: query
description: |
指定暢讀包清單類型
- book
- magazine
- audiobook
type: string
enum:
- book
- magazine
- audiobook
FilterBlocks:
name: filter[blocks]
in: query
description: 依設定條件取得書籍資訊清單
type: string
FilterCollections:
name: filter[collections]
in: query
description: 依設定條件取得書籍資訊清單
type: string
FilterRanks:
name: filter[ranks]
in: query
description: 依設定條件取得書籍資訊清單
type: string
enum:
- readings
- sales
- preview
FilterParent:
name: filter[parent]
in: query
description: 依分類編號取得子分類
type: string
FilterStartDate:
name: filter[start_date]
in: query
description: |
只回傳指定日期之後的資料
```
filter[start_date]=20181218
```
type: string
format: date
FilterEndDate:
name: filter[end_date]
in: query
description: |
只回傳指定日期之前的資料
```
filter[end_date]=20181218
```
type: string
format: date
FilterLibraryItemType:
name: filter[library_item_type]
in: query
description: |
指定借書單記載的書籍類型
- library_items: 書
- media_items: 有聲書
type: string
enum:
- library_items
- media_items
FilterLenderLibraryItemId:
name: filter[lender_library_item_id]
in: query
description: |
回傳 lender_library_item_id 為指定值的書,
多 lender_library_item_id 可用 ","(U+002C COMMA)分隔,
受限於 URL 長度限制,建議不要一次指定超過 100 筆資料。
type: string
FilterBorrowerLibraryItemId:
name: filter[borrower_library_item_id]
in: query
description: |
回傳 borrower_library_item_id 為指定值的書,
多 borrower_library_item_id 可用 ","(U+002C COMMA)分隔,
受限於 URL 長度限制,建議不要一次指定超過 100 筆資料。
type: string
FilterLenderFamilyMemberId:
name: filter[lender_family_member_id]
in: query
description: |
回傳 lender_family_member_id 為指定值的書,
多 lender_family_member_id 可用 ","(U+002C COMMA)分隔,
受限於 URL 長度限制,建議不要一次指定超過 100 筆資料。
type: string
FilterBorrowerFamilyMemberId:
name: filter[borrower_family_member_id]
in: query
description: |
回傳 borrower_family_member_id 為指定值的書,
多 borrower_family_member_id 可用 ","(U+002C COMMA)分隔,
受限於 URL 長度限制,建議不要一次指定超過 100 筆資料。
type: string
FilterReadmooId:
name: filter[readmoo_id]
in: query
description: |
回傳 readmoo_id 為指定值的資料,
多 readmoo_id 可用 ","(U+002C COMMA)分隔,
受限於 URL 長度限制,建議不要一次指定超過 100 筆資料。
type: string
FilterLikeId:
name: filter[like_id]
in: query
description: |
回傳 like_id 為指定值的資料,
多 like_id 可用 ","(U+002C COMMA)分隔,
受限於 URL 長度限制,建議不要一次指定超過 100 筆資料。
type: string
FilterCollectId:
name: filter[collect_id]
in: query
description: |
回傳 collect_id 為指定值的資料,
多 collect_id 可用 ","(U+002C COMMA)分隔,
受限於 URL 長度限制,建議不要一次指定超過 100 筆資料。
type: string
FilterReviewId:
name: filter[review_id]
in: query
description: |
回傳 review_id 為指定值的資料,
多 review_id 可用 ","(U+002C COMMA)分隔,
受限於 URL 長度限制,建議不要一次指定超過 100 筆資料。
type: string
FilterHighlightId:
name: filter[highlight_id]
in: query
description: |
回傳 highlight_id 為指定值的資料,
多 highlight_id 可用 ","(U+002C COMMA)分隔,
受限於 URL 長度限制,建議不要一次指定超過 100 筆資料。
type: string
FilterResourceId:
name: filter[resource_id]
in: query
description: |
回傳 resource_id 為指定值的資料,
多 resource_id 可用 ","(U+002C COMMA)分隔,
受限於 URL 長度限制,建議不要一次指定超過 100 筆資料。
type: string
Sort:
name: sort
in: query
description: |
資料排序的欄位,指定 relationships 內資源的欄位可用 "."(U+002E FULL-STOP),
欲指定多個欄位則可用 ","(U+002C COMMA)分隔不同欄位名稱,
欄位排序預設採正序,如欲指定倒序可用 "-"(U+002D HYPHEN-MINUS)。
type: string
LibraryItemsSort:
name: sort
in: query
description: |
資料排序的欄位,指定 relationships 內資源的欄位可用 "."(U+002E FULL-STOP),
欲指定多個欄位則可用 ","(U+002C COMMA)分隔不同欄位名稱,
欄位排序預設採正序,如欲指定倒序可用 "-"(U+002D HYPHEN-MINUS)。
可選欄位清單
buy: 最近購買/領取(最新取得)
read: 最近閱讀
published_date: 最新出版
delivered_date: 最新派送
smart_tags: 依據標籤聰明排序
smart: 聰明排序(預設值)
type: string
default: smart
DevicesSort:
name: sort
in: query
description: |
資料排序的欄位,
欲指定多個欄位則可用 ","(U+002C COMMA)分隔不同欄位名稱,
欄位排序預設採正序,如欲指定倒序可用 "-"(U+002D HYPHEN-MINUS)。
可選欄位清單
type: 裝置類型
registered_at: 註冊時間
type: string
default: -registered_at
CreateReading:
name: data
in: body
description: |
新增閱讀資資訊的播放狀態為「尚未開始」,範例如下:
```
{
"data":{
"type": "readings",
"attributes": {
"state": "new",
},
"relationships": {
"book": {
"data": {
"type": "books",
"id": "210031233000101"
}
}
}
}
}
```
新增閱讀資資訊的播放狀態為「閱讀中」,範例如下:
```
{
"data":{
"type": "readings",
"attributes": {
"state": "reading",
"started_at" : "2019-04-08T00:33:33Z",
"touched_at": "2019-04-08T00:33:33Z"
},
"relationships": {
"book": {
"data": {
"type": "books",
"id": "210031233000101"
}
}
}
}
}
```
required: true
schema:
type: object
properties:
data:
type: object
properties:
type:
type: string
enum:
- readings
attributes:
type: object
properties:
state:
$ref: '#/definitions/ReadingState'
privacy:
$ref: '#/definitions/Privacy'
started_at:
$ref: '#/definitions/StartedAt'
touched_at:
$ref: '#/definitions/TouchedAt'
required:
- state
example:
state: reading
privacy: everyone
started_at: '2016-10-20T00:25:55Z'
touched_at: '2016-10-20T00:25:55Z'
relationships:
type: object
properties:
book:
$ref: '#/definitions/ToOne'
required:
- book
required:
- type
- attributes
- relationships
required:
- data
UpdateReading:
name: data
in: body
description: |
更新指定閱讀編號的隱私狀態,範例如下:
```
{
"data": {
"type": "readings",
"id": "1",
"attributes": {
"privacy": "self",
"touched_at" "2019-05-05T00:25:55Z"
}
}
}
```
更新指定閱讀編號的星評分數,範例如下:
```
{
"data":{
"type": "readings",
"id": "1",
"attributes": {
"rating": 3,
"touched_at": "2019-04-08T00:33:33Z"
}
}
}
```
更新指定閱讀編號的播放狀態為「尚未開始」,範例如下:
```
{
"data":{
"type": "readings",
"id": "1",
"attributes": {
"state": "new",
"touched_at": "2019-04-08T00:33:33Z"
}
}
}
```
更新指定閱讀編號的播放狀態為「閱讀中」,範例如下:
```
{
"data":{
"type": "readings",
"id": "1",
"attributes": {
"state": "reading",
"started_at" : "2019-04-08T00:33:33Z",
"touched_at": "2019-04-08T00:33:33Z"
}
}
}
```
更新指定閱讀編號的播放狀態為「完讀」,範例如下:
```
{
"data":{
"type": "readings",
"id": "1",
"attributes": {
"state": "finished",
"ended_at" : "2019-04-08T00:33:33Z",
"touched_at": "2019-04-08T00:33:33Z"
}
}
}
```
更新指定閱讀編號的播放狀態為「放棄」,範例如下:
```
{
"data":{
"type": "readings",
"id": "1",
"attributes": {
"state": "abandoned",
"ended_at" : "2019-04-08T00:33:33Z",
"touched_at": "2019-04-08T00:33:33Z"
}
}
}
```
required: true
schema:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- readings
attributes:
type: object
properties:
state:
$ref: '#/definitions/ReadingState'
privacy:
$ref: '#/definitions/Privacy'
touched_at:
$ref: '#/definitions/TouchedAt'
started_at:
$ref: '#/definitions/StartedAt'
ended_at:
$ref: '#/definitions/EndedAt'
rating:
$ref: '#/definitions/Rating'
# recommended:
# type: boolean
# description: 是否推薦此書
example:
state: finished
touched_at: '2016-10-20T00:25:55Z'
ended_at: '2016-10-20T00:25:55Z'
rating: 4
required:
- touched_at
required:
- attributes
required:
- data
UpdateBulkReadings:
name: data
in: body
description: |
批次更新指定閱讀編號的書籍隱私狀態,範例如下:
```
{
"data":
[
{
"type": "readings",
"id": "1",
"attributes": {
"privacy": "self",
"touched_at" "2019-05-05T00:25:55Z"
}
},
{
"type": "readings",
"id": "2",
"attributes": {
"privacy": "self",
"touched_at" "2019-05-06T00:25:55Z"
}
}
]
}
```
批次更新指定閱讀編號的閱讀位置,範例如下:
```
{
"data":
[
{
"type": "readings",
"id": "1",
"attributes": {
"position": 0.3,
"position_updated_at": "2018-10-20T00:33:33Z",
"location": "/6/10!/4/133/1:333"
}
},
{
"type": "readings",
"id": "2",
"attributes": {
"position": 0.2,
"position_updated_at": "2018-10-20T00:22:22Z",
"location": "/6/10!/4/122/1:222"
}
}
]
}
```
required: true
schema:
type: object
properties:
data:
type: array
items:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- readings
attributes:
type: object
properties:
privacy:
$ref: '#/definitions/Privacy'
position:
type: number
description: 最近的閱讀位置(0 ~ 1)
format: float
position_updated_at:
type: string
description: 最近閱讀位置的更新時間
format: date-time
location:
type: string
description: 最後閱讀位置(CFI 片段)
example:
privacy: "self"
position: 0.9
position_updated_at: "2018-10-20T00:33:33Z"
location: "/6/10!/4/122/1:222"
required:
- attributes
required:
- data
CreateReadinglog:
name: data
in: body
description: 完整閱讀紀錄(不含 id)
required: true
schema:
type: object
properties:
data:
type: object
properties:
type:
type: string
enum:
- readinglogs
attributes:
type: object
properties:
identifier:
type: string
description: 閱讀階段編號,每次開書都應該使用不同的編號,格式為 UUID
format: uuid
cfi:
$ref: '#/definitions/Cfi'
loc:
$ref: '#/definitions/Loc'
chapter:
$ref: '#/definitions/Chapter'
duration:
$ref: '#/definitions/Duration'
progress:
$ref: '#/definitions/ReadingProgress'
auto_play:
type: boolean
description: 是否採用自動播放翻頁(如:開啟文字轉語音功能後自動邊播放內文邊自動翻頁)
occurred_at:
type: string
description: 最近一段閱讀行為的結束時間
format: date-time
user_agent:
type: string
description: User Agent 識別文字
reading_preference:
type: string
description: |
JSON 格式 “字串” 的閱讀介面設定參數,
JSON 內參數組成可自行視實際需要添補、修改、刪除,
如:`'{"epub-writing-mode": "vertical-rl"}'`
format: json
required:
- identifier
- cfi
- loc
- duration
- progress
- occurred_at
- user_agent
- reading_preference
relationships:
type: object
properties:
reading:
$ref: '#/definitions/ToOne'
event:
$ref: '#/definitions/ToOne'
required:
- reading
required:
- type
- attributes
- relationships
example:
type: readinglogs
attributes:
identifier: 0035bc92-028b-11e7-93ae-92361f002671
cfi: /6/12!/4/2/1:1
loc: 412
duration: 300
progress: 0.1203
occurred_at: '2016-12-19T03:16:25Z'
user_agent: |
OS=10.2.1; Model=iPhone;
System=iOS; Ver=1.72.1; Build=1790
reading_preference: '{"epub-writing-mode": "vertical-rl"}'
relationships:
reading:
data:
type: readings
id: '84640'
event:
data: null
required:
- data
CreateReview:
name: data
in: body
description: 完整完讀書評(不含 id)
required: true
schema:
type: object
properties:
data:
type: object
properties:
type:
type: string
enum:
- reviews
attributes:
type: object
properties:
privacy:
$ref: '#/definitions/Privacy'
latest_modified_at:
$ref: '#/definitions/ModifiedAt'
title:
type: string
description: 書評標題
content:
type: string
description: 書評文字
required:
- content
example:
privacy: everyone
content: |-
這本書非常推薦給曾經是樂高積木迷的你,書內對於樂高在1990年代末到2011年的這段創新歷程介紹十分詳細且精彩萬分。對於因為升格為父母身分後才又回頭購買樂高的你,更能夠知道現在樂高的不同系列彼此間差異如此大是怎麼演變的。
當然,如果你現在也面臨創新的挑戰,這本書絕對也是一本很好的指南。
required:
- type
- attributes
required:
- data
UpdateReview:
name: data
in: body
description: 部分完讀書評
required: true
schema:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- reviews
attributes:
type: object
properties:
title:
type: string
description: 書評標題
content:
type: string
description: 書評文字
latest_modified_at:
$ref: '#/definitions/ModifiedAt'
example:
content: |
這本書非常推薦給曾經是樂高積木迷的你,書內對於樂高在1990年代末到2011年的這段創新歷程介紹十分詳細且精彩萬分。對於因為升格為父母身分後才又回頭購買樂高的你,更能夠知道現在樂高的不同系列彼此間差異如此大是怎麼演變的。
當然,如果你現在也面臨創新的挑戰,這本書絕對也是一本很好的指南。
required:
- attributes
required:
- data
CreateBookmark:
name: data
in: body
description: 新增書籍書籤
required: true
schema:
type: object
properties:
data:
type: object
properties:
type:
type: string
enum:
- bookmarks
attributes:
allOf:
- $ref: '#/definitions/BookmarkAttr'
required:
- device
- bookmarked_at
relationships:
type: object
properties:
book:
$ref: '#/definitions/ToOne'
reading:
$ref: '#/definitions/ToOne'
user:
$ref: '#/definitions/ToOne'
path:
$ref: '#/definitions/ToOneLocal'
required:
- book
- reading
- user
- path
required:
- type
- attributes
- relationships
included:
type: array
items:
$ref: '#/definitions/LocalFragmentPath'
required:
- data
- included
UpdateBookmark:
name: data
in: body
description: |
更新書籤的全部或部分 attributes 資料,
書籤的 relationships 不允許變動。
required: true
schema:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- bookmarks
attributes:
$ref: '#/definitions/BookmarkAttr'
required:
- attributes
required:
- data
CreateHighlight:
name: data
in: body
description: 完整劃線註記(不含 id)
required: true
schema:
type: object
properties:
data:
type: object
properties:
type:
type: string
enum:
- highlights
attributes:
type: object
properties:
title:
type: string
description: 自訂標題
annotation:
type: string
description: 註記內容
emoji:
$ref: '#/definitions/Emoji'
color:
$ref: '#/definitions/Color'
style:
$ref: '#/definitions/HighlightStyle'
privacy:
$ref: '#/definitions/Privacy'
highlighted_at:
$ref: '#/definitions/HighlightedAt'
required:
- highlighted_at
relationships:
type: object
properties:
book:
$ref: '#/definitions/ToOne'
reading:
$ref: '#/definitions/ToOne'
user:
$ref: '#/definitions/ToOne'
range:
$ref: '#/definitions/ToOneLocal'
comments:
$ref: '#/definitions/ToManyLocal'
required:
- book
- reading
- user
- range
required:
- type
- attributes
- relationships
included:
type: array
items:
$ref: '#/definitions/LocalFragmentRange'
example:
- type: ranges
lid: 891ecf80-ff38-11e7-8be5-0ed5f89f718b
attributes:
file_version: '1.001'
position: 0.374
chapter: 9
cfi: "/6/18!/4/50,/1:59,/3:1"
loc: 1234
title: null
pre_content: 然後解釋,
content: 挑選工作唯一重要的選擇標準,就是「快速成長」。
post_content: 公司快速成長時,
referenced_count: 2
- type: comments
lid: 8b6bd630-055e-11e8-ba89-0ed5f89f718b
attributes:
content: 我要一隻笑笑羊!
posted_at: '2012-08-31T03:07:06Z'
required:
- data
- included
UpdateHighlight:
name: data
in: body
description: 部分劃線註記
required: true
schema:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- highlights
attributes:
type: object
properties:
title:
type: string
description: 自訂標題
annotation:
type: string
description: 註記內容
emoji:
$ref: '#/definitions/Emoji'
color:
$ref: '#/definitions/Color'
style:
$ref: '#/definitions/HighlightStyle'
privacy:
$ref: '#/definitions/Privacy'
highlighted_at:
$ref: '#/definitions/HighlightedAt'
relationships:
type: object
properties:
book:
$ref: '#/definitions/ToOne'
reading:
$ref: '#/definitions/ToOne'
user:
$ref: '#/definitions/ToOne'
range:
$ref: '#/definitions/ToOne'
comments:
$ref: '#/definitions/ToManyLocal'
required:
- book
- reading
- user
- range
required:
- attributes
- relationships
included:
type: array
items:
$ref: '#/definitions/LocalFragmentRange'
required:
- data
example:
data:
type: highlights
id: "21"
attributes:
content: 我也想要一隻...
emoji: smile
style: line
privacy: self
relationships:
book:
data:
type: books
id: '210000359000101'
reading:
data:
type: readings
id: '39'
user:
data:
type: users
id: '766529h21'
range:
data:
type: ranges
lid: 891ecf80-ff38-11e7-8be5-0ed5f89f718b
comments:
data:
- type: comments
id: '19'
- type: comments
lid: 8b6bd630-055e-11e8-ba89-0ed5f89f718b
included:
- type: ranges
lid: 891ecf80-ff38-11e7-8be5-0ed5f89f718b
attributes:
file_version: '1.000'
position: 0.031
chapter: 3
cfi: "/6/6[c2.xhtml]!/4/116,/1:0,/1:21"
loc: 1234
content: 「這只是牠的箱子,你所要的羊兒就在裡面。」
- type: comments
id: '19'
attributes:
content: 我要一隻笑笑羊,不是喜羊羊!
- type: comments
lid: 8b6bd630-055e-11e8-ba89-0ed5f89f718b
attributes:
content: 笑笑羊和喜羊羊不一樣!
posted_at: '2012-08-31T03:07:06Z'
RegisterDevice:
name: data
in: body
description: 裝置帳號資料
required: true
schema:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- devices
attributes:
allOf:
- $ref: '#/definitions/DeviceAttr'
- type: object
properties:
key:
type: object
properties:
algorithm:
type: string
description: 加密金鑰演算法
enum:
- http://www.w3.org/2001/04/xmlenc#rsa-1_5
name:
type: string
description: 裝置加密金鑰名稱
value:
type: string
description: 裝置加密金鑰,以 PEM(DER + BASE64)編碼,不需要做 url-encode
required:
- algorithm
- name
- value
required:
- key
required:
- attributes
required:
- data
CreateComment:
name: data
in: body
description: 新增評論(不含 id)
required: true
schema:
type: object
properties:
data:
type: object
properties:
type:
type: string
enum:
- comments
attributes:
$ref: '#/definitions/ContentOnlyAttr'
required:
- type
- attributes
example:
type: comments
attributes:
content: 留言評論
required:
- data
UpdateComment:
name: data
in: body
description: 編輯評論
required: true
schema:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- comments
attributes:
$ref: '#/definitions/ContentOnlyAttr'
required:
- type
- attributes
example:
type: comments
id: '369'
attributes:
name: 編輯評論內容
required:
- data
CreateTag:
name: data
in: body
description: 自訂標籤(不含 id)
required: true
schema:
type: object
properties:
data:
type: object
properties:
type:
type: string
enum:
- tags
attributes:
$ref: '#/definitions/NameOnlyAttr'
required:
- type
- attributes
example:
type: tags
attributes:
name: 武俠小說
required:
- data
UpdateTag:
name: data
in: body
description: 編輯自訂標籤
required: true
schema:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- tags
attributes:
$ref: '#/definitions/NameOnlyAttr'
required:
- type
- attributes
example:
type: tags
id: '479'
attributes:
name: 武俠小說
required:
- data
CreateBulkTags:
name: data
in: body
description: 自訂標籤(不含 id)
required: true
schema:
type: object
properties:
data:
type: array
items:
properties:
type:
type: string
enum:
- tags
attributes:
$ref: '#/definitions/NameOnlyAttr'
required:
- type
- attributes
example:
type: tags
attributes:
name: 武俠小說
required:
- data
DeleteBulkTags:
name: data
in: body
description: 批次刪除個人自訂標籤
required: true
schema:
type: object
properties:
data:
type: array
items:
$ref: '#/definitions/ResourceIdentifier'
required:
- data
CreateBulkTagsRelationshipLibraryItems:
name: data
in: body
description: 新增指定的編號清單到指定的書籍清單
required: true
schema:
type: object
properties:
meta:
$ref: '#/definitions/TagsMeta'
data:
type: array
items:
type: object
properties:
type:
type: string
enum:
- library_items
id:
type: string
required:
- type
- id
required:
- meta
- data
ToManyRelationships:
name: data
in: body
description: 新增、編輯、刪除物件間之關係
required: true
schema:
type: object
properties:
data:
type: array
items:
$ref: '#/definitions/ResourceIdentifier'
required:
- data
UnlimitedItemsToManyRelationships:
name: data
in: body
description: 新增、編輯、刪除 暢讀書籍間之關係
required: true
schema:
type: object
properties:
data:
type: array
items:
type: object
properties:
type:
type: string
description: 型別
enum:
- unlimited_items
id:
type: string
description: 編號
required:
- type
- id
example:
type: unlimited_items
id: '1'
required:
- data
UnlimitedListsToManyRelationships:
name: data
in: body
description: 新增、編輯、刪除 暢讀包分類清單之關係
required: true
schema:
type: object
properties:
data:
type: array
items:
type: object
properties:
type:
type: string
description: 型別
enum:
- unlimited_lists
id:
type: string
description: 編號
required:
- type
- id
example:
type: unlimited_lists
id: 'u9_c213_s7'
required:
- data
CreateLibraryItem:
name: data
in: body
description: 新增書櫃的書籍/雜誌
required: true
schema:
type: object
properties:
meta:
$ref: '#/definitions/PaymentMeta'
data:
type: object
properties:
type:
type: string
enum:
- library_items
required:
- type
required:
- meta
- data
UpdateLibraryItem:
name: data
in: body
description: |
封存書櫃指定編號書籍,範例如下:
```
{
"data": {
"type": "library_items",
"id": "1",
"attributes": {
"archive": true
}
}
}
```
設定(覆寫)書櫃指定編號書籍的所有標籤,範例如下:
```
{
"data": {
"type": "library_items",
"id": "1",
"relationships": {
"tags": {
"data": [
{ "type": "tags", "id": "2" },
{ "type": "tags", "id": "3" }
]
}
}
}
```
清除書櫃指定編號書籍的所有標籤,範例如下:
```
{
"data": {
"type": "library_items",
"id": "1",
"relationships": {
"tags": {
"data": []
}
}
}
```
required: true
schema:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- library_items
attributes:
type: object
properties:
archive:
type: boolean
description: 是否已封存書籍
required:
- archive
relationships:
type: object
properties:
tags:
type: object
properties:
data:
type: array
items:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- tags
required:
- tags
UpdateBulkLibraryItems:
name: data
in: body
description: |
批次封存書櫃指定編號書籍,範例如下:
```
{
"data":
[
{
"type": "library_items",
"id": "1",
"attributes": {
"archive": true
}
},
{
"type": "library_items",
"id": "2",
"attributes": {
"archive": true
}
}
]
}
```
required: true
schema:
type: object
properties:
data:
type: array
items:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- library_items
attributes:
type: object
properties:
archive:
type: boolean
description: 是否已封存書籍
required:
- archive
required:
- attributes
required:
- data
UpdateTagsRelationshipLibraryItems:
name: data
in: body
required: true
schema:
type: object
properties:
data:
type: array
items:
$ref: '#/definitions/LibraryItemResourceIdentifier'
required:
- data
Feedback:
name: data
in: body
description: 使用者意見回饋
required: true
schema:
type: object
properties:
data:
type: object
properties:
type:
type: string
enum:
- feedbacks
attributes:
type: object
properties:
email:
type: string
description: 回報者的 E-Mail
format: email
phone:
type: string
description: 會員的電話號碼
subject:
type: string
description: 回報主題
original:
type: string
description: 如果要回報錯字,須提供回報的原文
bug:
type: string
description: 回報內容
bug_type:
type: string
description: 錯誤類型
enum:
- MISPRINT
- FINDBOOK
- ERROR
- APP
- OTHER
- QUESTION
- FUNCTION_ERROR
- FLOW
- MOBILE
url:
type: string
description: |
對應錯誤的 url,範例如下:
- 錯字回報
```
210000001000101.epub#epubcfi(/6/4[chap01ref]!/4[body01]/10[para05]/3:10)
```
- 找一本書
```
mooreader://findbook
```
format: url
required:
- email
- subject
- bug
- bug_type
- url
required:
- type
- attributes
required:
- data
Confirmation:
name: data
in: body
description: 確認函發送資訊
required: true
schema:
type: object
properties:
data:
type: object
properties:
type:
type: string
enum:
- confirmations
attributes:
type: object
properties:
email:
type: string
description: 使用者的 E-Mail
format: email
purpose:
type: string
description: |
錯誤類型
- reset
重置密碼(使用者忘記密碼時,請求發送密碼重置確認 email)
- resent
重送確認函(重送 密碼重置確認函 或 變更 email 確認函)
enum:
- reset
- resent
required:
- email
- purpose
required:
- type
- attributes
required:
- data
CreateUser:
name: data
in: body
description: |
註冊會員帳號
required: true
schema:
type: object
properties:
meta:
$ref: '#/definitions/PasswordMeta'
data:
type: object
properties:
type:
type: string
enum:
- users
attributes:
type: object
properties:
nickname:
type: string
description: 會員暱稱
email:
type: string
description: E-Mail
format: email
birthday:
type: string
description: 生日
format: date-time
gender:
type: string
description: 性別
enum:
- unspecified
- male
- female
country:
type: string
description: 國家
urls:
type: object
properties:
website:
type: string
description: 個人網誌
format: url
applications:
type: object
properties:
share:
type: object
properties:
privacy:
$ref: '#/definitions/Privacy'
required:
- email
relationships:
type: object
properties:
devices:
type: object
properties:
data:
type: array
items:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- devices
required:
- data
agreement:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- agreements
required:
- data
required:
- attributes
required:
- data
example:
meta:
password: <user's password>
data:
type: users
attributes:
nickname: Willy
email: willy.yeh@gmail.com
applications:
share:
privacy: self
relationships:
agreement:
data:
type: agreements
id: '2002'
devices:
data:
- type: devices
id: ABCDEFG
UpdateMe:
name: data
in: body
description: |
更新個人資訊,若欲修改 email,必須於 meta/password 提供使用者的密碼:
required: true
schema:
type: object
properties:
meta:
$ref: '#/definitions/PasswordMeta'
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- me
attributes:
type: object
properties:
nickname:
type: string
description: 會員暱稱
email:
type: string
description: E-Mail,裝置帳號無 email 資訊
format: email
birthday:
type: string
description: 生日
format: date-time
gender:
type: string
description: 性別
enum:
- unspecified
- male
- female
country:
type: string
description: 國家
urls:
type: object
properties:
website:
type: string
description: 個人網誌
format: url
applications:
type: object
properties:
share:
type: object
properties:
privacy:
$ref: '#/definitions/Privacy'
peerage:
type: object
properties:
activated:
type: boolean
description: 同意使用會員等級服務(僅供啟用服務)
relationships:
type: object
properties:
agreement:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- agreements
required:
- data
peerage:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- peerages
required:
- data
required:
- agreement
- peerage
required:
- attributes
required:
- data
example:
meta:
password: <user's password>
data:
type: me
id: '766529h21'
attributes:
nickname: Willy
email: willy.yeh@gmail.com
applications:
share:
privacy: self
peerage:
activated: true
relationships:
agreement:
data:
type: agreements
id: '2002'
CreateDocument:
name: data
in: body
description: 新增文件
required: true
schema:
type: object
properties:
meta:
type: object
properties:
webpage:
type: string
format: url
description: 要轉 EPUB 的網頁網址
rss:
type: string
format: url
description: 要轉 EPUB 的 RSS 網址
file:
type: object
description: |
Client 需要先計算檔案的大小、MD5、SHA256 值,
如果此檔案不符合任何已上傳的檔案,
則回傳值會增加 meta 提供上傳的網址。
properties:
name:
type: string
description: 文件檔名
size:
type: integer
description: 檔案大小
format: int64
type:
type: string
description: |
檔案的 mimetype,清單如下:
- application/epub+zip: EPUB
- application/pdf: PDF
- text/plain: TXT
- application/vnd.openxmlformats-officedocument.wordprocessingml.document: DOCX
- text/markdown: Markdown
- application/vnd.comicbook+zip: CBZ
- application/octet-stream: 依據副檔名判斷
enum:
- application/epub+zip
- application/pdf
- text/plain
- application/vnd.openxmlformats-officedocument.wordprocessingml.document
- text/markdown
- application/vnd.comicbook+zip
- application/octet-stream
md5:
type: string
description: 檔案的 MD5 雜湊值
sha256:
type: string
description: 檔案的 SHA256 雜湊值
required:
- name
- size
- type
- md5
- sha256
data:
type: object
properties:
type:
type: string
enum:
- documents
required:
- type
required:
- meta
- data
CreateDocumentReadinglog:
name: data
in: body
description: 完整閱讀紀錄(不含 id)
required: true
schema:
type: object
properties:
data:
type: object
properties:
type:
type: string
enum:
- doc_readinglogs
attributes:
$ref: '#/definitions/ReadinglogAttr'
required:
- type
- attributes
example:
type: readinglogs
attributes:
identifier: 0035bc92-028b-11e7-93ae-92361f002671
cfi: /6/12!/4/2/1:1
duration: 300
progress: 0.1203
occurred_at: '2016-12-19T03:16:25Z'
user_agent: |
OS=10.2.1; Model=iPhone;
System=iOS; Ver=1.72.1; Build=1790
reading_preference: '{"epub-writing-mode": "vertical-rl"}'
required:
- data
CreateDocumentBookmark:
name: data
in: body
description: 新增文件書籤
required: true
schema:
type: object
properties:
data:
type: object
properties:
type:
type: string
enum:
- doc_bookmarks
attributes:
allOf:
- $ref: '#/definitions/DocumentBookmarkAttr'
required:
- device
- bookmarked_at
required:
- type
- attributes
required:
- data
CreateDocumentHighlight:
name: data
in: body
description: 文件的劃線註記
required: true
schema:
type: object
properties:
data:
type: object
properties:
type:
type: string
enum:
- doc_highlights
attributes:
$ref: '#/definitions/DocumentHighlightAttr'
required:
- type
- attributes
required:
- data
UpdateDocumentReading:
name: data
in: body
description: |
更新文件的閱讀資訊
required: true
schema:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- documents
attributes:
type: object
properties:
reading:
type: object
properties:
state:
$ref: '#/definitions/ReadingState'
required:
- attributes
required:
- data
UpdateDocumentBookmark:
name: data
in: body
description: |
更新文件書籤的全部或部分 attributes 資料,
書籤的 relationships 不允許變動。
required: true
schema:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- doc_bookmarks
attributes:
$ref: '#/definitions/DocumentBookmarkAttr'
required:
- attributes
required:
- data
UpdateDocumentHighlight:
name: data
in: body
description: 部分文件劃線註記
required: true
schema:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- doc_highlights
attributes:
$ref: '#/definitions/DocumentHighlightAttr'
required:
- attributes
required:
- data
DeleteBulkDocuments:
name: data
in: body
description: |
批次刪除指定的文件編號,範例如下:
```
{
"data":
[
{
"type": "documents",
"id": "1"
},
{
"type": "documents",
"id": "2"
},
{
"type": "documents",
"id": "3"
}
]
}
```
required: true
schema:
type: object
properties:
data:
type: array
items:
$ref: '#/definitions/ResourceIdentifier'
required:
- data
IfNoneMatch:
name: If-None-Match
in: header
description: |
送出前次呼叫時,
在 HTTP response header 的 ETag,
需使用 weak 比較,如:
```
If-None-Match: W/"123456789"
```
type: string
UpdateDailyReadingGoal:
name: data
in: body
description: 變更每日閱讀目標
required: true
schema:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- dashboard
attributes:
type: object
properties:
habits:
type: object
properties:
daily_reading:
type: object
properties:
goal:
$ref: '#/definitions/Value'
required:
- goal
required:
- daily_reading
required:
- habits
required:
- attributes
required:
- data
example:
data:
type: dashboard
id: '766529h21'
attributes:
habits:
daily_reading:
goal:
value: 30
unit: minute
UpdatePoint:
name: data
in: body
description: 儲值愛犢幣
required: true
schema:
type: object
properties:
meta:
$ref: '#/definitions/ReceiptMeta'
data:
type: object
properties:
type:
type: string
enum:
- points
id:
type: string
enum:
- ipoint
UpdateBulkNotifications:
name: data
in: body
description: |
批次更新指定的通知編號的已讀狀態,範例如下:
```
{
"data":
[
{
"type": "notifications",
"id": "1",
"attributes": {
"is_read": true
}
},
{
"type": "notifications",
"id": "2",
"attributes": {
"is_read": true
}
}
]
}
```
required: true
schema:
type: object
properties:
data:
type: array
items:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- notifications
attributes:
type: object
properties:
is_read:
type: boolean
description: 是否已讀取通知訊息
required:
- is_read
required:
- attributes
required:
- data
CreateNote:
name: data
in: body
description: 新增筆記
required: true
schema:
type: object
properties:
data:
type: object
properties:
type:
type: string
enum:
- notes
attributes:
$ref: '#/definitions/NoteAttr'
relationships:
type: object
properties:
device:
$ref: '#/definitions/ToOne'
required:
- device
required:
- type
- attributes
- relationships
required:
- data
UpdateNote:
name: data
in: body
description: 更新個人筆記部分 attributes 資料,
required: true
schema:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- notes
attributes:
type: object
properties:
status:
$ref: '#/definitions/NoteFileStatus'
CreateMediaItem:
name: data
in: body
description: 新增有聲書
required: true
schema:
type: object
properties:
meta:
$ref: '#/definitions/PaymentMeta'
data:
type: object
properties:
type:
type: string
enum:
- media_items
required:
- type
required:
- meta
- data
UpdateMediaItem:
name: data
in: body
description: |
封存指定編號有聲書,範例如下:
```
{
"data": {
"type": "media_items",
"id": "1",
"attributes": {
"archive": true
}
}
}
```
設定(覆寫)指定編號有聲書的所有標籤,範例如下:
```
{
"data": {
"type": "media_items",
"id": "1",
"relationships": {
"tags": {
"data": [
{ "type": "tags", "id": "2" },
{ "type": "tags", "id": "3" }
]
}
}
}
```
清除指定編號有聲書的所有標籤,範例如下:
```
{
"data": {
"type": "media_items",
"id": "1",
"relationships": {
"tags": {
"data": []
}
}
}
```
required: true
schema:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- media_items
attributes:
type: object
properties:
archive:
type: boolean
description: 是否已封存有聲書
required:
- archive
relationships:
type: object
properties:
tags:
type: object
properties:
data:
type: array
items:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- tags
required:
- tags
UpdateBulkMediaItems:
name: data
in: body
description: |
批次封存指定編號有聲書,範例如下:
```
{
"data":
[
{
"type": "media_items",
"id": "1",
"attributes": {
"archive": true
}
},
{
"type": "media_items",
"id": "2",
"attributes": {
"archive": true
}
}
]
}
```
required: true
schema:
type: object
properties:
data:
type: array
items:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- media_items
attributes:
type: object
properties:
archive:
type: boolean
description: 是否已封存有聲書
required:
- archive
required:
- attributes
required:
- data
MediaItemsSort:
name: sort
in: query
description: |
資料排序的欄位,指定 relationships 內資源的欄位可用 "."(U+002E FULL-STOP),
欲指定多個欄位則可用 ","(U+002C COMMA)分隔不同欄位名稱,
欄位排序預設採正序,如欲指定倒序可用 "-"(U+002D HYPHEN-MINUS)。
可選欄位清單
buy: 最近購買/領取(最新取得)
read: 最近閱讀
published_date: 最新出版
delivered_date: 最新派送
smart_tags: 依據標籤聰明排序
smart: 聰明排序(預設值)
type: string
default: smart
MediaItemsFields:
name: fields[media_items]
in: query
description: |
指定回傳有聲書的屬性欄位,欲指定多個屬性則可用 ","(U+002C COMMA)分隔不同屬性名稱。
如:
```
fields[media_items]=title,cover
```
type: string
CreatePin:
name: data
in: body
description: 新增有聲書書籍書籤
required: true
schema:
type: object
properties:
data:
type: object
properties:
type:
type: string
enum:
- pins
attributes:
$ref: '#/definitions/PinAttr'
relationships:
type: object
properties:
book:
$ref: '#/definitions/ToOne'
playback:
$ref: '#/definitions/ToOne'
user:
$ref: '#/definitions/ToOne'
required:
- book
- playback
- user
required:
- type
- attributes
- relationships
required:
- data
UpdatePin:
name: data
in: body
description: |
更新書籤的全部或部分 attributes 資料,
書籤的 relationships 不允許變動。
required: true
schema:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- pins
attributes:
$ref: '#/definitions/UpdatePinAttr'
required:
- type
- attributes
required:
- data
PinsFields:
name: fields[pins]
in: query
description: |
指定回傳播放資訊的屬性欄位,欲指定多個屬性則可用 ","(U+002C COMMA)分隔不同屬性名稱。
如:
```
fields[pins]=location,title,note
```
type: string
CreatePlayback:
name: data
in: body
description: 完整播放資訊(不含 id)
required: true
schema:
type: object
properties:
data:
type: object
properties:
type:
type: string
enum:
- playbacks
attributes:
type: object
properties:
state:
$ref: '#/definitions/PlaybackState'
privacy:
$ref: '#/definitions/Privacy'
started_at:
$ref: '#/definitions/StartedAt'
touched_at:
$ref: '#/definitions/TouchedAt'
required:
- state
- touched_at
example:
state: reading
privacy: everyone
started_at: '2016-10-20T00:25:55Z'
touched_at: '2016-10-20T00:25:55Z'
relationships:
type: object
properties:
book:
$ref: '#/definitions/ToOne'
required:
- book
required:
- type
- attributes
- relationships
required:
- data
UpdatePlayback:
name: data
in: body
description: |
更新指定播放編號的有聲書隱私狀態,範例如下:
```
{
"data": {
"type": "playbacks",
"id": "1",
"attributes": {
"privacy": "self",
"updated_at" "2019-05-05T00:25:55Z"
}
}
}
```
更新指定播放編號的有聲書星評分數,範例如下:
```
{
"data":{
"type": "playbacks",
"id": "1",
"attributes": {
"rating": 3,
"updated_at": "2019-04-08T00:33:33Z"
}
}
}
```
更新指定播放編號的有聲書播放狀態為「尚未開始」,範例如下:
```
{
"data":{
"type": "playbacks",
"id": "1",
"attributes": {
"state": "new",
"updated_at": "2019-04-08T00:33:33Z"
}
}
}
```
更新指定播放編號的有聲書播放狀態為「播放中」,範例如下:
```
{
"data":{
"type": "playbacks",
"id": "1",
"attributes": {
"state": "playing",
"started_at" : "2019-04-08T00:33:33Z",
"updated_at": "2019-04-08T00:33:33Z"
}
}
}
```
更新指定播放編號的有聲書播放狀態為「完聽」,範例如下:
```
{
"data":{
"type": "playbacks",
"id": "1",
"attributes": {
"state": "finished",
"ended_at" : "2019-04-08T00:33:33Z",
"updated_at": "2019-04-08T00:33:33Z"
}
}
}
```
更新指定播放編號的有聲書播放狀態為「放棄」,範例如下:
```
{
"data":{
"type": "playbacks",
"id": "1",
"attributes": {
"state": "abandoned",
"ended_at" : "2019-04-08T00:33:33Z",
"updated_at": "2019-04-08T00:33:33Z"
}
}
}
```
required: true
schema:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- playbacks
attributes:
type: object
properties:
state:
$ref: '#/definitions/PlaybackState'
privacy:
$ref: '#/definitions/Privacy'
updated_at:
$ref: '#/definitions/UpdatedAt'
started_at:
$ref: '#/definitions/StartedAt'
ended_at:
$ref: '#/definitions/EndedAt'
rating:
$ref: '#/definitions/Rating'
example:
state: finished
updated_at: '2019-04-01T00:25:55Z'
ended_at: '2019-04-01T00:25:55Z'
rating: 4
required:
- updated_at
required:
- attributes
required:
- data
UpdateBulkPlaybacks:
name: data
in: body
description: |
批次更新指定播放編號的有聲書隱私狀態,範例如下:
```
{
"data":
[
{
"type": "playbacks",
"id": "1",
"attributes": {
"privacy": "self",
"updated_at" "2019-05-05T00:25:55Z"
}
},
{
"type": "playbacks",
"id": "2",
"attributes": {
"privacy": "self",
"updated_at" "2019-05-06T00:25:55Z"
}
}
]
}
```
批次更新指定播放編號的最近播放位置,範例如下:
```
{
"data":
[
{
"type": "playbacks",
"id": "1",
"attributes": {
"progress": 0.3,
"location": "asserts/chapter01.mp3#t=66",
"location_updated_at": "2019-04-08T00:33:33Z"
}
},
{
"type": "playbacks",
"id": "2",
"attributes": {
"progress": 0.2,
"location": "asserts/chapter02.mp3#t=77",
"location_updated_at": "2019-04-09T00:22:22Z"
}
}
]
}
```
required: true
schema:
type: object
properties:
data:
type: array
items:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- playbacks
attributes:
type: object
properties:
privacy:
$ref: '#/definitions/Privacy'
progress:
type: number
description: 播放進度(0 ~ 1)
format: float
location:
type: string
description: 播放秒數位置
location_updated_at:
type: string
description: 最近播放時間
format: date-time
example:
privacy: "self"
progress: 0.34
location: "asserts/chapter02.mp3#t=166"
location_updated_at: "2019-04-09T00:33:33Z"
required:
- attributes
required:
- data
CreatePlaybacklog:
name: data
in: body
description: 完整播放紀錄(不含 id)
required: true
schema:
type: object
properties:
data:
type: object
properties:
type:
type: string
enum:
- playbacklogs
attributes:
$ref: '#/definitions/PlaybacklogAttr'
relationships:
$ref: '#/definitions/PlaybacklogRel'
required:
- type
- attributes
- relationships
example:
type: playbacklogs
attributes:
identifier: 0035bc92-028b-11e7-93ae-92361f002671
location: assets/chapter01.mp3#t=66
duration: 1800
remaining: 900
progress: 0.5
occurred_at: '2019-03-19T03:16:25Z'
user_agent: |
OS=10.2.1; Model=iPhone;
System=iOS; Ver=1.72.1; Build=1790
playback_preference: '{"speed": "1.2"}'
relationships:
playback:
data:
type: playbacks
id: '84640'
event:
data: null
required:
- data
CreateFavorItem:
name: data
in: body
description: 新增個人的暢讀收藏書籍
required: true
schema:
type: object
properties:
data:
type: object
properties:
type:
type: string
enum:
- favor_items
relationships:
type: object
properties:
unlimited_item:
$ref: '#/definitions/ToOne'
required:
- unlimited_item
required:
- type
- relationships
required:
- data
CreateBulkFavorItem:
name: data
in: body
description: |
批次新增指定的暢讀書籍編號,範例如下:
```
{
"data":
[
{
"type": "favor_items",
"relationships": {
"unlimited_item": {
"data": {
"type": "unlimited_items",
"id": "1"
}
}
}
},
{
"type": "favor_items",
"relationships": {
"unlimited_item": {
"data": {
"type": "unlimited_items",
"id": "2"
}
}
}
},
{
"type": "favor_items",
"relationships": {
"unlimited_item": {
"data": {
"type": "unlimited_items",
"id": "3"
}
}
}
}
]
}
```
required: true
schema:
type: object
properties:
data:
type: array
items:
type: object
properties:
type:
type: string
enum:
- favor_items
relationships:
type: object
properties:
unlimited_item:
$ref: '#/definitions/ToOne'
required:
- unlimited_item
required:
- type
- relationships
required:
- data
DeleteBulkFavorItem:
name: data
in: body
description: |
批次刪除指定的收藏編號,範例如下:
```
{
"data":
[
{
"type": "favor_items",
"id": "1"
},
{
"type": "favor_items",
"id": "2"
},
{
"type": "favor_items",
"id": "3"
}
]
}
```
required: true
schema:
type: object
properties:
data:
type: array
items:
$ref: '#/definitions/ResourceIdentifier'
required:
- data
CreateBookSlip:
name: data
in: body
description: 借出書籍,並產生會員借書單的參數格式
required: true
schema:
type: object
properties:
data:
$ref: '#/parameters/CreateBookSlipUnit'
required:
- data
CreateBulkBookSlip:
name: data
in: body
description: 批次借出書籍,並產生會員借書單的參數格式
required: true
schema:
type: object
properties:
data:
type: array
items:
$ref: '#/parameters/CreateBookSlipUnit'
required:
- data
CreateBookSlipUnit:
type: object
properties:
type:
type: string
enum:
- book_slips
relationships:
type: object
properties:
lender:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- family_members
borrower:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- family_members
lender_library_item:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- library_items
- media_items
requried:
- lender
- borrower
- lender_library_item
required:
- relationships
UpdateBookSlip:
name: data
in: body
description: 歸還或取回書籍,並更新會員借書單資訊的參數格式
required: true
schema:
type: object
properties:
data:
$ref: '#/parameters/UpdateBookSlipUnit'
required:
- data
UpdateFamily:
name: data
in: body
description: 更新家庭資訊的參數格式,目前只用來驗證家庭密碼
required: true
schema:
type: object
properties:
meta:
type: object
properties:
password:
type: string
data:
$ref: '#/parameters/UpdateFamilyUnit'
required:
- data
UpdateFamilyMember:
name: data
in: body
description: 更新家庭成員資訊的參數格式,也用來接受加入家庭
required: true
schema:
type: object
properties:
meta:
type: object
properties:
token:
type: string
data:
$ref: '#/parameters/UpdateFamilyMemberUnit'
required:
- data
DeleteFamilyMember:
name: data
in: body
description: 刪除家庭成員的參數格式,也用來拒絕加入家庭
required: true
schema:
type: object
properties:
meta:
type: object
properties:
token:
type: string
reason:
type: string
enum:
- reject-invitation
requried:
- reason
required:
- meta
UpdateBulkBookSlip:
name: data
in: body
description: 批次歸還或取回書籍,並更新會員借書單資訊的參數格式
required: true
schema:
type: object
properties:
data:
type: array
items:
$ref: '#/parameters/UpdateBookSlipUnit'
required:
- data
UpdateBookSlipUnit:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- book_slips
- type: object
properties:
attributes:
type: object
properties:
loan_status:
type: string
enum:
- return
required:
- attributes
UpdateFamilyUnit:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- families
required:
- type
UpdateFamilyMemberUnit:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- family_members
- type: object
properties:
attributes:
type: object
properties:
be_invited:
type: boolean
is_in_group:
type: boolean
required:
- attributes
CreateLike:
name: data
in: body
description: 按讚參數格式
required: true
schema:
type: object
properties:
data:
$ref: '#/parameters/CreateLikeUnit'
required:
- data
CreateLikeUnit:
type: object
properties:
type:
type: string
enum:
- likes
attributes:
type: object
properties:
resource_type:
type: string
enum:
- highlights
- reviews
required:
- resource_type
relationships:
type: object
properties:
highlight:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- highlights
review:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- reviews
required:
- attributes
- relationships
CreateCollect:
name: data
in: body
description: 按讚參數格式
required: true
schema:
type: object
properties:
data:
$ref: '#/parameters/CreateCollectUnit'
required:
- data
CreateCollectUnit:
type: object
properties:
type:
type: string
enum:
- collects
attributes:
type: object
properties:
resource_type:
type: string
enum:
- highlights
- reviews
required:
- resource_type
relationships:
type: object
properties:
highlight:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- highlights
review:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- reviews
required:
- attributes
- relationships
CreateApAccount:
name: data
in: body
description: 創造AP帳戶參數格式
required: true
schema:
type: object
properties:
data:
type: object
properties:
type:
type: string
enum:
- apaccounts
attributes:
type: object
properties:
role:
type: string
enum:
- personal
- company
email:
type: string
description: 電子郵件
name:
type: string
description: 姓名或公司名稱
vat_number:
type: string
description: 公司統一編號
check_agreement:
type: boolean
description: 是否同意使用條款
required:
- role
- email
- name
- check_agreement
required:
- attributes
required:
- data
UpdateApAccount:
name: data
in: body
description: 更新AP帳戶參數格式
required: true
schema:
type: object
properties:
data:
type: object
properties:
type:
type: string
enum:
- apaccounts
attributes:
type: object
properties:
email:
type: string
description: 電子郵件
name:
type: string
description: 姓名或公司名稱
vat_number:
type: string
description: 公司統一編號
site:
type: string
description: 個人或公司網站網址
required:
- attributes
required:
- data
CreateApShare:
name: data
in: body
description: 創造AP分享參數格式
required: true
schema:
type: object
properties:
data:
type: object
properties:
type:
type: string
enum:
- apshares
attributes:
type: object
properties:
url:
type: string
relationships:
type: object
properties:
book:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- books
required:
- data
required:
- type
- attributes
required:
- data
definitions:
MetaWithCount:
type: object
properties:
total_count:
type: integer
description: 資料總筆數
format: int32
required:
- total_count
TopLevelMeta:
type: object
properties:
last_modified:
type: string
description: |
與 HTTP response Last-Modified 類似意義,
不同點是可供下次呼叫時,
作為 filter[modified_since] 的參數,
以取得伺服端自前次呼叫之後有變動的資料清單。
format: date-time
total_count:
type: integer
description: 資料總筆數
format: int32
sort:
type: string
description: 資料排序的欄位
page:
type: object
description: 資料分頁
properties:
count:
type: integer
description: 資料分頁的單頁筆數上限,預設值為 1000
format: int64
offset:
type: integer
description: 資料分頁的起始值(offset),自第一筆資料開始取則設為 0
format: int64
required:
- count
- offset
required:
- last_modified
- total_count
example:
last_modified: '2018-06-24T12:42:00Z'
total_count: 1
TopLevelMetaWithETag:
type: object
properties:
last_modified:
type: string
description: |
與 HTTP response Last-Modified 類似意義
format: date-time
total_count:
type: integer
description: 資料總筆數
format: int32
ETag:
type: string
description: |
與 HTTP response ETag 類似意義,
可供於下次呼叫時在 HTTP request header 加上 If-None-Match 的參數,
如果伺服器端確認相同會回傳 304 Not Modified,
否則就回傳正常的資料。
required:
- total_count
- ETag
example:
total_count: 1
ETag: W/"lYVvHsYSJ.1goY.xk7wht.t4cy3H.OEfTExsaloiDACRsmCHGUaHG"
PaymentMeta:
type: object
properties:
readmoo_id:
type: string
description: 銷售品項編號
payment_method:
type: string
description: |
交易付款方式:
- free: 免費領取
- redeem: 領書額度
- moopoint: 犢幣
- ipoint: 愛犢幣
- creditcard: 信用卡
enum:
- free
- redeem
- moopoint
- ipoint
- creditcard
password:
type: string
description: 信用卡自動扣款用的密碼(非登入密碼)或信用卡、犢幣、愛犢幣使用的交易密碼
authorize_creditcard:
type: boolean
description: 取得自動扣款綁定網址
required:
- readmoo_id
- payment_method
PasswordMeta:
type: object
properties:
password:
type: string
description: 使用者登入密碼做為確認用
required:
- password
ReceiptMeta:
type: object
properties:
receipt:
type: string
description: iOS IAP 收據
required:
- receipt
TagsMeta:
type: object
properties:
tag_ids:
type: array
description: 指定的標籤編號清單
items:
type: string
required:
- tag_ids
NoteMeta:
type: object
properties:
remaining:
type: integer
description: 剩餘可上傳的儲存空間
format: int64
required:
- remaining
example:
remaining: 1073741824
NotificationMeta:
type: object
properties:
total_count:
type: integer
description: 資料總筆數
format: int32
unread_count:
type: integer
description: 未讀訊息總筆數
format: int32
required:
- total_count
- unread_count
SelfLink:
type: object
properties:
self:
type: string
description: 資源或相依資源的 URL
format: url
required:
- self
ImageLink:
type: object
properties:
href:
type: string
format: url
meta:
type: object
properties:
width:
type: integer
description: 圖片寬度
format: int32
resize:
type: string
description: 圖片縮放方式
enum:
- fit
- crop
required:
- width
- resize
required:
- href
- meta
Avatar:
type: object
description: 會員頭像
properties:
small:
$ref: '#/definitions/ImageLink'
medium:
$ref: '#/definitions/ImageLink'
large:
$ref: '#/definitions/ImageLink'
required:
- small
- medium
- large
Cover:
type: object
description: 書封
properties:
small:
$ref: '#/definitions/ImageLink'
medium:
$ref: '#/definitions/ImageLink'
large:
$ref: '#/definitions/ImageLink'
adult_only:
type: boolean
description: 內容僅限成人閱讀
required:
- medium
PaginationLinks:
type: object
properties:
first:
type: string
description: 首頁的 URL
format: url
prev:
type: string
description: 前頁的 URL
format: url
self:
type: string
description: 本頁的 URL
format: url
next:
type: string
description: 後頁的 URL
format: url
last:
type: string
description: 末頁的 URL
format: url
required:
- first
- prev
- self
- next
- last
ResourceIdentifier:
type: object
discriminator: type
properties:
type:
type: string
description: 型別
id:
type: string
description: 編號
required:
- type
- id
LocalResourceIdentifier:
type: object
discriminator: type
properties:
type:
type: string
description: 型別
lid:
type: string
description: 臨時編號(Local ID)
required:
- type
- lid
Resource:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
attributes:
type: object
relationships:
type: object
required:
- attributes
ToOne:
type: object
properties:
data:
$ref: '#/definitions/ResourceIdentifier'
required:
- data
ToOneNotRequired:
type: object
properties:
data:
$ref: '#/definitions/ResourceIdentifier'
ToOneLocal:
type: object
properties:
data:
$ref: '#/definitions/LocalResourceIdentifier'
required:
- data
ToMany:
type: object
properties:
data:
type: array
items:
$ref: '#/definitions/ResourceIdentifier'
meta:
$ref: '#/definitions/MetaWithCount'
links:
type: object
properties:
self:
type: string
description: 資源或相依資源的 URL
format: url
related:
type: string
description: 如果主要資料是相依資源,這裡就是資源的相依 URL
format: url
required:
- related
ToManyLocal:
type: object
properties:
data:
type: array
items:
$ref: '#/definitions/LocalResourceIdentifier'
NameOnlyAttr:
type: object
properties:
name:
type: string
description: 名稱
required:
- name
ContentOnlyAttr:
type: object
properties:
content:
type: string
description: 內容
required:
- content
TimeIntervals:
type: string
description: |
日期時段格式須符合 [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) 的 time intervals,
如:
- 台北時間 2017-01-01 當天(
```
2016-12-31T16:00:00Z/P1D
```
- 2017-03-01T16:00:00Z 到 2018-05-11T15:30:00Z
```
2017-03-01T16:00:00Z/2018-05-11T15:30:00Z
```
Record:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- records
attributes:
$ref: '#/definitions/RecordAttr'
RecordAttr:
type: object
properties:
period:
$ref: '#/definitions/TimeIntervals'
value:
type: number
description: 數值
format: float
required:
- period
- value
Total:
type: object
properties:
total:
type: integer
format: int64
unit:
$ref: '#/definitions/Unit'
required:
- total
Value:
type: object
properties:
value:
type: number
format: float
unit:
$ref: '#/definitions/Unit'
required:
- value
- unit
Unit:
type: string
description: 單位
enum:
- piece
- frequency
- percent
- second
- minute
- hour
- day
- week
- month
- year
- word
- page
GoalRecord:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- goal_records
attributes:
$ref: '#/definitions/GoalRecordAttr'
GoalRecordAttr:
allOf:
- $ref: '#/definitions/RecordAttr'
- type: object
properties:
goal:
type: number
description: 目標
format: float
progress:
type: number
description: 進度(0:0%、1:100%、1.3:130%)
format: float
completed:
type: boolean
description: 是否達到目標
required:
- goal
- progress
- completed
Period:
type: string
description: |
時間區間,格式須符合 [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) 的 time durations,
如:
- P1D:每天
- P1M:每個月
- PT30M:每 30 分鐘
Operator:
type: string
description: |
eq: 等於
gt: 大於且不等於
gteq: 大於或等於
lt: 小於且不等於
lteq: 小於或等於
neq: 不等於
enum:
- eq
- gt
- gteq
- lt
- lteq
- neq
Chapter:
type: integer
description: 閱讀位置章節,為 EPUB OPF 的 spine 位置,從 1 開始。
PublicationRel:
type: object
properties:
publisher:
$ref: '#/definitions/ToOne'
categories:
$ref: '#/definitions/ToMany'
required:
- publisher
- categories
Language:
type: string
description: 語言編碼(依據 Dublin Core Language,應符合 [RFC4646](https://www.ietf.org/rfc/rfc4646.txt))
enum:
- zh-Hant
- zh-Hans
- en
- ja
- fr
Rendition:
type: object
properties:
layout:
type: string
description: 內容版面形式(版式:pre-paginated、流式:reflowable)
enum:
- reflowable
- pre-paginated
flow:
type: string
description: |
內容呈現方式
- 翻頁:paginated
- 連續捲動:scrolled-continuous
- 單章節捲動:scrolled-doc
- 自動:auto
enum:
- paginated
- scrolled-continuous
- scrolled-doc
- auto
required:
- layout
FileVersion:
type: string
description: |
EPUB 書檔的大小更新版號,從 1.000 開始,
1.000 =小版更=> 1.001 =大版更=> 2.000
Count:
type: object
properties:
unit:
type: string
description: |
統計資料類別
words:CJK 字數
pages:頁數
seconds:秒數
enum:
- words
- pages
- seconds
amount:
type: integer
description: 數量
format: int64
readOnly: true
required:
- unit
- amount
Marathon:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- marathons
attributes:
type: object
properties:
name:
type: string
description: 活動名稱
description:
type: string
description: 活動說明
course_type:
type: string
description: |
書單類型:
- set: 特定書單
- all_books: 全站書籍
enum:
- set
- all_books
started_at:
$ref: '#/definitions/StartedAt'
ended_at:
$ref: '#/definitions/EndedAt'
urls:
type: object
properties:
webpage:
type: string
description: 閱讀馬拉松活動頁的 url
format: url
publications:
type: string
description: 個人書櫃中符合此閱讀馬拉松的清單
format: url
required:
- webpage
- publications
required:
- name
- description
- started_at
- ended_at
- urls
required:
- attributes
Policy:
type: object
description: |
權限設定,採用負面表列方式條列禁止的權利與條件清單。
參考 [ODRL Version 2.1 JSON Encoding](https://www.w3.org/community/odrl/json/2.1/) Final Specification: 5 March 2015
properties:
policytype:
type: string
description: ODRL policies type,僅允許 offer 和 ticket
enum:
- offer
- ticket
prohibitions:
type: array
description: |
禁止的權利與條件清單,範例如下:
- 無特殊限制
```
"prohibitions": []
```
- 限制台北時間 2018-04-24 後一週之內可以閱讀
```
"prohibitions": [
{
"action": "display",
"constraints": [
{
"name": "dateTime",
"operator": "neq",
"rightoperand": "2018-04-23T16:00:00Z/P7D"
}
]
}
]
```
- 限制排版方式不可改變(如:中文流式書籍限定直排呈現或條漫限定捲動呈現)、不可文字轉語音、不可簡繁互轉
```
"prohibitions": [
{
"action": "transform"
},
{
"action": "textToSpeech"
},
{
"action": "translate"
}
]
```
items:
type: object
properties:
action:
type: string
description: |
操作權利(rights):
- display:以視覺方式呈現
- preview:試讀內容
- transform:直橫排互轉、翻頁/捲動切換
- textToSpeech:文字轉語音
- translate:翻譯為另一種語言,如:繁簡互轉
enum:
- display
- preview
- transform
- textToSpeech
- translate
constraints:
type: array
description: |
條件限制,描述概念與 ODRL 相仿,
禁止條件清單(負面表列),
如果未列出禁止條件,
表示所有情形都不允許。
items:
type: object
properties:
name:
type: string
description: |
符合 ODRL 的 Constraint Left Operands 清單:
- dateTime
- systemDevice
- media
enum:
- dateTime
- systemDevice
- media
operator:
$ref: '#/definitions/Operator'
rightoperand:
type: string
description: |
當 name 是 dateTime 時,
資料格式必須是日期時間或時段,
格式須符合 [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) 的 time intervals,
如:
- 台北時間 2017-01-01 當天(
```
2016-12-31T16:00:00Z/P1D
```
- 2017-03-01T16:00:00Z 到 2018-05-11T15:30:00Z
```
2017-03-01T16:00:00Z/2018-05-11T15:30:00Z
```
當 name 是 systemDevice 時,
資料格式是用以識別裝置的字串。
當 name 是 media 時,
資料格式必須符合以下的清單:
- webtoon
readOnly: true
required:
- policytype
- prohibitions
LibraryItem:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- library_items
attributes:
type: object
properties:
new:
type: boolean
description: 新書
archive:
type: boolean
description: 是否已封存書籍
subscribable:
type: boolean
description: 是否可以訂閱
policy:
$ref: '#/definitions/Policy'
urls:
type: object
description: 書檔相關的 URL
properties:
toc:
type: string
description: 書檔目錄及統計資訊 json 檔的 URL
format: url
reader:
type: string
description: 網頁版閱讀 URL
format: url
license:
type: string
description: 授權檔下載位址
format: url
epub:
type: string
description: EPUB 檔案下載 URL
format: url
required:
- toc
- reader
- license
- epub
loaned:
type: boolean
description: 書籍是否已借出
borrowed:
type: boolean
description: 書籍是否是借來的
required:
- new
- archive
- subscribable
- policy
- urls
relationships:
type: object
properties:
reading:
$ref: '#/definitions/ToOne'
tags:
$ref: '#/definitions/ToMany'
book_slip:
$ref: '#/definitions/ToOne'
required:
- reading
- tags
required:
- attributes
- relationships
FavorItemResourceIdentifier:
type: object
properties:
type:
type: string
enum:
- Favor_items
id:
type: string
UnlimitedListResourceIdentifier:
type: object
properties:
type:
type: string
enum:
- unlimited_lists
id:
type: string
example:
type: unlimited_lists
id: 'u9_c213_s7'
LibraryItemResourceIdentifier:
type: object
properties:
type:
type: string
enum:
- library_items
id:
type: string
MediaItemResourceIdentifier:
type: object
properties:
type:
type: string
enum:
- media_items
id:
type: string
UnlimitedItemResourceIdentifier:
type: object
properties:
type:
type: string
enum:
- unlimited_items
id:
type: string
Forever:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- forevers
attributes:
type: object
properties:
title:
type: string
description: 暢讀頻道名稱
content:
type: string
description: 暢讀頻道內容
started_at:
$ref: '#/definitions/StartedAt'
ended_at:
$ref: '#/definitions/EndedAt'
subscription:
type: object
description: 訂閱資訊
properties:
state:
$ref: '#/definitions/SubscriptionState'
expire_at:
$ref: '#/definitions/ExpiredAt'
auto_renew:
$ref: '#/definitions/AutoRenew'
plans:
type: array
description: 不同期限的訂閱方案
items:
type: object
description: 訂閱方案
properties:
readmoo_id:
type: string
description: 銷售品項編號
title:
type: string
description: 方案名稱
days:
type: integer
description: 天數
format: int32
price:
$ref: '#/definitions/Price'
required:
- title
- readmoo_id
- days
- price
required:
- state
- expire_at
- auto_renew
- plans
adult_only:
type: boolean
description: 內容僅限成人閱讀
urls:
type: object
properties:
banner:
$ref: '#/definitions/ImageLink'
required:
- banner
required:
- title
- content
- started_at
- ended_at
- subscription
- adult_only
- urls
required:
- attributes
FavorItem:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- favor_items
attributes:
type: object
properties:
created_at:
$ref: '#/definitions/CreatedAt'
required:
- created_at
relationships:
type: object
properties:
book:
$ref: '#/definitions/ToOne'
unlimited:
$ref: '#/definitions/ToOne'
unlimited_item:
$ref: '#/definitions/ToOne'
reading:
$ref: '#/definitions/ToOneNotRequired'
required:
- book
- unlimited
- unlimited_item
- reading
required:
- attributes
- relationships
ForeverItem:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- forever_items
attributes:
type: object
properties:
readmoo_id:
type: string
description: 銷售品項編號
title:
type: string
description: 書名
policy:
$ref: '#/definitions/Policy'
urls:
type: object
description: 書檔相關的 URL
properties:
toc:
type: string
description: 書檔目錄及統計資訊 json 檔的 URL
format: url
reader:
type: string
description: 網頁版閱讀 URL
format: url
license:
type: string
description: 授權檔下載位址
format: url
epub:
type: string
description: EPUB 檔案下載 URL
format: url
audiobook:
type: string
description: 有聲書(PWP 格式)檔案下載 URL
format: url
required:
- toc
- reader
created_at:
$ref: '#/definitions/CreatedAt'
required:
- readmoo_id
- title
- urls
- created_at
relationships:
type: object
properties:
book:
$ref: '#/definitions/ToOne'
forever:
$ref: '#/definitions/ToOne'
required:
- book
- forever
required:
- attributes
- relationships
Subscription:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- subscriptions
attributes:
type: object
properties:
name:
type: string
description: 雜誌名稱
period:
$ref: '#/definitions/Period'
content:
type: string
description: 訂閱說明文字(含 HTML 標籤)
product_type:
type: string
description: 產品類別
enum:
- book
- magazine
total:
type: integer
description: 所有期數
format: int32
adult_only:
type: boolean
description: 內容僅限成人閱讀
language:
$ref: '#/definitions/Language'
urls:
type: object
properties:
webpage:
type: string
description: 雜誌頁面的 URL
format: url
plans:
type: array
description: 不同期數的訂閱方案
items:
type: object
description: 訂閱方案
properties:
readmoo_id:
type: string
description: 銷售品項編號
total:
type: integer
description: 訂閱期數
format: int32
free:
type: integer
description: 贈送期數
format: int32
promotion:
type: string
description: 促銷文字
price:
$ref: '#/definitions/Price'
webpage:
type: string
format: url
description: 訂閱方案的結帳網頁網址
required:
- title
- readmoo_id
- days
- price
- webpage
required:
- name
- period
- content
- product_type
- total
- adult_only
- language
- urls
relationships:
type: object
properties:
publisher:
$ref: '#/definitions/ToOne'
category:
$ref: '#/definitions/ToOne'
books:
$ref: '#/definitions/ToMany'
library_items:
$ref: '#/definitions/ToMany'
required:
- publisher
- categories
- books
- library_items
meta:
type: object
properties:
delivered:
type: integer
description: 已派送期數
format: int32
remaining:
type: integer
description: 剩餘期數
format: int32
auto_renew:
type: boolean
description: 自動續訂
required:
- attributes
- relationships
Reading:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- readings
attributes:
$ref: '#/definitions/ReadingAttr'
relationships:
type: object
properties:
book:
$ref: '#/definitions/ToOne'
review:
$ref: '#/definitions/ToOne'
bookmarks:
$ref: '#/definitions/ToMany'
highlights:
$ref: '#/definitions/ToMany'
required:
- book
- review
- bookmarks
- highlights
required:
- attributes
- relationships
ReadingAttr:
type: object
properties:
state:
$ref: '#/definitions/ReadingState'
privacy:
$ref: '#/definitions/Privacy'
created_at:
$ref: '#/definitions/CreatedAt'
touched_at:
# for state, privacy, rating
$ref: '#/definitions/TouchedAt'
started_at:
$ref: '#/definitions/StartedAt'
ended_at:
$ref: '#/definitions/EndedAt'
duration:
$ref: '#/definitions/Duration'
progress:
$ref: '#/definitions/ReadingProgress'
comments_count:
$ref: '#/definitions/CommentsCount'
highlights_count:
type: integer
description: 劃線/註記總數
format: int64
readOnly: true
position:
type: number
description: 最近的閱讀位置(0 ~ 1)
format: float
position_updated_at:
type: string
description: 最近閱讀位置的更新時間
format: date-time
location:
type: string
description: 最後閱讀位置(CFI 片段)
rating:
$ref: '#/definitions/Rating'
required:
- state
- privacy
- created_at
- touched_at
- started_at
- ended_at
- duration
- progress
- comments_count
- position
- position_updated_at
- location
- rating
ReadingState:
type: string
description: 閱讀狀態
enum:
- new
- interesting
- reading
- finished
- abandoned
PlaybackState:
type: string
description: 播放狀態
enum:
- new
- interesting
- playing
- finished
- abandoned
SubscriptionState:
type: string
description: |
訂閱狀態:
- not_yet:未訂閱
- active:已訂閱
- lapsed:訂閱終止(包含扣款失敗、逾期、取消)
enum:
- not_yet
- active
- lapsed
Privacy:
type: string
description: 隱私狀態
enum:
- everyone
- friends
- self
CommentsCount:
type: integer
description: 評論總數
format: int64
readOnly: true
FavorsCount:
type: integer
description: 暢讀書籍收藏總數
format: int64
readOnly: true
LikesCount:
type: integer
description: 被按讚 / 喜愛總數
format: int64
readOnly: true
CollectsCount:
type: integer
description: 被收藏總數
format: int64
readOnly: true
CreatedAt:
type: string
description: 建立時間
format: date-time
ModifiedAt:
type: string
description: 最後更新時間
format: date-time
PinnedAt:
type: string
description: 建立書籤時間
format: date-time
StartedAt:
type: string
description: 開始時間
format: date-time
TouchedAt:
type: string
description: 最近資訊更新時間
format: date-time
EndedAt:
type: string
description: 結束時間
format: date-time
BookmarkedAt:
type: string
description: 建立書籤時間
format: date-time
HighlightedAt:
type: string
description: 畫線/註記時間
format: date-time
NotifiedAt:
type: string
description: 通知時間
format: date-time
UpdatedAt:
type: string
description: 更新時間
format: date-time
ExpiredAt:
type: string
description: 到期時間
format: date-time
Rating:
type: integer
description: 對書籍的評分(-1:無評分)
format: int32
enum: [-1, 1, 2, 3, 4, 5]
ReadingProgress:
type: number
description: |
閱讀進度(0 ~ 1),
目前閱讀進度與閱讀位置的值相同,
實際的差異應該要將閱讀進度修改為全書已讀的比例,
與閱讀位置為全書的絕對位置意涵不同。
format: float
minimum: 0
maximum: 1
PlaybackProgress:
type: number
description: |
播放進度(0 ~ 1),
目前播放進度與播放位置的值相同,
實際的差異應該要將播放進度修改為全書已聽的比例,
與播放位置為全書的絕對位置意涵不同。
format: float
minimum: 0
maximum: 1
Duration:
type: integer
description: 閱讀總秒數
format: int64
PlaybackDuration:
type: integer
description: 播放總秒數
format: int64
Cfi:
type: string
description: |
最後閱讀在 EPUB 的位置,
必須符合 [Canonical Fragment Identifiers (CFI)](http://www.idpf.org/epub/linking/cfi/) 格式
Loc:
type: integer
description: LOC 位置
format: int64
ReadinglogAttr:
type: object
properties:
identifier:
type: string
description: 閱讀階段編號,每次開書都應該使用不同的編號,格式為 UUID
format: uuid
cfi:
$ref: '#/definitions/Cfi'
loc:
$ref: '#/definitions/Loc'
chapter:
$ref: '#/definitions/Chapter'
duration:
$ref: '#/definitions/Duration'
progress:
$ref: '#/definitions/ReadingProgress'
auto_play:
type: boolean
description: 是否採用自動播放翻頁(如:開啟文字轉語音功能後自動邊播放內文邊自動翻頁)
occurred_at:
type: string
description: 最近一段閱讀行為的結束時間
format: date-time
user_agent:
type: string
description: User Agent 識別文字
reading_preference:
type: string
description: |
JSON 格式 “字串” 的閱讀介面設定參數,
JSON 內參數組成可自行視實際需要添補、修改、刪除,
如:`'{"epub-writing-mode": "vertical-rl"}'`
format: json
ip:
type: string
description: 閱讀裝置的 IP 位址
latitude:
type: number
description: 緯度
format: float
longitude:
type: number
description: 經度
format: float
required:
- identifier
- cfi
- loc
- chapter
- duration
- progress
- auto_play
- occurred_at
- user_agent
- reading_preference
- ip
- latitude
- longitude
Bookmark:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- bookmarks
attributes:
allOf:
- $ref: '#/definitions/BookmarkAttr'
required:
- device
- bookmarked_at
relationships:
type: object
properties:
book:
$ref: '#/definitions/ToOne'
reading:
$ref: '#/definitions/ToOne'
user:
$ref: '#/definitions/ToOne'
path:
$ref: '#/definitions/ToOne'
required:
- book
- reading
- user
- path
required:
- attributes
- relationships
DocumentBookmark:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- bookmarks
attributes:
allOf:
- $ref: '#/definitions/DocumentBookmarkAttr'
required:
- device
- bookmarked_at
relationships:
$ref: '#/definitions/DocumentRel'
required:
- attributes
- relationships
BookmarkAttr:
type: object
properties:
title:
type: string
description: 自訂標題
note:
type: string
description: 書籤附註
emoji:
$ref: '#/definitions/Emoji'
color:
$ref: '#/definitions/Color'
device:
$ref: '#/definitions/DeviceType'
bookmarked_at:
$ref: '#/definitions/BookmarkedAt'
required:
- title
- note
- emoji
- color
- device
- bookmarked_at
DocumentBookmarkAttr:
type: object
properties:
chapter:
$ref: '#/definitions/Chapter'
cfi:
$ref: '#/definitions/Cfi'
title:
type: string
description: 自訂標題
content:
type: string
description: 畫線內容
note:
type: string
description: 書籤附註
emoji:
$ref: '#/definitions/Emoji'
color:
$ref: '#/definitions/Color'
device:
$ref: '#/definitions/DeviceType'
bookmarked_at:
$ref: '#/definitions/BookmarkedAt'
required:
- chapter
- cfi
- title
- content
- note
- emoji
- color
- device
- bookmarked_at
DocumentRel:
type: object
properties:
document:
$ref: '#/definitions/ToOne'
user:
$ref: '#/definitions/ToOne'
required:
- document
- user
Highlight:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- highlights
attributes:
$ref: '#/definitions/HighlightAttr'
relationships:
type: object
properties:
book:
$ref: '#/definitions/ToOne'
reading:
$ref: '#/definitions/ToOne'
user:
$ref: '#/definitions/ToOne'
range:
$ref: '#/definitions/ToOne'
comments:
$ref: '#/definitions/ToMany'
required:
- book
- reading
- user
- range
- comments
ExportHighlight:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
url:
type: string
description: 匯出的劃線註記的URL
format: url
hash:
type: string
description: 匯出檔案的hash值(sha256)
size:
type: integer
description: 匯出檔案的大小(位元數)
format: int64
ratio:
type: number
description: 匯出字數佔原書字數的比例
format: float
ratio_limit:
type: number
description: 匯出字數佔原書字數的比例上限
format: float
export_status:
type: string
description: 匯出狀態
enum:
- success
- exceed_ratio_limit
required:
- url
- hash
- size
- ratio
- ratio_limit
- export_status
DocumentHighlight:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- doc_highlights
attributes:
$ref: '#/definitions/DocumentHighlightAttr'
relationships:
$ref: '#/definitions/DocumentRel'
required:
- attributes
- relationships
HighlightAttr:
type: object
properties:
title:
type: string
description: 自訂標題
annotation:
type: string
description: 註記內容
emoji:
$ref: '#/definitions/Emoji'
color:
$ref: '#/definitions/Color'
style:
$ref: '#/definitions/HighlightStyle'
privacy:
$ref: '#/definitions/Privacy'
comments_count:
$ref: '#/definitions/CommentsCount'
likes_count:
$ref: '#/definitions/LikesCount'
collects_count:
$ref: '#/definitions/CollectsCount'
highlighted_at:
$ref: '#/definitions/HighlightedAt'
required:
- title
- annotation
- emoji
- color
- style
- privacy
- comments_count
- likes_count
- collects_count
- highlighted_at
DocumentHighlightAttr:
type: object
properties:
chapter:
$ref: '#/definitions/Chapter'
cfi:
$ref: '#/definitions/Cfi'
title:
type: string
description: 自訂標題
content:
type: string
description: 畫線內容
annotation:
type: string
description: 註記內容
emoji:
$ref: '#/definitions/Emoji'
color:
$ref: '#/definitions/Color'
style:
$ref: '#/definitions/HighlightStyle'
highlighted_at:
$ref: '#/definitions/HighlightedAt'
required:
- chapter
- cfi
- title
- content
- annotation
- emoji
- color
- style
- highlighted_at
FragmentAttr:
type: object
properties:
file_version:
$ref: '#/definitions/FileVersion'
position:
type: number
description: 書檔位置(0 ~ 1)
format: float
chapter:
$ref: '#/definitions/Chapter'
cfi:
$ref: '#/definitions/Cfi'
loc:
$ref: '#/definitions/Loc'
title:
type: string
description: 書籤、劃線註記的標題
pre_content:
type: string
description: 書籤、劃線註記的前文
content:
type: string
description: 書籤、劃線註記的內文
post_content:
type: string
description: 書籤、劃線註記的後文
referenced_count:
type: integer
description: 被引用次數
format: int64
required:
- file_version
- position
- chapter
- cfi
- loc
- title
- pre_content
- content
- post_content
- referenced_count
LocalFragmentAttr:
type: object
properties:
file_version:
$ref: '#/definitions/FileVersion'
position:
type: number
description: 書檔位置(0 ~ 1)
format: float
chapter:
$ref: '#/definitions/Chapter'
cfi:
$ref: '#/definitions/Cfi'
loc:
$ref: '#/definitions/Loc'
title:
type: string
description: 書籤、劃線註記的標題
pre_content:
type: string
description: 書籤、劃線註記的前文
content:
type: string
description: 書籤、劃線註記的內文
post_content:
type: string
description: 書籤、劃線註記的後文
required:
- file_version
- position
- cfi
- loc
- content
LocalFragmentPath:
type: object
description: 書刊內文片段路徑回傳格式
allOf:
- $ref: '#/definitions/LocalResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- paths
attributes:
$ref: '#/definitions/LocalFragmentAttr'
required:
- attributes
example:
type: paths
lid: f47b1f8a-fe9e-11e7-8be5-0ed5f89f718b
attributes:
file_version: '1.054'
position: 0.9
chapter: 286
cfi: "/6/572!/4/16/1:473"
loc: 1234
title: 第二八三回 疾惡斃窮凶 無限纏綿悲死孽 痴情憐覆水 雙心燦爛傲飛仙
content: 幾成一體。因受魔制,自將飛劍收回,持在手內,人和瘋了一般,不住哭喊號叫,滿地亂蹦亂滾,不時回手向身上
LocalFragmentRange:
type: object
description: 書刊內文片段範圍回傳格式
allOf:
- $ref: '#/definitions/LocalResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- ranges
attributes:
$ref: '#/definitions/LocalFragmentAttr'
required:
- attributes
example:
type: ranges
lid: 891ecf80-ff38-11e7-8be5-0ed5f89f718b
attributes:
file_version: '1.001'
position: 0.374
chapter: 9
cfi: "/6/18!/4/50,/1:59,/3:1"
loc: 1234
title: null
pre_content: 然後解釋,
content: 挑選工作唯一重要的選擇標準,就是「快速成長」。
post_content: 公司快速成長時,
UserAttr:
type: object
properties:
nickname:
type: string
description: 會員暱稱
avatar:
$ref: '#/definitions/Avatar'
required:
- nickname
- avatar
DeviceType:
type: string
description: 裝置類型
enum:
- phone
- tablet
- mobile
- desktop
- mooink
DeviceAttr:
type: object
properties:
name:
type: string
description: 裝置名稱,如:小明的手機
info:
type: string
description: 裝置資訊,如:Apple iPhone 7 Plus
device_type:
$ref: '#/definitions/DeviceType'
user_agent:
type: string
description: |
User agent 字串
registered_at:
type: string
description: 註冊時間
format: date-time
required:
- name
- info
- device_type
- user_agent
- registered_at
UpdatedDeviceAttr:
type: object
properties:
name:
type: string
description: 裝置名稱,如:小明的手機
info:
type: string
description: 裝置資訊,如:Apple iPhone 7 Plus
device_type:
$ref: '#/definitions/DeviceType'
user_agent:
type: string
description: |
User agent 字串
registered_at:
type: string
description: 註冊時間
format: date-time
Emoji:
type: string
description: 心情符號
enum:
- unspecified
- smile
- angry
- sad
- happy
Color:
type: string
description: 顯示顏色
enum:
- yellow
- red
- purple
- green
- blue
HighlightStyle:
type: string
description: 劃線註記的顯示型態
enum:
- block
- line
Document:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- documents
attributes:
type: object
properties:
title:
type: string
description: 文件標題
cover:
$ref: '#/definitions/Cover'
creator:
type: string
description: 文件作者
language:
$ref: '#/definitions/Language'
file:
type: object
description: 檔案資訊
properties:
filename:
type: string
description: 文件檔名
filesize:
type: integer
description: 檔案大小
format: int64
file_extension:
type: string
description: 副檔名
status:
type: string
description: 轉檔狀態
created_at:
$ref: '#/definitions/CreatedAt'
required:
- filename
- filesize
- file_extension
- status
- created_at
urls:
type: object
description: 書檔相關的 URL
properties:
toc:
type: string
description: 書檔目錄及統計資訊 json 檔的 URL
format: url
reader:
type: string
description: 網頁版閱讀 URL
format: url
license:
type: string
description: 授權檔下載位址
format: url
epub:
type: string
description: EPUB 檔案下載 URL
format: url
epub:
$ref: '#/definitions/Epub'
count:
$ref: '#/definitions/Count'
reading:
$ref: '#/definitions/ReadingAttr'
required:
- title
- cover
# - creator
# - language
- file
- urls
- epub
- count
- reading
relationships:
type: object
properties:
doc_bookmarks:
$ref: '#/definitions/ToMany'
doc_highlights:
$ref: '#/definitions/ToMany'
required:
- doc_bookmarks
- doc_highlights
required:
- attributes
- relationships
Epub:
type: object
description: |
EPUB 檔案
deprecated:未來將廢棄不用,請改判斷 files 的 product_form_detail 為 E101
properties:
rendition:
$ref: '#/definitions/Rendition'
filesize:
type: integer
description: EPUB 檔案大小
format: int64
latest_version:
$ref: '#/definitions/FileVersion'
last_modified_at:
type: string
description: 檔案上傳日期
format: date-time
required:
- rendition
- filesize
- latest_version
- last_modified_at
File:
type: object
description: EPUB 檔案
properties:
product_form:
type: string
description: |
商品型態,對應 ONIX 的 codelist 150:
- online(EC)
- both(EB)
- download(ED)
enum:
- online
- both
- download
product_form_detail:
type: string
description: |
檔案格式,對應 ONIX 的 codelist 175:
- epub 格式
- pdf 格式
- mobi 格式
- mp3 格式(如果是有聲書,App 下載的是 PWP 封裝 MP3 的格式)
enum:
- epub
- pdf
- mobi
- mp3
rendition:
$ref: '#/definitions/Rendition'
filesize:
type: integer
description: EPUB 檔案大小
format: int64
latest_version:
$ref: '#/definitions/FileVersion'
last_modified_at:
type: string
description: 檔案上傳日期
format: date-time
required:
- product_form
- product_form_detail
- filesize
- latest_version
- last_modified_at
NoteFile:
type: object
description: 筆記檔案相關資訊
properties:
name:
type: string
description: 檔案名稱
mime_type:
$ref: '#/definitions/NoteFileType'
size:
type: integer
description: 檔案大小
format: int64
md5:
type: string
description: 檔案md5
required:
- name
- mime_type
- size
- md5
example:
name: "測試手寫筆記.pdf"
mime_type: "application/pdf"
size: 1024
md5: 32b0125a58633dd5269442f82a3c9623
Tag:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- tags
attributes:
$ref: '#/definitions/TagAttr'
relationships:
type: object
properties:
library_items:
$ref: '#/definitions/ToMany'
required:
- library_items
required:
- attributes
- relationships
TagAttr:
type: object
properties:
name:
type: string
description: 標籤名稱
urls:
type: object
description: 標籤相關的 URL
properties:
covers:
type: array
description: |
書櫃中標註此標籤之書籍封面集合,預設列出三本書籍封面,
可透過 filter[covers][count] 修改回傳數量。
items:
$ref: '#/definitions/Cover'
readOnly: true
count:
type: integer
description: 書櫃中標註此標籤之書籍總數
format: int32
readOnly: true
required:
- name
- urls
Price:
type: object
properties:
PriceCode:
type: string
description: |
價格代碼:
02: 含稅定價
04: 含稅售價
12: 含稅特價
13: 領書額度
99: 紙本售價
enum:
- '02'
- '04'
- '12'
- '13'
- '99'
PriceType:
type: string
description: |
價格類別:
- list: 含稅定價
- retail: 含稅售價
- sale: 含稅特價
- voucher: 領書額度
- reference: 紙本售價
enum:
- list
- retail
- sale
- voucher
- reference
PriceAmount:
type: number
description: 價格或點數
format: float
CurrencyCode:
type: string
description: |
幣別:
- TWD: 新台幣
- MOO: Readmoo 領書額度
enum:
- 'TWD'
- 'MOO'
required:
- PriceCode
- PriceType
- PriceAmount
- CurrencyCode
AutoRenew:
type: object
description: 自動續訂
properties:
title:
type: string
description: 自動續訂方案名稱
price:
$ref: '#/definitions/Price'
required:
- title
- price
Summary:
type: object
properties:
owns:
$ref: '#/definitions/Total'
reading:
$ref: '#/definitions/Total'
finished:
$ref: '#/definitions/Total'
highlights:
$ref: '#/definitions/Total'
reviews:
$ref: '#/definitions/Total'
duration:
$ref: '#/definitions/Total'
required:
- owns
- reading
- finished
- highlights
- reviews
- duration
Error:
type: array
description: 錯誤訊息清單
items:
type: object
description: 錯誤訊息
properties:
links:
type: object
properties:
about:
type: string
description: json:api 文件的參考對應 URL
format: url
required:
- about
status:
type: string
description: HTTP 回應編號
code:
type: string
description: Readmoo 錯誤編號
title:
type: string
description: 錯誤標題
detail:
type: string
description: 錯誤資訊
required:
- links
- status
- title
- detail
Book:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- books
attributes:
type: object
properties:
title:
type: string
description: 書名
subtitle:
type: string
description: 書名副標題
original_language_title:
type: string
description: 原文書名
original_language_subtitle:
type: string
description: 原文副標題
cover:
$ref: '#/definitions/Cover'
author:
type: string
description: 作者名稱
short_description:
type: string
description: 書籍簡介
description:
type: string
description: 書籍介紹
isbn:
type: string
description: ISBN 編碼
language:
$ref: '#/definitions/Language'
main_subject:
type: string
description: 最上層主分類
product_type:
type: string
description: |
產品類別說明如下:
- book:圖書
- magazine:雜誌
- retail:用品零售
- other:其他
- shipping_fee:運費
- unearned_receipts:預收
- moopoint:禮券
- readdict:領書額度
- audiobook:有聲書
enum:
- book
- magazine
- retail
- other
- shipping_fee
- unearned_receipts
- moopoint
- readdict
- audiobook
publication_date:
type: string
description: 出版日期
format: date-time
adult_only:
type: boolean
description: 內容僅限成人閱讀
urls:
type: object
description: 書籍相關的 URL
properties:
webpage:
type: string
description: 單書頁網頁的 URL
format: url
reader:
type: string
description: 試讀網頁版 URL
format: url
toc:
type: string
description: 試讀書檔目錄及統計資訊 json 檔的 URL
format: url
epub:
type: string
description: 試讀 EPUB 檔案下載 URL
format: url
audiobook:
type: string
description: 試讀有聲書(PWP 格式)檔案下載 URL
format: url
related:
type: object
description: 書籍相關的 API
properties:
subscriptions:
type: string
description: 書籍訂閱的 API
format: url
bundles:
type: string
description: 套賣書籍的 API
format: url
installments:
type: string
description: 系列/連載的 API
format: url
recommendations:
type: string
description: 相關推薦的 API
format: url
epub:
$ref: '#/definitions/Epub'
files:
type: array
items:
$ref: '#/definitions/File'
suspend:
type: boolean
description: 是否暫停銷售
prices:
type: array
items:
$ref: '#/definitions/Price'
available_at:
type: string
description: 開賣時間
format: date-time
preorder:
type: object
description: 預購資訊
properties:
started_at:
$ref: '#/definitions/StartedAt'
ended_at:
$ref: '#/definitions/EndedAt'
delivered_at:
type: string
description: 派送時間
format: date-time
count:
$ref: '#/definitions/Count'
aggregate_rating:
$ref: '#/definitions/AggregateRating'
region_restrictions:
type: string
description: 區域限制說明
policy:
$ref: '#/definitions/Policy'
subscribable:
type: boolean
description: 是否可以訂閱
bundle_type:
type: string
description: |
套賣形式,合法值說明如下:
- none:非套賣商品
- primary:套賣主商品
- item:套賣單品
enum:
- none
- primary
- item
in_installment:
type: boolean
description: 屬於系列 / 連載書籍
required:
- title
- subtitle
- cover
- author
- short_description
- description
- isbn
- language
- main_subject
- product_type
- publication_date
- adult_only
- urls
- related
- epub
- suspend
- prices
- available_at
- preorder
- count
- aggregate_rating
- region_restrictions
- subscribable
- bundle_type
- in_installment
relationships:
type: object
properties:
publisher:
$ref: '#/definitions/ToOne'
top_main_category:
$ref: '#/definitions/ToOne'
categories:
$ref: '#/definitions/ToMany'
contributors:
$ref: '#/definitions/RelContributors'
reviews:
$ref: '#/definitions/ToMany'
highlights:
$ref: '#/definitions/ToMany'
required:
- publisher
- top_main_category
- categories
- contributors
- reviews
- highlights
required:
- attributes
- relationships
AggregateRating:
type: object
description: 書籍的評分資訊
properties:
rating_value:
type: number
description: 對書籍評分的平均分數
format: float
rating_count:
type: integer
description: 對書籍評分的次數
format: int32
required:
- rating_value
- rating_count
Review:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- reviews
attributes:
type: object
properties:
privacy:
$ref: '#/definitions/Privacy'
title:
type: string
description: 書評標題
content:
type: string
description: 書評文字
comments_count:
$ref: '#/definitions/CommentsCount'
likes_count:
$ref: '#/definitions/LikesCount'
collects_count:
$ref: '#/definitions/CollectsCount'
created_at:
$ref: '#/definitions/CreatedAt'
latest_modified_at:
$ref: '#/definitions/ModifiedAt'
urls:
type: object
properties:
webpage:
type: string
description: 單一書評頁的 url
format: url
required:
- privacy
- title
- content
- comments_count
- likes_count
- collects_count
- created_at
- latest_modified_at
- urls
relationships:
type: object
properties:
reading:
$ref: '#/definitions/ToOne'
book:
$ref: '#/definitions/ToOne'
user:
$ref: '#/definitions/ToOne'
required:
- reading
- book
- user
required:
- attributes
- relationships
example:
type: reviews
id: '1750'
attributes:
privacy: everyone
title: ''
content: 看完書後,你大概也會跟我一樣對教科書上的歷史感到深惡痛絕,那根本不是真相,說是精心包裝的糖果,洗腦欠缺判斷能力的大眾,以遂行其鞏固政權、醜化不同陣營的目的。
comments_count: 0
likes_count: 0
collects_count: 0
created_at: '2016-10-26T01:57:05Z'
latest_modified_at: '2016-10-26T01:57:05Z'
Comment:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- comments
attributes:
type: object
properties:
content:
type: string
description: 評論內文
posted_at:
type: string
description: 發表回應時間
format: date-time
required:
- content
- posted_at
relationships:
type: object
properties:
reply_to:
$ref: '#/definitions/ToOne'
commentator:
$ref: '#/definitions/ToOne'
highlight:
$ref: '#/definitions/ToOne'
review:
$ref: '#/definitions/ToOne'
required:
- reply_to
- commentator
- highlight
- review
required:
- attributes
- relationships
Badge:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- badges
attributes:
type: object
properties:
title:
type: string
description: 徽章標題
description:
type: string
description: 描述文字
source:
type: string
description: 來源
enum:
- read
- event
level:
type: integer
description: 徽章等級
format: int32
image:
$ref: '#/definitions/ImageLink'
created_at:
$ref: '#/definitions/CreatedAt'
required:
- title
- description
- source
- level
- image
- created_at
relationships:
type: object
properties:
prev:
$ref: '#/definitions/RelBadge'
next:
$ref: '#/definitions/RelBadge'
required:
- prev
- next
required:
- attributes
- relationships
Bundle:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- bundles
attributes:
type: object
properties:
title:
type: string
description: 套賣標題
total_count:
type: integer
description: 套賣商品總數
format: int64
required:
- title
- total_count
relationships:
type: object
properties:
primary:
$ref: '#/definitions/ToOne'
items:
$ref: '#/definitions/ToMany'
required:
- attributes
- relationships
Installment:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- installments
attributes:
type: object
properties:
title:
type: string
description: 系列標題
description:
type: string
description: 描述文字
is_finale:
type: boolean
description: 已經完結
total:
type: integer
description: 系列書籍本數
required:
- title
- description
- is_finale
- total
required:
- attributes
RelContributors:
type: object
properties:
data:
type: array
items:
type: object
properties:
type:
type: string
description: 型別
enum:
- contributors
id:
type: string
description: 編號
meta:
type: object
properties:
role:
type: string
description: 貢獻者角色編號,參考 [ONIX Codelist 17 Contributor role code](https://onix-codelists.io/codelist/17)
description:
type: string
description: 貢獻者角色說明
required:
- role
- description
required:
- type
- id
- meta
RelInstallments:
type: object
properties:
data:
type: array
items:
type: object
properties:
type:
type: string
description: 型別
enum:
- installments
id:
type: string
description: 編號
meta:
type: object
properties:
sequence:
type: integer
description: 於該系列的順序
required:
- sequence
required:
- type
- id
- meta
RelBadge:
type: object
properties:
data:
type: object
properties:
type:
type: string
description: 型別
enum:
- badges
id:
type: string
description: 編號
required:
- data
RelBadges:
type: object
properties:
data:
type: array
items:
type: object
properties:
type:
type: string
description: 型別
enum:
- badges
id:
type: string
description: 編號
meta:
type: object
properties:
top:
$ref: '#/definitions/Value'
current:
$ref: '#/definitions/Value'
required:
- top
- current
required:
- type
- id
- meta
required:
- data
RelBook:
type: object
properties:
links:
type: object
properties:
related:
type: string
format: url
required:
- related
data:
type: object
properties:
type:
type: string
enum:
- books
id:
type: string
required:
- type
- id
required:
- links
- data
RelUnlimitedList:
type: object
properties:
data:
type: object
properties:
type:
type: string
enum:
- unlimited_lists
id:
type: string
required:
- data
Note:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- notes
attributes:
type: object
properties:
emails:
type: string
description: 電子信箱(多個信箱以","分隔)
note_type:
$ref: '#/definitions/NoteType'
status:
$ref: '#/definitions/NoteStatus'
downloadable:
type: boolean
description: 是否可下載
file:
$ref: '#/definitions/NoteFile'
upload:
type: object
description: 上傳相關資訊
properties:
url:
type: string
description: AWS PreSigned Url 預簽連結
format: url
expired_at:
$ref: '#/definitions/ExpiredAt'
required:
- url
- expired_at
download:
type: object
description: 下載相關資訊
properties:
url:
type: string
description: 檔案連結
format: url
expired_at:
$ref: '#/definitions/ExpiredAt'
required:
- url
- expired_at
required:
- emails
- note_type
- status
- downloadable
- file
- upload
relationships:
type: object
properties:
device:
$ref: '#/definitions/ToOne'
required:
- device
required:
- attributes
- relationships
NoteAttr:
type: object
properties:
emails:
type: string
description: 電子信箱(多個信箱以","分隔)
note_type:
$ref: '#/definitions/NoteType'
file:
$ref: '#/definitions/NoteFile'
required:
- note_type
- emails
- file
NoteType:
type: string
description: |
筆記類型:
- handwriting 手寫筆記
- highlight 劃線筆記
enum:
- handwriting
- highlight
NoteStatus:
type: string
description: |
狀態:
- waiting 準備上傳
- uploaded 上傳完成
- sent 通知信已寄出
enum:
- waiting
- uploaded
- sent
NoteFileStatus:
type: string
description: |
上傳筆記檔案狀態:
- uploading 上傳中
- uploaded 上傳完成
- failed 上傳失敗
- deleted 已刪除
enum:
- uploading
- uploaded
- failed
- deleted
NoteFileType:
type: string
description: |
檔案的 MIME type,清單如下:
- application/pdf: PDF
- text/csv: CSV
enum:
- application/pdf
- text/csv
Notification:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- notifications
attributes:
type: object
properties:
title:
type: string
description: 通知標題
notification_type:
type: string
description: 通知類型
enum:
- promotion
- system-announcement
is_read:
type: boolean
description: 是否已讀訊息
link:
type: string
description: 詳細內容網址的 url
format: url
content:
type: string
description: 通知內容
notified_at:
$ref: '#/definitions/NotifiedAt'
required:
- title
- notification_type
- is_read
- link
- content
- notified_at
required:
- attributes
MediaItem:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- media_items
attributes:
type: object
properties:
new:
type: boolean
description: 新的有聲書
archive:
type: boolean
description: 是否已封存有聲書
subscribable:
type: boolean
description: 是否可以訂閱
policy:
$ref: '#/definitions/Policy'
urls:
type: object
description: 相關的 URL
properties:
reader:
type: string
description: 網頁版閱讀 URL
format: url
audiobook:
type: string
description: 有聲書(PWP 格式)檔案下載 URL
format: url
loaned:
type: boolean
description: 有聲書是否已借出
borrowed:
type: boolean
description: 有聲書是否是借來的
required:
- new
- archive
- subscribable
- policy
- urls
relationships:
type: object
properties:
playback:
$ref: '#/definitions/ToOne'
tags:
$ref: '#/definitions/ToMany'
book_slip:
$ref: '#/definitions/ToOne'
required:
- playback
- tags
required:
- attributes
- relationships
Pin:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- pins
attributes:
$ref: '#/definitions/PinAttr'
relationships:
type: object
properties:
book:
$ref: '#/definitions/ToOne'
playback:
$ref: '#/definitions/ToOne'
user:
$ref: '#/definitions/ToOne'
required:
- book
- playback
- user
required:
- attributes
- relationships
PinAttr:
type: object
properties:
location:
type: string
description: 播放秒數位置
title:
type: string
description: 自訂標題
note:
type: string
description: 書籤附註
color:
$ref: '#/definitions/Color'
device:
$ref: '#/definitions/DeviceType'
pinned_at:
$ref: '#/definitions/PinnedAt'
required:
- location
- color
- pinned_at
example:
location: assets/chapter01.mp3#t=66
title: 自訂標題
note: 書籤附註
color: blue
device: phone
pinned_at: '2019-03-20T08:18:08Z'
Playback:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- playbacks
attributes:
$ref: '#/definitions/PlaybackAttr'
relationships:
type: object
properties:
book:
$ref: '#/definitions/ToOne'
pins:
$ref: '#/definitions/ToMany'
clips:
$ref: '#/definitions/ToMany'
required:
- book
- review
- bookmarks
- clips
required:
- attributes
- relationships
PlaybackAttr:
type: object
properties:
state:
$ref: '#/definitions/PlaybackState'
privacy:
$ref: '#/definitions/Privacy'
created_at:
$ref: '#/definitions/CreatedAt'
updated_at:
# for state, privacy, rating
$ref: '#/definitions/UpdatedAt'
started_at:
$ref: '#/definitions/StartedAt'
ended_at:
$ref: '#/definitions/EndedAt'
location_updated_at:
type: string
description: 最近播放位置的更新時間
format: date-time
location:
type: string
description: 播放秒數位置
duration:
$ref: '#/definitions/PlaybackDuration'
remaining:
type: integer
description: 剩餘秒數
format: int64
progress:
$ref: '#/definitions/PlaybackProgress'
clips_count:
type: integer
description: 片段總數
format: int64
rating:
$ref: '#/definitions/Rating'
required:
- state
- privacy
- created_at
- updated_at
- started_at
- ended_at
- location_updated_at
- location
- duration
- remaining
- progress
- clips_count
- rating
Playbacklog:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- playbacklogs
attributes:
$ref: '#/definitions/PlaybacklogAttr'
relationships:
$ref: '#/definitions/PlaybacklogRel'
required:
- attributes
- relationships
PlaybacklogAttr:
type: object
properties:
identifier:
type: string
description: 播放階段編號,每次聽書都應該使用不同的編號,格式為 UUID
format: uuid
location:
type: string
description: 播放秒數位置
duration:
$ref: '#/definitions/PlaybackDuration'
remaining:
type: integer
description: 剩餘秒數
format: int64
progress:
$ref: '#/definitions/PlaybackProgress'
occurred_at:
type: string
description: 最近一段閱讀行為的結束時間
format: date-time
user_agent:
type: string
description: User Agent 識別文字
playback_preference:
type: string
description: |
JSON 格式 “字串” 的閱讀介面設定參數,
JSON 內參數組成可自行視實際需要添補、修改、刪除,
如:`'{"speed": "1.5"}'`
format: json
ip:
type: string
description: 閱讀裝置的 IP 位址
latitude:
type: number
description: 緯度
format: float
longitude:
type: number
description: 經度
format: float
required:
- identifier
- location
- duration
- remaining
- progress
- occurred_at
- user_agent
- playback_preference
- ip
- latitude
- longitude
UpdatePinAttr:
type: object
properties:
title:
type: string
description: 自訂標題
note:
type: string
description: 書籤附註
color:
$ref: '#/definitions/Color'
device:
$ref: '#/definitions/DeviceType'
pinned_at:
$ref: '#/definitions/PinnedAt'
required:
- pinned_at
example:
title: 自訂標題
note: 書籤附註
color: blue
device: phone
pinned_at: '2019-03-20T08:18:08Z'
PlaybacklogRel:
type: object
properties:
playback:
$ref: '#/definitions/ToOne'
event:
$ref: '#/definitions/ToOne'
required:
- playback
- event
Unlimited:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- unlimiteds
attributes:
type: object
properties:
title:
type: string
description: 暢讀包名稱
content:
type: string
description: 暢讀包內容
started_at:
$ref: '#/definitions/StartedAt'
ended_at:
$ref: '#/definitions/EndedAt'
plans:
type: array
description: 不同期限的訂閱方案
items:
type: object
description: 訂閱方案
properties:
readmoo_id:
type: string
description: 銷售品項編號
title:
type: string
description: 方案名稱
days:
type: integer
description: 天數
format: int32
price:
$ref: '#/definitions/Price'
webpage:
type: string
format: url
description: 訂閱方案的結帳網頁網址
required:
- title
- readmoo_id
- days
- price
- webpage
adult_only:
type: boolean
description: 內容僅限成人閱讀
urls:
type: object
properties:
banner:
$ref: '#/definitions/ImageLink'
required:
- banner
product_includeds:
type: array
items:
type: string
description: |
暢讀包涵蓋產品類型
- book:書籍
- magazine:雜誌
- audiobook:有聲書
enum:
- book
- magazine
- audiobook
required:
- title
- content
- started_at
- ended_at
- subscription
- adult_only
- urls
- product_includeds
relationships:
type: object
description: |
以下說明各組成內容的意涵
- unlimited_items:若出現表示此暢讀包允許取得暢讀清單,反之則否
- favor_items:取得使用者收藏此暢讀包內書籍的清單
properties:
unlimited_items:
$ref: '#/definitions/RelatedLink'
favor_items:
$ref: '#/definitions/SelfLink'
latest_books:
$ref: '#/definitions/RelUnlimitedItemsFilterLink'
hottest_books:
$ref: '#/definitions/RelUnlimitedItemsFilterLink'
recommended_books:
$ref: '#/definitions/RelUnlimitedItemsFilterLink'
book_categories:
$ref: '#/definitions/RelUnlimitedListFilterLink'
latest_magazines:
$ref: '#/definitions/RelUnlimitedItemsFilterLink'
hottest_magazines:
$ref: '#/definitions/RelUnlimitedItemsFilterLink'
recommended_magazines:
$ref: '#/definitions/RelUnlimitedItemsFilterLink'
magazine_categories:
$ref: '#/definitions/RelUnlimitedListFilterLink'
example:
unlimited_items:
links:
related: https://api.readmoo.com/store/v3/unlimiteds/7/unlimited_items
favor_items:
links:
self: https://api.readmoo.com/store/v3/unlimiteds/7/relationships/favor_items
related:
href: https://api.readmoo.com/store/v3/me/favor_items?filter[rel.type]=unlimiteds&filter[rel.id]=7
meta:
filter:
rel.type: unlimiteds
rel.id: '7'
latest_books:
links:
related:
href: https://api.readmoo.com/store/v3/unlimiteds/7/latest_books?filter%5Blist%5D=u7_b4617
meta:
filter:
list: u7_b4617
hottest_books:
links:
related:
href: https://api.readmoo.com/store/v3/unlimiteds/7/hottest_books?filter%5Blist%5D=u7_b4616
meta:
filter:
list: u7_b4616
recommended_books:
links:
related:
href: https://api.readmoo.com/store/v3/unlimiteds/7/recommended_books?filter%5Blist%5D=u7_b4618
meta:
filter:
list: u7_b4618
book_categories:
links:
related:
href: https://api.readmoo.com/store/v3/unlimiteds/7/unlimited_lists?filter%5Bfor_product_type%5D=book
meta:
filter:
for_product_type: 'book'
latest_magazines:
links:
related:
href: https://api.readmoo.com/store/v3/unlimiteds/7/latest_magazines?filter%5Blist%5D=u7_b4614
meta:
filter:
list: u7_b4614
hottest_magazines:
links:
related:
href: https://api.readmoo.com/store/v3/unlimiteds/7/hottest_magazines?filter%5Blist%5D=u7_b4613
meta:
filter:
list: u7_b4613
recommended_magazines:
links:
related:
href: https://api.readmoo.com/store/v3/unlimiteds/7/recommended_magazines?filter%5Blist%5D=u7_b4615
meta:
filter:
list: u7_b4615
magazine_categories:
links:
related:
href: https://api.readmoo.com/store/v3/unlimiteds/7/unlimited_lists?filter%5Bfor_product_type%5D=magazine
meta:
filter:
for_product_type: magazine
required:
- attributes
- relationships
UnlimitedItem:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- unlimited_items
attributes:
type: object
properties:
readmoo_id:
type: string
description: 銷售品項編號
title:
type: string
description: 書名
policy:
$ref: '#/definitions/Policy'
urls:
type: object
description: 書檔相關的 URL
properties:
toc:
type: string
description: 書檔目錄及統計資訊 json 檔的 URL
format: url
reader:
type: string
description: 網頁版閱讀 URL
format: url
license:
type: string
description: 授權檔下載位址
format: url
epub:
type: string
description: EPUB 檔案下載 URL
format: url
audiobook:
type: string
description: 有聲書(PWP 格式)檔案下載 URL
format: url
required:
- toc
- reader
started_at:
$ref: '#/definitions/StartedAt'
ended_at:
$ref: '#/definitions/EndedAt'
created_at:
$ref: '#/definitions/CreatedAt'
required:
- readmoo_id
- title
- urls
- created_at
relationships:
type: object
properties:
unlimited:
$ref: '#/definitions/ToOne'
subscription:
$ref: '#/definitions/RelUnlimitedList'
book:
$ref: '#/definitions/ToOne'
required:
- book
- unlimited
required:
- attributes
- relationships
UnlimitedList:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- unlimited_lists
attributes:
type: object
properties:
label:
type: string
description: 清單標題
for_product_type:
type: string
enum:
- book
- magazine
- audiobook
allow_favor:
type: boolean
description: 是否允許批次收藏全部或自動收藏新刊
required:
- label
- for_product_type
- allow_favor
relationships:
type: object
properties:
parent:
$ref: '#/definitions/ToOne'
unlimited:
$ref: '#/definitions/ToOne'
unlimited_items:
$ref: '#/definitions/RelUnlimitedItemsFilterLink'
required:
- parent
PageRow:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- page_rows
attributes:
type: object
properties:
title:
type: string
description: 頁面列標題
layout:
type: string
description: |
呈現樣式
- banner:單幅廣告
- banner_set:廣告 Carousel
- data_column:直式 collection / block
- data_row:橫式 collection / block
- footer:置底 nav
- nav_circle:圓形 nav(第五個僅在平版顯示)
- nav_rectangle:方形 nav
- rank:排行榜
enum:
- banner
- banner_set
- data_column
- data_row
- footer
- nav_circle
- nav_rectangle
- rank
description:
type: string
description: 佈局說明
cell_counts:
type: integer
description: 佈局內單元數量
format: int32
required:
- layout
- description
- cell_counts
relationships:
type: object
description: |
以下四個子項,
前三個子項(actions、books、ranks)不重複出現,
最後的 more 子項屬補充子項
properties:
actions:
type: object
properties:
data:
type: array
items:
type: object
properties:
type:
type: string
description: 型別
enum:
- action_cells
id:
type: string
description: 編號
required:
- type
- id
required:
- data
books:
type: object
properties:
data:
type: array
items:
type: object
properties:
type:
type: string
description: 型別
enum:
- book_cells
id:
type: string
description: 編號
required:
- type
- id
required:
- data
ranks:
type: object
properties:
data:
type: array
items:
type: object
properties:
type:
type: string
description: 型別
enum:
- rank_cells
id:
type: string
description: 編號
required:
- type
- id
required:
- data
more:
type: object
properties:
data:
type: object
properties:
type:
type: string
description: 型別
enum:
- more_cells
id:
type: string
description: 編號
required:
- type
- id
required:
- data
required:
- attributes
- relationships
ActionCell:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- action_cells
attributes:
type: object
properties:
title:
type: string
description: 資料標題
image:
type: string
format: url
target:
type: string
enum:
- book
- books
- categories
- webpage
required:
- title
- image
relationships:
type: object
properties:
books:
$ref: '#/definitions/RelatedLink'
book:
$ref: '#/definitions/RelBook'
categories:
$ref: '#/definitions/RelatedLink'
webpage:
$ref: '#/definitions/RelatedLink'
required:
- attributes
- relationships
BookCell:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- book_cells
attributes:
type: object
properties:
title:
type: string
description: 書名
image:
type: string
format: url
author:
type: string
description: 作者名稱
description:
type: string
description: 書籍簡介
publisher:
type: string
description: 出版社名稱
is_adult_cover:
type: boolean
description: 18 禁書封
prices:
type: array
items:
$ref: '#/definitions/Price'
aggregate_rating:
$ref: '#/definitions/AggregateRating'
required:
- title
- image
- author
- description
- publisher
- is_adult_cover
- prices
- aggregate_rating
relationships:
type: object
properties:
book:
$ref: '#/definitions/RelBook'
required:
- book
required:
- attributes
- relationships
RankCell:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- rank_cells
attributes:
type: object
properties:
title:
type: string
description: 書名
image:
type: string
format: url
is_adult_cover:
type: boolean
description: 18 禁書封
prices:
type: array
items:
$ref: '#/definitions/Price'
aggregate_rating:
$ref: '#/definitions/AggregateRating'
required:
- title
- image
- is_adult_cover
- prices
- aggregate_rating
relationships:
type: object
properties:
top_book:
type: object
properties:
links:
type: object
properties:
related:
type: string
format: url
data:
type: object
properties:
type:
type: string
enum:
- books
- unlimited_items
id:
type: string
required:
- links
books:
$ref: '#/definitions/RelatedLink'
required:
- books
required:
- attributes
- relationships
MoreCell:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- more_cells
attributes:
type: object
properties:
title:
type: string
description: 資料標題
required:
- title
relationships:
type: object
properties:
books:
$ref: '#/definitions/RelatedLink'
required:
- attributes
- relationships
RelatedLink:
type: object
properties:
links:
type: object
properties:
related:
type: string
format: url
required:
- related
required:
- links
RelatedFromToPageLink:
type: object
properties:
related:
type: object
description: 帶 from/to 日期區間過濾條件的清單網址
properties:
href:
type: string
format: url
meta:
type: object
properties:
page:
type: object
properties:
from:
type: string
format: date
to:
type: string
format: date
required:
- from
- to
required:
- filter
required:
- href
- meta
required:
- related
RelUnlimitedItemsFilterLink:
type: object
properties:
links:
type: object
properties:
related:
type: object
description: 帶過濾條件的暢讀書刊清單網址
properties:
href:
type: string
format: url
meta:
type: object
properties:
filter:
type: object
properties:
list:
type: string
description: 暢讀包的子清單
required:
- list
required:
- filter
required:
- href
- meta
required:
- related
required:
- links
RelUnlimitedListFilterLink:
type: object
properties:
links:
type: object
properties:
related:
type: object
description: 帶過濾條件的暢讀書刊書單的清單列表網址
properties:
href:
type: string
format: url
meta:
type: object
properties:
filter:
type: object
properties:
for_product_type:
type: string
description: 暢讀包的書單書刊類型
enum:
- book
- magazine
- audiobook
required:
- for_product_type
required:
- filter
required:
- href
- meta
required:
- related
required:
- links
Activity:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- activity
attributes:
type: object
properties:
reading_percentages:
type: array
items:
type: object
description: 占比
properties:
name:
type: string
percentage:
type: number
description: 百分比(0 ~ 1)
format: float
required:
- name
- percentage
required:
- reading_percentages
relationships:
type: object
properties:
daily_readings:
type: object
properties:
links:
$ref: '#/definitions/RelatedFromToPageLink'
data:
type: array
items:
type: object
properties:
type:
type: string
enum:
- goal_records
id:
type: string
required:
- type
- id
required:
- links
- data
reading_analytics:
type: object
properties:
links:
$ref: '#/definitions/RelatedFromToPageLink'
data:
type: array
items:
type: object
properties:
type:
type: string
enum:
- records
id:
type: string
required:
- type
- id
required:
- links
- data
finished_readings:
type: object
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
type: object
properties:
type:
type: string
enum:
- readings
id:
type: string
required:
- type
- id
required:
- meta
- links
- data
required:
- daily_readings
- reading_analytics
- finished_readings
required:
- attributes
- relationships
Category:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- categories
attributes:
type: object
properties:
name:
type: string
description: 分類名稱
cover:
$ref: '#/definitions/Cover'
relationships:
type: object
properties:
parent:
$ref: '#/definitions/ToOne'
required:
- parent
required:
- attributes
# Responses list below
BookResponse:
type: object
description: 書籍資料回傳格式
properties:
data:
$ref: '#/definitions/Book'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
- included
example:
data:
type: books
id: '210009483000101'
attributes:
title: 蜀山劍俠傳
subtitle: ''
cover:
small:
href: https://cdn.readmoo.com/cover/je/gcjorhb_210x315.jpg?v=1535364098
meta:
width: 210
resize: fit
medium:
href: https://cdn.readmoo.com/cover/je/gcjorhb_210x315.jpg?v=1535364098
meta:
width: 210
resize: fit
large:
href: https://cdn.readmoo.com/cover/je/gcjorhb_210x315.jpg?v=1535364098
meta:
width: 210
resize: fit
adult_only: false
author: 還珠樓主
short_description: "還珠樓主,原名李善基,後名李壽民、李紅,堪稱一代奇人,不但興趣廣泛,通曉諸子百家,佛經道藏、醫卜星相皆有涉獵,且走遍大江南北,經歷豐富。因與女友相戀未果,遂以其名之「珠」字嵌入筆名,以為紀念。1932年以《蜀山劍俠傳》崛起文壇。這部神怪武俠小說,篇幅浩帙,正傳50集、後傳5集,計329回,約500萬言,融神話、志怪、劍仙、武俠於一爐,文筆汪洋恣肆,風格絢爛雄奇,對後代武俠作家影響不小。\r\n"
description: "<p>還珠樓主,原名李善基,後名李壽民、李紅,堪稱一代奇人,不但興趣廣泛,通曉諸子百家,佛經道藏、醫卜星相皆有涉獵,且走遍大江南北,經歷豐富。因與女友相戀未果,遂以其名之「珠」字嵌入筆名,以為紀念。1932年以《蜀山劍俠傳》崛起文壇。這部神怪武俠小說,篇幅浩帙,正傳50集、後傳5集,計329回,約500萬言,融神話、志怪、劍仙、武俠於一爐,文筆汪洋恣肆,風格絢爛雄奇,對後代武俠作家影響不小。</p>\r\n"
isbn:
language: chi
main_subject: 武俠小說
product_type: book
publication_date: '2013-10-21T16:00:00Z'
adult_only: false
urls:
webpage: https://readmoo.com/book/210009483000101
reader: https://readmoo.com/api/Statistics/preview_log/210009483000101
toc: https://cdn.readmoo.com/book/toc/preview/210009483000101.json?v=1535393172
epub: https://cdn.readmoo.com/book/preview/210009483000101.epub?v=1535393172
related:
subscriptions: https://api.readmoo.com/books/210009483000101/subscriptions
bundles: https://api.readmoo.com/books/210009483000101/bundles
installments: https://api.readmoo.com/books/210009483000101/installments
recommendations: https://api.readmoo.com/books/210009483000101/recommendations
epub:
rendition:
layout: reflowable
flow: auto
filesize: 6298705
latest_version: '1.061'
last_modified_at: '2014-03-06T07:18:08Z'
files:
- product_form: online
product_form_detail: epub
rendition:
layout: reflowable
flow: auto
filesize: 6298705
latest_version: '1.061'
last_modified_at: '2014-03-06T07:18:08Z'
suspend: false
prices:
- PriceCode: '02'
PriceType: list
PriceAmount: 149
CurrencyCode: TWD
- PriceCode: '04'
PriceType: retail
PriceAmount: 99
CurrencyCode: TWD
- PriceCode: '99'
PriceType: reference
PriceAmount: 0
CurrencyCode: TWD
- PriceCode: '13'
PriceType: voucher
PriceAmount: 1
CurrencyCode: MOO
count:
unit: words
amount: 3555055
available_at: '2013-10-21T16:00:00Z'
preorder:
aggregate_rating:
rating_value: 3.7
rating_count: 6
region_restrictions: ''
subscribable: false
bundle_type: none
in_installment: false
relationships:
publisher:
data:
type: publishers
id: '44'
top_main_category:
data:
type: categories
id: '3'
categories:
data:
- type: categories
id: '32'
- type: categories
id: '3'
contributors:
data:
- type: contributors
id: '560'
meta:
role: A01
description: 作者
reviews:
links:
related: https://api.readmoo.com/store/v3/books/210009483000101/reviews
highlights:
links:
related: https://api.readmoo.com/store/v3/books/210009483000101/highlights
included:
- type: publishers
id: '44'
attributes:
name: 群出版
description: ''
logo:
- type: categories
id: '3'
attributes:
name: 文學小說
description: ''
- type: categories
id: '127'
attributes:
name: 小說
description: ''
relationships:
parent:
data:
type: categories
id: '3'
- type: categories
id: '32'
attributes:
name: 武俠小說
description: ''
relationships:
parent:
data:
type: categories
id: '127'
- type: contributors
id: '560'
attributes:
name: 還珠樓主
description: ''
BooksResponse:
type: object
description: 書籍資料回傳格式
properties:
data:
type: array
items:
$ref: '#/definitions/Book'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
- included
example:
data:
- type: books
id: '210009483000101'
attributes:
title: 蜀山劍俠傳
subtitle: ''
cover:
small:
href: https://cdn.readmoo.com/cover/je/gcjorhb_210x315.jpg?v=1535364098
meta:
width: 210
resize: fit
medium:
href: https://cdn.readmoo.com/cover/je/gcjorhb_210x315.jpg?v=1535364098
meta:
width: 210
resize: fit
large:
href: https://cdn.readmoo.com/cover/je/gcjorhb_210x315.jpg?v=1535364098
meta:
width: 210
resize: fit
adult_only: false
author: 還珠樓主
short_description: "還珠樓主,原名李善基,後名李壽民、李紅,堪稱一代奇人,不但興趣廣泛,通曉諸子百家,佛經道藏、醫卜星相皆有涉獵,且走遍大江南北,經歷豐富。因與女友相戀未果,遂以其名之「珠」字嵌入筆名,以為紀念。1932年以《蜀山劍俠傳》崛起文壇。這部神怪武俠小說,篇幅浩帙,正傳50集、後傳5集,計329回,約500萬言,融神話、志怪、劍仙、武俠於一爐,文筆汪洋恣肆,風格絢爛雄奇,對後代武俠作家影響不小。\r\n"
description: "<p>還珠樓主,原名李善基,後名李壽民、李紅,堪稱一代奇人,不但興趣廣泛,通曉諸子百家,佛經道藏、醫卜星相皆有涉獵,且走遍大江南北,經歷豐富。因與女友相戀未果,遂以其名之「珠」字嵌入筆名,以為紀念。1932年以《蜀山劍俠傳》崛起文壇。這部神怪武俠小說,篇幅浩帙,正傳50集、後傳5集,計329回,約500萬言,融神話、志怪、劍仙、武俠於一爐,文筆汪洋恣肆,風格絢爛雄奇,對後代武俠作家影響不小。</p>\r\n"
isbn:
language: chi
main_subject: 武俠小說
product_type: book
publication_date: '2013-10-21T16:00:00Z'
adult_only: false
urls:
webpage: https://readmoo.com/book/210009483000101
reader: https://readmoo.com/api/Statistics/preview_log/210009483000101
toc: https://cdn.readmoo.com/book/toc/preview/210009483000101.json?v=1535393172
epub: https://cdn.readmoo.com/book/preview/210009483000101.epub?v=1535393172
related:
subscriptions: https://api.readmoo.com/books/210009483000101/subscriptions
bundles: https://api.readmoo.com/books/210009483000101/bundles
installments: https://api.readmoo.com/books/210009483000101/installments
recommendations: https://api.readmoo.com/books/210009483000101/recommendations
epub:
rendition:
layout: reflowable
flow: auto
filesize: 6298705
latest_version: '1.061'
last_modified_at: '2014-03-06T07:18:08Z'
files:
- product_form: online
product_form_detail: epub
rendition:
layout: reflowable
flow: auto
filesize: 6298705
latest_version: '1.061'
last_modified_at: '2014-03-06T07:18:08Z'
suspend: false
prices:
- PriceCode: '02'
PriceType: list
PriceAmount: 149
CurrencyCode: TWD
- PriceCode: '04'
PriceType: retail
PriceAmount: 99
CurrencyCode: TWD
- PriceCode: '99'
PriceType: reference
PriceAmount: 0
CurrencyCode: TWD
count:
unit: words
amount: 3555055
available_at: '2013-10-21T16:00:00Z'
preorder:
aggregate_rating:
rating_value: 3.7
rating_count: 6
region_restrictions: ''
subscribable: false
bundle_type: none
in_installment: false
relationships:
publisher:
data:
type: publishers
id: '44'
top_main_category:
data:
type: categories
id: '3'
categories:
data:
- type: categories
id: '32'
- type: categories
id: '3'
contributors:
data:
- type: contributors
id: '560'
meta:
role: A01
description: 作者
reviews:
links:
related: https://api.readmoo.com/store/v3/books/210009483000101/reviews
highlights:
links:
related: https://api.readmoo.com/store/v3/books/210009483000101/highlights
included:
- type: publishers
id: '44'
attributes:
name: 群出版
description: ''
logo:
- type: categories
id: '3'
attributes:
name: 文學小說
description: ''
- type: categories
id: '127'
attributes:
name: 小說
description: ''
relationships:
parent:
data:
type: categories
id: '3'
- type: categories
id: '32'
attributes:
name: 武俠小說
description: ''
relationships:
parent:
data:
type: categories
id: '127'
- type: contributors
id: '560'
attributes:
name: 還珠樓主
description: ''
CategoryResponse:
type: object
description: 書籍分類回傳格式
properties:
data:
$ref: '#/definitions/Category'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
example:
data:
type: categories
id: '32'
attributes:
name: 武俠小說
relationships:
parent:
data:
type: categories
id: '127'
included:
- type: categories
id: '3'
attributes:
name: 文學小說
relationships:
parent:
data:
- type: categories
id: '127'
attributes:
name: 小說
relationships:
parent:
data:
type: categories
id: '3'
CategoriesResponse:
type: object
description: 分類清單回傳格式
properties:
data:
type: array
items:
$ref: '#/definitions/Category'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
- included
CommentResponse:
type: object
description: 評論回傳格式
properties:
data:
$ref: '#/definitions/Comment'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
- included
example:
data:
type: comments
id: '3'
attributes:
content: 我要一隻笑笑羊!
posted_at: '2018-02-14T13:38:59Z'
relationships:
reply_to:
data:
commentator:
data:
type: users
id: '766529h21'
highlight:
data:
type: highlights
id: 5
review:
data:
included:
- type: users
id: '766529h21'
attributes:
nickname: Willy
avatar:
small:
href: https://cdn.readmoo.com/avatar/76/6529h21_40.png?v=1512576728
meta:
width: 40
resize: crop
medium:
href: https://cdn.readmoo.com/avatar/76/6529h21_130.png?v=1512576728
meta:
width: 130
resize: crop
large:
href: https://cdn.readmoo.com/avatar/76/6529h21_200.png?v=1512576728
meta:
width: 200
resize: crop
CommentsResponse:
type: object
description: 評論清單回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/Comment'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- meta
- data
- included
example:
meta:
last_modified: '2018-12-27T09:11:17Z'
total_count: 3
page:
count: 1
offset: 0
links:
self: https://api.readmoo.com/store/v3/reviews/1449/comments?page%5Bcount%5D=2&page%5Boffset%5D=0
next: https://api.readmoo.com/store/v3/reviews/1449/comments?page%5Bcount%5D=2&page%5Boffset%5D=1
last: https://api.readmoo.com/store/v3/reviews/1449/comments?page%5Bcount%5D=2&page%5Boffset%5D=2
data:
- type: comments
id: '5015'
attributes:
content: 也感謝您善用了 Readmoo 提供的「錯字回報」服務,讓我們能做得更好!
posted_at: '2016-02-16T02:06:48Z'
relationships:
reply_to:
data:
commentator:
data:
type: users
id: 'lljl9jqlh'
highlight:
data:
review:
data:
type: reviews
id: '1449'
included:
- type: users
id: 'lljl9jqlh'
attributes:
nickname: moo小編
avatar:
small:
href: https://cdn.readmoo.com/avatar/ll/jl9jqlh_40.png?v=1520494335
meta:
width: 40
resize: crop
medium:
href: https://cdn.readmoo.com/avatar/ll/jl9jqlh_130.png?v=1520494335
meta:
width: 130
resize: crop
large:
href: https://cdn.readmoo.com/avatar/ll/jl9jqlh_200.png?v=1520494335
meta:
width: 200
resize: crop
ContributorResponse:
description: 貢獻者回傳格式
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- contributors
attributes:
$ref: '#/definitions/NameOnlyAttr'
required:
- attributes
required:
- data
example:
data:
type: contributors
id: '560'
attributes:
name: 還珠樓主
FragmentPathResponse:
type: object
description: 書刊內文片段路徑回傳格式
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- paths
attributes:
$ref: '#/definitions/FragmentAttr'
required:
- attributes
required:
- data
example:
data:
type: paths
id: '100870'
attributes:
file_version: '1.000'
position: 0.99
chapter: 13
cfi: "/6/26!/4/30/1:0"
loc:
title: 姊妹們,來看看「救救菜英文」吧! 伍薇
pre_content:
content: '莎希回答:「我缺的不是愛情,而是尊重。」'
post_content:
referenced_count: 2
FragmentRangeResponse:
type: object
description: 書刊內文片段範圍回傳格式
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- ranges
attributes:
$ref: '#/definitions/FragmentAttr'
required:
- attributes
required:
- data
example:
data:
type: paths
id: '9382'
attributes:
file_version: '1.001'
position: 0.374
chapter: 9
cfi: "/6/18!/4/50,/1:59,/3:1"
loc:
title:
pre_content: 然後解釋,
content: 挑選工作唯一重要的選擇標準,就是「快速成長」。
post_content: 公司快速成長時,
referenced_count: 2
MarathonResponse:
type: object
description: 閱讀馬拉松回傳格式
properties:
data:
$ref: '#/definitions/Marathon'
required:
- data
example:
data:
type: marathons
id: american2017
attributes:
name: 美國主題書單馬拉松
description: 閱讀世界踩點任務:美國
started_at: '2017-03-14T16:00:00Z'
ended_at: '2017-04-16T16:00:00Z'
urls:
webpage: https://readmoo.com/campaign/2017/3/world_arround_america/index
publications: https://api.readmoo.com/store/v3/me/library_items?filter%5Bmarathon%5D=american2017
MarathonsResponse:
type: object
description: 閱讀馬拉松回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/Marathon'
required:
- data
example:
meta:
total_count: 1
data:
- type: marathons
id: american2017
attributes:
name: 美國主題書單馬拉松
description: 閱讀世界踩點任務:美國
started_at: '2017-03-14T16:00:00Z'
ended_at: '2017-04-16T16:00:00Z'
urls:
webpage: https://readmoo.com/campaign/2017/3/world_arround_america/index
publications: https://api.readmoo.com/store/v3/me/library_items?filter%5Bmarathon%5D=american2017
MeResponse:
type: object
description: 個人資訊回傳格式
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- me
attributes:
type: object
properties:
nickname:
type: string
description: 會員暱稱
avatar:
$ref: '#/definitions/Avatar'
email:
type: string
description: E-Mail,裝置帳號無 email 資訊
format: email
birthday:
type: string
description: 生日
format: date-time
gender:
type: string
description: 性別
enum:
- unspecified
- male
- female
country:
type: string
description: 國家
urls:
type: object
properties:
website:
type: string
description: 個人網誌
format: url
activate_status:
type: string
description: 啟用狀態
enum:
- nonactivated
- waiting
- activated
device_account:
type: boolean
description: 屬於裝置帳號
membership_type:
type: string
description: 會員類別
enum:
- individual
# - family
# - parent
- staff
- service
- manufacturer
- demonstration
- club
- education
applications:
type: object
description: Readmoo 相關服務
properties:
share:
type: object
description: 分享書設定
properties:
privacy:
$ref: '#/definitions/Privacy'
banner:
allOf:
- $ref: '#/definitions/ImageLink'
- type: object
properties:
meta:
type: object
properties:
width:
type: integer
description: 圖片寬度
format: int32
resize:
type: string
description: 圖片縮放方式
enum:
- fit
- crop
top:
type: integer
description: 圖片垂直位移
format: int32
left:
type: integer
description: 圖片橫向位移
format: int32
required:
- width
- resize
- top
- left
required:
- privacy
- banner
document:
type: object
description: 文件上傳服務
properties:
activated:
type: boolean
description: 文件上傳服務啟用狀態
quota:
type: number
description: 雲端空間(MB)
usage:
type: number
description: 已使用之雲端空間(MB)
format: float
count:
type: number
description: 已上傳文件數
started_at:
$ref: '#/definitions/StartedAt'
ended_at:
$ref: '#/definitions/EndedAt'
required:
- activated
- quota
- usage
- count
- started_at
- ended_at
writemoo:
type: object
description: Writemoo 服務
properties:
activated:
type: boolean
description: Writemoo 服務開通狀態
required:
- activated
peerage:
type: object
description: 會員等級
properties:
activated:
type: boolean
description: 會員等級資訊開通狀態
warm_up_period:
type: integer
description: 計算資訊所需的剩餘秒數
format: int32
required:
- activated
family:
type: object
description: 家庭帳號
properties:
status:
type: string
description: 會員加入家庭狀態
enum:
- none
- inviting
- in-group
required:
- status
required:
- share
- document
- writemoo
- peerage
- family
required:
- nickname
- avatar
- email
- birthday
- gender
- country
- urls
- activate_status
- device_account
- membership_type
- applications
relationships:
type: object
properties:
agreement:
type: object
description: |
服務條款與隱私權條款相關資訊,
依實際情形會有以下兩種回傳格式的其中一種:
- 如果使用者已同意最新版本
```
"agreement": {
"data": {
"type": "agreements",
"id": "2002"
}
}
```
- 如果使用者尚未同意任何版本
```
"agreement": {
"links": {
"related": "https://api.readmoo.com/store/v3/agreement"
}
}
```
- 如果使用者尚未同意最新版本
```
"agreement": {
"data": {
"type": "agreements",
"id": "1001"
}
"links": {
"related": "https://api.readmoo.com/store/v3/agreement"
}
}
```
只要 relationships/agreement/links/related 有資料,
Client 端便須自 related 取得最新條款資訊並呈現給使用者確認,
只有當使用者同意後,
Client 才發送 PATCH /store/v3/me 修改 relationships/agreement id
```
PATCH /store/v3/me HTTP/1.1
Content-Type: application/vnd.api+json
Accept: application/vnd.api+json
{
"data": {
"type": "me",
"id": "user's id",
"relationships": {
"agreement": {
"data": {
"type": "agreements",
"id": "2002"
}
}
}
}
}
```
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- aggrements
links:
type: object
properties:
related:
type: string
description: 服務條款與隱私權條款的 URL
format: url
required:
- related
peerage:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- peerage
family:
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
required:
- agreement
- peerage
required:
- attributes
- relationships
required:
- data
example:
data:
type: me
id: '766529h21'
attributes:
nickname: Willy
avatar:
small:
href: https://cdn.readmoo.com/avatar/76/6529h21_40.png?v=1489488672
meta:
width: 40
resize: crop
medium:
href: https://cdn.readmoo.com/avatar/76/6529h21_130.png?v=1489488672
meta:
width: 130
resize: crop
large:
href: https://cdn.readmoo.com/avatar/76/6529h21_200.png?v=1489488672
meta:
width: 200
resize: crop
email: willy.yeh@gmail.com
birthday: '1970-01-01'
gender: male
country: null
urls:
website: null
activate_status: activated
device_account: false
membership_type: individual
applications:
share:
privacy: everyone
banner:
href: https://cdn.readmoo.com/social/banner/76/6529h21_1280x.png?v=1433099185
meta:
width: 1280
resize: fit
top: -43
left: 0
document:
activated: true
quota: 1024
usage: 161.05
count: 27
started_at: '2017-05-23T16:00:00Z'
ended_at: '2018-07-29T16:00:00Z'
writemoo:
activated: false
peerage:
activated: true
DashboardResponse:
type: object
description: 相關活動回傳格式
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- dashboard
attributes:
type: object
properties:
summary:
type: object
description: 總閱讀紀錄
properties:
books:
$ref: '#/definitions/Summary'
documents:
$ref: '#/definitions/Summary'
required:
- books
- documents
habits:
type: object
properties:
daily_reading:
type: object
properties:
name:
type: string
description: 目標名稱
description:
type: string
description: 內容說明
goal:
$ref: '#/definitions/Value'
today:
$ref: '#/definitions/GoalRecordAttr'
last_7_days:
type: array
description: 過去七日閱讀相關資訊
items:
$ref: '#/definitions/GoalRecordAttr'
required:
- name
- description
- goal
- today
- last_7_days
required:
- daily_reading
metrics:
type: object
properties:
date:
$ref: '#/definitions/TimeIntervals'
reading_time:
description: 閱讀時間
allOf:
- $ref: '#/definitions/Total'
- type: object
properties:
records:
type: array
items:
$ref: '#/definitions/RecordAttr'
required:
- records
finished:
$ref: '#/definitions/Total'
highlights:
$ref: '#/definitions/Total'
reviews:
$ref: '#/definitions/Total'
goals:
$ref: '#/definitions/Total'
required:
- date
- reading_time
- finished
- Highlights
- reviews
- goals
required:
- summary
- habits
- metrics
relationships:
type: object
properties:
badges:
$ref: '#/definitions/RelBadges'
required:
- badges
required:
- attributes
- relationships
required:
- data
BookmarkResponse:
type: object
description: 書籍書籤清單回傳格式
properties:
data:
$ref: '#/definitions/Bookmark'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
example:
data:
type: bookmarks
id: '395'
attributes:
color: blue
device: desktop
bookmarked_at: '2018-02-08T02:44:31Z'
relationships:
book:
data:
type: books
id: '210019388000101'
user:
data:
type: users
id: '766529h21'
reading:
data:
type: readings
id: '64661'
path:
data:
type: paths
id: '17242'
included:
- type: publishers
id: '44'
attributes:
name: 群出版
- type: categories
id: '22'
attributes:
name: 雜誌
relationships:
parent:
data:
- type: contributors
id: '344'
attributes:
name: 犢編輯部
- type: books
id: '210019388000101'
attributes:
title: 犢-試刊號NO.15
subtitle: ''
cover:
small:
href: https://cdn.readmoo.com/cover/nk/nrmmzfn_120x180.jpg?v=0
meta:
width: 120
resize: fit
medium:
href: https://cdn.readmoo.com/cover/nk/nrmmzfn_210x315.jpg?v=0
meta:
width: 210
resize: fit
large:
href: https://cdn.readmoo.com/cover/nk/nrmmzfn_460x580.jpg?v=0
meta:
width: 460
resize: fit
author: 犢編輯部
short_description: |
2014年3月18日,一場台灣史上前所未有的佔領立法院運動倏忽掀起偌大政治風暴。
description: |
<p>
《犢》,來自「初生之犢」,是一個「新生」;也隱含了「未成熟」與「發展中」的意象,它的未來可以是「前景無限」,而它的成長更需要在一個「成群結隊」的環境裡。<br />
就把《犢》想像成一個放牧的草原吧,而我們則是在草原上徜徉的野生牛群。每個人,都可以盡情在原上找到自己安身棲息的角落,用自己喜好的姿態生活;而文字與內容,就是畜養牛群成長的糧草與水源。牛群與草原形成自給自足的生態循環,如同人群與書找到了互為滋養的平衡。這是我們對牧野草原的期待。<br />
《犢》將是一個全新的園地,一個嘗試未知與各種可能的地方。我們會在這裡分享新的電子書觀點、趨勢,儘可能用具體的故事與案例,來嘗試描述電子書未來的方向與輪廓,並試著用多元的方式與工具,把作家、內容、讀者在這個新時代中,重新串連起來。<br />
我們對電子書的期待,就是我們對《犢》的期待。期許這一系列的《犢》,也能幫助更多人更清楚的描繪出自己對「書籍」未來的想像!</p>
isbn: ''
language: zh-Hant
main_subject: 雜誌
product_type: magazine
publication_date: '2014-04-24T16:00:00Z'
adult_only: false
urls:
webpage: https://readmoo.com/book/210019388000101
reader: https://readmoo.com/api/Statistics/preview_log/210019388000101
toc: https://cdn.readmoo.com/book/toc/preview/210019388000101.json
epub: https://cdn.readmoo.com/book/preview/210019388000101.epub
epub:
rendition:
layout: reflowable
filesize: 2733754
latest_version: '1.000'
last_modified_at: '2014-04-25T08:27:15Z'
suspend: false
prices:
- PriceCode: '02'
PriceType: 'list'
PriceAmount: 0
CurrencyCode: TWD
- PriceCode: '04'
PriceType: 'retail'
PriceAmount: 0
CurrencyCode: TWD
count:
unit: words
amount: 24806
relationships:
publisher:
data:
type: publishers
id: '44'
categories:
data:
- type: categories
id: '22'
contributors:
data:
- type: contributors
id: '344'
meta:
role: A01
description: 作者
- type: users
id: '766529h21'
attributes:
nickname: Willy
avatar:
small:
href: https://cdn.readmoo.com/avatar/76/6529h21_40.png?v=1512576728
meta:
width: 40
resize: crop
medium:
href: https://cdn.readmoo.com/avatar/76/6529h21_130.png?v=1512576728
meta:
width: 130
resize: crop
large:
href: https://cdn.readmoo.com/avatar/76/6529h21_200.png?v=1512576728
meta:
width: 200
resize: crop
- type: readings
id: '64661'
attributes:
state: reading
privacy: everyone
created_at: '2014-04-30T16:51:46Z'
touched_at: '2014-06-20T09:36:37Z'
started_at: '2014-04-30T16:51:46Z'
duration: 5400
progress: 0.61
comments_count: 3
highlights_count: 7
position: 0.61
position_updated_at: '2014-06-20T09:36:37Z'
location: "/6/28!/4/80/1:0"
rating: 0
relationships:
book:
data:
type: books
id: '210019388000101'
bookmarks:
links:
related: https://api.readmoo.com/store/v3/me/readings/64661/bookmarks
highlights:
links:
related: https://api.readmoo.com/store/v3/me/readings/64661/highlights
review:
data:
- type: paths
id: '17242'
attributes:
file_version: '0.000'
position: 0.085
chapter: 5
cfi: "/6/10!/4/2@0:0"
loc:
title: DROPBOX買下閱讀應用程式READMILL
pre_content:
content: DMILL
post_content:
referenced_count: 1
BookmarksResponse:
type: object
description: 書籍書籤清單回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/Bookmark'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
example:
meta:
total_count: 2
data:
- type: bookmarks
id: '395'
attributes:
title: Readmill......
emoji: smile
color: red
device: phone
bookmarked_at: '2018-04-03T10:05:35Z'
relationships:
book:
data:
type: books
id: '210019388000101'
user:
data:
type: users
id: '766529h21'
reading:
data:
type: readings
id: '64661'
path:
data:
type: paths
id: '17242'
- type: bookmarks
id: '492'
attributes:
color: blue
device: desktop
bookmarked_at: '2018-02-08T02:44:31Z'
relationships:
book:
data:
type: books
id: '210019388000101'
user:
data:
type: users
id: '766529h21'
reading:
data:
type: readings
id: '64661'
path:
data:
type: paths
id: '17457'
included:
- type: publishers
id: '44'
attributes:
name: 群出版
- type: categories
id: '22'
attributes:
name: 雜誌
relationships:
parent:
data:
- type: contributors
id: '344'
attributes:
name: 犢編輯部
- type: books
id: '210019388000101'
attributes:
title: 犢-試刊號NO.15
subtitle: ''
cover:
small:
href: https://cdn.readmoo.com/cover/nk/nrmmzfn_120x180.jpg?v=0
meta:
width: 120
resize: fit
medium:
href: https://cdn.readmoo.com/cover/nk/nrmmzfn_210x315.jpg?v=0
meta:
width: 210
resize: fit
large:
href: https://cdn.readmoo.com/cover/nk/nrmmzfn_460x580.jpg?v=0
meta:
width: 460
resize: fit
author: 犢編輯部
short_description: |
2014年3月18日,一場台灣史上前所未有的佔領立法院運動倏忽掀起偌大政治風暴。這場以學生為主的318學運,不只寫下台灣政治社會的新頁,更因主力族群相對年輕、熟悉網路科技與傳播趨勢,以直播、影音、國際平台、Facebook、線上募款與廣告等,教會了習於傳統媒體的大人們:如何以最有效而且多數免費的網路資源,行銷訴求、達成目的。
description: |
<p>
《犢》,來自「初生之犢」,是一個「新生」;也隱含了「未成熟」與「發展中」的意象,它的未來可以是「前景無限」,而它的成長更需要在一個「成群結隊」的環境裡。<br />
就把《犢》想像成一個放牧的草原吧,而我們則是在草原上徜徉的野生牛群。每個人,都可以盡情在原上找到自己安身棲息的角落,用自己喜好的姿態生活;而文字與內容,就是畜養牛群成長的糧草與水源。牛群與草原形成自給自足的生態循環,如同人群與書找到了互為滋養的平衡。這是我們對牧野草原的期待。<br />
《犢》將是一個全新的園地,一個嘗試未知與各種可能的地方。我們會在這裡分享新的電子書觀點、趨勢,儘可能用具體的故事與案例,來嘗試描述電子書未來的方向與輪廓,並試著用多元的方式與工具,把作家、內容、讀者在這個新時代中,重新串連起來。<br />
我們對電子書的期待,就是我們對《犢》的期待。期許這一系列的《犢》,也能幫助更多人更清楚的描繪出自己對「書籍」未來的想像!</p>
isbn: ''
language: zh-Hant
main_subject: 雜誌
product_type: magazine
publication_date: '2014-04-24T16:00:00Z'
adult_only: false
urls:
webpage: https://readmoo.com/book/210019388000101
reader: https://readmoo.com/api/Statistics/preview_log/210019388000101
toc: https://cdn.readmoo.com/book/toc/preview/210019388000101.json
epub: https://cdn.readmoo.com/book/preview/210019388000101.epub
epub:
rendition:
layout: reflowable
filesize: 2733754
latest_version: '1.000'
last_modified_at: '2014-04-25T08:27:15Z'
suspend: false
prices:
- PriceCode: '02'
PriceType: 'list'
PriceAmount: 0
CurrencyCode: TWD
- PriceCode: '04'
PriceType: 'retail'
PriceAmount: 0
CurrencyCode: TWD
count:
unit: words
amount: 24806
relationships:
publisher:
data:
type: publishers
id: '44'
categories:
data:
- type: categories
id: '22'
contributors:
data:
- type: contributors
id: '344'
meta:
role: A01
description: 作者
- type: users
id: '766529h21'
attributes:
nickname: Willy
avatar:
small:
href: https://cdn.readmoo.com/avatar/76/6529h21_40.png?v=1512576728
meta:
width: 40
resize: crop
medium:
href: https://cdn.readmoo.com/avatar/76/6529h21_130.png?v=1512576728
meta:
width: 130
resize: crop
large:
href: https://cdn.readmoo.com/avatar/76/6529h21_200.png?v=1512576728
meta:
width: 200
resize: crop
- type: readings
id: '64661'
attributes:
state: reading
privacy: everyone
created_at: '2014-04-30T16:51:46Z'
touched_at: '2014-06-20T09:36:37Z'
started_at: '2014-04-30T16:51:46Z'
duration: 5400
progress: 0.61
comments_count: 3
highlights_count: 7
position: 0.61
position_updated_at: '2014-06-20T09:36:37Z'
location: "/6/28!/4/80/1:0"
rating: 0
relationships:
book:
data:
type: books
id: '210019388000101'
bookmarks:
links:
related: https://api.readmoo.com/store/v3/me/readings/64661/bookmarks
highlights:
links:
related: https://api.readmoo.com/store/v3/me/readings/64661/highlights
review:
data:
- type: paths
id: '17242'
attributes:
file_version: '0.000'
position: 0.085
chapter: 5
cfi: "/6/10!/4/2@0:0"
loc:
title: DROPBOX買下閱讀應用程式READMILL
pre_content:
content: DMILL
post_content:
referenced_count: 1
- type: paths
id: '17457'
attributes:
file_version: '0.000'
position: 0.511
chapter: 14
cfi: "/6/28!/4/2@0:0"
loc:
title: "《倒錯迴旋曲》成為作家的代價"
pre_content:
content: 錯迴旋曲》成為作家的代價
post_content:
referenced_count: 1
DocumentResponse:
type: object
description: 文件資訊回傳格式
properties:
data:
$ref: '#/definitions/Document'
required:
- data
DocumentsResponse:
type: object
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/Document'
required:
- data
example:
meta:
total_count: 26
page:
count: 2
offset: 0
links:
self: https://api.readmoo.com/store/v3/me/documents?page%5Bcount%5D=2&page%5Boffset%5D=0
next: https://api.readmoo.com/store/v3/me/documents?page%5Bcount%5D=2&page%5Boffset%5D=2
last: https://api.readmoo.com/store/v3/me/documents?page%5Bcount%5D=2&page%5Boffset%5D=24
data:
- type: documents
id: '126453'
attributes:
title: "."
cover:
medium:
href: https://cdn.readmoo.com/images/doccoverbg-green.png
meta:
width: 0
resize: fit
language: zh-TW
file:
filename: 說明書.docx
filesize: 16314
file_extension: docx
status: finished
created_at: '2018-04-02T05:59:26Z'
urls:
toc: https://api.readmoo.com/toc/doc126453
reader: https://new-read.readmoo.com/mooreader/doc126453
license: https://api.readmoo.com/lcpl/doc126453
epub: https://api.readmoo.com/epub/doc126453
epub:
rendition:
layout: reflowable
filesize: 16314
latest_version: '1.000'
last_modified_at: '2018-04-02T05:59:26Z'
count:
unit: words
amount: 5237
reading:
state: new
privacy: self
created_at: '2018-04-02T05:59:26Z'
touched_at:
started_at:
ended_at:
duration: 0
progress: 0
chapter: 0
position: 0
position_updated_at:
location:
rating: 0
relationships:
bookmarks:
links:
related: https://api.readmoo.com/store/v3/me/documents/126453/bookmarks
highlights:
links:
related: https://api.readmoo.com/store/v3/me/documents/126453/highlights
- type: documents
id: '125128'
attributes:
title: "[Title here]"
cover:
medium:
href: https://cdn.readmoo.com/images/doccoverbg-blue.png
meta:
width: 0
resize: fit
language: zh-TW
file:
filename: ePub文件.epub
filesize: 15538
file_extension: epub
status: finished
created_at: '2018-03-30T01:41:36Z'
urls:
toc: https://api.readmoo.com/toc/doc125128
reader: https://new-read.readmoo.com/mooreader/doc125128
license: https://api.readmoo.com/lcpl/doc125128
epub: https://api.readmoo.com/epub/doc125128
epub:
rendition:
layout: reflowable
filesize: 15538
latest_version: '1.000'
last_modified_at: '2018-03-30T01:41:36Z'
count:
unit: words
amount: 3547
reading:
state: reading
privacy: self
created_at: '2018-03-30T01:41:36Z'
touched_at: '2018-03-30T05:13:33Z'
started_at:
ended_at:
duration: 3923
progress: 0.79
chapter: 3
position: 0.79
position_updated_at: '2018-03-30T05:13:33Z'
location: "/6/6!/4/301:1"
rating: 0
relationships:
bookmarks:
links:
related: https://api.readmoo.com/store/v3/me/documents/125128/bookmarks
highlights:
links:
related: https://api.readmoo.com/store/v3/me/documents/125128/highlights
DocumentBookmarkResponse:
type: object
description: 文件書籤回傳格式
properties:
data:
$ref: '#/definitions/DocumentBookmark'
required:
- data
DocumentBookmarksResponse:
type: object
description: 文件書籤清單回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/DocumentBookmark'
required:
- data
DocumentHighlightResponse:
type: object
description: 文件劃線註記清單回傳格式
properties:
data:
$ref: '#/definitions/DocumentHighlight'
required:
- data
DocumentHighlightsResponse:
type: object
description: 文件劃線註記清單回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/DocumentHighlight'
required:
- data
HighlightResponse:
type: object
description: 劃線註記清單回傳格式
properties:
data:
$ref: '#/definitions/Highlight'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
HighlightsResponse:
type: object
description: 劃線註記回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/Highlight'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
example:
meta:
total_count: 22
page:
count: 2
offset: 0
links:
self: https://api.readmoo.com/store/v3/me/readings/1779946/highlights?page%5Bcount%5D=2&page%5Boffset%5D=0
next: https://api.readmoo.com/store/v3/me/readings/1779946/highlights?page%5Bcount%5D=2&page%5Boffset%5D=2
last: https://api.readmoo.com/store/v3/me/readings/1779946/highlights?page%5Bcount%5D=2&page%5Boffset%5D=20
data:
- type: highlights
id: '1012870'
attributes:
color: yellow
style: block
privacy: everyone
comments_count: 0
likes_count: 0
collects_count: 0
highlighted_at: '2018-04-02T00:21:45Z'
relationships:
book:
data:
type: books
id: '210084041000101'
user:
data:
type: users
id: '766529h21'
reading:
data:
type: readings
id: '1779946'
range:
data:
type: ranges
id: '1261888'
comments:
links:
related: https://api.readmoo.com/store/v3/me/highlights/1012870/comments
- type: highlights
id: '1012869'
attributes:
color: yellow
style: block
privacy: everyone
comments_count: 0
likes_count: 0
collects_count: 0
highlighted_at: '2018-04-02T00:13:28Z'
relationships:
book:
data:
type: books
id: '210084041000101'
user:
data:
type: users
id: '766529h21'
reading:
data:
type: readings
id: '1779946'
range:
data:
type: ranges
id: '1261887'
comments:
links:
related: https://api.readmoo.com/store/v3/me/highlights/1012869/comments
included:
- type: publishers
id: '33'
attributes:
name: 天下文化
- type: categories
id: '143'
attributes:
name: 自然科普
relationships:
parent:
data:
- type: contributors
id: '31327'
attributes:
name: 凱莉.韋納史密斯
- type: contributors
id: '31328'
attributes:
name: 查克.韋納史密斯
- type: contributors
id: '11567'
attributes:
name: 黃靜雅
- type: contributors
id: '31329'
attributes:
name: Kelly Weinersmith
- type: contributors
id: '31330'
attributes:
name: Zach Weinersmith
- type: books
id: '210084041000101'
attributes:
title: 拯救或毀滅世界的十種新創科技
subtitle: ''
cover:
small:
href: https://cdn.readmoo.com/cover/le/9cc9q9d_120x180.jpg?v=0
meta:
width: 120
resize: fit
medium:
href: https://cdn.readmoo.com/cover/le/9cc9q9d_210x315.jpg?v=0
meta:
width: 210
resize: fit
large:
href: https://cdn.readmoo.com/cover/le/9cc9q9d_460x580.jpg?v=0
meta:
width: 460
resize: fit
author: 凱莉.韋納史密斯|查克.韋納史密斯
short_description: "《紐約時報》暢銷科普書\r\n《華爾街日報》年度最佳科學書\r\n《科技時代》年度最佳科學書\r\n趨勢科技版的《如果這樣,會怎樣?》\r\n意想不到的未來,就在眼前!\r\n\r\n未來,這世界到底會變成怎樣?\r\n為什麼距離首次登月已經這麼久了,我們還沒有在月球上建立殖民地?\r\n為什麼許多我們期盼已久的科技,還沒有成真?\r\n"
description: "<p>《拯救或毀滅世界的十種新創科技》帶你預見未來,<br>\r\n細數十種眾所矚目的發展中新興科技,<br>\r\n例如上太空要如何變便宜、我們要如何利用太空資源、<br>\r\n醫學會不會走到為個人量身訂製的境界、<br>\r\n3D列印有沒有可能解決器官移植的問題,<br>\r\n我們能不能為大腦編寫程式,讓自己更聰明?<br>\r\n<br>\r\n作者用逗趣的漫畫與幽默的解析,<br>\r\n說明這些科技目前進行到哪裡,<br>\r\n它們繞了哪些冤枉路、走了哪些死胡同,<br>\r\n怎樣會把這世界搞得一塌糊塗,<br>\r\n怎樣才可能讓我們的明天會更好!</p>\r\n"
isbn: '9789864793815'
language: zh-Hant
main_subject: 自然科普
product_type: book
publication_date: '2018-01-30T16:00:00Z'
adult_only: false
urls:
webpage: https://readmoo.com/book/210084041000101
reader: https://readmoo.com/api/Statistics/preview_log/210084041000101
toc: https://cdn.readmoo.com/book/toc/preview/210084041000101.json
epub: https://cdn.readmoo.com/book/preview/210084041000101.epub
epub:
rendition:
layout: reflowable
filesize: 9222288
latest_version: '1.000'
last_modified_at: '2018-02-08T10:16:29Z'
suspend: false
prices:
- PriceCode: '02'
PriceType: 'list'
PriceAmount: 360
CurrencyCode: TWD
- PriceCode: '04'
PriceType: 'retail'
PriceAmount: 360
CurrencyCode: TWD
- PriceCode: '99'
PriceType: 'reference'
PriceAmount: 480
CurrencyCode: TWD
count:
unit: words
amount: 155885
relationships:
publisher:
data:
type: publishers
id: '33'
categories:
data:
- type: categories
id: '143'
contributors:
data:
- type: contributors
id: '31327'
meta:
role: A01
description: 作者
- type: contributors
id: '31328'
meta:
role: A01
description: 作者
- type: contributors
id: '11567'
meta:
role: A13
description: 攝影
- type: contributors
id: '31329'
meta:
role: A38
description: 原文作者
- type: contributors
id: '31330'
meta:
role: A38
description: 原文作者
- type: users
id: '766529h21'
attributes:
nickname: Willy
avatar:
small:
href: https://cdn.readmoo.com/avatar/76/6529h21_40.png?v=1512576728
meta:
width: 40
resize: crop
medium:
href: https://cdn.readmoo.com/avatar/76/6529h21_130.png?v=1512576728
meta:
width: 130
resize: crop
large:
href: https://cdn.readmoo.com/avatar/76/6529h21_200.png?v=1512576728
meta:
width: 200
resize: crop
- type: readings
id: '1779946'
attributes:
state: reading
privacy: everyone
created_at: '2018-03-04T15:50:43Z'
touched_at: '2018-04-03T04:42:07Z'
started_at: '2018-03-16T04:18:08Z'
duration: 37860
progress: 0.93
comments_count: 0
highlights_count: 22
position: 0.93
position_updated_at: '2018-04-03T04:42:07Z'
location: "/6/40!/4/2/2/1:0"
rating: 0
relationships:
book:
data:
type: books
id: '210084041000101'
bookmarks:
links:
related: https://api.readmoo.com/store/v3/me/readings/1779946/bookmarks
highlights:
links:
related: https://api.readmoo.com/store/v3/me/readings/1779946/highlights
review:
data:
- type: ranges
id: '1261888'
attributes:
file_version: '1.000'
position: 0
chapter: 19
cfi: "/6/38!/4/238,/1:18,/1:61"
loc:
title:
pre_content:
content: 要讓健康的大腦變得更好。那很簡單。運動、正確的飲食、減少壓力,而且更用功,這樣就行了。
post_content:
referenced_count: 1
- type: ranges
id: '1261887'
attributes:
file_version: '1.000'
position: 0
chapter: 19
cfi: "/6/38!/4/182,/1:0,/1:17"
loc:
title:
pre_content:
content: 大腦內部的偵測器往往品質會迅速降低
post_content:
referenced_count: 1
BookHighlightResponse:
type: object
description: 劃線註記清單回傳格式
properties:
data:
$ref: '#/definitions/Highlight'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
ExportHighlightResponse:
type: object
description: 匯出劃線註記回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
data:
type: array
items:
$ref: '#/definitions/ExportHighlight'
required:
- data
BookHighlightsResponse:
type: object
description: 劃線註記回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/Highlight'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
LibraryItemResponse:
type: object
properties:
data:
$ref: '#/definitions/LibraryItem'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
- included
LibraryItemsResponse:
type: object
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/LibraryItem'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
SubscriptionResponse:
type: object
description: 雜誌訂閱資訊清單
properties:
data:
$ref: '#/definitions/Subscription'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
- included
SubscriptionsResponse:
type: object
description: 雜誌訂閱資訊清單
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/Subscription'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
ReadingResponse:
type: object
description: 閱讀資訊回傳格式
properties:
data:
$ref: '#/definitions/Reading'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
- included
ReadingsResponse:
type: object
description: 閱讀資訊清單回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/Reading'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
example:
meta:
total_count: 857
page:
count: 2
offset: 0
links:
self: https://api.readmoo.com/store/v3/me/readings?page%5Bcount%5D=2&page%5Boffset%5D=0
next: https://api.readmoo.com/store/v3/me/readings?page%5Bcount%5D=2&page%5Boffset%5D=2
last: https://api.readmoo.com/store/v3/me/readings?page%5Bcount%5D=2&page%5Boffset%5D=856
data:
- type: readings
id: '8479367'
attributes:
state: new
privacy: everyone
created_at: '2018-04-03T09:42:42Z'
duration: 0
progress: 0
comments_count: 0
highlights_count: 0
position: 0
rating: 0
relationships:
book:
data:
type: books
id: '220087329000101'
bookmarks:
links:
related: https://api.readmoo.com/store/v3/me/readings/8479367/bookmarks
highlights:
links:
related: https://api.readmoo.com/store/v3/me/readings/8479367/highlights
review:
data:
- type: readings
id: '1779946'
attributes:
state: reading
privacy: everyone
created_at: '2018-03-04T15:50:43Z'
touched_at: '2018-04-03T04:42:07Z'
started_at: '2018-03-16T04:18:08Z'
duration: 37860
progress: 0.93
comments_count: 0
highlights_count: 22
position: 0.93
position_updated_at: '2018-04-03T04:42:07Z'
location: "/6/40!/4/2/2/1:0"
rating: 0
relationships:
book:
data:
type: books
id: '210084041000101'
bookmarks:
links:
related: https://api.readmoo.com/store/v3/me/readings/1779946/bookmarks
highlights:
links:
related: https://api.readmoo.com/store/v3/me/readings/1779946/highlights
review:
data:
included:
- type: publishers
id: '499'
attributes:
name: 登峰國際(NOVA)
- type: categories
id: '22'
attributes:
name: 雜誌
relationships:
parent:
data:
- type: categories
id: '181'
attributes:
name: 中文雜誌
relationships:
parent:
data:
type: categories
id: '22'
- type: categories
id: '184'
attributes:
name: 電腦科學
relationships:
parent:
data:
type: categories
id: '181'
- type: contributors
id: '17623'
attributes:
name: NOVA情報誌編輯部
- type: books
id: '220087329000101'
attributes:
title: NOVA情報誌 04月號/2018 第189期
subtitle: ''
cover:
small:
href: https://cdn.readmoo.com/cover/78/2g3ghcb_120x180.jpg?v=0
meta:
width: 120
resize: fit
medium:
href: https://cdn.readmoo.com/cover/78/2g3ghcb_210x315.jpg?v=0
meta:
width: 210
resize: fit
large:
href: https://cdn.readmoo.com/cover/78/2g3ghcb_460x580.jpg?v=0
meta:
width: 460
resize: fit
author: NOVA情報誌編輯部
short_description: "特別企劃:「公克級」NB 逆天輕薄秀!\r\n\r\n夢幻長效羽量蛻變 全面窄邊行動精品\r\n\r\n輕薄筆電在天時、地利、人和下,重新奪回市場一哥寶座!各方面持續蛻變進化,加碼帶來驚喜與亮點,要讓你感嘆NB、讚嘆NB!\r\n"
description: "<p><b>特別企劃:「公克級」NB 逆天輕薄秀!</b></p>\r\n\r\n<p><b>夢幻長效羽量蛻變 全面窄邊行動精品</b></p>\r\n\r\n<p>輕薄筆電在天時、地利、人和下,重新奪回市場一哥寶座!各方面持續蛻變進化,加碼帶來驚喜與亮點,要讓你感嘆NB、讚嘆NB!</p>"
isbn: ''
language: zh-Hant
main_subject: 雜誌
product_type: magazine
publication_date: '2018-04-02T16:00:00Z'
adult_only: false
urls:
webpage: https://readmoo.com/book/220087329000101
reader: https://readmoo.com/api/Statistics/preview_log/220087329000101
toc: https://cdn.readmoo.com/book/toc/preview/220087329000101.json
epub: https://cdn.readmoo.com/book/preview/220087329000101.epub
epub:
rendition:
layout: pre-paginated
filesize: 34557878
latest_version: '1.000'
last_modified_at: '2018-04-03T09:41:00Z'
suspend: false
prices:
- PriceCode: '02'
PriceType: 'list'
PriceAmount: 0
CurrencyCode: TWD
- PriceCode: '04'
PriceType: 'retail'
PriceAmount: 0
CurrencyCode: TWD
count:
unit: pages
amount: 68
relationships:
publisher:
data:
type: publishers
id: '499'
categories:
data:
- type: categories
id: '184'
contributors:
data:
- type: contributors
id: '17623'
meta:
role: A01
description: 作者
- type: publishers
id: '33'
attributes:
name: 天下文化
- type: categories
id: '143'
attributes:
name: 自然科普
relationships:
parent:
data:
- type: contributors
id: '31327'
attributes:
name: 凱莉.韋納史密斯
- type: contributors
id: '31328'
attributes:
name: 查克.韋納史密斯
- type: contributors
id: '11567'
attributes:
name: 黃靜雅
- type: contributors
id: '31329'
attributes:
name: Kelly Weinersmith
- type: contributors
id: '31330'
attributes:
name: Zach Weinersmith
- type: books
id: '210084041000101'
attributes:
title: 拯救或毀滅世界的十種新創科技
subtitle: ''
cover:
small:
href: https://cdn.readmoo.com/cover/le/9cc9q9d_120x180.jpg?v=0
meta:
width: 120
resize: fit
medium:
href: https://cdn.readmoo.com/cover/le/9cc9q9d_210x315.jpg?v=0
meta:
width: 210
resize: fit
large:
href: https://cdn.readmoo.com/cover/le/9cc9q9d_460x580.jpg?v=0
meta:
width: 460
resize: fit
author: 凱莉.韋納史密斯|查克.韋納史密斯
short_description: "《紐約時報》暢銷科普書\r\n《華爾街日報》年度最佳科學書\r\n《科技時代》年度最佳科學書\r\n趨勢科技版的《如果這樣,會怎樣?》\r\n意想不到的未來,就在眼前!\r\n\r\n未來,這世界到底會變成怎樣?\r\n為什麼距離首次登月已經這麼久了,我們還沒有在月球上建立殖民地?\r\n為什麼許多我們期盼已久的科技,還沒有成真?\r\n"
description: "<p>《拯救或毀滅世界的十種新創科技》帶你預見未來,<br>\r\n細數十種眾所矚目的發展中新興科技,<br>\r\n例如上太空要如何變便宜、我們要如何利用太空資源、<br>\r\n醫學會不會走到為個人量身訂製的境界、<br>\r\n3D列印有沒有可能解決器官移植的問題,<br>\r\n我們能不能為大腦編寫程式,讓自己更聰明?<br>\r\n<br>\r\n作者用逗趣的漫畫與幽默的解析,<br>\r\n說明這些科技目前進行到哪裡,<br>\r\n它們繞了哪些冤枉路、走了哪些死胡同,<br>\r\n怎樣會把這世界搞得一塌糊塗,<br>\r\n怎樣才可能讓我們的明天會更好!</p>\r\n"
isbn: '9789864793815'
language: zh-Hant
main_subject: 自然科普
product_type: book
publication_date: '2018-01-30T16:00:00Z'
adult_only: false
urls:
webpage: https://readmoo.com/book/210084041000101
reader: https://readmoo.com/api/Statistics/preview_log/210084041000101
toc: https://cdn.readmoo.com/book/toc/preview/210084041000101.json
epub: https://cdn.readmoo.com/book/preview/210084041000101.epub
epub:
rendition:
layout: reflowable
filesize: 9222288
latest_version: '1.000'
last_modified_at: '2018-02-08T10:16:29Z'
suspend: false
prices:
- PriceCode: '02'
PriceType: 'list'
PriceAmount: 360
CurrencyCode: TWD
- PriceCode: '04'
PriceType: 'retail'
PriceAmount: 360
CurrencyCode: TWD
- PriceCode: '99'
PriceType: 'reference'
PriceAmount: 480
CurrencyCode: TWD
count:
unit: words
amount: 155885
relationships:
publisher:
data:
type: publishers
id: '33'
categories:
data:
- type: categories
id: '143'
contributors:
data:
- type: contributors
id: '31327'
meta:
role: A01
description: 作者
- type: contributors
id: '31328'
meta:
role: A01
description: 作者
- type: contributors
id: '11567'
meta:
role: A13
description: 攝影
- type: contributors
id: '31329'
meta:
role: A38
description: 原文作者
- type: contributors
id: '31330'
meta:
role: A38
description: 原文作者
ReadinglogResponse:
type: object
description: 閱讀紀錄回傳格式
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- readinglogs
attributes:
$ref: '#/definitions/ReadinglogAttr'
relationships:
type: object
properties:
reading:
$ref: '#/definitions/ToOne'
event:
$ref: '#/definitions/ToOne'
required:
- reading
- event
RelBadgesResponse:
type: object
description: 個人擁有徽章的關聯清單
properties:
meta:
$ref: '#/definitions/TopLevelMetaWithETag'
data:
type: array
items:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- badges
required:
- meta
- data
RelBooksResponse:
type: object
description: 個人擁有書籍的關聯清單
properties:
data:
type: array
items:
type: object
discriminator: type
properties:
type:
type: string
description: 型別
enum:
- books
id:
type: string
description: 編號
meta:
type: object
description: 額外資料
properties:
policy:
$ref: '#/definitions/Policy'
required:
- policy
required:
- type
- id
required:
- data
RelDocumentsResponse:
type: object
description: 文件關聯清單
properties:
meta:
$ref: '#/definitions/TopLevelMetaWithETag'
data:
type: array
items:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- documents
required:
- meta
- data
RelFavorItemsResponse:
type: object
description: 收藏暢讀書籍關聯清單
properties:
meta:
$ref: '#/definitions/TopLevelMetaWithETag'
data:
type: array
items:
$ref: '#/definitions/FavorItemResourceIdentifier'
required:
- meta
- data
RelUnlimitedListsResponse:
type: object
description: 收藏包分類清單關聯清單
properties:
data:
type: array
items:
$ref: '#/definitions/UnlimitedListResourceIdentifier'
required:
- meta
- data
RelLibraryItemsResponse:
type: object
description: 書櫃書籍關聯清單
properties:
meta:
$ref: '#/definitions/TopLevelMetaWithETag'
data:
type: array
items:
$ref: '#/definitions/LibraryItemResourceIdentifier'
required:
- meta
- data
RelMediaItemsResponse:
type: object
description: 有聲書書櫃書籍關聯清單
properties:
meta:
$ref: '#/definitions/TopLevelMetaWithETag'
data:
type: array
items:
$ref: '#/definitions/MediaItemResourceIdentifier'
required:
- meta
- data
RelUnlimitedsResponse:
type: object
description: 訂閱暢讀包的關聯清單
properties:
meta:
$ref: '#/definitions/TopLevelMetaWithETag'
data:
type: array
items:
type: object
properties:
type:
type: string
enum:
- unlimiteds
id:
type: string
meta:
type: object
description: 額外資料
properties:
state:
$ref: '#/definitions/SubscriptionState'
expired_at:
$ref: '#/definitions/ExpiredAt'
auto_renew:
$ref: '#/definitions/AutoRenew'
favors_count:
$ref: '#/definitions/FavorsCount'
required:
- state
- expired_at
- auto_renew
- favors_count
required:
- type
- id
- meta
required:
- meta
- data
RelUnlimitedItemsResponse:
type: object
description: 暢讀書籍的關聯清單
properties:
meta:
$ref: '#/definitions/TopLevelMetaWithETag'
data:
type: array
items:
$ref: '#/definitions/UnlimitedItemResourceIdentifier'
required:
- meta
- data
ReviewResponse:
type: object
description: 完讀書評回傳格式
properties:
data:
$ref: '#/definitions/Review'
ReviewsResponse:
type: object
description: 完讀書評清單回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/Review'
required:
- data
PublisherResponse:
description: 出版社回傳格式
type: object
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- publishers
attributes:
$ref: '#/definitions/NameOnlyAttr'
required:
- attributes
required:
- data
example:
data:
type: publishers
id: '44'
attributes:
name: 群出版
UserResponse:
type: object
description: 會員資訊回傳格式
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- users
attributes:
$ref: '#/definitions/UserAttr'
required:
- attributes
required:
- data
example:
data:
type: users
id: '766529h21'
attributes:
nickname: Willy
avatar:
small:
href: https://cdn.readmoo.com/avatar/76/6529h21_40.png?v=1489488672
meta:
width: 40
resize: crop
medium:
href: https://cdn.readmoo.com/avatar/76/6529h21_130.png?v=1489488672
meta:
width: 130
resize: crop
large:
href: https://cdn.readmoo.com/avatar/76/6529h21_200.png?v=1489488672
meta:
width: 200
resize: crop
DevicesResponse:
type: object
description: 裝置清單回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- devices
attributes:
$ref: '#/definitions/DeviceAttr'
required:
- attributes
required:
- data
example:
meta:
total_count: 3
data:
- type: devices
id: ABCDEFG
attributes:
name: Android
device_type: desktop
user_agent: |
OS=10.2.1; Model=iPhone;
System=iOS; Ver=1.72.1; Build=1790
registered_at: '2018-03-30T08:58:51Z'
- type: devices
id: QAZWSXEDC
attributes:
name: Willy 的第 1 台 mooInk
device_type: mobile
user_agent: "[DeviceType]Tablet[APILevel]19[AppVersion]1.0.0"
registered_at: '2017-05-08T14:38:57Z'
- type: devices
id: d989d825-1111-cccc-ffff-28aa96b5911a
attributes:
name: Willy 的第 1 台 Mac OS X
device_type: desktop
user_agent:
registered_at: '2017-02-09T00:26:13Z'
UpdateDeviceResponse:
type: object
description: 裝置資訊回傳格式
properties:
meta:
type: object
properties:
access_token:
type: string
descritpion: OAuth access token
data:
type: object
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- devices
attributes:
$ref: '#/definitions/UpdatedDeviceAttr'
required:
- attributes
required:
- data
DocumentReadinglogResponse:
type: object
description: 文件的閱讀紀錄回傳格式
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- doc_readinglogs
attributes:
$ref: '#/definitions/ReadinglogAttr'
example:
data:
type: doc_readinglogs
id: '3285111'
attributes:
identifier: 6889EFD0-1C07-4A50-B663-C5F2248DDA5C
cfi: "/6/40!/4/2/1:1"
duration: 4
progress: 0
occurred_at: '2017-23-03T01:21:14Z'
user_agent: OS=10.2.1; Model=iPhone;
System=iOS; Ver=1.72.1; Build=1790
reading_preference: '{"epub-writing-mode": "vertical-rl"}'
TagResponse:
type: object
description: 自訂標籤回傳格式
properties:
data:
$ref: '#/definitions/Tag'
required:
- data
example:
data:
type: tags
id: '289'
attributes:
name: 百年千書
urls:
covers:
- small: https://cdn.readmoo.com/cover/fg/8enjmb8_120x180.jpg?v=1492076404
- small: https://cdn.readmoo.com/cover/le/9d9mqfa_120x180.jpg?v=1498805822
- small: https://cdn.readmoo.com/cover/bc/ab9hk88_120x180.jpg?v=0
count: 4
relationships:
library_items:
data:
- type: library_items
id: '4586'
- type: library_items
id: '4590'
- type: library_items
id: '24896'
- type: library_items
id: '4589'
links:
self: https://api.readmoo.com/store/v3/me/tags/289/relationships/library_items
related: https://api.readmoo.com/store/v3/me/tags/289/library_items
TagsResponse:
type: object
description: 自訂標籤清單回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/Tag'
required:
- data
ForeverResponse:
type: object
properties:
data:
$ref: '#/definitions/Forever'
required:
- data
ForeversResponse:
type: object
description: 暢讀方案清單回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/Forever'
required:
- data
FavorItemResponse:
type: object
description: 個人的暢讀包收藏書籍回傳格式
properties:
data:
$ref: '#/definitions/FavorItem'
required:
- data
FavorItemsResponse:
type: object
description: 個人的暢讀包收藏書籍清單回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/FavorItem'
required:
- data
ForeverItemsResponse:
type: object
description: 暢讀方案書籍清單回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/ForeverItem'
required:
- data
AccessTokenResponse:
type: object
description: |
非 jsonapi 格式,回傳 OAuth access token
properties:
access_token:
type: string
description: Access Token
required:
- access_token
PointResponse:
type: object
description: 犢幣回傳格式
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- points
attributes:
type: object
properties:
name:
type: string
description: 點數名稱
amount:
type: integer
description: 犢幣剩餘金額
format: int32
NoteResponse:
type: object
description: 筆記資訊回傳格式
properties:
# meta:
# $ref: '#/definitions/NoteMeta'
data:
$ref: '#/definitions/Note'
required:
# - meta
- data
NotesResponse:
type: object
description: 筆記資訊清單回傳格式
properties:
# meta:
# $ref: '#/definitions/NoteMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/Note'
required:
# - meta
- links
- data
NotificationResponse:
type: object
description: 通知訊息回傳格式
properties:
data:
$ref: '#/definitions/Notification'
required:
- data
NotificationsResponse:
type: object
description: 通知訊息清單回傳格式
properties:
meta:
$ref: '#/definitions/NotificationMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/Notification'
required:
- meta
- data
UpdatePointResponse:
type: object
description: 犢幣回傳格式
properties:
meta:
type: object
properties:
transactions:
type: array
items:
type: string
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- points
attributes:
type: object
properties:
name:
type: string
description: 點數名稱
amount:
type: integer
description: 犢幣剩餘金額
format: int32
AgreementResponse:
type: object
description: 服務條款與隱私權條款的回傳格式
properties:
data:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- agreements
attributes:
type: object
properties:
terms_and_conditions_of_use:
type: object
properties:
title:
type: string
description: 標題
content:
type: string
description: 服務條款
required:
- title
- content
privacy_policy:
type: object
properties:
title:
type: string
description: 標題
content:
type: string
description: 隱私權條款
required:
- title
- content
required:
- terms_and_conditions_of_use
- privacy_policy
required:
- attributes
required:
- data
BadgeResponse:
type: object
description: 徽章回傳格式
properties:
data:
$ref: '#/definitions/Badge'
required:
- data
BadgesResponse:
type: object
description: 徽章清單回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/Badge'
required:
- data
ActivityResponse:
type: object
description: 閱歷回傳格式
properties:
data:
$ref: '#/definitions/Activity'
required:
- data
BundlesResponse:
type: object
description: 套賣清單回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/Bundle'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
InstallmentResponse:
type: object
properties:
data:
$ref: '#/definitions/Installment'
required:
- data
InstallmentsResponse:
type: object
description: 系列 / 連載清單回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/Installment'
required:
- data
MediaItemResponse:
type: object
properties:
data:
$ref: '#/definitions/MediaItem'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
- included
MediaItemsResponse:
type: object
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/MediaItem'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
PinResponse:
type: object
description: 有聲書書籤回傳格式
properties:
data:
$ref: '#/definitions/Pin'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
PinsResponse:
type: object
description: 有聲書書籤清單回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/Pin'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
PlaybackResponse:
type: object
description: 播放資訊回傳格式
properties:
data:
$ref: '#/definitions/Playback'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
- included
PlaybacksResponse:
type: object
description: 播放資訊清單回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/Playback'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
PlaybacklogResponse:
type: object
description: 播放記錄回傳格式
properties:
data:
$ref: '#/definitions/Playbacklog'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
- included
UnlimitedResponse:
type: object
description: 暢讀方案清單回傳格式
properties:
data:
$ref: '#/definitions/Unlimited'
required:
- data
UnlimitedsResponse:
type: object
description: 暢讀方案清單回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/Unlimited'
required:
- data
UnlimitedItemsResponse:
type: object
description: 暢讀包書籍清單回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/UnlimitedItem'
required:
- data
UnlimitedListResponse:
type: object
description: 暢讀包分類回傳格式
properties:
data:
$ref: '#/definitions/UnlimitedList'
required:
- data
UnlimitedListsResponse:
type: object
description: 暢讀包分類回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/UnlimitedList'
required:
- data
NavigationsResponse:
type: object
description: 頁面區塊回傳格式
properties:
data:
type: array
items:
$ref: '#/definitions/PageRow'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
ActionCellResponse:
type: object
description: 書店頁面按鈕區塊回傳格式
properties:
data:
type: array
items:
$ref: '#/definitions/ActionCell'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
BookCellResponse:
type: object
description: 書店頁面書籍連結回傳格式
properties:
data:
type: array
items:
$ref: '#/definitions/BookCell'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
GoalRecordsResponse:
type: object
description: 每日閱讀時間回傳格式
properties:
data:
type: array
items:
$ref: '#/definitions/GoalRecord'
RecordsResponse:
type: object
description: 每日閱讀統計回傳格式
properties:
data:
type: array
items:
$ref: '#/definitions/Record'
PeeragesResponse:
type: object
description: 會員等級資訊回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
links:
$ref: '#/definitions/PaginationLinks'
data:
type: array
items:
$ref: '#/definitions/Peerage'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
ScoreHistoriesResponse:
type: object
description: 會員等級歷程回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
data:
type: array
items:
$ref: '#/definitions/ScoreHistory'
required:
- data
BookSlipsResponse:
type: object
description: 借書卡資訊回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
data:
type: array
items:
$ref: '#/definitions/BookSlip'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
BookSlipResponse:
type: object
description: 借書卡資訊回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
data:
$ref: '#/definitions/BookSlip'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
FamilyResponse:
type: object
properties:
data:
$ref: '#/definitions/Family'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
FamilyMembersResponse:
type: object
description: 家庭成員資訊回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
data:
type: array
items:
$ref: '#/definitions/FamilyMember'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
FamilyMemberResponse:
type: object
description: 家庭成員資訊回傳格式
properties:
data:
$ref: '#/definitions/FamilyMember'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
LikesResponse:
type: object
description: 按讚資訊回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
data:
type: array
items:
$ref: '#/definitions/Like'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
LikeResponse:
type: object
description: 按讚資訊回傳格式
properties:
data:
$ref: '#/definitions/Like'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
CollectsResponse:
type: object
description: 收藏資訊回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
data:
type: array
items:
$ref: '#/definitions/Collect'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
CollectResponse:
type: object
description: 收藏資訊回傳格式
properties:
data:
$ref: '#/definitions/Collect'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
ApAccountResponse:
type: object
description: AP帳戶資訊回傳格式
properties:
data:
$ref: '#/definitions/ApAccount'
required:
- data
ApSharesResponse:
type: object
description: AP分享資訊回傳格式
properties:
meta:
$ref: '#/definitions/TopLevelMeta'
data:
type: array
items:
$ref: '#/definitions/ApShare'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
ApShareResponse:
type: object
description: AP分享資訊回傳格式
properties:
data:
$ref: '#/definitions/ApShare'
included:
type: array
items:
$ref: '#/definitions/Resource'
required:
- data
Peerage:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- peerage
attributes:
type: object
properties:
user_id:
type: string
level:
allOf:
- description: 總等級
- $ref: '#/definitions/PeerageItem'
- type: object
properties:
pieces_name:
type: string
description: 頭銜顯示名
required:
- pieces_name
rank:
type: array
items:
$ref: '#/definitions/PeerageItem'
required:
- level
- rank
relationships:
type: object
properties:
score_history:
$ref: '#/definitions/ToMany'
PeerageItem:
type: object
properties:
code:
type: string
description: 英文代號
enum:
- elegant
- knowledge
- dexterity
- charm
- courage
name:
type: string
description: 中文顯示名
enum:
- 優雅
- 知識
- 靈巧
- 魅力
- 勇氣
image_url:
type: string
description: 圖示URL
milestone:
$ref: '#/definitions/PeerageMilestone'
value:
type: integer
format: int32
description: 等級/階級
exp_total:
type: number
format: float
description: 目前經驗值
exp_to_next_level:
type: number
format: float
description: 升級/升階經驗值
required:
- code
- name
- image_url
- milestone
- value
- exp_total
- exp_to_next_level
PeerageMilestone:
type: array
items:
$ref: '#/definitions/PeerageMilestoneItems'
PeerageMilestoneItems:
type: object
properties:
point:
type: string
description:
type: string
value:
type: integer
format: int32
ScoreHistory:
type: object
properties:
date:
type: string
description: 發送積分日期
format: date-time
record:
type: object
properties:
level_score:
type: number
format: float
rank_score:
type: object
properties:
elegant:
type: number
format: float
knowledge:
type: number
format: float
dexterity:
type: number
format: float
charm:
type: number
format: float
courage:
type: number
format: float
required:
- elegant
- knowledge
- dexterity
- charm
- courage
BookSlip:
allOf:
- $ref: '#/definitions/ResourceIdentifier'
- type: object
properties:
type:
type: string
enum:
- book_slips
attributes:
type: object
properties:
loan_status:
type: string
enum:
- borrowed
- return
relationships:
type: object
properties:
lender:
$ref: '#/definitions/ToOne'
borrower:
$ref: '#/definitions/ToOne'
lender_library_item:
$ref: '#/definitions/ToOne'
borrower_library_item:
$ref: '#/definitions/ToOne'
Family:
type: object
properties:
type:
type: string
enum:
- families
attributes:
type: object
properties:
adult_limit:
type: integer
description: 剩餘成人名額
format: int32
adult_cooling_off_period:
type: integer
format: int32
underage_cooling_off_period:
type: integer
format: int32
underage_limit:
type: integer
description: 剩餘小孩名額
format: int32
required:
- adult_limit
- adult_cooling_off_period
- underage_cooling_off_period
- underage_limit
relationships:
type: object
properties:
pilot:
$ref: '#/definitions/ToOne'
members:
$ref: '#/definitions/ToMany'
required:
- pilot
- members
FamilyMember:
type: object
properties:
member_type:
type: string
enum:
- adult
- teen
- child
be_invited:
type: boolean
is_pilot:
type: boolean
description: 是否為家庭管理員
is_in_group:
type: boolean
description: 是否已經加入家庭
created_at:
type: string
format: date-time
activated_time:
type: string
format: date-time
description: 同意加入家庭的時間
required:
- member_type
- be_invited
- is_pilot
- created_at
relationships:
type: object
properties:
user:
$ref: '#/definitions/ToOne'
Like:
type: object
properties:
type:
type: string
enum:
- likes
attributes:
type: object
properties:
resource_type:
type: string
description: 按讚的對象類型
enum:
- highlight
- review
create_time:
type: string
description: 按讚的時間
format: date-time
required:
- resource_type
- create_time
relationships:
type: object
properties:
user:
$ref: '#/definitions/ToOne'
reading:
$ref: '#/definitions/ToOne'
review:
$ref: '#/definitions/ToOne'
highlight:
$ref: '#/definitions/ToOne'
required:
- user
- reading
Collect:
type: object
properties:
type:
type: string
enum:
- likes
attributes:
type: object
properties:
resource_type:
type: string
description: 收藏的對象類型
enum:
- highlight
- review
create_time:
type: string
description: 收藏的時間
format: date-time
required:
- resource_type
- create_time
relationships:
type: object
properties:
user:
$ref: '#/definitions/ToOne'
reading:
$ref: '#/definitions/ToOne'
review:
$ref: '#/definitions/ToOne'
highlight:
$ref: '#/definitions/ToOne'
required:
- user
- reading
ApAccount:
type: object
properties:
type:
type: string
enum:
- apaccounts
attributes:
type: object
properties:
role:
type: string
description: 帳戶類型
enum:
- personal
- company
email:
type: string
description: 電子郵件
name:
type: string
description: 姓名或公司名稱
key:
type: string
description: AP帳戶辨識符
site:
type: string
description: 個人或公司網站網址
vat_number:
type: string
description: 公司統一編號
create_time:
type: string
description: 帳戶建立的時間
format: date-time
required:
- role
- email
- name
- create_time
relationships:
type: object
properties:
user:
$ref: '#/definitions/ToOne'
required:
- user
ApShare:
type: object
properties:
type:
type: string
enum:
- apshares
attributes:
type: object
properties:
url:
type: string
description: AP分享網址
name:
type: string
description: 姓名或公司名稱
create_time:
type: string
description: 分享網址建立的時間
format: date-time
required:
- url
- create_time
relationships:
type: object
properties:
user:
$ref: '#/definitions/ToOne'
book:
$ref: '#/definitions/ToOne'
required:
- user
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment