For AI agents: the complete documentation index is available at https://types-mediawiki-response.pages.dev/llms.txt, the full documentation bundle is available at https://types-mediawiki-response.pages.dev/llms-full.txt, and this page is available as Markdown at https://types-mediawiki-response.pages.dev/api/core/overview.md.
  • English
  • Core

    Interfaces

    InterfaceDescription
    ApiAcceptLangOne entry of the acceptlang list (a browser Accept-Language parse).
    ApiAcquireTempUserNameResponseResponse of action=acquiretempusername.
    ApiActionPermissionOne permission-check failure reported under `intestactionsdetail=full
    ApiAllCategoryOne category summary. `acprop=size
    ApiAllDeletedRevisionsOne page carrying at least one deleted revision.
    ApiAllImageOne file listed by list=allimages.
    ApiAllLinkOne linked (or redirected-to / transcluded) title.
    ApiAllMessageOne interface message.
    ApiAllPageOne page listed by list=allpages.
    ApiAllRevisionsOne page with the revisions requested for it.
    ApiAuthManagerRawMessageA message in raw form (amimessageformat=raw): the i18n key plus parameters.
    ApiAutoCreateTempUserTemporary-account creation config (siprop=autocreatetempuser).
    ApiAutopromoteConditionOne autopromote condition. A group's set is an object with numeric keys under fv2 (the PHP array also carries operand), so nested sets surface as "0", "1", … entries alongside operand.
    ApiAutopromoteConditionsAutopromote condition sets keyed by group name (siprop=autopromote). A full condition set arrives as a single ApiAutopromoteCondition carrying an operand; a single-condition or bare-string configuration arrives wrapped in a one-element array.
    ApiAutopromoteOnceAutopromote-once configuration keyed by hook name (siprop=autopromoteonce). A hook with nothing configured arrives as an empty array, because formatversion=2 cannot tell an empty PHP list from an empty map.
    ApiBacklinkOne page that links to the target title.
    ApiBcErrorResponseError response under the default (bc) errorformat: a single error object.
    ApiBlockOne block record. bkprop controls which fields appear.
    ApiBlockInfoBlock details, as emitted for usprop=blockinfo (list=users) and uiprop=blockinfo (meta=userinfo). Only present when the user is blocked. The same shape is shared by ApiUser.blockcomponents entries.
    ApiBlockResponseResponse of action=block.
    ApiBlockRestrictionsRestriction targets of a partial block, grouped by kind.
    ApiBlockResultThe block object of an action=block response.
    ApiCategoryOne category membership entry; clprop selects the optional fields.
    ApiCategoryInfoCategory size statistics (prop=categoryinfo).
    ApiCategoryMemberOne category member. cmprop controls which fields appear.
    ApiChangeAuthenticationDataResponseResponse of action=changeauthenticationdata.
    ApiChangeContentModelResponseResponse of action=changecontentmodel.
    ApiCheckTokenResponseResponse of action=checktoken.
    ApiClearHasMsgResponseResponse of action=clearhasmsg.
    ApiClientLoginThe clientlogin object of an action=clientlogin response.
    ApiClientLoginResponseResponse of action=clientlogin.
    ApiCodexIconDefinitionDirectionality/language-aware icon definition (object form of ApiCodexIcon).
    ApiCompareResponseResponse of action=compare.
    ApiCompareResultThe compare object of a successful action=compare response.
    ApiContributorOne contributor entry: a logged-in (registered or temporary) editor.
    ApiCreateAccountResponseResponse of action=createaccount.
    ApiDbReplLagOne database host (siprop=dbrepllag).
    ApiDeletedRevOne archived revision, as list=deletedrevs formats it.
    ApiDeletedRevsOne page group. drprop=content also yields the revision text.
    ApiDeleteResponseResponse of action=delete.
    ApiDeleteResultThe delete object of an action=delete response.
    ApiDuplicateFileOne other file with the same content.
    ApiEditCaptchaThe captcha challenge of a result: "Failure" edit, as emitted by ConfirmEdit.
    ApiEditResponseResponse of action=edit.
    ApiEditResultThe edit object of an action=edit response.
    ApiEmailUserResponseResponse of action=emailuser.
    ApiEmbeddedInOne page that embeds the target title.
    ApiEnvelopeFields that may appear on every API response, successful or not.
    ApiErrorThe error object under the default (bc) errorformat.
    ApiExpandTemplatesCategoryOne category the output would add.
    ApiExpandTemplatesPropertiesPage settings surfaced by prop=properties. Open key set.
    ApiExpandTemplatesResponseResponse of action=expandtemplates.
    ApiExpandTemplatesResultThe expandtemplates object of a successful response.
    ApiExternalLinkOne external link used by a page.
    ApiExtMetadataFieldOne structured extmetadata field.
    ApiExtMetadataMultilangValueA multilang metadata value (iiextmetadatamultilang=1): the map of language codes to values that the API otherwise collapses to the best-matching language. x-default holds the fallback translation.
    ApiExtUrlUsageOne page whose content links to the searched URL.
    ApiFileArchiveEntryOne archived file. faprop selects the optional fields; id, name, ns and title are emitted regardless of faprop.
    ApiFileExtensionOne uploadable file extension (siprop=fileextensions).
    ApiFileRepoInfoOne file repository: an element of the query.repos array.
    ApiFileRevertResponseResponse of action=filerevert.
    ApiFileUsageOne local usage record. fuprop controls which fields appear.
    ApiGalleryOptionsgeneral.galleryoptions: the site's $wgGalleryOptions, with core's defaults filled in for any key the site omits.
    ApiHiddenFlagsSuppression ("RevisionDelete") visibility flags shared by the modules that report hidden users, comments and whole entries; each appears as a Flag when that part of the record is hidden.
    ApiImageInfoOne image-info entry for a file page.
    ApiImageLimitOne entry of general.imagelimits: a selectable display size.
    ApiImageMetadataItemOne entry in a file's raw format metadata array (may nest further items).
    ApiImageRotateEntryOne file entry of an action=imagerotate response.
    ApiImageRotateResponseResponse of action=imagerotate.
    ApiImageUsageOne page that uses the target file.
    ApiImportEntryOne imported page reported by action=import.
    ApiImportResponseResponse of action=import.
    ApiInterwikiLinkOne interwiki link.
    ApiInterwikiMapEntryOne interwiki prefix (siprop=interwikimap).
    ApiIwbacklinkOne page carrying the searched interwiki link.
    ApiLangbacklinkOne page carrying the searched language link.
    ApiLangLinkOne interlanguage link.
    ApiLanguageInfoInformation about one language (meta=languageinfo, keyed by code).
    ApiLanguageSearchResponseResponse of action=languagesearch.
    ApiLanguageVariantOne language variant and its fallbacks (siprop=languagevariants).
    ApiLinksHereOne page in a linkshere result. lhprop controls which fields appear.
    ApiLogBlockRestrictionsScope of a partial block (restrictions).
    ApiLogEventOne log event. leprop controls which fields appear.
    ApiLogEventParamsStructured log details — the params object of a log event (leprop=details on list=logevents, logparams under the log-info fields of list=recentchanges / list=watchlist).
    ApiLogGroupMetadataOne group-membership change with its expiry (oldmetadata/newmetadata entry).
    ApiLoginResponseResponse of the deprecated action=login.
    ApiLogoutResponseResponse of action=logout. No payload keys are emitted on success; the type exists so the shape is explicit (the logout.status object older builds returned is gone in 1.43).
    ApiLogPageRefOne page a partial block is restricted to (restrictions.pages entry).
    ApiLogProtectDetailOne protection restriction (details entry on protect/protect, protect/modify).
    ApiLogRevDelVisibilityOne visibility state (old/new on a RevisionDelete row).
    ApiMagicWordOne magic word (siprop=magicwords).
    ApiManageTagsResponseResponse of action=managetags.
    ApiMergeHistoryResponseResponse of action=mergehistory.
    ApiMessageA single message under a modern errorformat (an entry of the errors or warnings array). Which text-bearing field is present depends on the format: text for plaintext/wikitext, html for html, key/params for raw.
    ApiMessageParamSpecObject form of a raw-format message parameter. Exactly one spec kind is present at runtime: a nested message (message), pre-escaped text (plaintext), raw text (raw), a number (num), a duration in seconds (duration/period), an expiry (expiry), a date/time (datetime/date/time), a user group (group), a byte size (size), a bit rate (bitrate), the deprecated object form (object), or a list (list + type).
    ApiModernErrorResponseError response under a modern errorformat: an errors array plus top-level docref.
    ApiMoveResponseResponse of action=move.
    ApiMoveResultThe move object of a successful action=move response.
    ApiMoveSubpageOne subpage move outcome within subpages/subpages-talk.
    ApiMoveSubpageErrorsThe object form of subpages, returned only when the whole move failed.
    ApiNamespaceAliasOne localized namespace alias (siprop=namespacealiases).
    ApiNamespaceInfoOne namespace entry in query.namespaces, keyed by namespace index.
    ApiNamespacesquery.namespaces: a map from namespace index to its info. Negative indexes are pseudo-namespaces; some indexes are absent (gaps).
    ApiOptionsResponseResponse of action=options.
    ApiPageA query.pages entry carrying the union of all covered prop= fields. prop= modules widen this via declaration merging (see ./info); every field is optional because pages may be missing/invalid and because a response only contains the props that were requested.
    ApiPageContributorsFields prop=contributors contributes to ApiPage. ContributorsPage projects exactly this set.
    ApiPageIdentityFramework identity fields present on every query.pages entry, regardless of which prop= modules were requested.
    ApiPageImageInfoPage-level fields prop=imageinfo contributes to ApiPage. ImageInfoPage projects exactly this set.
    ApiPageInfoFields prop=info contributes to ApiPage. InfoPage projects exactly this set.
    ApiPageLinkOne link made by a page.
    ApiPagePropNameOne page property name in use.
    ApiPageProtectionOne entry of a page's protection array (inprop=protection).
    ApiPageRefThe pageid/ns/title page identity triple shared by list= module rows.
    ApiPagesWithPropOne page that defines the requested property.
    ApiParseThe parse object of a successful action=parse response. title and pageid are written before any prop value is considered; with onlypst=1 the module returns a different, metadata-free shape instead — see ApiParseOnlyPstResponse.
    ApiParseCategoryA category the parsed page would add itself to (prop=categories).
    ApiParseHeadItemOne raw <head> element (prop=headitems).
    ApiParseIWLinkAn interwiki link (prop=iwlinks).
    ApiParseLangLinkAn interlanguage link (prop=langlinks).
    ApiParseLimitReportEntryOne row of limitreportdata (prop=limitreportdata). fv2 keeps the PHP array's numeric keys, so the measurement(s) sit under "0"/"1".
    ApiParseLinkA wikilink or template used by the parsed page (prop=links / prop=templates).
    ApiParseOnlyPstResponseResponse of action=parse&onlypst=1: the module builds the payload before it resolves a title, so only the pre-save-transformed text comes back — no title/pageid and none of the prop sub-objects of ApiParse.
    ApiParseRedirectOne redirect resolution (with redirects=1, when parsing page=/pageid=).
    ApiParseResponseResponse of action=parse.
    ApiParseSectionA table-of-contents entry (prop=sections) — the legacy projection of the same outline prop=tocdata emits, with lowercase keys here (fromtitle, byteoffset) against camelCase there (fromTitle, codepointOffset); see ApiParseTocSection. extensionData appears only when non-empty.
    ApiParseTocDataThe tocdata object (prop=tocdata).
    ApiParseTocSectionOne tocdata section (prop=tocdata) — the same outline as ApiParseSection but camelCased, with an HTML heading level instead of a wikitext level and a code-point offset instead of a byte offset.
    ApiPatrolResponseResponse of action=patrol.
    ApiPatrolResultThe patrol object of a successful action=patrol response.
    ApiPrefixSearchResultOne prefix-search hit.
    ApiPreloadedContentPreloaded edit content (inprop=preloadcontent), which fills the main slot.
    ApiProtectedTitleOne protected title. ptprop controls which fields appear.
    ApiProtectionEntryOne applied protection (type → level, plus expiry).
    ApiProtectResponseResponse of action=protect.
    ApiProtectResultThe protect object of an action=protect response.
    ApiPurgeEntryOne purged page.
    ApiPurgeResponseResponse of action=purge.
    ApiQueryAuthManagerFieldA single field descriptor of an ApiQueryAuthManagerInfoRequest.
    ApiQueryAuthManagerInfoThe authmanagerinfo object returned under query.
    ApiQueryAuthManagerInfoRequestOne AuthManager request descriptor returned by meta=authmanagerinfo.
    ApiQueryBadRevOne requested revid that does not exist, keyed by revision id.
    ApiQueryContinueContinuation tokens returned by action=query.
    ApiQueryInterwikiTitleOne title resolved to a foreign wiki through an interwiki prefix.
    ApiQueryNormalizedOne title normalization performed by the query framework.
    ApiQueryPageThe querypage container: the requested report and its rows.
    ApiQueryPageResultOne row of a report.
    ApiQueryResolvedRedirectOne redirect resolved by the framework (redirects=1).
    ApiQueryResponseResponse of action=query. query widens as modules get covered.
    ApiQueryResultAccumulated shape of the query result object.
    ApiQueryTitlePairA { from, to } title pair emitted by the query framework.
    ApiQueryTokensTokens returned by meta=tokens; which keys appear depends on type.
    ApiRandomPageOne randomly selected page.
    ApiRateLimitA single rate-limit window under uiprop=ratelimits.
    ApiRawMessageAn i18n message spec nested inside another message's params (errorformat=raw) when a parameter is itself a message, serialized as { message: ApiRawMessage }. The nested params may recursively contain further messages.
    ApiRecentChangeOne recent-changes entry. rcprop controls which fields appear.
    ApiRedirectOne redirect entry. rdprop controls which fields appear.
    ApiRemoveAuthenticationDataResponseResponse of action=removeauthenticationdata.
    ApiResetPasswordResponseResponse of action=resetpassword.
    ApiRevisionA single revision entry in pages[].revisions.
    ApiRevisionDeleteItemOne item (revision / log entry / image) processed by the request.
    ApiRevisionDeleteResponseResponse of action=revisiondelete.
    ApiRevisionDeleteResultThe revisiondelete object of a successful response.
    ApiRevisionDiffDiff output attached to a revision (rvdiffto/rvdifftotext; both request parameters are deprecated — prefer action=compare).
    ApiRevisionSlotOne content slot of a revision (a revision may have multiple named slots).
    ApiRevisionSlotsThe slots map, keyed by slot role. main is the default slot; extensions may add others (e.g. top, bottom). The index signature keeps it open.
    ApiRightsInfosiprop=rightsinfo: where to read the site's content-rights statement.
    ApiRollbackResponseResponse of action=rollback.
    ApiRollbackResultThe rollback object of an action=rollback response.
    ApiSbomSoftware Bill of Materials in CycloneDX 1.6 form (siprop=sbom). Requires a named (logged-in, non-temporary) account. serialNumber embeds a fresh UUID per request.
    ApiSbomComponentOne component of the CycloneDX SBOM (siprop=sbom). Components nest: the platform entries carry their PHP extensions, MediaWiki core carries its composer packages and foreign resources, each extension carries its own composer packages.
    ApiSearchInfoPer-search metadata (list=search's searchinfo sibling).
    ApiSearchInterwikiInfoTotal-hit counter of an interwiki search section.
    ApiSearchInterwikiResultOne interwiki search hit, an element of ApiQueryResult.interwikisearch / ApiQueryResult.additionalsearch. Fields follow srprop exactly like ApiSearchResult, except title is the bare page name without the namespace, pageid is always 0, and the interwiki namespace/URL fields below are added.
    ApiSearchResultOne search hit (list=search), and the page data generator=search injects into a query.pages entry.
    ApiSetNotificationTimestampEntryOne page entry of an action=setnotificationtimestamp response.
    ApiSetNotificationTimestampResponseResponse of action=setnotificationtimestamp.
    ApiSetNotificationTimestampWatchlistResultWhole-watchlist result (entirewatchlist=1): a single object instead of the per-page array.
    ApiSetPageLanguageResponseResponse of action=setpagelanguage.
    ApiShowHookOne hook and its subscribers (siprop=showhooks).
    ApiSiteExtensionsiprop=extensions: one installed extension or skin. Keys other than type appear only when the component's extension.json declares them.
    ApiSiteGeneralFields of query.general (siprop=general), closed on the 1.43 core key set — extend by declaration merging for site- or extension-specific keys.
    ApiSiteLanguageOne language entry (siprop=languages).
    ApiSiteRestrictionssiprop=restrictions: protection types and levels. levels is not a flat string list — FlaggedRevs registers a protection class as a nested array, so an element can be string[] (e.g. ["sreview"]).
    ApiSiteSkinOne installed skin (siprop=skins).
    ApiSiteStatisticsSite counters (siprop=statistics).
    ApiSoftwareLibraryOne software component (siprop=libraries / siprop=clientlibraries).
    ApiSpecialPageAliasOne localized special-page alias (siprop=specialpagealiases).
    ApiSpecMessageA structured in-band message — a serialized MediaWiki Message/FatalError spec ({ message, params, code, type }) nested inside an action result (e.g. password-policy messages, file-backend errors, AuthManager failures). Distinct from ApiMessage, which models the errorformat-based envelope.
    ApiStashedFileOne stashed file. msfprop controls the measurement fields.
    ApiStashEditResponseResponse of action=stashedit.
    ApiStashImageInfoMetadata of one stashed file.
    ApiTagOne change-tag definition. tgprop selects the optional fields.
    ApiTagEntryOne targeted entry of an action=tag response.
    ApiTagResponseResponse of action=tag.
    ApiTemplateOne page transcluded by the subject page.
    ApiThumbUrlEntryOne scaled thumbnail entry (a keyed value of ApiImageInfo.thumburls).
    ApiTrackingCategoryOne tracking-category entry. `tcprop=size
    ApiTranscludedInOne page in a transcludedin result. tiprop controls which fields appear.
    ApiUnblockResponseResponse of action=unblock.
    ApiUnblockResultThe unblock object of an action=unblock response.
    ApiUndeleteResponseResponse of action=undelete.
    ApiUndeleteResultThe undelete object of an action=undelete response.
    ApiUploadDialogUpload dialog configuration (siprop=uploaddialog), mirroring $wgUploadDialog verbatim.
    ApiUploadExtMetadataFieldA single extmetadata field on an uploaded file's imageinfo.
    ApiUploadImageinfoThe embedded imageinfo of an action=upload result, for the uploaded revision.
    ApiUploadMetadataItemOne { name, value } metadata entry (values nest for structured types).
    ApiUploadResponseResponse of action=upload.
    ApiUploadWarningsIn-band upload warnings (values are strings, string arrays, or objects).
    ApiUsedImageOne image used by a page.
    ApiUserA user record. usprop controls which fields appear.
    ApiUserContribOne contribution record. ucprop controls which fields appear.
    ApiUserCoreFields present on both the list=users (ApiUser) and meta=userinfo user records; each is gated by the same usprop/uiprop value in both modules.
    ApiUserGroupOne user group (siprop=usergroups). The right-granting lists come from $wgAddGroups/$wgRemoveGroups/…, so they are absent when unconfigured.
    ApiUserGroupMembershipA single group membership with grant metadata. usprop=groupmemberships (vs. the plain name list from usprop=groups).
    ApiUserInfoThe userinfo object of a meta=userinfo response.
    ApiUserrightsResponseResponse of action=userrights.
    ApiValidatePasswordResponseResponse of action=validatepassword.
    ApiWarningDetailOne bc-format warning entry (the value of a module key in warnings).
    ApiWatchEntryOne watched/unwatched page.
    ApiWatchlistEntryOne watchlist entry. wlprop controls which fields appear.
    ApiWatchlistLabelA watchlist label ({ id, name }), as returned by meta=userinfo uiprop=watchlistlabels, prop=info inprop=watchlistlabels, list=watchlist wlprop=labels, and echoed by action=watch. Requires $wgEnableWatchlistLabels. Emitted as a list; an empty set serializes as [].
    ApiWatchlistRawEntryOne watched title.
    ApiWatchlistRawResponseResponse of a query whose only module is list=watchlistraw: because the module writes outside query, the envelope comes back without a query member.
    ApiWatchResponseResponse of action=watch.
    ContentModelExtensionAugmentation target for content models beyond MediaWiki core: extension packs and consumers merge members here (each mapping the model name to itself) to promote them to first-class known values of ContentModel.

    Type Aliases

    Type AliasDescription
    ApiAllusersEntryOne user listed by list=allusers.
    ApiAuthManagerMessageA message attached to an AuthManager request or field. Its shape follows the request's amimessageformat parameter (default wikitext): a rendered string under wikitext/html, an ApiAuthManagerRawMessage under raw, and the key is absent under none.
    ApiAuthManagerStatusAuthManager / password-flow status. The uppercase values are the AuthenticationResponse statuses that surface through the API (PASS/ FAIL/UI/REDIRECT/RESTART; the internal ABSTAIN never does); the lowercase success is emitted by ApiResetPassword itself. Open union.
    ApiCheckTokenResultResult values of ApiCheckTokenResponse.
    ApiCodexIconA Codex icon: raw SVG markup, or a directionality/language-aware definition.
    ApiErrorResponseAn API response describing a failed request (either errorformat family).
    ApiManageTagsOperationaction=managetags operation, echoed from the request.
    ApiMessageParamA single i18n message parameter under errorformat=raw: a scalar, a bare nested message (ApiRawMessage, produced when a message sits inside a list), or an object spec (ApiMessageParamSpec). Plain-text parameters are inlined as scalars, and a numeric parameter may arrive as a bare number or a { num } spec.
    ApiPageExistingA query.pages entry whose page exists. The framework resolves pageid, ns and title for every existing entry, so they are required here instead of optional as on the merged ApiPage.
    ApiPagePropsThe set of known property values is open-ended and site/extension-specific.
    ApiPasswordValidityPassword-policy verdict mapped from checkPasswordValidity's Status. Open union.
    ApiResponseWithDiscriminated union helper: a response is either successful or an error.
    ApiSearchHitA list=search hit. The module writes ns, title and pageid for every hit, before any srprop value is considered, so they are required here — unlike ApiSearchResult, which stays all-optional because generator=search merges the same shape into ApiPage entries.
    ApiWarningsWarnings shape, polymorphic on errorformat: bc → object keyed by module name; modern → array of ApiMessage.
    BlockExpiryExpiry of a block as an action result reports it: a timestamp, or the literal infinite for an indefinite block.
    CaseSensitivityWhether/case-sensitivity of page titles in a namespace. Open union for forward compatibility.
    CategoryMemberTypeMember type (cmtype / gcmtype).
    ContentFormatSerialization format of a revision slot, e.g. text/x-wiki. Open union: known core formats are listed for autocomplete and (string & {}) keeps the type forward-compatible with extension-provided formats.
    ContentModelContent model of a page. Open union — known values are autocomplete sugar only; (string & {}) accepts any model a response may carry.
    ContributorsPageA page projected to everything prop=contributors contributes, plus the framework-injected ApiPage.index.
    ExpiryExpiry of a temporary state: a timestamp, or the literal infinity when it does not expire. Block records spell the permanent case infinite instead — see BlockExpiry.
    FlagMediaWiki boolean-style flags: present as true when set, otherwise absent.
    ImageInfoPageA page projected to everything prop=imageinfo contributes, plus the framework-injected ApiPage.index.
    InfoPageA page projected to everything prop=info contributes, plus the framework-injected ApiPage.index.
    InfoPageExistingInfoPage for a page that exists: the identity fields and the unconditional prop=info fields (PropConstantKeys) are required; inprop-gated fields stay optional.
    NamespaceIndexNamespace index. Negative indexes are pseudo-namespaces.
    PlainTextA block of plain text (as opposed to HTML), e.g. a TextExtracts excerpt requested with explaintext. Kept distinct from HTML-bearing string fields.
    PropConstantKeysprop= fields their module writes unconditionally on an existing page. On QueryPageExisting these are required when picked; on the all-state QueryPage they stay optional, because invalid/special entries never carry prop fields. Every other prop= key is omitted when its data is absent (empty lists, non-file pages, non-category pages), so it stays optional even on QueryPageExisting.
    ProtectedTitleLevelCreate-protection level of a protected title — an entry of $wgRestrictionLevels (core default: autoconfirmed, sysop). Open union: sreview comes from FlaggedRevs, so the set is site-dependent.
    QueryPageA page scoped to a chosen set of prop= fields: identity fields plus the named keys only. Lets callers reflect what they requested and get a compile error when reading a prop they did not ask for. The generator-injected ApiPage.index is included as well, because it comes from the query framework rather than from a prop=.
    QueryPageExistingQueryPage for a page that exists: the identity fields are required rather than optional, and picked prop= fields that their module writes unconditionally (PropConstantKeys) are required too. See ApiPageExisting for when this holds.
    RecentChangeTypeChange type (rctype). Open union for forward compatibility.
    RevisionDeleteStatusPer-item outcome. Open union for forward compatibility.
    SearchPageA page projected to the hit fields generator=search injects, plus the framework-injected ApiPage.index.
    TimestampA MediaWiki timestamp in ISO 8601 format (UTC), e.g. 2024-01-15T08:30:00Z.
    WatchlistExpiryExpiry of a watch: a timestamp, or null when the page is not watched or the watch is permanent.