Response Types and Payloads¶
Most of the data in here will be irrelevant to 95% of the userbase. However if someone wishes to contribute to Hondana then they will likely read or amend this data.
I do withold the right that this data can change at any time and NOT be regarded as a breaking change due to following the upstream (MangaDex)’s dev cycle.’
Common¶
- hondana.types_.common.LanguageCode¶
alias of
Literal
[‘ar’, ‘bg’, ‘bn’, ‘ca’, ‘cs’, ‘da’, ‘de’, ‘el’, ‘en’, ‘es-la’, ‘es’, ‘fa’, ‘fi’, ‘fr’, ‘he’, ‘hi’, ‘hu’, ‘id’, ‘it’, ‘ja’, ‘ja-ro’, ‘ko’, ‘ko-ro’, ‘lt’, ‘mn’, ‘ms’, ‘my’, ‘nl’, ‘no’, ‘pl’, ‘pt-br’, ‘pt’, ‘ro’, ‘ru’, ‘sh’, ‘sv’, ‘th’, ‘tl’, ‘tr’, ‘uk’, ‘vi’, ‘zh-hk’, ‘zh’, ‘zh-ro’]
- class hondana.types_.common.LocalizedString¶
Examples
A localised string:
{ "en": "An english string", "fr": "Une corde française" }
Artist¶
- class hondana.types_.artist.ArtistResponse[source]¶
id:
str
type: Literal[
"artist"
]attributes:
ArtistAttributesResponse
- relationships: List[
RelationshipResponse
] This key is optional, in the event this payload is gotten from the “relationships” of another object.
This key can contain minimal or full data depending on the
includes[]
parameter of its request. See here for more info: https://api.mangadex.org/docs.html#section/Reference-Expansion
- relationships: List[
- class hondana.types_.artist.ArtistAttributesResponse[source]¶
name:
str
imageUrl: Optional[
str
]biography:
LocalizedString
twitter: Optional[
str
]pixiv: Optional[
str
]melonBook: Optional[
str
]fanBox: Optional[
str
]booth: Optional[
str
]nicoVideo: Optional[
str
]skeb: Optional[
str
]fantia: Optional[
str
]tumblr: Optional[
str
]youtube: Optional[
str
]weibo: Optional[
str
]naver: Optional[
str
]namicomi: Optional[
str
]website: Optional[
str
]version:
int
createdAt:
str
updatedAt:
str
- class hondana.types_.artist.GetSingleArtistResponse[source]¶
result: Literal[
"ok"
,"error"
]response: Literal[
"entity"
]data: List[
ArtistResponse
]
Auth¶
- class hondana.types_.auth.CheckPayload[source]¶
result: Literal[
"ok"
]isAuthenticated:
bool
roles: List[
str
]permissions: List[
str
]
- class hondana.types_.auth.RefreshPayload[source]¶
result: Literal[
"ok"
,"error"
]token:
TokenResponse
message:
str
- class hondana.types_.auth.LoginPayload[source]¶
result: Literal[
"ok"
,"error"
]token:
TokenResponse
Chapter¶
- class hondana.types_.chapter.ChapterResponse[source]¶
id:
str
type: Literal[
"chapter"
]attributes:
ChapterAttributesResponse
- relationships: List[
RelationshipResponse
] This key is optional, in the event this payload is gotten from the “relationships” of another object.
This key can contain minimal or full data depending on the
includes[]
parameter of its request. See here for more info: https://api.mangadex.org/docs.html#section/Reference-Expansion
- relationships: List[
- class hondana.types_.chapter.ChapterAttributesResponse[source]¶
title: Optional[
str
]volume:
str
chapter:
str
pages:
int
translatedLanguage:
str
externalUrl: Optional[
str
]version:
int
createdAt:
str
updatedAt:
str
publishAt:
str
readableAt:
str
- class hondana.types_.chapter.GetSingleChapterResponse[source]¶
result: Literal[
"ok"
,"error"
]response: Literal[
"entity"
]data:
ChapterResponse
- class hondana.types_.chapter.GetMultiChapterResponse[source]¶
result: Literal[
"ok"
,"error"
]response: Literal[
"collection"
]data: List[
ChapterResponse
]limit:
int
offset:
int
total:
int
- class hondana.types_.chapter.GetAtHomeResponse[source]¶
result: Literal[
"ok"
]baseUrl:
str
chapter: :class`~hondana.types_.GetAtHomeChapterResponse`
Cover¶
- class hondana.types_.cover.CoverResponse[source]¶
id:
str
type: Literal[
"cover_art"
]attributes:
CoverAttributesResponse
- relationships: List[
RelationshipResponse
] This key is optional, in the event this payload is gotten from the “relationships” of another object.
This key can contain minimal or full data depending on the
includes[]
parameter of its request. See here for more info: https://api.mangadex.org/docs.html#section/Reference-Expansion
- relationships: List[
- class hondana.types_.cover.CoverAttributesResponse[source]¶
volume: Optional[
str
]fileName:
str
description: Optional[
str
]locale: Optional[
LanguageCode
]version:
int
createdAt:
str
updatedAt:
str
- class hondana.types_.cover.GetSingleCoverResponse[source]¶
result: Literal[
"ok"
,"error"
]response: Literal[
"entity"
]data:
CoverResponse
CustomList¶
- class hondana.types_.custom_list.CustomListResponse[source]¶
id: class:str
type: Literal[
"custom_list"
]attributes:
CustomListAttributesResponse
- class hondana.types_.custom_list.CustomListAttributesResponse[source]¶
name:
str
visibility:
CustomListVisibility
pinned: NotRequired[
bool
]version:
int
- class hondana.types_.custom_list.GetSingleCustomListResponse[source]¶
result: Literal[
"ok"
,"error"
]response: Literal[
"entity"
]data:
CustomListResponse
Errors¶
Forums¶
Legacy¶
- class hondana.types_.legacy.LegacyMappingResponse[source]¶
id:
str
type: Literal[
"mapping_id"
]attributes:
LegacyMappingAttributesResponse
- class hondana.types_.legacy.LegacyMappingAttributesResponse[source]¶
type:
LegacyMappingType
legacyId:
int
newId:
str
Manga¶
- class hondana.types_.manga.MangaLinks[source]¶
- Please see here for more explicit info on these:-
https://api.mangadex.org/docs.html#section/Static-data/Manga-links-data
- al: Optional[
str
] anilist key
- ap: Optional[
str
] animeplanet key
- bw: Optional[
str
] bookwalker.jp key
- mu: Optional[
str
] mangaupdates key
- nu: Optional[
str
] novelupdates key
- kt: Optional[
str
] kitsu.io key
- amz: Optional[
str
] amazon key
- ebj: Optional[
str
] ebookjapan key
- mal: Optional[
str
] myanimelist key
- cdj: Optional[
str
] cdjapan key
raw: Optional[
str
]engtl: Optional[
str
]
- class hondana.types_.manga.MangaResponse[source]¶
id:
str
type: Literal[
"manga"
]attributes:
MangaAttributesResponse
- relationships: List[
RelationshipResponse
] This key is optional, in the event this payload is gotten from the “relationships” of another object.
This key can contain minimal or full data depending on the
includes[]
parameter of its request. See here for more info: https://api.mangadex.org/docs.html#section/Reference-Expansion- related:
MangaRelationType
This key is optional.
- relationships: List[
- class hondana.types_.manga.GetMangaResponse[source]¶
result: Literal[
"ok"
,"error"
]response: Literal[
"entity"
]data:
MangaResponse
- class hondana.types_.manga.MangaAttributesResponse[source]¶
title:
LocalizedString
altTitle: List[
LocalizedString
]description:
LocalizedString
isLocked:
bool
links:
MangaLinks
originalLanguage:
str
lastVolume: Optional[
str
]lastChapter: Optional[
str
]publicationDemographic: Optional[
PublicationDemographic
]status:
MangaStatus
year: Optional[
int
]contentRating: Optional[
ContentRating
]chapterNumbersResetOnNewVolume:
bool
latestUploadedChapter:
str
availableTranslatedLanguages: List[
LanguageCode
]tags: List[
TagResponse
]state:
MangaState
version:
int
createdAt:
str
updatedAt:
str
- isLocked: Optional[
bool
] This key is optional
- isLocked: Optional[
- class hondana.types_.manga.MangaRelationAttributesResponse[source]¶
relation:
MangaRelationType
version: int
- class hondana.types_.manga.MangaRelationCreateResponse[source]¶
result: Literal[
"ok"
,"error"
]response: Literal[
"entity"
]data:
MangaRelation
- class hondana.types_.manga.MangaSearchResponse[source]¶
result: Literal[
"ok"
,"error"
]response: Literal[
"collection"
]data: List[
MangaResponse
]limit:
int
offset:
int
total:
int
- class hondana.types_.manga.MangaRelation[source]¶
id:
str
type: Literal[
"manga_relation"
]attributes:
MangaRelationAttributesResponse
- relationships: List[
RelationshipResponse
] This key is optional, in the event this payload is gotten from the “relationships” of another object.
This key can contain minimal or full data depending on the
includes[]
parameter of its request. See here for more info: https://api.mangadex.org/docs.html#section/Reference-Expansion- related:
MangaRelationType
This key is optional.
- relationships: List[
- class hondana.types_.manga.MangaRelationResponse[source]¶
result: Literal[
"ok"
,"error"
]response: Literal[
"collection"
]data: List[
MangaRelation
]limit:
int
offset:
int
total:
int
- class hondana.types_.manga.VolumesAndChaptersResponse[source]¶
chapters: Dict[
str
,ChaptersResponse
]count:
int
volume:
str
- class hondana.types_.manga.GetMangaVolumesAndChaptersResponse[source]¶
result: Literal[
"ok"
,"error"
]volumes: Optional[Dict[
str
,VolumesAndChaptersResponse
]]
- class hondana.types_.manga.MangaSingleReadingStatusResponse[source]¶
result: Literal[
"ok"
]status:
ReadingStatus
- class hondana.types_.manga.MangaMultipleReadingStatusResponse[source]¶
result: Literal[
"ok"
]- statuses: Dict[str,
ReadingStatus
] Mapping of [
manga_id
:ReadingStatus
value]
- statuses: Dict[str,
Relationship¶
- hondana.types_.relationship.RelationshipResponse¶
id:
str
type: Literal[
"manga"
,"chapter"
,"scanlation_group"
,"author"
,"cover_art"
,"artist"
,user
]- attributes: Dict[
str
,str
] This key is optional
This key can contain minimal or full data depending on the
includes[]
parameter of it’s request. See here for more info: https://api.mangadex.org/docs.html#section/Reference-Expansion- relationships: List[Dict[
str
,str
]] This key is optional
This key will be a one level nested list of relationships for each object in the relationship.
- attributes: Dict[
Report¶
- class hondana.types_.report.ReportReasonResponse[source]¶
id:
str
type: Literal[
"report_reason"
]attributes:
GetReportReasonAttributesResponse
- class hondana.types_.report.GetReportReasonAttributesResponse[source]¶
reason:
LocalizedString
detailsRequired:
bool
category:
ReportCategory
version:
int
Scanlator Group¶
- class hondana.types_.scanlator_group.ScanlationGroupResponse[source]¶
id:
str
type: Literal[
"scanlation_group"
]attributes:
ScanlationGroupAttributesResponse
- relationships: List[
RelationshipResponse
] This key is optional, in the event this payload is gotten from the “relationships” of another object.
This key can contain minimal or full data depending on the
includes[]
parameter of its request. See here for more info: https://api.mangadex.org/docs.html#section/Reference-Expansion
- relationships: List[
- class hondana.types_.scanlator_group.ScanlationGroupAttributesResponse[source]¶
name:
str
altNames: List[
str
]website: Optional[
str
]ircServer: Optional[
str
]ircChannel: Optional[
str
]discord: Optional[
str
]contactEmail: Optional[
str
]description: Optional[
str
]twitter: Optional[
str
]mangaUpdates: Optional[
str
]focusedLanguage: Optional[List[
str
]]locked:
bool
official:
bool
verified:
bool
inactive:
bool
- exLicensed:
bool
This key may not be present.
publishDelay:
str
version:
int
createdAt:
str
updatedAt:
str
- exLicensed:
- class hondana.types_.scanlator_group.GetSingleScanlationGroupResponse[source]¶
result: Literal[
"ok"
,"error"
]response: Literal[
"entity"
]data:
ScanlationGroupResponse
Settings¶
Statistics¶
- class hondana.types_.statistics.StatisticsRatingResponse[source]¶
average: Optional[
float
]bayesian: Optional[
float
]
- class hondana.types_.statistics.BatchStatisticsRatingResponse[source]¶
average:
float
bayesian:
float
- class hondana.types_.statistics.MangaStatisticsResponse[source]¶
rating:
StatisticsRatingResponse
follows:
int
- class hondana.types_.statistics.BatchStatisticsResponse[source]¶
rating:
BatchStatisticsRatingResponse
follows:
int
- class hondana.types_.statistics.GetMangaStatisticsResponse[source]¶
result: Literal[
"ok"
]statistics: Dict[
str
,StatisticsRatingResponse
]
- class hondana.types_.statistics.BatchGetStatisticsResponse[source]¶
result: Literal[
"ok"
]statistics: Dict[
str
,BatchStatisticsResponse
]
- class hondana.types_.statistics.GetPersonalMangaRatingsResponse[source]¶
result: Literal[
"ok"
]ratings: Dict[
str
,PersonalMangaRatingsResponse
]
- class hondana.types_.statistics.StatisticsCommentsResponse[source]¶
comments: Optional[
CommentMetaData
]
- class hondana.types_.statistics.GetCommentsStatisticsResponse[source]¶
result: Literal[
"ok"
]statistics: Dict[
str
,StatisticsCommentsResponse
]
Token¶
- class hondana.types_.token.TokenPayload[source]¶
typ: Literal[
Bearer
]- iss: Literal[
https://auth.mangadex.org/realms/mangadex
] Issuer name
- aud: Literal[
account
] Token audience
- iat:
int
Time token was issued in UTC timestamp
- exp:
int
Expiring time in UTC timestamp
- sid:
str
Session UUID
- auth_time:
int
Time when authentication occurred in UTC timestamp.
- jti:
str
JWT unique identifier
- sub
str
Token subject UUID.
- azp:
str
Authorized party name
- session_state: dict[
str
,_InnerSessionState
] The current session state data
- scope:
str
A space delimited list of oauth scopes
- roles: list[
str
] A list of roles the user has in the API
- groups:
str
A space delimited string of groups one has in the API
- preferred_username:
str
The username of the current user
- email_address:
str
The email address of the current user
- iss: Literal[
User¶
- class hondana.types_.user.UserResponse[source]¶
id:
str
type: Literal[
"user"
]attributes:
GetUserAttributesResponse
- relationships: List[
RelationshipResponse
] This key is optional, in the event this payload is gotten from the “relationships” of another object.
This key can contain minimal or full data depending on the
includes[]
parameter of its request. See here for more info: https://api.mangadex.org/docs.html#section/Reference-Expansion
- relationships: List[
- class hondana.types_.user.GetUserAttributesResponse[source]¶
username:
str
version:
int
roles: List[
str
]
Upload¶
- class hondana.types_.upload.UploadSessionAttributes[source]¶
isCommitted:
bool
isProcessed:
bool
isDeleted:
bool
version:
int
createdAt:
str
updatedAt:
str
- class hondana.types_.upload.GetUploadSessionResponse[source]¶
result: Literal[
"ok"
,"error"
]response: Literal[
"entity"
]data: :class:~hondana.types_.GetUploadSessionDataResponse`
- class hondana.types_.upload.ChapterUploadAttributes[source]¶
isCommitted
bool
isProcessed:
bool
isDeleted:
bool
- class hondana.types_.upload.ChapterUploadData[source]¶
id:
str
type: Literal[
"upload_session"
]attributes:
ChapterUploadAttributes
relationships: List[
RelationshipResponse
]
- class hondana.types_.upload.BeginChapterUploadResponse[source]¶
result: Literal[
"ok"
,"error"
]data:
ChapterUploadData
- class hondana.types_.upload.UploadedChapterPageAttributes[source]¶
originalFileName:
str
fileHash:
str
fileSize:
int
mimeType:
str
version:
int
- class hondana.types_.upload.UploadedChapterDataResponse[source]¶
id:
str
type: Literal[
"upload_session_file"
]attributes:
UploadedChapterPageAttributes
- class hondana.types_.upload.UploadedChapterResponse[source]¶
result: Literal[
"ok"
,"error"
]errors: List[
ErrorType
]data: List[
UploadedChapterDataResponse
]