Maoyan APIm.maoyan.com ↗
Access Maoyan movie data: currently showing films, upcoming releases, ratings, cast, directors, posters, and showtimes from China's leading cinema platform.
What is the Maoyan API?
The Maoyan API provides 3 endpoints covering Chinese theatrical releases — currently showing films, upcoming releases, and per-movie detail pages. The now_showing endpoint returns a full list of films in cinemas today, each with title, score, poster URL, cast, release date, and showtime count. movie_detail extends that to include director, runtime, synopsis, language, photo stills, and trailer URL for a single film by ID.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/9233022b-0167-4e26-915b-01866cc5090c/now_showing' \ -H 'X-API-Key: $PARSE_API_KEY'
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 m-maoyan-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.maoyan_movies_api import Maoyan, Movie, MovieSummary, ScoreDistribution, MovieNotFound
maoyan = Maoyan()
# List movies currently in theaters
for movie in maoyan.movies.list_showing():
print(movie.title, movie.score, movie.wish_count)
# List upcoming releases for Beijing
for upcoming in maoyan.movies.list_coming(city_id="1"):
print(upcoming.title, upcoming.release_date, upcoming.coming_title)
# Get full details for a specific movie
detail = maoyan.movies.get(movie_id="672275")
print(detail.title, detail.english_title, detail.director, detail.duration)
# Navigate from a summary to its full detail
for movie in maoyan.movies.list_showing():
full = movie.details()
print(full.title, full.categories, full.language)
if full.score_distribution:
for dist in full.score_distribution:
print(dist.level, dist.proportion)
break
Retrieve the list of movies currently playing in Chinese theaters. Returns all films with basic metadata including title, score, poster, cast, release date, and showtime counts. No parameters required.
No input parameters required.
{
"type": "object",
"fields": {
"total": "integer - total number of movies currently showing",
"movies": "array of movie summary objects with id, title, score, poster, actors, release_date, version, wish_count, show_info"
},
"sample": {
"data": {
"total": 101,
"movies": [
{
"id": 672275,
"score": 0,
"title": "揭秘日",
"actors": "艾米莉·布朗特,乔什·奥康纳,科林·费斯",
"poster": "https://p0.pipi.cn/mediaplus/friday_image_fe/e429585bd8a4a1fcf4ce6383cd924a59952e9.jpg?imageMogr2/quality/80",
"version": "v2d imax",
"show_info": "今晚2家影院放映2场",
"wish_count": 44328,
"release_date": "2026-06-12"
}
]
},
"status": "success"
}
}About the Maoyan API
Endpoints and Data Coverage
The now_showing endpoint requires no parameters and returns a total count alongside an array of movie summary objects. Each entry includes a Maoyan id, Chinese title, score, poster URL, actors, release_date, format version (e.g. IMAX, 3D), wish_count, and show_info summarizing available showtimes. This is the primary feed for building a real-time "what's in cinemas" view for the Chinese market.
The coming_soon endpoint accepts an optional limit integer and a city_id string for location-specific scheduling (for example, city_id=1 targets Beijing). Returned objects share the same structure as now_showing results but add a coming_title field — a formatted label grouping films by scheduled release date. This makes it straightforward to build release-calendar views filtered by city.
Movie Detail
The movie_detail endpoint takes a movie_id obtained from either listing endpoint. The response extends the summary fields with director, duration in minutes, language, an array of photos (still image URLs), poster, and score. This is the appropriate endpoint to populate a full film profile page — cast bio pages, trailer embeds, and photo galleries all map directly to returned fields.
Coverage Scope
All data reflects Maoyan's Chinese theatrical catalog. Ratings (score) represent Maoyan user scores, not aggregated from other platforms. Format availability (version) reflects what the source records, which may vary by city. Box office grosses and theater-level showtimes schedules are not included in the current endpoint set.
The Maoyan API is a managed, monitored endpoint for m.maoyan.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when m.maoyan.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 m.maoyan.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.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Display a live list of films currently in Chinese cinemas with posters and scores using
now_showing - Build a release calendar grouped by date for a specific city using
coming_soonwithcity_id - Populate full movie profile pages with director, runtime, language, and photo stills via
movie_detail - Track user wish counts on upcoming titles to gauge pre-release audience interest
- Filter upcoming releases by a maximum number of results using the
limitparameter incoming_soon - Embed Maoyan trailer URLs and still photos from
movie_detailinto entertainment news articles - Monitor score changes over time for currently showing films by polling
now_showingperiodically
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 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.
Does Maoyan have an official public developer API?+
What does the `coming_soon` endpoint return that `now_showing` does not?+
coming_soon response includes a coming_title field, which is a formatted label used to group upcoming films by scheduled release date. It also accepts a city_id parameter so results can be filtered to a specific city's release schedule. The now_showing endpoint has neither of these; it returns a flat list of all currently playing films with no city filtering.Does the API return box office revenue or theater-level showtime schedules?+
Are the movie ratings from Maoyan or aggregated from other platforms?+
score field in all three endpoints reflects Maoyan's own user rating. Scores from Douban, IMDb, or other platforms are not included in the current responses. You can fork this API on Parse and revise it to add ratings from additional sources.Is there a pagination mechanism for the `now_showing` or `movie_detail` endpoints?+
now_showing endpoint returns all currently showing films in a single response with no pagination parameters. The movie_detail endpoint returns one film per request, identified by movie_id. Only coming_soon accepts a limit parameter to cap results. There is no page/offset parameter on the other two endpoints.