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:
strtype: 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:
strimageUrl: Optional[
str]biography:
LocalizedStringtwitter: 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:
intcreatedAt:
strupdatedAt:
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:
boolroles: List[
str]permissions: List[
str]
- class hondana.types_.auth.RefreshPayload[source]¶
result: Literal[
"ok","error"]token:
TokenResponsemessage:
str
- class hondana.types_.auth.LoginPayload[source]¶
result: Literal[
"ok","error"]token:
TokenResponse
Chapter¶
- class hondana.types_.chapter.ChapterResponse[source]¶
id:
strtype: 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:
strchapter:
strpages:
inttranslatedLanguage:
strexternalUrl: Optional[
str]version:
intcreatedAt:
strupdatedAt:
strpublishAt:
strreadableAt:
strisUnavailable:
bool
- 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:
intoffset:
inttotal:
int
- class hondana.types_.chapter.GetAtHomeResponse[source]¶
result: Literal[
"ok"]baseUrl:
strchapter: :class`~hondana.types_.GetAtHomeChapterResponse`
Cover¶
- class hondana.types_.cover.CoverResponse[source]¶
id:
strtype: 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:
strdescription: Optional[
str]locale: Optional[
LanguageCode]version:
intcreatedAt:
strupdatedAt:
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:
strvisibility:
CustomListVisibilitypinned: 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:
strtype: Literal[
"mapping_id"]attributes:
LegacyMappingAttributesResponse
- class hondana.types_.legacy.LegacyMappingAttributesResponse[source]¶
type:
LegacyMappingTypelegacyId:
intnewId:
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:
strtype: 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:
LocalizedStringaltTitle: List[
LocalizedString]description:
LocalizedStringisLocked:
boollinks:
MangaLinksoriginalLanguage:
strlastVolume: Optional[
str]lastChapter: Optional[
str]publicationDemographic: Optional[
PublicationDemographic]status:
MangaStatusyear: Optional[
int]contentRating: Optional[
ContentRating]chapterNumbersResetOnNewVolume:
boollatestUploadedChapter:
stravailableTranslatedLanguages: List[
LanguageCode]tags: List[
TagResponse]state:
MangaStateversion:
intcreatedAt:
strupdatedAt:
str- isLocked: Optional[
bool] This key is optional
- isLocked: Optional[
- class hondana.types_.manga.MangaRelationAttributesResponse[source]¶
relation:
MangaRelationTypeversion: 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:
intoffset:
inttotal:
int
- class hondana.types_.manga.MangaRelation[source]¶
id:
strtype: 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:
intoffset:
inttotal:
int
- class hondana.types_.manga.VolumesAndChaptersResponse[source]¶
chapters: Dict[
str,ChaptersResponse]count:
intvolume:
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:ReadingStatusvalue]
- statuses: Dict[str,
Relationship¶
- hondana.types_.relationship.RelationshipResponse¶
id:
strtype: 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:
strtype: Literal[
"report_reason"]attributes:
GetReportReasonAttributesResponse
- class hondana.types_.report.GetReportReasonAttributesResponse[source]¶
reason:
LocalizedStringdetailsRequired:
boolcategory:
ReportCategoryversion:
int
Scanlator Group¶
- class hondana.types_.scanlator_group.ScanlationGroupResponse[source]¶
id:
strtype: 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:
straltNames: 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:
boolofficial:
boolverified:
boolinactive:
bool- exLicensed:
bool This key may not be present.
publishDelay:
strversion:
intcreatedAt:
strupdatedAt:
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:
floatbayesian:
float
- class hondana.types_.statistics.MangaStatisticsResponse[source]¶
rating:
StatisticsRatingResponsefollows:
int
- class hondana.types_.statistics.BatchStatisticsResponse[source]¶
rating:
BatchStatisticsRatingResponsefollows:
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:
strtype: 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:
strversion:
introles: List[
str]
Upload¶
- class hondana.types_.upload.UploadSessionAttributes[source]¶
isCommitted:
boolisProcessed:
boolisDeleted:
boolversion:
intcreatedAt:
strupdatedAt:
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
boolisProcessed:
boolisDeleted:
bool
- class hondana.types_.upload.ChapterUploadData[source]¶
id:
strtype: Literal[
"upload_session"]attributes:
ChapterUploadAttributesrelationships: List[
RelationshipResponse]
- class hondana.types_.upload.BeginChapterUploadResponse[source]¶
result: Literal[
"ok","error"]data:
ChapterUploadData
- class hondana.types_.upload.UploadedChapterPageAttributes[source]¶
originalFileName:
strfileHash:
strfileSize:
intmimeType:
strversion:
int
- class hondana.types_.upload.UploadedChapterDataResponse[source]¶
id:
strtype: Literal[
"upload_session_file"]attributes:
UploadedChapterPageAttributes
- class hondana.types_.upload.UploadedChapterResponse[source]¶
result: Literal[
"ok","error"]errors: List[
ErrorType]data: List[
UploadedChapterDataResponse]