Discover/HoYoLAB API
live

HoYoLAB APIhoyolab.com

Access HoYoLAB character wikis, player profiles, and community posts for Genshin Impact, Honkai: Star Rail, and Zenless Zone Zero via a single REST API.

Endpoint health
verified 1h ago
get_user_profile
get_wiki_character_detail
get_wiki_character_list
get_community_posts
search_posts
5/5 passing latest checkself-healing
Endpoints
5
Updated
26d ago

What is the HoYoLAB API?

This API exposes 5 endpoints covering HoYoLAB's character wiki, user profiles, and community feed across three games: Genshin Impact, Honkai: Star Rail, and Zenless Zone Zero. get_wiki_character_detail returns structured module data including ascension materials, talent info, and gallery assets. get_community_posts surfaces live post feeds with engagement stats and images, while get_user_profile retrieves any public player profile by numeric UID.

Try it
HoYoLAB User ID (numeric string, e.g. '1015537').
api.parse.bot/scraper/25bc7081-3f3a-46af-af7f-8569f84d11da/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/25bc7081-3f3a-46af-af7f-8569f84d11da/get_user_profile?uid=1015537' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace hoyolab-com-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

from parse_apis.hoyolab_api import HoYoLAB, GameSlug, GameId, FeedType

client = HoYoLAB()

# Browse Genshin Impact characters from the wiki
for character in client.characters.list(game=GameSlug.GENSHIN, page_size=5):
    print(character.name, character.icon_url, character.entry_page_id)

# Get a user profile by UID
profile = client.userprofiles.get(uid="1015537")
print(profile.nickname, profile.avatar_url, profile.uid)
print(profile.achieve.like_num, profile.achieve.followed_cnt)

# Browse hot community posts for Honkai: Star Rail
for post in client.communityposts.feed(gids=GameId.HSR, type=FeedType.HOT, limit=10):
    print(post.post.subject, post.stat.view_num, post.user.nickname)

# Search community posts by keyword
for result in client.communityposts.search(keyword="build guide", gids=GameId.GENSHIN, limit=5):
    print(result.post.subject, result.stat.like_num, result.user.nickname)
All endpoints · 5 totalmissing one? ·

Retrieve a public HoYoLAB user profile by UID. Returns user info including nickname, avatar URL, achievement stats (posts, likes, followers), community settings, and game permissions. The profile is publicly visible unless the user has set privacy restrictions.

Input
ParamTypeDescription
uidrequiredstringHoYoLAB User ID (numeric string, e.g. '1015537').
Response
{
  "type": "object",
  "fields": {
    "user_info": "object containing uid, nickname, introduce, avatar_url, bg_url, achieve (stats), community_info, and certification",
    "perm_game_list": "array of game permission objects with game_id and is_official",
    "follow_relation": "follow status between viewer and target user (null for anonymous)"
  },
  "sample": {
    "data": {
      "user_info": {
        "uid": "1015537",
        "achieve": {
          "like_num": "23961844",
          "post_num": "4389",
          "followed_cnt": "4783786"
        },
        "nickname": "Genshin Impact Official",
        "introduce": "Grand Master of Genshin Impact Forum",
        "avatar_url": "https://fastcdn.hoyoverse.com/static-resource-v2/2024/04/10/71a62b9a993534f3db7896fc6f725ff8_4436020059642725994.webp"
      },
      "perm_game_list": [
        {
          "game_id": 2,
          "is_official": true
        }
      ]
    },
    "status": "success"
  }
}

About the HoYoLAB API

Character Wiki Data

get_wiki_character_list accepts a game slug (genshin, hsr, or zzz) plus optional page_num and page_size parameters and returns a paginated array of character entries. Each entry includes entry_page_id, name, icon_url, and filter_values covering element, weapon type, rarity, and region. The total field in the response tells you the full count so you can page through the complete roster.

get_wiki_character_detail takes a character_id (the entry_page_id from the list endpoint) and returns the full wiki page for that character. The modules array contains structured sections for attributes, ascension materials, talent descriptions, and gallery images. The filter_values field on the detail response mirrors the list endpoint, making it straightforward to cross-reference.

Community Posts and Search

get_community_posts accepts a gids integer (2 for Genshin Impact, 6 for Honkai: Star Rail, 8 for Zenless Zone Zero) and a type flag controlling whether you receive Hot (1), New (2), or Official (3) posts. Each post object in the response list contains a post block with title and body metadata, a user block, a stat block with view and like counts, topics, and an image_list. Pagination uses a cursor pattern: pass the last_id value from one response as the input to the next call.

search_posts lets you query posts by keyword within a specific game's forum. Results use a different pagination key — next_offset rather than last_id — so check is_last to know when you've exhausted the result set. get_user_profile accepts any public HoYoLAB uid and returns user_info containing nickname, avatar_url, achievement stats, and community settings.

Reliability & maintenanceVerified

The HoYoLAB API is a managed, monitored endpoint for hoyolab.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when hoyolab.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official hoyolab.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
1h ago
Latest check
5/5 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a character comparison tool using ascension materials and filter values from get_wiki_character_detail
  • Aggregate community sentiment around new game patches by searching posts with relevant keywords via search_posts
  • Display a player's public profile card including nickname and achievement stats using get_user_profile
  • Monitor official announcements for Genshin Impact by polling get_community_posts with type=3
  • Populate a game database with character rosters, icons, and rarity data from get_wiki_character_list for all three supported games
  • Track trending community discussions in Honkai: Star Rail by fetching Hot posts (type=1) with gids=6
  • Build a talent reference sheet by extracting the modules array from get_wiki_character_detail
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does HoYoLAB have an official developer API?+
HoYoverse does not publish a documented public developer API for HoYoLAB community data or HoYoWiki. This Parse API provides structured access to that data without requiring you to reverse-engineer any undocumented interface yourself.
How does pagination work across the different endpoints?+
get_wiki_character_list uses numeric page_num and page_size parameters. get_community_posts uses a cursor: take the last_id from the previous response and pass it as the last_id input on the next call. search_posts uses a separate next_offset integer field from the response — not last_id — for its pagination cursor. Check is_last on both post endpoints to detect the final page.
Does `get_wiki_character_detail` return skill damage multipliers or stat scaling tables?+
The endpoint returns the modules array as structured sections reflecting the HoYoWiki page, which includes talent descriptions and ascension material lists. Numeric damage multiplier tables depend on how HoYoWiki structures that content per character and are not guaranteed as a distinct parsed field. You can fork this API on Parse and revise it to extract or reshape specific module sections if the default structure doesn't match your needs.
Is in-game data like spiral abyss records or real-time stamina available?+
Not currently. This API covers wiki character data, public HoYoLAB community profiles, and community post feeds. In-game record endpoints — such as spiral abyss clears, daily check-ins, or real-time resin/stamina — are not included. You can fork the API on Parse and revise it to add those missing endpoints.
What does `retcode` indicate in responses?+
Every endpoint returns a retcode integer alongside a message string. A retcode of 0 means the request succeeded. Non-zero values indicate an error condition — for example, an invalid UID passed to get_user_profile or an unrecognized character_id passed to get_wiki_character_detail. Always check retcode before consuming the data object.
Page content last updated . Spec covers 5 endpoints from hoyolab.com.
Related APIs in EntertainmentSee all →
wikia.org API
Search and retrieve detailed information about characters, episodes, lore, and other content from Fandom wikis across thousands of fan communities. Browse wiki categories, look up specific pages, and access structured data about your favorite franchises all in one place.
hpoi.net API
Search and browse the Hpoi collectible anime figure database. Retrieve paginated item listings with full filtering support, access detailed product information including specifications, release dates, images, and manufacturer details, and fetch user comments and official gallery images for any item.
genshin.gg API
Get detailed information about Genshin Impact characters including their talents, constellations, builds, and stats, plus browse the complete character roster. Find everything you need to plan your team composition and optimize character development.
gamepedia.com API
Search gaming wikis across Fandom to find guides, maps, strategies, and game information, then retrieve detailed page content in multiple formats along with images and metadata. Discover trending articles, browse categories, and navigate game-specific knowledge bases to get the gaming data you need.
wowhead.com API
Access comprehensive World of Warcraft game data including items, NPCs, spells, and quests, plus stay updated with the latest WoW news and in-game events. Search the complete Wowhead database and read individual news articles to keep informed about current happenings in the game.
wikia.com API
Extract structured data from Fandom (formerly Wikia) gaming wikis. Search pages, retrieve full page content, list category members, and convert wiki pages into organized guides with infoboxes, section breakdowns, and clean text.
eldenring.wiki.fextralife.com API
Search and retrieve structured Elden Ring game information from the Fextralife Wiki, including weapons, enemies, locations, and lore. Access full article content with hierarchical sections, tables, and images, or search the complete article catalog by keyword.
howbazaar.gg API
Query items, skills, merchants, and monsters from the How Bazaar game database. Look up detailed information about in-game equipment, abilities, NPCs, and enemy encounters, with optional filters by hero, tier, size, and tag.