openapi: 3.0.3 info: title: MediaWiki Action articles Page content API description: 'The MediaWiki Action API is the original programmatic interface to MediaWiki, exposed under /w/api.php on every MediaWiki installation. All operations dispatch via the ?action= query parameter. The API supports JSON, XML, and PHP serialization; JSON is the recommended format. Wikimedia projects strongly recommend serial (not parallel) calls, the use of maxlag for non-interactive jobs, and a contactable User-Agent header. The Action API remains the primary write interface (edit, upload, login, patrol) even where the Core REST API is also available.' version: '1.45' x-generated-from: documentation x-source-url: https://www.mediawiki.org/wiki/API:Main_page x-last-validated: '2026-05-29' contact: name: Wikimedia Foundation url: https://www.mediawiki.org/wiki/API:Etiquette license: name: CC BY-SA 4.0 url: https://creativecommons.org/licenses/by-sa/4.0/ servers: - url: https://en.wikipedia.org/w description: English Wikipedia - url: https://{lang}.wikipedia.org/w description: Per-language Wikipedia variables: lang: default: en description: Language code - url: https://commons.wikimedia.org/w description: Wikimedia Commons - url: https://www.wikidata.org/w description: Wikidata - url: https://www.mediawiki.org/w description: MediaWiki.org tags: - name: Page content description: page content in different formats paths: /page/: get: tags: - Page content summary: Wikimedia REST List Page-related API Entry Points. description: 'Stability: [stable](https://www.mediawiki.org/wiki/API_versioning#Stable) ' responses: '200': description: A list of page-related API end points. content: application/json: schema: $ref: '#/components/schemas/listing' default: description: Error content: application/problem+json: schema: $ref: '#/components/schemas/problem' x-monitor: false x-microcks-operation: delay: 0 dispatcher: FALLBACK /page/title/{title}: get: tags: - Page content summary: Wikimedia REST Get Revision Metadata for a Title. description: 'Returns the revision metadata for the given title. If a revision ID is provided, metadata for that revision is returned, otherwise the latest revision ID is assumed. Stability: [stable](https://www.mediawiki.org/wiki/API_versioning#Stable). ' parameters: - name: title in: path description: 'Page title. Use underscores instead of spaces. Use percent-encoding. Example: `Main_Page`.' required: true schema: type: string responses: '200': description: The latest revision metadata for the provided title. content: application/json: schema: $ref: '#/components/schemas/revision' '301': description: 'A permanent redirect is returned if the supplied article title was not in the normalized form. To avoid these redirects, you can use the [mediawiki-title](https://github.com/wikimedia/mediawiki-title) library to perform title normalization client side. Beware that redirected pre-flighted cross-origin requests (such as those sending custom request headers like `Api-User-Agent`) will fail in most current browsers [due to a spec bug](https://github.com/whatwg/fetch/issues/204). ' '302': description: 'The page is a [redirect page](https://www.mediawiki.org/wiki/Help:Redirects). The `location` header points to the redirect target. If you would like to avoid automatically following redirect pages, set the `redirect=false` query parameter. Beware that redirected pre-flighted cross-origin requests (such as those sending custom request headers like `Api-User-Agent`) will fail in most current browsers [due to a spec bug](https://github.com/whatwg/fetch/issues/204). ' '404': description: Unknown page title or no revisions found. content: application/problem+json: schema: $ref: '#/components/schemas/problem' default: description: Error content: application/problem+json: schema: $ref: '#/components/schemas/problem' x-monitor: true x-amples: - title: Get rev by title from storage request: params: domain: en.wikipedia.org title: User:BSitzmann_(WMF)/MCS/Test/Frankenstein response: status: 200 headers: etag: /.+/ content-type: application/json body: items: - title: User:BSitzmann_(WMF)/MCS/Test/Frankenstein rev: /\d+/ tid: /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/ comment: /.*/ page_language: en x-microcks-operation: delay: 0 dispatcher: FALLBACK /page/title/{title}/{revision}: get: tags: - Page content summary: Wikimedia REST Get Revision Metadata for a Title. description: 'Returns the revision metadata for the given title. If a revision ID is provided, metadata for that revision is returned, otherwise the latest revision ID is assumed. Stability: [stable](https://www.mediawiki.org/wiki/API_versioning#Stable). ' parameters: - name: title in: path description: 'Page title. Use underscores instead of spaces. Use percent-encoding. Example: `Main_Page`.' required: true schema: type: string - name: revision in: path description: The revision id required: true schema: type: integer responses: '200': description: The latest revision metadata for the provided title. content: application/json: schema: $ref: '#/components/schemas/revision' '301': description: 'A permanent redirect is returned if the supplied article title was not in the normalized form. To avoid these redirects, you can use the [mediawiki-title](https://github.com/wikimedia/mediawiki-title) library to perform title normalization client side. Beware that redirected pre-flighted cross-origin requests (such as those sending custom request headers like `Api-User-Agent`) will fail in most current browsers [due to a spec bug](https://github.com/whatwg/fetch/issues/204). ' '302': description: 'The page is a [redirect page](https://www.mediawiki.org/wiki/Help:Redirects). The `location` header points to the redirect target. If you would like to avoid automatically following redirect pages, set the `redirect=false` query parameter. Beware that redirected pre-flighted cross-origin requests (such as those sending custom request headers like `Api-User-Agent`) will fail in most current browsers [due to a spec bug](https://github.com/whatwg/fetch/issues/204). ' '404': description: Unknown page title or no revisions found. content: application/problem+json: schema: $ref: '#/components/schemas/problem' default: description: Error content: application/problem+json: schema: $ref: '#/components/schemas/problem' x-monitor: false x-amples: - title: Get rev by title from storage request: params: domain: en.wikipedia.org title: User:BSitzmann_(WMF)/MCS/Test/Frankenstein response: status: 200 headers: etag: /.+/ content-type: application/json body: items: - title: User:BSitzmann_(WMF)/MCS/Test/Frankenstein rev: /\d+/ tid: /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/ comment: /.*/ page_language: en x-microcks-operation: delay: 0 dispatcher: FALLBACK /page/html/{title}: get: tags: - Page content summary: Wikimedia REST Get Latest HTML for a Title. description: 'Stability: [stable](https://www.mediawiki.org/wiki/API_versioning#Stable) ' parameters: - name: title in: path description: 'Page title. Use underscores instead of spaces. Use percent-encoding. Example: `Main_Page`.' required: true schema: type: string - name: redirect in: query description: 'Requests for [redirect pages](https://www.mediawiki.org/wiki/Help:Redirects) return HTTP 302 with a redirect target in `Location` header and content in the body. To get a 200 response instead, supply `false` to the `redirect` parameter. ' schema: type: boolean required: false - name: stash in: query description: 'Whether to temporary stash data-parsoid metadata in order to support transforming the modified content later. If this parameter is set, requests are rate-limited on a per-client basis (max 5 requests per second per client) ' schema: type: boolean - name: Accept-Language in: header description: 'The desired language variant code for wikis where LanguageConverter is enabled. Example: `sr-el` for Latin transcription of the Serbian language. ' schema: type: string responses: '200': description: 'The latest HTML for the given page title. See [the MediaWiki DOM spec](https://www.mediawiki.org/wiki/Parsoid/MediaWiki_DOM_spec) for a description of the MediaWiki-specific semantic markup in this HTML. Note that additional metadata is available in the HTML head. ' headers: ETag: description: 'ETag header indicating the revision and render timeuuid separated by a slash: "701384379/154d7bca-c264-11e5-8c2f-1b51b33b59fc" This ETag can be passed to the HTML save end point (as `base_etag` POST parameter), and can also be used to retrieve the exact corresponding data-parsoid metadata, by requesting the specific `revision` and `tid` indicated by the `ETag`. ' schema: type: string content: text/html; charset=utf-8; profile="https://www.mediawiki.org/wiki/Specs/HTML/2.1.0": schema: type: string application/json: schema: type: object '301': description: 'A permanent redirect is returned if the supplied article title was not in the normalized form. To avoid this kind of redirect, you can use the [mediawiki-title](https://github.com/wikimedia/mediawiki-title) library to perform title normalization client-side. Beware that redirected pre-flighted cross-origin requests (such as those sending custom request headers like `Api-User-Agent`) will fail in most current browsers [due to a spec bug](https://github.com/whatwg/fetch/issues/204). ' '302': description: 'The page is a [redirect page](https://www.mediawiki.org/wiki/Help:Redirects). The `location` header points to the redirect target, and the body contains the actual page contents as HTML. If you would like to avoid automatically following redirect pages, set the `redirect=false` query parameter. Beware that redirected pre-flighted cross-origin requests (such as those sending custom request headers like `Api-User-Agent`) will fail in most current browsers [due to a spec bug](https://github.com/whatwg/fetch/issues/204). ' '404': description: Unknown page title content: application/problem+json: schema: $ref: '#/components/schemas/problem' default: description: Error content: application/problem+json: schema: $ref: '#/components/schemas/problem' x-monitor: true x-amples: - title: Get html by title from storage request: params: domain: en.wikipedia.org title: User:BSitzmann_(WMF)/MCS/Test/Frankenstein response: status: 200 headers: etag: /.+/ content-type: /^text\/html.+/ body: /^.*/ x-microcks-operation: delay: 0 dispatcher: FALLBACK /page/html/{title}/{revision}: get: tags: - Page content summary: Wikimedia REST Get HTML for a Specific Title/revision & Optionally Timeuuid. description: 'Stability: [stable](https://www.mediawiki.org/wiki/API_versioning#Stable) ' operationId: getFormatRevision parameters: - name: title in: path description: 'Page title. Use underscores instead of spaces. Use percent-encoding. Example: `Main_Page`.' required: true schema: type: string - name: revision in: path description: The revision required: true schema: type: integer - name: redirect in: query description: 'Requests for [redirect pages](https://www.mediawiki.org/wiki/Help:Redirects) return HTTP 302 with a redirect target in `Location` header and content in the body. To get a 200 response instead, supply `false` to the `redirect` parameter. ' schema: type: boolean - name: stash in: query description: 'Whether to temporary stash data-parsoid metadata in order to support transforming the modified content later. If this parameter is set, requests are rate-limited on a per-client basis (max 5 requests per second per client) ' schema: type: boolean - name: Accept-Language in: header description: 'The desired language variant code for wikis where LanguageConverter is enabled. Example: `sr-el` for Latin transcription of the Serbian language. ' schema: type: string responses: '200': description: 'The html for the given page, revision and tid. See [the MediaWiki DOM spec](https://www.mediawiki.org/wiki/Parsoid/MediaWiki_DOM_spec) for a description of the MediaWiki-specific semantic markup in this HTML. Note that additional metadata is available in the HTML head. This HTML can be edited using arbitrary HTML tools. The modified HTML can be converted back to wikitext using the [/transform/html/to/wikitext{/title}{/revision}](#!/Transforms/transform_html_to_wikitext__title___revision__post) entry point. ' headers: ETag: description: 'ETag header indicating the revision and render timeuuid separated by a slash: "701384379/154d7bca-c264-11e5-8c2f-1b51b33b59fc" This ETag can be passed to the HTML save end point (as `base_etag` POST parameter), and can also be used to retrieve the exact corresponding data-parsoid metadata, by requesting the specific `revision` and `tid` indicated by the `ETag`. ' schema: type: string content: text/html; charset=utf-8; profile="https://www.mediawiki.org/wiki/Specs/HTML/2.1.0": schema: type: string application/json: schema: type: object '301': description: 'A permanent redirect is returned if the supplied article title was not in the normalized form. To avoid this kind of redirect, you can use the [mediawiki-title](https://github.com/wikimedia/mediawiki-title) library to perform title normalization client-side. Beware that redirected pre-flighted cross-origin requests (such as those sending custom request headers like `Api-User-Agent`) will fail in most current browsers [due to a spec bug](https://github.com/whatwg/fetch/issues/204). ' '302': description: 'The page is a [redirect page](https://www.mediawiki.org/wiki/Help:Redirects). The `location` header points to the redirect target, and the body contains the actual page revision contents as HTML. If you would like to avoid automatically following redirect pages, set the `redirect=false` query parameter. Beware that redirected pre-flighted cross-origin requests (such as those sending custom request headers like `Api-User-Agent`) will fail in most current browsers [due to a spec bug](https://github.com/whatwg/fetch/issues/204). ' '400': description: Invalid revision or tid content: application/problem+json: schema: $ref: '#/components/schemas/problem' '403': description: Access to the specific revision is restricted content: application/problem+json: schema: $ref: '#/components/schemas/problem' '404': description: Unknown page, revision or tid content: application/problem+json: schema: $ref: '#/components/schemas/problem' default: description: Error content: application/problem+json: schema: $ref: '#/components/schemas/problem' x-monitor: false x-microcks-operation: delay: 0 dispatcher: FALLBACK /page/lint/{title}: get: tags: - Page content summary: Wikimedia REST Get the Linter Errors for a Specific Title/revision. description: 'Stability: [experimental](https://www.mediawiki.org/wiki/API_versioning#Experimental) ' parameters: - name: title in: path description: 'Page title. Use underscores instead of spaces. Use percent-encoding. Example: `Main_Page`.' required: true schema: type: string responses: '200': description: 'The lint errors for the given page and optionally revision. See [the Linter extension docs](https://www.mediawiki.org/wiki/Extension:Linter) for more details. ' content: application/json: schema: type: object '301': description: 'A permanent redirect is returned if the supplied article title was not in the normalized form. To avoid this kind of redirect, you can use the [mediawiki-title](https://github.com/wikimedia/mediawiki-title) library to perform title normalization client-side. Beware that redirected pre-flighted cross-origin requests (such as those sending custom request headers like `Api-User-Agent`) will fail in most current browsers [due to a spec bug](https://github.com/whatwg/fetch/issues/204). ' '302': description: 'The page is a [redirect page](https://www.mediawiki.org/wiki/Help:Redirects). The `location` header points to the redirect target, and the body contains the actual page revision contents as HTML. If you would like to avoid automatically following redirect pages, set the `redirect=false` query parameter. Beware that redirected pre-flighted cross-origin requests (such as those sending custom request headers like `Api-User-Agent`) will fail in most current browsers [due to a spec bug](https://github.com/whatwg/fetch/issues/204). ' '400': description: Invalid revision or tid content: application/problem+json: schema: $ref: '#/components/schemas/problem' '403': description: Access to the specific revision is restricted content: application/problem+json: schema: $ref: '#/components/schemas/problem' '404': description: Unknown page, revision or tid content: application/problem+json: schema: $ref: '#/components/schemas/problem' default: description: Error content: application/problem+json: schema: $ref: '#/components/schemas/problem' x-monitor: false x-microcks-operation: delay: 0 dispatcher: FALLBACK /page/lint/{title}/{revision}: get: tags: - Page content summary: Wikimedia REST Get the Linter Errors for a Specific Title/revision. description: 'Stability: [experimental](https://www.mediawiki.org/wiki/API_versioning#Experimental) ' parameters: - name: title in: path description: 'Page title. Use underscores instead of spaces. Use percent-encoding. Example: `Main_Page`.' required: true schema: type: string - name: revision in: path description: The revision required: true schema: type: integer responses: '200': description: 'The lint errors for the given page and optionally revision. See [the Linter extension docs](https://www.mediawiki.org/wiki/Extension:Linter) for more details. ' content: application/json: schema: type: object '301': description: 'A permanent redirect is returned if the supplied article title was not in the normalized form. To avoid this kind of redirect, you can use the [mediawiki-title](https://github.com/wikimedia/mediawiki-title) library to perform title normalization client-side. Beware that redirected pre-flighted cross-origin requests (such as those sending custom request headers like `Api-User-Agent`) will fail in most current browsers [due to a spec bug](https://github.com/whatwg/fetch/issues/204). ' '302': description: 'The page is a [redirect page](https://www.mediawiki.org/wiki/Help:Redirects). The `location` header points to the redirect target, and the body contains the actual page revision contents as HTML. If you would like to avoid automatically following redirect pages, set the `redirect=false` query parameter. Beware that redirected pre-flighted cross-origin requests (such as those sending custom request headers like `Api-User-Agent`) will fail in most current browsers [due to a spec bug](https://github.com/whatwg/fetch/issues/204). ' '400': description: Invalid revision or tid content: application/problem+json: schema: $ref: '#/components/schemas/problem' '403': description: Access to the specific revision is restricted content: application/problem+json: schema: $ref: '#/components/schemas/problem' '404': description: Unknown page, revision or tid content: application/problem+json: schema: $ref: '#/components/schemas/problem' default: description: Error content: application/problem+json: schema: $ref: '#/components/schemas/problem' x-monitor: false x-microcks-operation: delay: 0 dispatcher: FALLBACK /page/summary/{title}: get: tags: - Page content summary: Wikimedia REST Get Basic Metadata and Simplified Article Introduction. description: 'The summary response includes an extract of the first paragraph of the page in plain text and HTML as well as the type of page. This is useful for page previews (fka. Hovercards, aka. Popups) on the web and link previews in the apps. Stability: [stable](https://www.mediawiki.org/wiki/Wikimedia_Product/Wikimedia_Product_Infrastructure_team/API_endpoint_stability_policy#Stable) Please follow [wikitech-l](https://lists.wikimedia.org/mailman/listinfo/wikitech-l) or [mediawiki-api-announce](https://lists.wikimedia.org/mailman/listinfo/mediawiki-api-announce) for announcements of breaking changes. ' parameters: - name: title in: path description: 'Page title. Use underscores instead of spaces. Use percent-encoding. Example: `Main_Page`.' required: true schema: type: string - name: redirect in: query description: 'Requests for [redirect pages](https://www.mediawiki.org/wiki/Help:Redirects) return HTTP 302 with a redirect target in `Location` header and content in the body. To get a 200 response instead, supply `false` to the `redirect` parameter. ' schema: type: boolean - name: Accept-Language in: header description: 'The desired language variant code for wikis where LanguageConverter is enabled. Example: `sr-el` for Latin transcription of the Serbian language. ' schema: type: string responses: '200': description: The summary for the given page headers: ETag: description: 'Syntax: "{revision}/{tid}". Example: "701384379/154d7bca-c264-11e5-8c2f-1b51b33b59fc" ' schema: type: string content: application/json; charset=utf-8; profile="https://www.mediawiki.org/wiki/Specs/Summary/1.4.2": schema: $ref: '#/components/schemas/summary' '301': description: 'A permanent redirect is returned if the supplied article title was not in the normalized form. To avoid this kind of redirect, you can use the [mediawiki-title](https://github.com/wikimedia/mediawiki-title) library to perform title normalization client-side. Beware that redirected pre-flighted cross-origin requests (such as those sending custom request headers like `Api-User-Agent`) will fail in most current browsers [due to a spec bug](https://github.com/whatwg/fetch/issues/204). ' '302': description: 'The page is a [redirect page](https://www.mediawiki.org/wiki/Help:Redirects). The `location` header points to the redirect target. If you would like to avoid automatically following redirect pages, set the `redirect=false` query parameter. Beware that redirected pre-flighted cross-origin requests (such as those sending custom request headers like `Api-User-Agent`) will fail in most current browsers [due to a spec bug](https://github.com/whatwg/fetch/issues/204). ' '404': description: Unknown page title content: application/problem+json: schema: $ref: '#/components/schemas/problem' default: description: Error content: application/problem+json: schema: $ref: '#/components/schemas/problem' x-monitor: true x-amples: - title: Get summary from storage request: params: domain: en.wikipedia.org title: San_Francisco response: status: 200 headers: etag: /.+/ content-type: /^application\/json/ body: extract: /.+/ extract_html: /.+/ thumbnail: source: /^https:/ originalimage: source: /^https:/ lang: en dir: ltr description: /.+/ x-microcks-operation: delay: 0 dispatcher: FALLBACK /page/media-list/{title}: get: tags: - Page content summary: Wikimedia REST Get List of Media Files Used on a Page. description: 'Gets the list of media items (images, audio, and video) in the order in which they appear on a given wiki page. Stability: [unstable](https://www.mediawiki.org/wiki/Wikimedia_Product/Wikimedia_Product_Infrastructure_team/API_endpoint_stability_policy#Unstable) Please follow [wikitech-l](https://lists.wikimedia.org/mailman/listinfo/wikitech-l) or [mediawiki-api-announce](https://lists.wikimedia.org/mailman/listinfo/mediawiki-api-announce) for announcements of breaking changes. ' parameters: - name: title in: path description: 'Page title. Use underscores instead of spaces. Use percent-encoding. Example: `Main_Page`.' required: true schema: type: string - name: redirect in: query description: 'Requests for [redirect pages](https://www.mediawiki.org/wiki/Help:Redirects) return HTTP 302 with a redirect target in `Location` header and content in the body. To get a 200 response instead, supply `false` to the `redirect` parameter. ' schema: type: boolean responses: '200': description: JSON containing metadata of media items appearing on the given page. headers: ETag: description: 'Syntax: "{revision}/{tid}". Example: "701384379/154d7bca-c264-11e5-8c2f-1b51b33b59fc" ' schema: type: string content: application/json; charset=utf-8; profile="https://www.mediawiki.org/wiki/Specs/Media/1.3.1": schema: $ref: '#/components/schemas/media_list' '301': description: 'A permanent redirect is returned if the supplied article title was not in the normalized form. To avoid this kind of redirect, you can use the [mediawiki-title](https://github.com/wikimedia/mediawiki-title) library to perform title normalization client-side. Beware that redirected pre-flighted cross-origin requests (such as those sending custom request headers like `Api-User-Agent`) will fail in most current browsers [due to a spec bug](https://github.com/whatwg/fetch/issues/204). ' '302': description: 'The page is a [redirect page](https://www.mediawiki.org/wiki/Help:Redirects). The `location` header points to the redirect target. If you would like to avoid automatically following redirect pages, set the `redirect=false` query parameter. Beware that redirected pre-flighted cross-origin requests (such as those sending custom request headers like `Api-User-Agent`) will fail in most current browsers [due to a spec bug](https://github.com/whatwg/fetch/issues/204). ' '404': description: Unknown page title content: application/problem+json: schema: $ref: '#/components/schemas/problem' default: description: Error content: application/problem+json: schema: $ref: '#/components/schemas/problem' operationId: getContent-media-list x-monitor: true x-amples: - title: Get media-list from storage request: params: domain: en.wikipedia.org title: User:BSitzmann_(WMF)/MCS/Test/Frankenstein response: status: 200 headers: etag: /.+/ content-type: /^application\/json/ body: revision: /\d+/ tid: /.+/ items: - type: /.+/ section_id: /\d+/ showInGallery: /.+/ x-microcks-operation: delay: 0 dispatcher: FALLBACK /page/media-list/{title}/{revision}: get: tags: - Page content summary: Wikimedia REST Get List of Media Files Used on a Page. description: 'Gets the list of media items (images, audio, and video) in the order in which they appear on a given wiki page. Stability: [unstable](https://www.mediawiki.org/wiki/Wikimedia_Product/Wikimedia_Product_Infrastructure_team/API_endpoint_stability_policy#Unstable) Please follow [wikitech-l](https://lists.wikimedia.org/mailman/listinfo/wikitech-l) or [mediawiki-api-announce](https://lists.wikimedia.org/mailman/listinfo/mediawiki-api-announce) for announcements of breaking changes. ' parameters: - name: title in: path description: 'Page title. Use underscores instead of spaces. Use percent-encoding. Example: `Main_Page`.' required: true schema: type: string - name: revision in: path description: 'Optional page revision. Note that older revisions are not stored, so request latency with the revision would be higher. ' required: true schema: type: integer - name: redirect in: query description: 'Requests for [redirect pages](https://www.mediawiki.org/wiki/Help:Redirects) return HTTP 302 with a redirect target in `Location` header and content in the body. To get a 200 response instead, supply `false` to the `redirect` parameter. ' schema: type: boolean responses: '200': description: JSON containing metadata of media items appearing on the given page. headers: ETag: description: 'Syntax: "{revision}/{tid}". Example: "701384379/154d7bca-c264-11e5-8c2f-1b51b33b59fc" ' schema: type: string content: application/json; charset=utf-8; profile="https://www.mediawiki.org/wiki/Specs/Media/1.3.1": schema: $ref: '#/components/schemas/media_list' '301': description: 'A permanent redirect is returned if the supplied article title was not in the normalized form. To avoid this kind of redirect, you can use the [mediawiki-title](https://github.com/wikimedia/mediawiki-title) library to perform title normalization client-side. Beware that redirected pre-flighted cross-origin requests (such as those sending custom request headers like `Api-User-Agent`) will fail in most current browsers [due to a spec bug](https://github.com/whatwg/fetch/issues/204). ' '302': description: 'The page is a [redirect page](https://www.mediawiki.org/wiki/Help:Redirects). The `location` header points to the redirect target. If you would like to avoid automatically following redirect pages, set the `redirect=false` query parameter. Beware that redirected pre-flighted cross-origin requests (such as those sending custom request headers like `Api-User-Agent`) will fail in most current browsers [due to a spec bug](https://github.com/whatwg/fetch/issues/204). ' '404': description: Unknown page title content: application/problem+json: schema: $ref: '#/components/schemas/problem' default: description: Error content: application/problem+json: schema: $ref: '#/components/schemas/problem' operationId: getContentWithRevision-media-list x-monitor: false x-amples: - title: Get media-list from storage request: params: domain: en.wikipedia.org title: User:BSitzmann_(WMF)/MCS/Test/Frankenstein response: status: 200 headers: etag: /.+/ content-type: /^application\/json/ body: revision: /\d+/ tid: /.+/ items: - type: /.+/ section_id: /\d+/ showInGallery: /.+/ x-microcks-operation: delay: 0 dispatcher: FALLBACK /page/mobile-html/{title}: get: tags: - Page content summary: Wikimedia REST Get Page Content HTML Optimized for Mobile Consumption. description: "Gets the content HTML optimized for mobile consumption for the given page. This content\nis derived from Parsoid HTML (see `/page/html/{title}` endpoint).\nThe difference to Parsoid HTML is roughly:\n* Some elements and attributes not needed for the reading case are removed.\n* LeadIntroductionTransform: The introductory paragraph is moved before an infobox.\n* RedLinks: Red links are flattened (=turned into span elements).\n* WidenImage: images that should be displayed in gallery are widened.\n* Section headings are slightly changed by wrapping the headings inside a div and adding\n a span element inside the new div for the edit buttons.\n* Additional classes are added to img elements to fix issues with non-white backgrounds.\n See Theme support below for instructions on how to enable that.\n* Pagelib CSS files needed to display the content are referenced.\n* LazyLoadTransform: server-side portion/prep for lazy loading of images.\n* CollapseTable: server-side portion/prep for collapsing tables.\n\nWhat's not included? What parts of the PageLibrary does a client still have to do?\n* Theme support: Themes can be turned on by adding a theme class to the root tag.\n Possible class names are:\n * `pagelib_theme_default`\n * `pagelib_theme_dark`\n * `pagelib_theme_black`\n * `pagelib_theme_sepia`\n\n The pagelib JS has functionality to do that: ThemeTransform.setTheme(document, theme).\n* Dim images: DimImagesTransform.dim(window, enable)\n* PlatformTransform.classify(window) to trigger Android and iOS app specific CSS rules\n* LazyLoadTransformer: client side companion of LazyLoadTransform (note the extra *er*\nhere)\n* FooterTransformer: seems to be more UI than content, requires I18N, too\n\nStability: [experimental](https://www.mediawiki.org/wiki/API_versioning#Experimental)\n" parameters: - name: title in: path description: 'Page title. Use underscores instead of spaces. Use percent-encoding. Example: `Main_Page`.' required: true schema: type: string - name: redirect in: query description: 'Requests for [redirect pages](https://www.mediawiki.org/wiki/Help:Redirects) return HTTP 302 with a redirect target in `Location` header and content in the body. To get a 200 response instead, supply `false` to the `redirect` parameter. ' schema: type: boolean responses: '200': description: mobile-optimized HTML of the given page. headers: ETag: description: 'Syntax: "{revision}/{tid}". Example: "701384379/154d7bca-c264-11e5-8c2f-1b51b33b59fc" ' schema: type: string content: text/html; charset=utf-8; profile="https://www.mediawiki.org/wiki/Specs/Mobile-HTML/1.2.2": schema: type: string '301': description: 'A permanent redirect is returned if the supplied article title was not in the normalized form. To avoid this kind of redirect, you can use the [mediawiki-title](https://github.com/wikimedia/mediawiki-title) library to perform title normalization client-side. Beware that redirected pre-flighted cross-origin requests (such as those sending custom request headers like `Api-User-Agent`) will fail in most current browsers [due to a spec bug](https://github.com/whatwg/fetch/issues/204). ' '302': description: 'The page is a [redirect page](https://www.mediawiki.org/wiki/Help:Redirects). The `location` header points to the redirect target. If you would like to avoid automatically following redirect pages, set the `redirect=false` query parameter. Beware that redirected pre-flighted cross-origin requests (such as those sending custom request headers like `Api-User-Agent`) will fail in most current browsers [due to a spec bug](https://github.com/whatwg/fetch/issues/204). ' '404': description: Unknown page title content: application/problem+json: schema: $ref: '#/components/schemas/problem' default: description: Error content: application/problem+json: schema: $ref: '#/components/schemas/problem' operationId: getContent-mobile-html x-monitor: true x-amples: - title: Get mobile-html from storage request: params: domain: en.wikipedia.org title: User:BSitzmann_(WMF)/MCS/Test/Frankenstein response: status: 200 headers: etag: /.+/ content-type: /^text\/html.+/ body: /^.*/ x-microcks-operation: delay: 0 dispatcher: FALLBACK /page/mobile-html/{title}/{revision}: get: tags: - Page content summary: Wikimedia REST Get Page Content HTML Optimized for Mobile Consumption. description: "Gets the content HTML optimized for mobile consumption for the given page. This content\nis derived from Parsoid HTML (see `/page/html/{title}` endpoint).\nThe difference to Parsoid HTML is roughly:\n* Some elements and attributes not needed for the reading case are removed.\n* LeadIntroductionTransform: The introductory paragraph is moved before an infobox.\n* RedLinks: Red links are flattened (=turned into span elements).\n* WidenImage: images that should be displayed in gallery are widened.\n* Section headings are slightly changed by wrapping the headings inside a div and adding\n a span element inside the new div for the edit buttons.\n* Additional classes are added to img elements to fix issues with non-white backgrounds.\n See Theme support below for instructions on how to enable that.\n* Pagelib CSS files needed to display the content are referenced.\n* LazyLoadTransform: server-side portion/prep for lazy loading of images.\n* CollapseTable: server-side portion/prep for collapsing tables.\n\nWhat's not included? What parts of the PageLibrary does a client still have to do?\n* Theme support: Themes can be turned on by adding a theme class to the root tag.\n Possible class names are:\n * `pagelib_theme_default`\n * `pagelib_theme_dark`\n * `pagelib_theme_black`\n * `pagelib_theme_sepia`\n\n The pagelib JS has functionality to do that: ThemeTransform.setTheme(document, theme).\n* Dim images: DimImagesTransform.dim(window, enable)\n* PlatformTransform.classify(window) to trigger Android and iOS app specific CSS rules\n* LazyLoadTransformer: client side companion of LazyLoadTransform (note the extra *er*\nhere)\n* FooterTransformer: seems to be more UI than content, requires I18N, too\n\nStability: [experimental](https://www.mediawiki.org/wiki/API_versioning#Experimental)\n" parameters: - name: title in: path description: 'Page title. Use underscores instead of spaces. Use percent-encoding. Example: `Main_Page`.' required: true schema: type: string - name: revision in: path description: 'Optional page revision. Note that older revisions are not stored, so request latency with the revision would be higher. ' required: true schema: type: integer - name: redirect in: query description: 'Requests for [redirect pages](https://www.mediawiki.org/wiki/Help:Redirects) return HTTP 302 with a redirect target in `Location` header and content in the body. To get a 200 response instead, supply `false` to the `redirect` parameter. ' schema: type: boolean responses: '200': description: mobile-optimized HTML of the given page. headers: ETag: description: 'Syntax: "{revision}/{tid}". Example: "701384379/154d7bca-c264-11e5-8c2f-1b51b33b59fc" ' schema: type: string content: text/html; charset=utf-8; profile="https://www.mediawiki.org/wiki/Specs/Mobile-HTML/1.2.2": schema: type: string '301': description: 'A permanent redirect is returned if the supplied article title was not in the normalized form. To avoid this kind of redirect, you can use the [mediawiki-title](https://github.com/wikimedia/mediawiki-title) library to perform title normalization client-side. Beware that redirected pre-flighted cross-origin requests (such as those sending custom request headers like `Api-User-Agent`) will fail in most current browsers [due to a spec bug](https://github.com/whatwg/fetch/issues/204). ' '302': description: 'The page is a [redirect page](https://www.mediawiki.org/wiki/Help:Redirects). The `location` header points to the redirect target. If you would like to avoid automatically following redirect pages, set the `redirect=false` query parameter. Beware that redirected pre-flighted cross-origin requests (such as those sending custom request headers like `Api-User-Agent`) will fail in most current browsers [due to a spec bug](https://github.com/whatwg/fetch/issues/204). ' '404': description: Unknown page title content: application/problem+json: schema: $ref: '#/components/schemas/problem' default: description: Error content: application/problem+json: schema: $ref: '#/components/schemas/problem' operationId: getContentWithRevision-mobile-html x-monitor: false x-amples: - title: Get mobile-html from storage request: params: domain: en.wikipedia.org title: User:BSitzmann_(WMF)/MCS/Test/Frankenstein response: status: 200 headers: etag: /.+/ content-type: /^text\/html.+/ body: /^.*/ x-microcks-operation: delay: 0 dispatcher: FALLBACK /page/mobile-html-offline-resources/{title}: get: tags: - Page content summary: Wikimedia REST Get Styles and Scripts for Offline Consumption of Mobile-html-formatted Pages description: 'Provides links to scripts and styles needed for viewing mobile-html-formatted pages offline. Stability: [experimental](https://www.mediawiki.org/wiki/API_versioning#Experimental) ' parameters: - name: title in: path description: 'Page title. Use underscores instead of spaces. Use percent-encoding. Example: `Main_Page`.' required: true schema: type: string responses: '200': description: links to scripts and styles to accompany the mobile-html of the page for offline consumption content: application/json; charset=utf-8; profile="https://www.mediawiki.org/wiki/Specs/Mobile-HTML-Offline-Resources/1.2.1": schema: type: string default: description: Error content: application/problem+json: schema: $ref: '#/components/schemas/problem' x-monitor: true x-amples: - title: Get offline resource links to accompany page content HTML for test page request: params: title: User:BSitzmann_(WMF)/MCS/Test/Frankenstein response: status: 200 headers: content-type: /^application\/json.+/ x-microcks-operation: delay: 0 dispatcher: FALLBACK /page/mobile-html-offline-resources/{title}/{revision}: get: tags: - Page content summary: Wikimedia REST Get Styles and Scripts for Offline Consumption of Mobile-html-formatted Pages description: 'Provides links to scripts and styles needed for viewing mobile-html-formatted pages offline. Stability: [experimental](https://www.mediawiki.org/wiki/API_versioning#Experimental) ' parameters: - name: title in: path description: 'Page title. Use underscores instead of spaces. Use percent-encoding. Example: `Main_Page`.' required: true schema: type: string - name: revision in: path description: 'Optional page revision. Note that older revisions are not stored, so request latency with the revision would be higher. ' required: true schema: type: integer responses: '200': description: links to scripts and styles to accompany the mobile-html of the page for offline consumption content: application/json; charset=utf-8; profile="https://www.mediawiki.org/wiki/Specs/Mobile-HTML-Offline-Resources/1.2.1": schema: type: string default: description: Error content: application/problem+json: schema: $ref: '#/components/schemas/problem' x-monitor: false x-amples: - title: Get offline resource links to accompany page content HTML for test page request: params: title: User:BSitzmann_(WMF)/MCS/Test/Frankenstein response: status: 200 headers: content-type: /^application\/json.+/ x-microcks-operation: delay: 0 dispatcher: FALLBACK components: schemas: revisionInfo: type: object description: Complete information about the revision properties: title: type: string page_id: type: integer format: int32 rev: type: integer format: int32 tid: type: string comment: type: string restrictions: type: array items: type: string tags: type: array items: type: string user_id: type: integer format: int32 user_text: type: string timestamp: type: string format: date-time redirect: type: boolean page_language: type: string thumbnail: type: object properties: source: type: string description: Thumbnail image URI width: type: integer description: Thumbnail width height: type: integer description: Thumnail height required: - height - source - width summary: type: object properties: titles: $ref: '#/components/schemas/titles_set' title: deprecated: true type: string description: 'The page title. Deprecated: Use `titles.normalized` instead. ' displaytitle: deprecated: true type: string description: 'The page title how it should be shown to the user. Deprecated: Use `titles.display` instead. ' pageid: type: integer description: The page ID extract: type: string description: First several sentences of an article in plain text extract_html: type: string description: First several sentences of an article in simple HTML format thumbnail: $ref: '#/components/schemas/thumbnail' originalimage: $ref: '#/components/schemas/originalimage' lang: type: string description: The page language code example: en dir: type: string description: The page language direction code example: ltr timestamp: type: string description: The time when the page was last edited in the [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format example: {} description: type: string description: Wikidata description for the page example: American poet coordinates: type: object description: The coordinates of the item properties: lat: type: number description: The latitude lon: type: number description: The longitude required: - lat - lon required: - dir - extract - lang - titles problem: required: - type type: object properties: type: type: string title: type: string detail: type: string instance: type: string listing: description: The result format for listings required: - items type: object properties: items: type: array items: type: string _links: type: object properties: next: type: object properties: href: type: string description: Relative link to next result page. originalimage: type: object properties: source: type: string description: Original image URI width: type: integer description: Original image width height: type: integer description: Original image height required: - height - source - width titles_set: type: object properties: canonical: type: string description: the DB key (non-prefixed), e.g. may have _ instead of spaces, best for making request URIs, still requires Percent-encoding normalized: type: string description: the normalized title (https://www.mediawiki.org/wiki/API:Query#Example_2:_Title_normalization), e.g. may have spaces instead of _ display: type: string description: the title as it should be displayed to the user required: - canonical - normalized - display description: a good example of the differences can be seen in https://en.wikipedia.org/api/rest_v1/page/summary/IOS_13 media_item: type: object properties: title: type: string description: The file page title type: type: string enum: - image - video - audio section_id: type: integer description: section ID in which the item is found on the page showInGallery: type: boolean description: whether the client should show the file in an image gallery presentation caption: type: object properties: html: type: string description: on-wiki caption for the media item, including all HTML markup text: type: string description: plain text of the on-wiki caption for the media item original: type: object description: reference to a Mathoid-rendered math formula image properties: source: type: string description: Mathoid image render URL mime: type: string description: the Mathoid image mime type required: - type - section_id - showInGallery revision: description: Result format for revision items required: - count - items type: object properties: count: type: integer format: int32 items: $ref: '#/components/schemas/revisionInfo' media_list: type: object properties: revision: type: string description: the revision ID used to create the list tid: type: string description: the time uuid of the page rendering used to create the list items: type: array description: a list of media items items: $ref: '#/components/schemas/media_item' required: - items - revision - tid securitySchemes: BearerAuth: type: http scheme: bearer description: OAuth 2.0 bearer token from meta.wikimedia.org CookieAuth: type: apiKey in: cookie name: '{wiki}wikiUserID' description: Session cookie obtained via action=login or action=clientlogin