MediaWiki master
MediaWiki\Api\ApiBase Class Reference

This abstract class implements many basic API functions, and is the base of all API classes. More...

Inherits MediaWiki\Context\ContextSource.

Inherited by MediaWiki\Api\ApiAMCreateAccount, MediaWiki\Api\ApiAcquireTempUserName, MediaWiki\Api\ApiBlock, MediaWiki\Api\ApiCSPReport, MediaWiki\Api\ApiChangeAuthenticationData, MediaWiki\Api\ApiChangeContentModel, MediaWiki\Api\ApiCheckToken, MediaWiki\Api\ApiClearHasMsg, MediaWiki\Api\ApiClientLogin, MediaWiki\Api\ApiComparePages, MediaWiki\Api\ApiDelete, MediaWiki\Api\ApiDisabled, MediaWiki\Api\ApiEditPage, MediaWiki\Api\ApiEmailUser, MediaWiki\Api\ApiExpandTemplates, MediaWiki\Api\ApiFeedContributions, MediaWiki\Api\ApiFeedRecentChanges, MediaWiki\Api\ApiFeedWatchlist, MediaWiki\Api\ApiFileRevert, MediaWiki\Api\ApiFormatBase, MediaWiki\Api\ApiHelp, MediaWiki\Api\ApiImageRotate, MediaWiki\Api\ApiImport, MediaWiki\Api\ApiLinkAccount, MediaWiki\Api\ApiLogin, MediaWiki\Api\ApiLogout, MediaWiki\Api\ApiMain, MediaWiki\Api\ApiManageTags, MediaWiki\Api\ApiMergeHistory, MediaWiki\Api\ApiMove, MediaWiki\Api\ApiOpenSearch, MediaWiki\Api\ApiOptionsBase, MediaWiki\Api\ApiPageSet, MediaWiki\Api\ApiParamInfo, MediaWiki\Api\ApiParse, MediaWiki\Api\ApiPatrol, MediaWiki\Api\ApiProtect, MediaWiki\Api\ApiPurge, MediaWiki\Api\ApiQuery, MediaWiki\Api\ApiQueryBase, MediaWiki\Api\ApiRemoveAuthenticationData, MediaWiki\Api\ApiResetPassword, MediaWiki\Api\ApiRevisionDelete, MediaWiki\Api\ApiRollback, MediaWiki\Api\ApiRsd, MediaWiki\Api\ApiSetNotificationTimestamp, MediaWiki\Api\ApiSetPageLanguage, MediaWiki\Api\ApiStashEdit, MediaWiki\Api\ApiTag, MediaWiki\Api\ApiUnblock, MediaWiki\Api\ApiUndelete, MediaWiki\Api\ApiUpload, MediaWiki\Api\ApiUserrights, MediaWiki\Api\ApiValidatePassword, and MediaWiki\Api\ApiWatch.

Collaboration diagram for MediaWiki\Api\ApiBase:

Public Attributes

const PARAM_RANGE_ENFORCE = 'api-param-range-enforce'
 (boolean) Inverse of IntegerDef::PARAM_IGNORE_RANGE
 
Old constants for ::getAllowedParams() arrays
const PARAM_DFLT = ParamValidator::PARAM_DEFAULT
 
const PARAM_ISMULTI = ParamValidator::PARAM_ISMULTI
 
const PARAM_TYPE = ParamValidator::PARAM_TYPE
 
const PARAM_MAX = IntegerDef::PARAM_MAX
 
const PARAM_MAX2 = IntegerDef::PARAM_MAX2
 
const PARAM_MIN = IntegerDef::PARAM_MIN
 
const PARAM_ALLOW_DUPLICATES = ParamValidator::PARAM_ALLOW_DUPLICATES
 
const PARAM_DEPRECATED = ParamValidator::PARAM_DEPRECATED
 
const PARAM_REQUIRED = ParamValidator::PARAM_REQUIRED
 
const PARAM_SUBMODULE_MAP = SubmoduleDef::PARAM_SUBMODULE_MAP
 
const PARAM_SUBMODULE_PARAM_PREFIX = SubmoduleDef::PARAM_SUBMODULE_PARAM_PREFIX
 
const PARAM_ALL = ParamValidator::PARAM_ALL
 
const PARAM_EXTRA_NAMESPACES = NamespaceDef::PARAM_EXTRA_NAMESPACES
 
const PARAM_SENSITIVE = ParamValidator::PARAM_SENSITIVE
 
const PARAM_DEPRECATED_VALUES = EnumDef::PARAM_DEPRECATED_VALUES
 
const PARAM_ISMULTI_LIMIT1 = ParamValidator::PARAM_ISMULTI_LIMIT1
 
const PARAM_ISMULTI_LIMIT2 = ParamValidator::PARAM_ISMULTI_LIMIT2
 
const PARAM_MAX_BYTES = StringDef::PARAM_MAX_BYTES
 
const PARAM_MAX_CHARS = StringDef::PARAM_MAX_CHARS
 

API-specific constants for ::getAllowedParams() arrays

const PARAM_HELP_MSG = 'api-param-help-msg'
 (string|array|Message) Specify an alternative i18n documentation message for this parameter.
 
const PARAM_HELP_MSG_APPEND = 'api-param-help-msg-append'
 ((string|array|Message)[]) Specify additional i18n messages to append to the normal message for this parameter.
 
const PARAM_HELP_MSG_INFO = 'api-param-help-msg-info'
 (array) Specify additional information tags for the parameter.
 
const PARAM_VALUE_LINKS = 'api-param-value-links'
 Deprecated and unused.
 
const PARAM_HELP_MSG_PER_VALUE = 'api-param-help-msg-per-value'
 ((string|array|Message)[]) When PARAM_TYPE is an array, or 'string' with PARAM_ISMULTI, this is an array mapping parameter values to help messages.
 
const PARAM_TEMPLATE_VARS = 'param-template-vars'
 (array) Indicate that this is a templated parameter, and specify replacements.
 
const ALL_DEFAULT_STRING = '*'
 (string|array|Message) Specify an alternative i18n documentation message for this parameter.
 
const LIMIT_BIG1 = 500
 Fast query, standard limit.
 
const LIMIT_BIG2 = 5000
 Fast query, apihighlimits limit.
 
const LIMIT_SML1 = 50
 Slow query, standard limit.
 
const LIMIT_SML2 = 500
 Slow query, apihighlimits limit.
 
const GET_VALUES_FOR_HELP = 1
 getAllowedParams() flag: When this is set, the result could take longer to generate, but should be more thorough.
 
 __construct (ApiMain $mainModule, string $moduleName, string $modulePrefix='')
 

Methods to implement

 execute ()
 Evaluates the parameters, performs the requested query, and sets up the result.
 
 getModuleManager ()
 Get the module manager, or null if this module has no submodules.
 
 getCustomPrinter ()
 If the module may only be used with a certain format module, it should override this method to return an instance of that formatter.
 
 getHelpUrls ()
 Return links to more detailed help pages about the module.
 
 shouldCheckMaxlag ()
 Indicates if this module needs maxlag to be checked.
 
 isReadMode ()
 Indicates whether this module requires read rights.
 
 isWriteMode ()
 Indicates whether this module requires write access to the wiki.
 
 mustBePosted ()
 Indicates whether this module must be called with a POST request.
 
 isDeprecated ()
 Indicates whether this module is deprecated.
 
 isInternal ()
 Indicates whether this module is considered to be "internal".
 
 needsToken ()
 Returns the token type this module requires in order to execute.
 
 getConditionalRequestData ( $condition)
 Returns data for HTTP conditional request mechanisms.
 
 getExamplesMessages ()
 Returns usage examples for this module.
 
 getAllowedParams ()
 Returns an array of allowed parameters (parameter name) => (default value) or (parameter name) => (array with PARAM_* constants as keys) Don't call this function directly: use getFinalParams() to allow hooks to modify parameters as needed.
 
 getWebUITokenSalt (array $params)
 Fetch the salt used in the Web UI corresponding to this module.
 

Data access methods

 getModuleName ()
 Get the name of the module being executed by this instance.
 
 getModulePrefix ()
 Get parameter prefix (usually two letters or an empty string).
 
 getMain ()
 Get the main module.
 
 isMain ()
 Returns true if this module is the main module ($this === $this->mMainModule), false otherwise.
 
 getParent ()
 Get the parent of this module.
 
 lacksSameOriginSecurity ()
 Returns true if the current request breaks the same-origin policy.
 
 getModulePath ()
 Get the path to this module.
 
 getModuleFromPath ( $path)
 Get a module from its module path.
 
 getResult ()
 Get the result object.
 
 getErrorFormatter ()
 
 getContinuationManager ()
 
 setContinuationManager (?ApiContinuationManager $manager=null)
 
 getDB ()
 Gets a default replica DB connection object.
 
 getPermissionManager ()
 Obtain a PermissionManager instance that subclasses may use in their authorization checks.
 
 getHookContainer ()
 Get a HookContainer, for running extension hooks or for hook metadata.
 
 getHookRunner ()
 Get an ApiHookRunner for running core API hooks.
 

Parameter handling

 dynamicParameterDocumentation ()
 Indicate if the module supports dynamically-determined parameters that cannot be included in self::getAllowedParams().
 
 encodeParamName ( $paramName)
 This method mangles parameter name based on the prefix supplied to the constructor.
 
 extractRequestParams ( $options=[])
 Using getAllowedParams(), this function makes an array of the values provided by the user, with the key being the name of the variable, and value - validated value from user or default.
 
 requireOnlyOneParameter ( $params,... $required)
 Die if 0 or more than one of a certain set of parameters is set and not false.
 
 requireMaxOneParameter ( $params,... $required)
 Dies if more than one parameter from a certain set of parameters are set and not false.
 
 requireAtLeastOneParameter ( $params,... $required)
 Die if 0 of a certain set of parameters is set and not false.
 
 requireNoConflictingParameters ( $params, $trigger, $conflicts)
 Die with an "invalid param mix" error if the parameters contain the trigger parameter and any of the conflicting parameters.
 
 requirePostedParameters ( $params, $prefix='prefix')
 Die if any of the specified parameters were found in the query part of the URL rather than the HTTP post body contents.
 
 getTitleOrPageId ( $params, $load=false)
 Attempts to load a WikiPage object from a title or pageid parameter, if possible.
 
 getTitleFromTitleOrPageId ( $params)
 Get a Title object from a title or pageid param, if it is possible.
 
 handleParamNormalization ( $paramName, $value, $rawValue)
 Handle when a parameter was Unicode-normalized.
 
 validateToken ( $token, array $params)
 Validate the supplied token.
 
 getParameter ( $paramName, $parseLimit=true)
 Get a value for the given parameter.
 
 getParameterFromSettings ( $name, $settings, $parseLimit)
 Using the settings, determine the value for the given parameter.
 

Utility methods

 getWatchlistUser ( $params)
 Gets the user for whom to get the watchlist.
 
 useTransactionalTimeLimit ()
 Call wfTransactionalTimeLimit() if this request was POSTed.
 
 filterIDs ( $fields, array $ids)
 Filter out-of-range values from a list of positive integer IDs.
 
static makeMessage ( $msg, IContextSource $context, ?array $params=null)
 Create a Message from a string or array.
 
static clearCacheForTest ()
 Reset static caches of database state.
 

Warning and error reporting

 addWarning ( $msg, $code=null, $data=null)
 Add a warning for this module.
 
 addDeprecation ( $msg, $feature, $data=[])
 Add a deprecation warning for this module.
 
 addError ( $msg, $code=null, $data=null)
 Add an error for this module without aborting.
 
 addMessagesFromStatus (StatusValue $status, $types=[ 'warning', 'error'], array $filter=[])
 Add warnings and/or errors from a Status.
 
 dieWithError ( $msg, $code=null, $data=null, $httpCode=0)
 Abort execution with an error.
 
 dieWithException (Throwable $exception, array $options=[])
 Abort execution with an error derived from a throwable.
 
 dieBlocked (Block $block)
 Throw an ApiUsageException, which will (if uncaught) call the main module's error handler and die with an error message including block info.
 
 dieStatus (StatusValue $status)
 Throw an ApiUsageException based on the Status object.
 
 dieReadOnly ()
 Helper function for readonly errors.
 
 checkUserRightsAny ( $rights)
 Helper function for permission-denied errors.
 
 checkTitleUserPermissions (PageIdentity $pageIdentity, $actions, array $options=[])
 Helper function for permission-denied errors.
 
 dieWithErrorOrDebug ( $msg, $code=null, $data=null, $httpCode=null)
 Will only set a warning instead of failing if the global $wgDebugAPI is set to true.
 
 logFeatureUsage ( $feature)
 Write logging information for API features to a debug log, for usage analysis.
 
 parseContinueParamOrDie (string $continue, array $types)
 Parse the 'continue' parameter in the usual format and validate the types of each part, or die with the 'badcontinue' error if the format, types, or the number of parts is wrong.
 
 dieContinueUsageIf ( $condition)
 Die with the 'badcontinue' error.
 
static dieDebug ( $method, $message)
 Internal code errors should be reported with this method.
 

Help message generation

 getFinalSummary ()
 Get the final module summary.
 
 getFinalDescription ()
 Get the final module description, after hooks have had a chance to tweak it as needed.
 
 getFinalParams ( $flags=0)
 Get the final list of parameters, after hooks have had a chance to tweak it as needed.
 
 getFinalParamDescription ()
 Get final parameter descriptions, after hooks have had a chance to tweak it as needed.
 
 modifyHelp (array &$help, array $options, array &$tocData)
 Called from ApiHelp before the pieces are joined together and returned.
 
 getSummaryMessage ()
 Return the summary message.
 
 getExtendedDescription ()
 Return the extended help text message.
 
 getHelpFlags ()
 Generates the list of flags for the help screen and for action=paraminfo.
 
 getModuleSourceInfo ()
 Returns information about the source of this module, if known.
 

Additional Inherited Members

- Public Member Functions inherited from MediaWiki\Context\ContextSource
 canUseWikiPage ()
 Check whether a WikiPage object can be get with getWikiPage().
 
 exportSession ()
 Export the resolved user IP, HTTP headers, user ID, and session ID.
 
 getActionName ()
 Get the action name for the current web request.
 
 getAuthority ()
 
 getConfig ()
 
 getContext ()
 Get the base IContextSource object.
 
 getCsrfTokenSet ()
 Get a repository to obtain and match CSRF tokens.
 
 getLanguage ()
 
 getLanguageCode ()
 
 getOutput ()
 
 getRequest ()
 
 getSkin ()
 
 getTiming ()
 
 getTitle ()
 
 getUser ()
 
 getWikiPage ()
 Get the WikiPage object.
 
 msg ( $key,... $params)
 Get a Message object with context set Parameters are the same as wfMessage()
 
 setContext (IContextSource $context)
 

Detailed Description

This abstract class implements many basic API functions, and is the base of all API classes.

The class functions are divided into several areas of functionality:

Module parameters: Derived classes can define getAllowedParams() to specify which parameters to expect, how to parse and validate them.

Self-documentation: code to allow the API to document its own state

Stability: stable
to extend

Definition at line 75 of file ApiBase.php.

Constructor & Destructor Documentation

◆ __construct()

MediaWiki\Api\ApiBase::__construct ( ApiMain $mainModule,
string $moduleName,
string $modulePrefix = '' )
Stability: stable
to call
Parameters
ApiMain$mainModule
string$moduleNameName of this module
string$modulePrefixPrefix to use for parameter names

Definition at line 301 of file ApiBase.php.

References MediaWiki\Context\ContextSource\getContext(), MediaWiki\Api\ApiBase\isMain(), and MediaWiki\Context\ContextSource\setContext().

Member Function Documentation

◆ addDeprecation()

MediaWiki\Api\ApiBase::addDeprecation ( $msg,
$feature,
$data = [] )

Add a deprecation warning for this module.

A combination of $this->addWarning() and $this->logFeatureUsage()

Since
1.29
Parameters
string | array | MessageSpecifier$msgSee ApiErrorFormatter::addWarning()
string | null$featureSee ApiBase::logFeatureUsage()
array | null$dataSee ApiErrorFormatter::addWarning()

Definition at line 1454 of file ApiBase.php.

Referenced by MediaWiki\Api\ApiExpandTemplates\execute(), MediaWiki\Api\ApiLogin\execute(), MediaWiki\Api\ApiQueryDeletedrevs\execute(), and MediaWiki\Api\ApiQueryRevisionsBase\parseParameters().

◆ addError()

MediaWiki\Api\ApiBase::addError ( $msg,
$code = null,
$data = null )

Add an error for this module without aborting.

If $msg is not an ApiMessage, the message code will be derived from the message key by stripping any "apiwarn-" or "apierror-" prefix.

Note
If you want to abort processing, use self::dieWithError() instead.
Since
1.29
Parameters
string | array | MessageSpecifier$msgSee ApiErrorFormatter::addError()
string | null$codeSee ApiErrorFormatter::addError()
array | null$dataSee ApiErrorFormatter::addError()

Definition at line 1487 of file ApiBase.php.

◆ addMessagesFromStatus()

MediaWiki\Api\ApiBase::addMessagesFromStatus ( StatusValue $status,
$types = [ 'warning', 'error' ],
array $filter = [] )

Add warnings and/or errors from a Status.

Note
If you want to abort processing, use self::dieStatus() instead.
Since
1.29
Parameters
StatusValue$status
string[]$types'warning' and/or 'error'
string[]$filterMessage keys to filter out (since 1.33)

Definition at line 1500 of file ApiBase.php.

Referenced by MediaWiki\Api\ApiUndelete\execute().

◆ addWarning()

MediaWiki\Api\ApiBase::addWarning ( $msg,
$code = null,
$data = null )

Add a warning for this module.

Users should monitor this section to notice any changes in the API.

Multiple calls to this function will result in multiple warning messages.

If $msg is not an ApiMessage, the message code will be derived from the message key by stripping any "apiwarn-" or "apierror-" prefix.

Since
1.29
Parameters
string | array | MessageSpecifier$msgSee ApiErrorFormatter::addWarning()
string | null$codeSee ApiErrorFormatter::addWarning()
array | null$dataSee ApiErrorFormatter::addWarning()

Definition at line 1440 of file ApiBase.php.

Referenced by MediaWiki\Api\ApiFormatXml\addXslt(), MediaWiki\Api\ApiCheckToken\execute(), MediaWiki\Api\ApiComparePages\execute(), MediaWiki\Api\ApiDelete\execute(), MediaWiki\Api\ApiExpandTemplates\execute(), MediaWiki\Api\ApiLogout\execute(), MediaWiki\Api\ApiOptionsBase\execute(), MediaWiki\Api\ApiParamInfo\execute(), MediaWiki\Api\ApiPurge\execute(), MediaWiki\Api\ApiQueryDisabled\execute(), MediaWiki\Api\ApiQueryLanguageinfo\execute(), MediaWiki\Api\ApiQueryTokens\execute(), MediaWiki\Api\ApiQueryImageInfo\mergeThumbParams(), MediaWiki\Api\ApiQueryRevisionsBase\parseParameters(), MediaWiki\Api\ApiQueryAllDeletedRevisions\run(), and MediaWiki\Api\ApiOptions\shouldIgnoreKey().

◆ checkTitleUserPermissions()

MediaWiki\Api\ApiBase::checkTitleUserPermissions ( PageIdentity $pageIdentity,
$actions,
array $options = [] )

Helper function for permission-denied errors.

Parameters
PageIdentity$pageIdentity
string | string[]$actions
array$optionsAdditional options
  • user: (User) User to use rather than $this->getUser().
  • autoblock: (bool, default false) Whether to spread autoblocks.
Exceptions
ApiUsageExceptionif the user doesn't have all the necessary rights.
Since
1.29
1.33 Changed the third parameter from $user to $options.
1.36 deprecated passing LinkTarget as first parameter

Definition at line 1654 of file ApiBase.php.

References MediaWiki\Api\getAuthority(), and MediaWiki\Api\getUser().

Referenced by MediaWiki\Api\ApiEditPage\execute(), MediaWiki\Api\ApiFileRevert\execute(), MediaWiki\Api\ApiImageRotate\execute(), MediaWiki\Api\ApiProtect\execute(), and MediaWiki\Api\ApiSetPageLanguage\execute().

◆ checkUserRightsAny()

MediaWiki\Api\ApiBase::checkUserRightsAny ( $rights)

◆ clearCacheForTest()

static MediaWiki\Api\ApiBase::clearCacheForTest ( )
static

Reset static caches of database state.

Access: internal
For testing only

Definition at line 1381 of file ApiBase.php.

◆ dieBlocked()

MediaWiki\Api\ApiBase::dieBlocked ( Block $block)

Throw an ApiUsageException, which will (if uncaught) call the main module's error handler and die with an error message including block info.

Since
1.27
Parameters
Block$blockThe block used to generate the ApiUsageException
Exceptions
ApiUsageExceptionalways
Returns
never

Definition at line 1550 of file ApiBase.php.

References MediaWiki\Api\getContext(), MediaWiki\Api\getRequest(), and MediaWiki\Api\getUser().

Referenced by MediaWiki\Api\ApiEditPage\execute(), MediaWiki\Api\ApiPurge\execute(), MediaWiki\Api\ApiRevisionDelete\execute(), MediaWiki\Api\ApiTag\execute(), MediaWiki\Api\ApiUndelete\execute(), and MediaWiki\Api\ApiUserrights\execute().

◆ dieContinueUsageIf()

MediaWiki\Api\ApiBase::dieContinueUsageIf ( $condition)
protected

Die with the 'badcontinue' error.

This call is common enough to make it into the base method.

Parameters
bool$conditionWill only die if this value is true
Exceptions
ApiUsageException
Since
1.21

Definition at line 1746 of file ApiBase.php.

Referenced by MediaWiki\Api\ApiQueryInfo\execute(), MediaWiki\Api\ApiQueryUserContribs\execute(), and MediaWiki\Api\ApiQueryRandom\run().

◆ dieDebug()

◆ dieReadOnly()

MediaWiki\Api\ApiBase::dieReadOnly ( )

Helper function for readonly errors.

Exceptions
ApiUsageExceptionalways
Returns
never

Definition at line 1615 of file ApiBase.php.

Referenced by MediaWiki\Api\ApiEditPage\execute().

◆ dieStatus()

◆ dieWithError()

MediaWiki\Api\ApiBase::dieWithError ( $msg,
$code = null,
$data = null,
$httpCode = 0 )

Abort execution with an error.

If $msg is not an ApiMessage, the message code will be derived from the message key by stripping any "apiwarn-" or "apierror-" prefix.

Since
1.29
Parameters
string | array | MessageSpecifier$msgSee ApiErrorFormatter::addError()
string | null$codeSee ApiErrorFormatter::addError()
array | null$dataSee ApiErrorFormatter::addError()
int$httpCodeHTTP error code to use
Exceptions
ApiUsageExceptionalways
Returns
never

Definition at line 1522 of file ApiBase.php.

Referenced by MediaWiki\Api\ApiQuerySiteinfo\appendDbReplLagInfo(), MediaWiki\Api\ApiQueryImageInfo\checkParameterNormalise(), MediaWiki\Api\ApiAcquireTempUserName\execute(), MediaWiki\Api\ApiAMCreateAccount\execute(), MediaWiki\Api\ApiBlock\execute(), MediaWiki\Api\ApiChangeAuthenticationData\execute(), MediaWiki\Api\ApiChangeContentModel\execute(), MediaWiki\Api\ApiClientLogin\execute(), MediaWiki\Api\ApiComparePages\execute(), MediaWiki\Api\ApiDelete\execute(), MediaWiki\Api\ApiDisabled\execute(), MediaWiki\Api\ApiEditPage\execute(), MediaWiki\Api\ApiEmailUser\execute(), MediaWiki\Api\ApiExpandTemplates\execute(), MediaWiki\Api\ApiFeedContributions\execute(), MediaWiki\Api\ApiFeedRecentChanges\execute(), MediaWiki\Api\ApiFeedWatchlist\execute(), MediaWiki\Api\ApiImport\execute(), MediaWiki\Api\ApiLinkAccount\execute(), MediaWiki\Api\ApiLogout\execute(), MediaWiki\Api\ApiManageTags\execute(), MediaWiki\Api\ApiMergeHistory\execute(), MediaWiki\Api\ApiMove\execute(), MediaWiki\Api\ApiOpenSearchFormatJson\execute(), MediaWiki\Api\ApiOptionsBase\execute(), MediaWiki\Api\ApiPatrol\execute(), MediaWiki\Api\ApiProtect\execute(), MediaWiki\Api\ApiQuery\execute(), MediaWiki\Api\ApiQueryAllMessages\execute(), MediaWiki\Api\ApiQueryBlocks\execute(), MediaWiki\Api\ApiQueryDeletedrevs\execute(), MediaWiki\Api\ApiQueryExternalLinks\execute(), MediaWiki\Api\ApiQueryFilearchive\execute(), MediaWiki\Api\ApiQueryImageInfo\execute(), MediaWiki\Api\ApiQueryInfo\execute(), MediaWiki\Api\ApiQueryIWLinks\execute(), MediaWiki\Api\ApiQueryLangLinks\execute(), MediaWiki\Api\ApiQueryLogEvents\execute(), MediaWiki\Api\ApiQueryMyStashedFiles\execute(), MediaWiki\Api\ApiQueryStashImageInfo\execute(), MediaWiki\Api\ApiQueryUserContribs\execute(), MediaWiki\Api\ApiRemoveAuthenticationData\execute(), MediaWiki\Api\ApiResetPassword\execute(), MediaWiki\Api\ApiRevisionDelete\execute(), MediaWiki\Api\ApiSetNotificationTimestamp\execute(), MediaWiki\Api\ApiSetPageLanguage\execute(), MediaWiki\Api\ApiStashEdit\execute(), MediaWiki\Api\ApiUnblock\execute(), MediaWiki\Api\ApiUndelete\execute(), MediaWiki\Api\ApiUpload\execute(), MediaWiki\Api\ApiUserrights\execute(), MediaWiki\Api\ApiValidatePassword\execute(), MediaWiki\Api\ApiWatch\execute(), MediaWiki\Api\ApiQueryAllImages\executeGenerator(), MediaWiki\Api\ApiQueryAllPages\executeGenerator(), MediaWiki\Api\ApiBase\getModuleFromPath(), MediaWiki\Api\ApiQueryImageInfo\mergeThumbParams(), MediaWiki\Api\ApiQueryRevisionsBase\parseParameters(), MediaWiki\Api\ApiQueryBase\parsePrefixedTitlePart(), MediaWiki\Api\ApiQueryIWBacklinks\run(), MediaWiki\Api\ApiQueryLangBacklinks\run(), MediaWiki\Api\ApiQueryRecentChanges\run(), MediaWiki\Api\ApiQueryAllDeletedRevisions\run(), MediaWiki\Api\ApiQueryDeletedRevisions\run(), MediaWiki\Api\ApiQueryRevisions\run(), MediaWiki\Api\ApiQueryBase\titlePartToKey(), and MediaWiki\Api\ApiFileRevert\validateParameters().

◆ dieWithErrorOrDebug()

MediaWiki\Api\ApiBase::dieWithErrorOrDebug ( $msg,
$code = null,
$data = null,
$httpCode = null )

Will only set a warning instead of failing if the global $wgDebugAPI is set to true.

Otherwise, it behaves exactly as self::dieWithError().

Since
1.29
Parameters
string | array | Message$msgMessage definition, see Message::newFromSpecifier()
string | null$code
array | null$data
int | null$httpCode
Exceptions
ApiUsageException

Definition at line 1689 of file ApiBase.php.

◆ dieWithException()

MediaWiki\Api\ApiBase::dieWithException ( Throwable $exception,
array $options = [] )

Abort execution with an error derived from a throwable.

Since
1.29
Parameters
Throwable$exceptionSee ApiErrorFormatter::getMessageFromException()
array$optionsSee ApiErrorFormatter::getMessageFromException()
Exceptions
ApiUsageExceptionalways
Returns
never

Definition at line 1535 of file ApiBase.php.

Referenced by MediaWiki\Api\ApiEditPage\execute(), MediaWiki\Api\ApiImport\execute(), MediaWiki\Api\ApiQueryStashImageInfo\execute(), and MediaWiki\Api\ApiStashEdit\execute().

◆ dynamicParameterDocumentation()

MediaWiki\Api\ApiBase::dynamicParameterDocumentation ( )

Indicate if the module supports dynamically-determined parameters that cannot be included in self::getAllowedParams().

Stability: stable
to override
Returns
string|array|Message|null Return null if the module does not support additional dynamic parameters, otherwise return a message describing them. See Message::newFromSpecifier() for a description of allowed values.

Reimplemented in MediaWiki\Api\ApiAMCreateAccount, MediaWiki\Api\ApiChangeAuthenticationData, MediaWiki\Api\ApiClientLogin, and MediaWiki\Api\ApiLinkAccount.

Definition at line 803 of file ApiBase.php.

◆ encodeParamName()

◆ execute()

MediaWiki\Api\ApiBase::execute ( )
abstract

Evaluates the parameters, performs the requested query, and sets up the result.

Concrete implementations of ApiBase must override this method to provide whatever functionality their module offers. Implementations must not produce any output on their own and are not expected to handle any errors.

The execute() method will be invoked directly by ApiMain immediately before the result of the module is output. Aside from the constructor, implementations should assume that no other methods will be called externally on the module before the result is processed.

The result data should be stored in the ApiResult object available through getResult().

Reimplemented in MediaWiki\Api\ApiAcquireTempUserName, MediaWiki\Api\ApiAMCreateAccount, MediaWiki\Api\ApiBlock, MediaWiki\Api\ApiChangeAuthenticationData, MediaWiki\Api\ApiChangeContentModel, MediaWiki\Api\ApiCheckToken, MediaWiki\Api\ApiClearHasMsg, MediaWiki\Api\ApiClientLogin, MediaWiki\Api\ApiComparePages, MediaWiki\Api\ApiCSPReport, MediaWiki\Api\ApiDelete, MediaWiki\Api\ApiDisabled, MediaWiki\Api\ApiEditPage, MediaWiki\Api\ApiEmailUser, MediaWiki\Api\ApiExpandTemplates, MediaWiki\Api\ApiFeedContributions, MediaWiki\Api\ApiFeedRecentChanges, MediaWiki\Api\ApiFeedWatchlist, MediaWiki\Api\ApiFileRevert, MediaWiki\Api\ApiFormatFeedWrapper, MediaWiki\Api\ApiFormatJson, MediaWiki\Api\ApiFormatNone, MediaWiki\Api\ApiFormatPhp, MediaWiki\Api\ApiFormatRaw, MediaWiki\Api\ApiFormatXml, MediaWiki\Api\ApiHelp, MediaWiki\Api\ApiImageRotate, MediaWiki\Api\ApiImport, MediaWiki\Api\ApiLinkAccount, MediaWiki\Api\ApiLogin, MediaWiki\Api\ApiLogout, MediaWiki\Api\ApiMain, MediaWiki\Api\ApiManageTags, MediaWiki\Api\ApiMergeHistory, MediaWiki\Api\ApiMove, MediaWiki\Api\ApiOpenSearch, MediaWiki\Api\ApiOpenSearchFormatJson, MediaWiki\Api\ApiOptionsBase, MediaWiki\Api\ApiPageSet, MediaWiki\Api\ApiParamInfo, MediaWiki\Api\ApiParse, MediaWiki\Api\ApiPatrol, MediaWiki\Api\ApiProtect, MediaWiki\Api\ApiPurge, MediaWiki\Api\ApiQuery, MediaWiki\Api\ApiQueryAllCategories, MediaWiki\Api\ApiQueryAllImages, MediaWiki\Api\ApiQueryAllLinks, MediaWiki\Api\ApiQueryAllMessages, MediaWiki\Api\ApiQueryAllPages, MediaWiki\Api\ApiQueryAllUsers, MediaWiki\Api\ApiQueryAuthManagerInfo, MediaWiki\Api\ApiQueryBacklinks, MediaWiki\Api\ApiQueryBacklinksprop, MediaWiki\Api\ApiQueryBlocks, MediaWiki\Api\ApiQueryCategories, MediaWiki\Api\ApiQueryCategoryInfo, MediaWiki\Api\ApiQueryCategoryMembers, MediaWiki\Api\ApiQueryCodexIcons, MediaWiki\Api\ApiQueryContributors, MediaWiki\Api\ApiQueryDeletedrevs, MediaWiki\Api\ApiQueryDisabled, MediaWiki\Api\ApiQueryDuplicateFiles, MediaWiki\Api\ApiQueryExternalLinks, MediaWiki\Api\ApiQueryExtLinksUsage, MediaWiki\Api\ApiQueryFilearchive, MediaWiki\Api\ApiQueryFileRepoInfo, MediaWiki\Api\ApiQueryImageInfo, MediaWiki\Api\ApiQueryImages, MediaWiki\Api\ApiQueryInfo, MediaWiki\Api\ApiQueryIWBacklinks, MediaWiki\Api\ApiQueryIWLinks, MediaWiki\Api\ApiQueryLangBacklinks, MediaWiki\Api\ApiQueryLangLinks, MediaWiki\Api\ApiQueryLanguageinfo, MediaWiki\Api\ApiQueryLinks, MediaWiki\Api\ApiQueryLogEvents, MediaWiki\Api\ApiQueryMyStashedFiles, MediaWiki\Api\ApiQueryPagePropNames, MediaWiki\Api\ApiQueryPageProps, MediaWiki\Api\ApiQueryPagesWithProp, MediaWiki\Api\ApiQueryPrefixSearch, MediaWiki\Api\ApiQueryProtectedTitles, MediaWiki\Api\ApiQueryQueryPage, MediaWiki\Api\ApiQueryRandom, MediaWiki\Api\ApiQueryRecentChanges, MediaWiki\Api\ApiQueryRevisionsBase, MediaWiki\Api\ApiQuerySearch, MediaWiki\Api\ApiQuerySiteinfo, MediaWiki\Api\ApiQueryStashImageInfo, MediaWiki\Api\ApiQueryTags, MediaWiki\Api\ApiQueryTokens, MediaWiki\Api\ApiQueryUserContribs, MediaWiki\Api\ApiQueryUserInfo, MediaWiki\Api\ApiQueryUsers, MediaWiki\Api\ApiQueryWatchlist, MediaWiki\Api\ApiQueryWatchlistRaw, MediaWiki\Api\ApiRemoveAuthenticationData, MediaWiki\Api\ApiResetPassword, MediaWiki\Api\ApiRevisionDelete, MediaWiki\Api\ApiRollback, MediaWiki\Api\ApiRsd, MediaWiki\Api\ApiSetNotificationTimestamp, MediaWiki\Api\ApiSetPageLanguage, MediaWiki\Api\ApiStashEdit, MediaWiki\Api\ApiTag, MediaWiki\Api\ApiUnblock, MediaWiki\Api\ApiUndelete, MediaWiki\Api\ApiUpload, MediaWiki\Api\ApiUserrights, MediaWiki\Api\ApiValidatePassword, and MediaWiki\Api\ApiWatch.

◆ extractRequestParams()

MediaWiki\Api\ApiBase::extractRequestParams ( $options = [])

Using getAllowedParams(), this function makes an array of the values provided by the user, with the key being the name of the variable, and value - validated value from user or default.

limits will not be parsed if $parseLimit is set to false; use this when the max limit is not definitive yet, e.g. when getting revisions.

Parameters
bool | array$optionsIf a boolean, uses that as the value for 'parseLimit'
  • parseLimit: (bool, default true) Whether to parse the 'max' value for limit types
  • safeMode: (bool, default false) If true, avoid throwing for parameter validation errors. Returned parameter values might be ApiUsageException instances.
Returns
array

Definition at line 837 of file ApiBase.php.

References wfEscapeWikiText().

Referenced by MediaWiki\Api\ApiPageSet\__construct(), MediaWiki\Api\ApiAuthManagerHelper\__construct(), MediaWiki\Api\ApiContinuationManager\__construct(), MediaWiki\Api\ApiQuerySiteinfo\appendInterwikiMap(), MediaWiki\Api\ApiQuerySiteinfo\appendLanguages(), MediaWiki\Api\ApiAMCreateAccount\execute(), MediaWiki\Api\ApiBlock\execute(), MediaWiki\Api\ApiChangeContentModel\execute(), MediaWiki\Api\ApiCheckToken\execute(), MediaWiki\Api\ApiClientLogin\execute(), MediaWiki\Api\ApiComparePages\execute(), MediaWiki\Api\ApiDelete\execute(), MediaWiki\Api\ApiEditPage\execute(), MediaWiki\Api\ApiEmailUser\execute(), MediaWiki\Api\ApiExpandTemplates\execute(), MediaWiki\Api\ApiFeedContributions\execute(), MediaWiki\Api\ApiFeedRecentChanges\execute(), MediaWiki\Api\ApiFeedWatchlist\execute(), MediaWiki\Api\ApiFileRevert\execute(), MediaWiki\Api\ApiFormatJson\execute(), MediaWiki\Api\ApiFormatPhp\execute(), MediaWiki\Api\ApiFormatXml\execute(), MediaWiki\Api\ApiHelp\execute(), MediaWiki\Api\ApiImageRotate\execute(), MediaWiki\Api\ApiImport\execute(), MediaWiki\Api\ApiLinkAccount\execute(), MediaWiki\Api\ApiLogin\execute(), MediaWiki\Api\ApiManageTags\execute(), MediaWiki\Api\ApiMergeHistory\execute(), MediaWiki\Api\ApiMove\execute(), MediaWiki\Api\ApiOpenSearch\execute(), MediaWiki\Api\ApiOptionsBase\execute(), MediaWiki\Api\ApiParamInfo\execute(), MediaWiki\Api\ApiPatrol\execute(), MediaWiki\Api\ApiProtect\execute(), MediaWiki\Api\ApiPurge\execute(), MediaWiki\Api\ApiQuery\execute(), MediaWiki\Api\ApiQueryAllMessages\execute(), MediaWiki\Api\ApiQueryAllUsers\execute(), MediaWiki\Api\ApiQueryAuthManagerInfo\execute(), MediaWiki\Api\ApiQueryBlocks\execute(), MediaWiki\Api\ApiQueryCategoryInfo\execute(), MediaWiki\Api\ApiQueryCodexIcons\execute(), MediaWiki\Api\ApiQueryContributors\execute(), MediaWiki\Api\ApiQueryDeletedrevs\execute(), MediaWiki\Api\ApiQueryExternalLinks\execute(), MediaWiki\Api\ApiQueryFilearchive\execute(), MediaWiki\Api\ApiQueryFileRepoInfo\execute(), MediaWiki\Api\ApiQueryImageInfo\execute(), MediaWiki\Api\ApiQueryInfo\execute(), MediaWiki\Api\ApiQueryIWLinks\execute(), MediaWiki\Api\ApiQueryLangLinks\execute(), MediaWiki\Api\ApiQueryLogEvents\execute(), MediaWiki\Api\ApiQueryMyStashedFiles\execute(), MediaWiki\Api\ApiQueryPagePropNames\execute(), MediaWiki\Api\ApiQueryPageProps\execute(), MediaWiki\Api\ApiQuerySiteinfo\execute(), MediaWiki\Api\ApiQueryStashImageInfo\execute(), MediaWiki\Api\ApiQueryTags\execute(), MediaWiki\Api\ApiQueryTokens\execute(), MediaWiki\Api\ApiQueryUserContribs\execute(), MediaWiki\Api\ApiQueryUserInfo\execute(), MediaWiki\Api\ApiQueryUsers\execute(), MediaWiki\Api\ApiRemoveAuthenticationData\execute(), MediaWiki\Api\ApiResetPassword\execute(), MediaWiki\Api\ApiRevisionDelete\execute(), MediaWiki\Api\ApiRollback\execute(), MediaWiki\Api\ApiSetNotificationTimestamp\execute(), MediaWiki\Api\ApiSetPageLanguage\execute(), MediaWiki\Api\ApiStashEdit\execute(), MediaWiki\Api\ApiTag\execute(), MediaWiki\Api\ApiUnblock\execute(), MediaWiki\Api\ApiUndelete\execute(), MediaWiki\Api\ApiUpload\execute(), MediaWiki\Api\ApiUserrights\execute(), MediaWiki\Api\ApiValidatePassword\execute(), MediaWiki\Api\ApiWatch\execute(), MediaWiki\Api\ApiHelp\getCustomPrinter(), MediaWiki\Api\ApiFormatJson\getMimeType(), MediaWiki\Api\ApiQuery\isReadMode(), MediaWiki\Api\ApiQuery\isWriteMode(), MediaWiki\Api\ApiQueryIWBacklinks\run(), MediaWiki\Api\ApiQueryLangBacklinks\run(), MediaWiki\Api\ApiQueryRandom\run(), MediaWiki\Api\ApiQueryRecentChanges\run(), MediaWiki\Api\ApiQueryAllDeletedRevisions\run(), MediaWiki\Api\ApiQueryAllRevisions\run(), MediaWiki\Api\ApiQueryDeletedRevisions\run(), MediaWiki\Api\ApiQueryRevisions\run(), and MediaWiki\Api\ApiQueryRandom\runQuery().

◆ filterIDs()

MediaWiki\Api\ApiBase::filterIDs ( $fields,
array $ids )
protected

Filter out-of-range values from a list of positive integer IDs.

Since
1.33
Parameters
string[][]$fieldsArray of table and field pairs to check
(string|int)[]$ids IDs to filter. Strings in the array are expected to be stringified integers.
Returns
(string|int)[] Filtered IDs.

Definition at line 1397 of file ApiBase.php.

References MediaWiki\Api\getDB().

Referenced by MediaWiki\Api\ApiQueryBase\addWhereIDsFld().

◆ getAllowedParams()

MediaWiki\Api\ApiBase::getAllowedParams ( )
protected

Returns an array of allowed parameters (parameter name) => (default value) or (parameter name) => (array with PARAM_* constants as keys) Don't call this function directly: use getFinalParams() to allow hooks to modify parameters as needed.

Some derived classes may choose to handle an integer $flags parameter in the overriding methods. Callers of this method can pass zero or more OR-ed flags like GET_VALUES_FOR_HELP.

Stability: stable
to override
Returns
array

Reimplemented in MediaWiki\Api\ApiAMCreateAccount, MediaWiki\Api\ApiBlock, MediaWiki\Api\ApiChangeAuthenticationData, MediaWiki\Api\ApiChangeContentModel, MediaWiki\Api\ApiCheckToken, MediaWiki\Api\ApiClientLogin, MediaWiki\Api\ApiComparePages, MediaWiki\Api\ApiCSPReport, MediaWiki\Api\ApiDelete, MediaWiki\Api\ApiEditPage, MediaWiki\Api\ApiEmailUser, MediaWiki\Api\ApiExpandTemplates, MediaWiki\Api\ApiFeedContributions, MediaWiki\Api\ApiFeedRecentChanges, MediaWiki\Api\ApiFileRevert, MediaWiki\Api\ApiFormatBase, MediaWiki\Api\ApiFormatJson, MediaWiki\Api\ApiFormatPhp, MediaWiki\Api\ApiFormatXml, MediaWiki\Api\ApiHelp, MediaWiki\Api\ApiImport, MediaWiki\Api\ApiLinkAccount, MediaWiki\Api\ApiLogin, MediaWiki\Api\ApiMain, MediaWiki\Api\ApiManageTags, MediaWiki\Api\ApiMergeHistory, MediaWiki\Api\ApiMove, MediaWiki\Api\ApiOpenSearch, MediaWiki\Api\ApiOptions, MediaWiki\Api\ApiOptionsBase, MediaWiki\Api\ApiParamInfo, MediaWiki\Api\ApiParse, MediaWiki\Api\ApiPatrol, MediaWiki\Api\ApiProtect, MediaWiki\Api\ApiQueryAllCategories, MediaWiki\Api\ApiQueryAllDeletedRevisions, MediaWiki\Api\ApiQueryAllImages, MediaWiki\Api\ApiQueryAllLinks, MediaWiki\Api\ApiQueryAllMessages, MediaWiki\Api\ApiQueryAllPages, MediaWiki\Api\ApiQueryAllRevisions, MediaWiki\Api\ApiQueryAuthManagerInfo, MediaWiki\Api\ApiQueryBacklinks, MediaWiki\Api\ApiQueryBacklinksprop, MediaWiki\Api\ApiQueryBlocks, MediaWiki\Api\ApiQueryCategories, MediaWiki\Api\ApiQueryCategoryInfo, MediaWiki\Api\ApiQueryCategoryMembers, MediaWiki\Api\ApiQueryCodexIcons, MediaWiki\Api\ApiQueryDeletedRevisions, MediaWiki\Api\ApiQueryDeletedrevs, MediaWiki\Api\ApiQueryDuplicateFiles, MediaWiki\Api\ApiQueryExternalLinks, MediaWiki\Api\ApiQueryExtLinksUsage, MediaWiki\Api\ApiQueryFilearchive, MediaWiki\Api\ApiQueryFileRepoInfo, MediaWiki\Api\ApiQueryImageInfo, MediaWiki\Api\ApiQueryImages, MediaWiki\Api\ApiQueryInfo, MediaWiki\Api\ApiQueryIWBacklinks, MediaWiki\Api\ApiQueryIWLinks, MediaWiki\Api\ApiQueryLangBacklinks, MediaWiki\Api\ApiQueryLangLinks, MediaWiki\Api\ApiQueryLanguageinfo, MediaWiki\Api\ApiQueryLinks, MediaWiki\Api\ApiQueryMyStashedFiles, MediaWiki\Api\ApiQueryPagePropNames, MediaWiki\Api\ApiQueryPageProps, MediaWiki\Api\ApiQueryPagesWithProp, MediaWiki\Api\ApiQueryPrefixSearch, MediaWiki\Api\ApiQueryProtectedTitles, MediaWiki\Api\ApiQueryQueryPage, MediaWiki\Api\ApiQueryRandom, MediaWiki\Api\ApiQueryRecentChanges, MediaWiki\Api\ApiQueryRevisions, MediaWiki\Api\ApiQueryRevisionsBase, MediaWiki\Api\ApiQuerySearch, MediaWiki\Api\ApiQuerySiteinfo, MediaWiki\Api\ApiQueryStashImageInfo, MediaWiki\Api\ApiQueryTags, MediaWiki\Api\ApiQueryTokens, MediaWiki\Api\ApiQueryUserContribs, MediaWiki\Api\ApiQueryUserInfo, MediaWiki\Api\ApiQueryUsers, MediaWiki\Api\ApiQueryWatchlist, MediaWiki\Api\ApiQueryWatchlistRaw, MediaWiki\Api\ApiRemoveAuthenticationData, MediaWiki\Api\ApiResetPassword, MediaWiki\Api\ApiRevisionDelete, MediaWiki\Api\ApiRollback, MediaWiki\Api\ApiSetPageLanguage, MediaWiki\Api\ApiStashEdit, MediaWiki\Api\ApiTag, MediaWiki\Api\ApiUnblock, MediaWiki\Api\ApiUndelete, MediaWiki\Api\ApiUpload, and MediaWiki\Api\ApiValidatePassword.

Definition at line 400 of file ApiBase.php.

◆ getConditionalRequestData()

MediaWiki\Api\ApiBase::getConditionalRequestData ( $condition)

Returns data for HTTP conditional request mechanisms.

Since
1.26
Stability: stable
to override
Parameters
string$conditionCondition being queried:
  • last-modified: Return a timestamp representing the maximum of the last-modified dates for all resources involved in the request. See RFC 7232 § 2.2 for semantics.
  • etag: Return an entity-tag representing the state of all resources involved in the request. Quotes must be included. See RFC 7232 § 2.3 for semantics.
Returns
string|bool|null As described above, or null if no value is available.

Definition at line 542 of file ApiBase.php.

◆ getContinuationManager()

◆ getCustomPrinter()

MediaWiki\Api\ApiBase::getCustomPrinter ( )

If the module may only be used with a certain format module, it should override this method to return an instance of that formatter.

A value of null means the default format will be used.

Note
Do not use this just because you don't want to support non-json formats. This should be used only when there is a fundamental requirement for a specific format.
Stability: stable
to override
Returns
ApiFormatBase|null An instance of a class derived from ApiFormatBase, or null

Reimplemented in MediaWiki\Api\ApiFeedContributions, MediaWiki\Api\ApiFeedRecentChanges, MediaWiki\Api\ApiFeedWatchlist, MediaWiki\Api\ApiHelp, MediaWiki\Api\ApiOpenSearch, MediaWiki\Api\ApiQuery, and MediaWiki\Api\ApiRsd.

Definition at line 356 of file ApiBase.php.

◆ getDB()

MediaWiki\Api\ApiBase::getDB ( )
protected

Gets a default replica DB connection object.

Stability: stable
to override
Returns
IReadableDatabase

Reimplemented in MediaWiki\Api\ApiPageSet, MediaWiki\Api\ApiQueryAllImages, and MediaWiki\Api\ApiQueryBase.

Definition at line 720 of file ApiBase.php.

References MediaWiki\MediaWikiServices\getInstance().

◆ getErrorFormatter()

◆ getExamplesMessages()

MediaWiki\Api\ApiBase::getExamplesMessages ( )
protected

Returns usage examples for this module.

Return value has query strings as keys, with values being either strings (message key), arrays (message key + parameter), or Message objects.

Do not call this base class implementation when overriding this method.

Since
1.25
Stability: stable
to override
Returns
array

Reimplemented in MediaWiki\Api\ApiAMCreateAccount, MediaWiki\Api\ApiBlock, MediaWiki\Api\ApiChangeAuthenticationData, MediaWiki\Api\ApiChangeContentModel, MediaWiki\Api\ApiCheckToken, MediaWiki\Api\ApiClearHasMsg, MediaWiki\Api\ApiClientLogin, MediaWiki\Api\ApiComparePages, MediaWiki\Api\ApiDelete, MediaWiki\Api\ApiEditPage, MediaWiki\Api\ApiEmailUser, MediaWiki\Api\ApiExpandTemplates, MediaWiki\Api\ApiFeedContributions, MediaWiki\Api\ApiFeedRecentChanges, MediaWiki\Api\ApiFeedWatchlist, MediaWiki\Api\ApiFileRevert, MediaWiki\Api\ApiFormatBase, MediaWiki\Api\ApiHelp, MediaWiki\Api\ApiImageRotate, MediaWiki\Api\ApiImport, MediaWiki\Api\ApiLinkAccount, MediaWiki\Api\ApiLogin, MediaWiki\Api\ApiLogout, MediaWiki\Api\ApiMain, MediaWiki\Api\ApiManageTags, MediaWiki\Api\ApiMergeHistory, MediaWiki\Api\ApiMove, MediaWiki\Api\ApiOpenSearch, MediaWiki\Api\ApiOptions, MediaWiki\Api\ApiParamInfo, MediaWiki\Api\ApiParse, MediaWiki\Api\ApiPatrol, MediaWiki\Api\ApiProtect, MediaWiki\Api\ApiPurge, MediaWiki\Api\ApiQuery, MediaWiki\Api\ApiQueryAllCategories, MediaWiki\Api\ApiQueryAllDeletedRevisions, MediaWiki\Api\ApiQueryAllImages, MediaWiki\Api\ApiQueryAllLinks, MediaWiki\Api\ApiQueryAllMessages, MediaWiki\Api\ApiQueryAllPages, MediaWiki\Api\ApiQueryAllRevisions, MediaWiki\Api\ApiQueryAllUsers, MediaWiki\Api\ApiQueryAuthManagerInfo, MediaWiki\Api\ApiQueryBacklinks, MediaWiki\Api\ApiQueryBacklinksprop, MediaWiki\Api\ApiQueryBlocks, MediaWiki\Api\ApiQueryCategories, MediaWiki\Api\ApiQueryCategoryInfo, MediaWiki\Api\ApiQueryCategoryMembers, MediaWiki\Api\ApiQueryCodexIcons, MediaWiki\Api\ApiQueryContributors, MediaWiki\Api\ApiQueryDeletedRevisions, MediaWiki\Api\ApiQueryDeletedrevs, MediaWiki\Api\ApiQueryDuplicateFiles, MediaWiki\Api\ApiQueryExternalLinks, MediaWiki\Api\ApiQueryExtLinksUsage, MediaWiki\Api\ApiQueryFilearchive, MediaWiki\Api\ApiQueryFileRepoInfo, MediaWiki\Api\ApiQueryImageInfo, MediaWiki\Api\ApiQueryImages, MediaWiki\Api\ApiQueryInfo, MediaWiki\Api\ApiQueryIWBacklinks, MediaWiki\Api\ApiQueryIWLinks, MediaWiki\Api\ApiQueryLangBacklinks, MediaWiki\Api\ApiQueryLangLinks, MediaWiki\Api\ApiQueryLanguageinfo, MediaWiki\Api\ApiQueryLinks, MediaWiki\Api\ApiQueryLogEvents, MediaWiki\Api\ApiQueryMyStashedFiles, MediaWiki\Api\ApiQueryPagePropNames, MediaWiki\Api\ApiQueryPageProps, MediaWiki\Api\ApiQueryPagesWithProp, MediaWiki\Api\ApiQueryPrefixSearch, MediaWiki\Api\ApiQueryProtectedTitles, MediaWiki\Api\ApiQueryQueryPage, MediaWiki\Api\ApiQueryRandom, MediaWiki\Api\ApiQueryRecentChanges, MediaWiki\Api\ApiQueryRevisions, MediaWiki\Api\ApiQuerySearch, MediaWiki\Api\ApiQuerySiteinfo, MediaWiki\Api\ApiQueryStashImageInfo, MediaWiki\Api\ApiQueryTags, MediaWiki\Api\ApiQueryTokens, MediaWiki\Api\ApiQueryUserContribs, MediaWiki\Api\ApiQueryUserInfo, MediaWiki\Api\ApiQueryUsers, MediaWiki\Api\ApiQueryWatchlist, MediaWiki\Api\ApiQueryWatchlistRaw, MediaWiki\Api\ApiRemoveAuthenticationData, MediaWiki\Api\ApiResetPassword, MediaWiki\Api\ApiRevisionDelete, MediaWiki\Api\ApiRollback, MediaWiki\Api\ApiRsd, MediaWiki\Api\ApiSetNotificationTimestamp, MediaWiki\Api\ApiSetPageLanguage, MediaWiki\Api\ApiTag, MediaWiki\Api\ApiUnblock, MediaWiki\Api\ApiUndelete, MediaWiki\Api\ApiUpload, MediaWiki\Api\ApiUserrights, MediaWiki\Api\ApiValidatePassword, and MediaWiki\Api\ApiWatch.

Definition at line 372 of file ApiBase.php.

◆ getExtendedDescription()

MediaWiki\Api\ApiBase::getExtendedDescription ( )
protected

Return the extended help text message.

This is additional text to display at the top of the help section, below the summary.

Since
1.30
Stability: stable
to override
Returns
string|array|Message Message definition, see Message::newFromSpecifier(). When returning an array, the definition may also specify fallback keys.

Reimplemented in MediaWiki\Api\ApiDisabled, MediaWiki\Api\ApiLogin, MediaWiki\Api\ApiQueryDisabled, MediaWiki\Api\ApiResetPassword, and MediaWiki\Api\ApiSetPageLanguage.

Definition at line 1840 of file ApiBase.php.

◆ getFinalDescription()

MediaWiki\Api\ApiBase::getFinalDescription ( )

Get the final module description, after hooks have had a chance to tweak it as needed.

Since
1.25, returns Message[] rather than string[]
Returns
Message[]

Reimplemented in MediaWiki\Api\ApiAMCreateAccount, MediaWiki\Api\ApiClientLogin, and MediaWiki\Api\ApiLinkAccount.

Definition at line 1870 of file ApiBase.php.

◆ getFinalParamDescription()

MediaWiki\Api\ApiBase::getFinalParamDescription ( )

Get final parameter descriptions, after hooks have had a chance to tweak it as needed.

Since
1.25, returns array of Message[] rather than array of string[]
Returns
array Keys are parameter names, values are arrays of Message objects

Definition at line 1937 of file ApiBase.php.

References $path, and MediaWiki\Api\getContext().

◆ getFinalParams()

MediaWiki\Api\ApiBase::getFinalParams ( $flags = 0)

Get the final list of parameters, after hooks have had a chance to tweak it as needed.

Parameters
int$flagsZero or more flags like GET_VALUES_FOR_HELP
Returns
array
Since
1.21 $flags param added

Definition at line 1906 of file ApiBase.php.

◆ getFinalSummary()

MediaWiki\Api\ApiBase::getFinalSummary ( )

Get the final module summary.

Since
1.30
Stability: stable
to override
Returns
Message

Definition at line 1854 of file ApiBase.php.

◆ getHelpFlags()

MediaWiki\Api\ApiBase::getHelpFlags ( )
protected

Generates the list of flags for the help screen and for action=paraminfo.

Corresponding messages: api-help-flag-deprecated, api-help-flag-internal, api-help-flag-readrights, api-help-flag-writerights, api-help-flag-mustbeposted

Returns
string[]

Reimplemented in MediaWiki\Api\ApiQueryGeneratorBase.

Definition at line 2070 of file ApiBase.php.

◆ getHelpUrls()

MediaWiki\Api\ApiBase::getHelpUrls ( )

Return links to more detailed help pages about the module.

Since
1.25, returning boolean false is deprecated
Stability: stable
to override
Returns
string|array

Reimplemented in MediaWiki\Api\ApiAMCreateAccount, MediaWiki\Api\ApiBlock, MediaWiki\Api\ApiChangeAuthenticationData, MediaWiki\Api\ApiChangeContentModel, MediaWiki\Api\ApiCheckToken, MediaWiki\Api\ApiClearHasMsg, MediaWiki\Api\ApiClientLogin, MediaWiki\Api\ApiComparePages, MediaWiki\Api\ApiDelete, MediaWiki\Api\ApiEditPage, MediaWiki\Api\ApiEmailUser, MediaWiki\Api\ApiExpandTemplates, MediaWiki\Api\ApiFeedContributions, MediaWiki\Api\ApiFeedRecentChanges, MediaWiki\Api\ApiFeedWatchlist, MediaWiki\Api\ApiFileRevert, MediaWiki\Api\ApiFormatBase, MediaWiki\Api\ApiHelp, MediaWiki\Api\ApiImageRotate, MediaWiki\Api\ApiImport, MediaWiki\Api\ApiLinkAccount, MediaWiki\Api\ApiLogin, MediaWiki\Api\ApiLogout, MediaWiki\Api\ApiManageTags, MediaWiki\Api\ApiMergeHistory, MediaWiki\Api\ApiMove, MediaWiki\Api\ApiOpenSearch, MediaWiki\Api\ApiOptions, MediaWiki\Api\ApiParamInfo, MediaWiki\Api\ApiParse, MediaWiki\Api\ApiPatrol, MediaWiki\Api\ApiProtect, MediaWiki\Api\ApiPurge, MediaWiki\Api\ApiQuery, MediaWiki\Api\ApiQueryAllCategories, MediaWiki\Api\ApiQueryAllDeletedRevisions, MediaWiki\Api\ApiQueryAllImages, MediaWiki\Api\ApiQueryAllLinks, MediaWiki\Api\ApiQueryAllMessages, MediaWiki\Api\ApiQueryAllPages, MediaWiki\Api\ApiQueryAllRevisions, MediaWiki\Api\ApiQueryAllUsers, MediaWiki\Api\ApiQueryAuthManagerInfo, MediaWiki\Api\ApiQueryBacklinks, MediaWiki\Api\ApiQueryBacklinksprop, MediaWiki\Api\ApiQueryBlocks, MediaWiki\Api\ApiQueryCategories, MediaWiki\Api\ApiQueryCategoryInfo, MediaWiki\Api\ApiQueryCategoryMembers, MediaWiki\Api\ApiQueryCodexIcons, MediaWiki\Api\ApiQueryContributors, MediaWiki\Api\ApiQueryDeletedRevisions, MediaWiki\Api\ApiQueryDeletedrevs, MediaWiki\Api\ApiQueryDuplicateFiles, MediaWiki\Api\ApiQueryExternalLinks, MediaWiki\Api\ApiQueryExtLinksUsage, MediaWiki\Api\ApiQueryFilearchive, MediaWiki\Api\ApiQueryFileRepoInfo, MediaWiki\Api\ApiQueryImageInfo, MediaWiki\Api\ApiQueryImages, MediaWiki\Api\ApiQueryInfo, MediaWiki\Api\ApiQueryIWBacklinks, MediaWiki\Api\ApiQueryIWLinks, MediaWiki\Api\ApiQueryLangBacklinks, MediaWiki\Api\ApiQueryLangLinks, MediaWiki\Api\ApiQueryLinks, MediaWiki\Api\ApiQueryLogEvents, MediaWiki\Api\ApiQueryMyStashedFiles, MediaWiki\Api\ApiQueryPagePropNames, MediaWiki\Api\ApiQueryPageProps, MediaWiki\Api\ApiQueryPagesWithProp, MediaWiki\Api\ApiQueryPrefixSearch, MediaWiki\Api\ApiQueryProtectedTitles, MediaWiki\Api\ApiQueryQueryPage, MediaWiki\Api\ApiQueryRandom, MediaWiki\Api\ApiQueryRecentChanges, MediaWiki\Api\ApiQueryRevisions, MediaWiki\Api\ApiQuerySearch, MediaWiki\Api\ApiQuerySiteinfo, MediaWiki\Api\ApiQueryStashImageInfo, MediaWiki\Api\ApiQueryTags, MediaWiki\Api\ApiQueryTokens, MediaWiki\Api\ApiQueryUserContribs, MediaWiki\Api\ApiQueryUserInfo, MediaWiki\Api\ApiQueryUsers, MediaWiki\Api\ApiQueryWatchlist, MediaWiki\Api\ApiQueryWatchlistRaw, MediaWiki\Api\ApiRemoveAuthenticationData, MediaWiki\Api\ApiResetPassword, MediaWiki\Api\ApiRevisionDelete, MediaWiki\Api\ApiRollback, MediaWiki\Api\ApiRsd, MediaWiki\Api\ApiSetNotificationTimestamp, MediaWiki\Api\ApiSetPageLanguage, MediaWiki\Api\ApiStashEdit, MediaWiki\Api\ApiTag, MediaWiki\Api\ApiUnblock, MediaWiki\Api\ApiUndelete, MediaWiki\Api\ApiUpload, MediaWiki\Api\ApiUserrights, MediaWiki\Api\ApiValidatePassword, and MediaWiki\Api\ApiWatch.

Definition at line 383 of file ApiBase.php.

◆ getHookContainer()

MediaWiki\Api\ApiBase::getHookContainer ( )
protected

Get a HookContainer, for running extension hooks or for hook metadata.

Since
1.35
Returns
HookContainer

Definition at line 766 of file ApiBase.php.

References MediaWiki\MediaWikiServices\getInstance().

Referenced by MediaWiki\Api\ApiQueryBase\select().

◆ getHookRunner()

◆ getMain()

MediaWiki\Api\ApiBase::getMain ( )

Get the main module.

Returns
ApiMain

Definition at line 575 of file ApiBase.php.

Referenced by MediaWiki\Api\ApiPageSet\__construct(), MediaWiki\Api\ApiContinuationManager\__construct(), MediaWiki\Api\ApiFormatBase\__construct(), MediaWiki\Api\ApiFormatJson\__construct(), MediaWiki\Api\ApiQueryBase\__construct(), MediaWiki\Api\ApiFormatBase\closePrinter(), MediaWiki\Api\ApiComparePages\execute(), MediaWiki\Api\ApiEditPage\execute(), MediaWiki\Api\ApiExpandTemplates\execute(), MediaWiki\Api\ApiFeedRecentChanges\execute(), MediaWiki\Api\ApiFeedWatchlist\execute(), MediaWiki\Api\ApiHelp\execute(), MediaWiki\Api\ApiOpenSearch\execute(), MediaWiki\Api\ApiParamInfo\execute(), MediaWiki\Api\ApiQuery\execute(), MediaWiki\Api\ApiQueryDeletedrevs\execute(), MediaWiki\Api\ApiParamInfo\getAllowedParams(), MediaWiki\Api\ApiQueryDeletedrevs\getAllowedParams(), MediaWiki\Api\ApiBase\getContinuationManager(), MediaWiki\Api\ApiFeedContributions\getCustomPrinter(), MediaWiki\Api\ApiFeedRecentChanges\getCustomPrinter(), MediaWiki\Api\ApiFeedWatchlist\getCustomPrinter(), MediaWiki\Api\ApiHelp\getCustomPrinter(), MediaWiki\Api\ApiOpenSearch\getCustomPrinter(), MediaWiki\Api\ApiQuery\getCustomPrinter(), MediaWiki\Api\ApiRsd\getCustomPrinter(), MediaWiki\Api\ApiBase\getErrorFormatter(), MediaWiki\Api\ApiBase\getModuleFromPath(), MediaWiki\Api\ApiBase\getParent(), MediaWiki\Api\ApiBase\getResult(), MediaWiki\Api\ApiFormatBase\initPrinter(), MediaWiki\Api\ApiFormatRaw\initPrinter(), MediaWiki\Api\ApiBase\lacksSameOriginSecurity(), MediaWiki\Api\ApiQueryRevisionsBase\parseParameters(), MediaWiki\Api\ApiQueryRandom\run(), MediaWiki\Api\ApiBase\setContinuationManager(), and MediaWiki\Api\ApiFormatBase\setHttpStatus().

◆ getModuleFromPath()

MediaWiki\Api\ApiBase::getModuleFromPath ( $path)

Get a module from its module path.

Since
1.25
Parameters
string$path
Returns
ApiBase|null
Exceptions
ApiUsageException

Definition at line 656 of file ApiBase.php.

References $path, MediaWiki\Api\ApiBase\dieWithError(), MediaWiki\Api\ApiBase\getMain(), and wfEscapeWikiText().

Referenced by MediaWiki\Api\ApiHelp\execute(), and MediaWiki\Api\ApiParamInfo\execute().

◆ getModuleManager()

MediaWiki\Api\ApiBase::getModuleManager ( )

Get the module manager, or null if this module has no submodules.

Since
1.21
Stability: stable
to override
Returns
ApiModuleManager|null

Reimplemented in MediaWiki\Api\ApiMain, and MediaWiki\Api\ApiQuery.

Definition at line 340 of file ApiBase.php.

Referenced by MediaWiki\Api\ApiFormatBase\closePrinter(), and MediaWiki\Api\ApiParamInfo\execute().

◆ getModuleName()

MediaWiki\Api\ApiBase::getModuleName ( )

Get the name of the module being executed by this instance.

Returns
string

Definition at line 557 of file ApiBase.php.

Referenced by MediaWiki\Api\ApiPageSet\__construct(), MediaWiki\Api\ApiContinuationManager\__construct(), MediaWiki\Api\ApiContinuationManager\addContinueParam(), MediaWiki\Api\ApiContinuationManager\addGeneratorContinueParam(), MediaWiki\Api\ApiContinuationManager\addGeneratorNonContinueParam(), MediaWiki\Api\ApiQueryBase\addPageSubItem(), MediaWiki\Api\ApiQueryBase\addPageSubItems(), MediaWiki\Api\ApiAcquireTempUserName\execute(), MediaWiki\Api\ApiBlock\execute(), MediaWiki\Api\ApiChangeContentModel\execute(), MediaWiki\Api\ApiCheckToken\execute(), MediaWiki\Api\ApiClearHasMsg\execute(), MediaWiki\Api\ApiComparePages\execute(), MediaWiki\Api\ApiCSPReport\execute(), MediaWiki\Api\ApiDelete\execute(), MediaWiki\Api\ApiDisabled\execute(), MediaWiki\Api\ApiEditPage\execute(), MediaWiki\Api\ApiEmailUser\execute(), MediaWiki\Api\ApiExpandTemplates\execute(), MediaWiki\Api\ApiFileRevert\execute(), MediaWiki\Api\ApiHelp\execute(), MediaWiki\Api\ApiImageRotate\execute(), MediaWiki\Api\ApiImport\execute(), MediaWiki\Api\ApiManageTags\execute(), MediaWiki\Api\ApiMergeHistory\execute(), MediaWiki\Api\ApiMove\execute(), MediaWiki\Api\ApiOptionsBase\execute(), MediaWiki\Api\ApiParamInfo\execute(), MediaWiki\Api\ApiPatrol\execute(), MediaWiki\Api\ApiProtect\execute(), MediaWiki\Api\ApiPurge\execute(), MediaWiki\Api\ApiQueryAllMessages\execute(), MediaWiki\Api\ApiQueryAllUsers\execute(), MediaWiki\Api\ApiQueryAuthManagerInfo\execute(), MediaWiki\Api\ApiQueryBlocks\execute(), MediaWiki\Api\ApiQueryCodexIcons\execute(), MediaWiki\Api\ApiQueryDeletedrevs\execute(), MediaWiki\Api\ApiQueryDisabled\execute(), MediaWiki\Api\ApiQueryFilearchive\execute(), MediaWiki\Api\ApiQueryLanguageinfo\execute(), MediaWiki\Api\ApiQueryLogEvents\execute(), MediaWiki\Api\ApiQueryMyStashedFiles\execute(), MediaWiki\Api\ApiQueryPagePropNames\execute(), MediaWiki\Api\ApiQueryStashImageInfo\execute(), MediaWiki\Api\ApiQueryTags\execute(), MediaWiki\Api\ApiQueryTokens\execute(), MediaWiki\Api\ApiQueryUserContribs\execute(), MediaWiki\Api\ApiQueryUserInfo\execute(), MediaWiki\Api\ApiQueryUsers\execute(), MediaWiki\Api\ApiRemoveAuthenticationData\execute(), MediaWiki\Api\ApiRevisionDelete\execute(), MediaWiki\Api\ApiRollback\execute(), MediaWiki\Api\ApiSetNotificationTimestamp\execute(), MediaWiki\Api\ApiSetPageLanguage\execute(), MediaWiki\Api\ApiStashEdit\execute(), MediaWiki\Api\ApiTag\execute(), MediaWiki\Api\ApiUnblock\execute(), MediaWiki\Api\ApiUndelete\execute(), MediaWiki\Api\ApiUpload\execute(), MediaWiki\Api\ApiUserrights\execute(), MediaWiki\Api\ApiValidatePassword\execute(), MediaWiki\Api\ApiWatch\execute(), MediaWiki\Api\ApiQueryBacklinksprop\getAllowedParams(), MediaWiki\Api\ApiFormatBase\getExamplesMessages(), MediaWiki\Api\ApiQueryBacklinksprop\getExamplesMessages(), MediaWiki\Api\ApiQueryLanguageinfo\getExamplesMessages(), MediaWiki\Api\ApiQueryLinks\getExamplesMessages(), MediaWiki\Api\ApiRemoveAuthenticationData\getExamplesMessages(), MediaWiki\Api\ApiAMCreateAccount\getFinalDescription(), MediaWiki\Api\ApiClientLogin\getFinalDescription(), MediaWiki\Api\ApiLinkAccount\getFinalDescription(), MediaWiki\Api\ApiQueryBacklinksprop\getHelpUrls(), MediaWiki\Api\ApiBase\getModulePath(), MediaWiki\Api\ApiAuthManagerHelper\logAuthenticationResult(), MediaWiki\Api\ApiQueryRevisionsBase\parseParameters(), MediaWiki\Api\ApiQueryIWBacklinks\run(), MediaWiki\Api\ApiQueryLangBacklinks\run(), MediaWiki\Api\ApiQueryRandom\run(), MediaWiki\Api\ApiQueryRecentChanges\run(), MediaWiki\Api\ApiQueryAllDeletedRevisions\run(), MediaWiki\Api\ApiQueryAllRevisions\run(), and MediaWiki\Api\ApiQueryRandom\runQuery().

◆ getModulePath()

◆ getModulePrefix()

◆ getModuleSourceInfo()

MediaWiki\Api\ApiBase::getModuleSourceInfo ( )
protected

Returns information about the source of this module, if known.

Returned array is an array with the following keys:

  • path: Install path
  • name: Extension name, or "MediaWiki" for core
  • namemsg: (optional) i18n message key for a display name
  • license-name: (optional) Name of license
Returns
array|null

Definition at line 2103 of file ApiBase.php.

References $path.

◆ getParameter()

◆ getParameterFromSettings()

MediaWiki\Api\ApiBase::getParameterFromSettings ( $name,
$settings,
$parseLimit )
protected

Using the settings, determine the value for the given parameter.

Parameters
string$nameParameter name
array | mixed$settingsDefault value or an array of settings using PARAM_* constants.
bool$parseLimitWhether to parse and validate 'limit' parameters
Returns
mixed Parameter value

Reimplemented in MediaWiki\Api\ApiFormatBase.

Definition at line 1230 of file ApiBase.php.

◆ getParent()

MediaWiki\Api\ApiBase::getParent ( )

Get the parent of this module.

Stability: stable
to override
Since
1.25
Returns
ApiBase|null

Reimplemented in MediaWiki\Api\ApiQueryBase.

Definition at line 596 of file ApiBase.php.

References MediaWiki\Api\ApiBase\getMain(), and MediaWiki\Api\ApiBase\isMain().

Referenced by MediaWiki\Api\ApiBase\getModulePath().

◆ getPermissionManager()

MediaWiki\Api\ApiBase::getPermissionManager ( )
protected

◆ getResult()

MediaWiki\Api\ApiBase::getResult ( )

Get the result object.

Returns
ApiResult

Reimplemented in MediaWiki\Api\ApiMain.

Definition at line 696 of file ApiBase.php.

References MediaWiki\Api\ApiBase\getMain().

Referenced by MediaWiki\Api\ApiQueryBase\addPageSubItem(), MediaWiki\Api\ApiQueryBase\addPageSubItems(), MediaWiki\Api\ApiQuerySiteinfo\appendAutoCreateTempUser(), MediaWiki\Api\ApiQuerySiteinfo\appendDbReplLagInfo(), MediaWiki\Api\ApiQuerySiteinfo\appendDefaultOptions(), MediaWiki\Api\ApiQuerySiteinfo\appendExtensions(), MediaWiki\Api\ApiQuerySiteinfo\appendExtensionTags(), MediaWiki\Api\ApiQuerySiteinfo\appendFileExtensions(), MediaWiki\Api\ApiQuerySiteinfo\appendFunctionHooks(), MediaWiki\Api\ApiQuerySiteinfo\appendGeneralInfo(), MediaWiki\Api\ApiQuerySiteinfo\appendInstalledClientLibraries(), MediaWiki\Api\ApiQuerySiteinfo\appendInstalledLibraries(), MediaWiki\Api\ApiQuerySiteinfo\appendInterwikiMap(), MediaWiki\Api\ApiQuerySiteinfo\appendLanguages(), MediaWiki\Api\ApiQuerySiteinfo\appendLanguageVariants(), MediaWiki\Api\ApiQuerySiteinfo\appendMagicWords(), MediaWiki\Api\ApiQuerySiteinfo\appendNamespaceAliases(), MediaWiki\Api\ApiQuerySiteinfo\appendNamespaces(), MediaWiki\Api\ApiQuerySiteinfo\appendProtocols(), MediaWiki\Api\ApiQuerySiteinfo\appendRestrictions(), MediaWiki\Api\ApiQuerySiteinfo\appendRightsInfo(), MediaWiki\Api\ApiQuerySiteinfo\appendSkins(), MediaWiki\Api\ApiQuerySiteinfo\appendSpecialPageAliases(), MediaWiki\Api\ApiQuerySiteinfo\appendStatistics(), MediaWiki\Api\ApiQuerySiteinfo\appendSubscribedHooks(), MediaWiki\Api\ApiQuerySiteinfo\appendUploadDialog(), MediaWiki\Api\ApiQuerySiteinfo\appendUserGroups(), MediaWiki\Api\ApiQuerySiteinfo\appendVariables(), MediaWiki\Api\ApiFormatBase\closePrinter(), MediaWiki\Api\ApiFormatRaw\closePrinter(), MediaWiki\Api\ApiAcquireTempUserName\execute(), MediaWiki\Api\ApiAMCreateAccount\execute(), MediaWiki\Api\ApiBlock\execute(), MediaWiki\Api\ApiChangeAuthenticationData\execute(), MediaWiki\Api\ApiChangeContentModel\execute(), MediaWiki\Api\ApiCheckToken\execute(), MediaWiki\Api\ApiClearHasMsg\execute(), MediaWiki\Api\ApiClientLogin\execute(), MediaWiki\Api\ApiComparePages\execute(), MediaWiki\Api\ApiCSPReport\execute(), MediaWiki\Api\ApiDelete\execute(), MediaWiki\Api\ApiEditPage\execute(), MediaWiki\Api\ApiEmailUser\execute(), MediaWiki\Api\ApiExpandTemplates\execute(), MediaWiki\Api\ApiFeedContributions\execute(), MediaWiki\Api\ApiFeedRecentChanges\execute(), MediaWiki\Api\ApiFeedWatchlist\execute(), MediaWiki\Api\ApiFileRevert\execute(), MediaWiki\Api\ApiFormatFeedWrapper\execute(), MediaWiki\Api\ApiFormatJson\execute(), MediaWiki\Api\ApiFormatPhp\execute(), MediaWiki\Api\ApiFormatRaw\execute(), MediaWiki\Api\ApiFormatXml\execute(), MediaWiki\Api\ApiHelp\execute(), MediaWiki\Api\ApiImageRotate\execute(), MediaWiki\Api\ApiImport\execute(), MediaWiki\Api\ApiLinkAccount\execute(), MediaWiki\Api\ApiLogin\execute(), MediaWiki\Api\ApiManageTags\execute(), MediaWiki\Api\ApiMergeHistory\execute(), MediaWiki\Api\ApiMove\execute(), MediaWiki\Api\ApiOpenSearchFormatJson\execute(), MediaWiki\Api\ApiOptionsBase\execute(), MediaWiki\Api\ApiParamInfo\execute(), MediaWiki\Api\ApiPatrol\execute(), MediaWiki\Api\ApiProtect\execute(), MediaWiki\Api\ApiPurge\execute(), MediaWiki\Api\ApiQuery\execute(), MediaWiki\Api\ApiQueryAllMessages\execute(), MediaWiki\Api\ApiQueryAllUsers\execute(), MediaWiki\Api\ApiQueryAuthManagerInfo\execute(), MediaWiki\Api\ApiQueryBlocks\execute(), MediaWiki\Api\ApiQueryCodexIcons\execute(), MediaWiki\Api\ApiQueryContributors\execute(), MediaWiki\Api\ApiQueryDeletedrevs\execute(), MediaWiki\Api\ApiQueryFilearchive\execute(), MediaWiki\Api\ApiQueryFileRepoInfo\execute(), MediaWiki\Api\ApiQueryImageInfo\execute(), MediaWiki\Api\ApiQueryInfo\execute(), MediaWiki\Api\ApiQueryLanguageinfo\execute(), MediaWiki\Api\ApiQueryLogEvents\execute(), MediaWiki\Api\ApiQueryMyStashedFiles\execute(), MediaWiki\Api\ApiQueryPagePropNames\execute(), MediaWiki\Api\ApiQueryPageProps\execute(), MediaWiki\Api\ApiQueryStashImageInfo\execute(), MediaWiki\Api\ApiQueryTags\execute(), MediaWiki\Api\ApiQueryTokens\execute(), MediaWiki\Api\ApiQueryUserContribs\execute(), MediaWiki\Api\ApiQueryUserInfo\execute(), MediaWiki\Api\ApiQueryUsers\execute(), MediaWiki\Api\ApiRemoveAuthenticationData\execute(), MediaWiki\Api\ApiResetPassword\execute(), MediaWiki\Api\ApiRevisionDelete\execute(), MediaWiki\Api\ApiRollback\execute(), MediaWiki\Api\ApiRsd\execute(), MediaWiki\Api\ApiSetNotificationTimestamp\execute(), MediaWiki\Api\ApiSetPageLanguage\execute(), MediaWiki\Api\ApiStashEdit\execute(), MediaWiki\Api\ApiTag\execute(), MediaWiki\Api\ApiUnblock\execute(), MediaWiki\Api\ApiUndelete\execute(), MediaWiki\Api\ApiUpload\execute(), MediaWiki\Api\ApiUserrights\execute(), MediaWiki\Api\ApiValidatePassword\execute(), MediaWiki\Api\ApiWatch\execute(), MediaWiki\Api\ApiFormatRaw\getFilename(), MediaWiki\Api\ApiFormatRaw\getMimeType(), MediaWiki\Api\ApiFormatFeedWrapper\initPrinter(), MediaWiki\Api\ApiFormatRaw\initPrinter(), MediaWiki\Api\ApiQueryRevisionsBase\parseParameters(), MediaWiki\Api\ApiOpenSearch\populateResult(), MediaWiki\Api\ApiQueryIWBacklinks\run(), MediaWiki\Api\ApiQueryLangBacklinks\run(), MediaWiki\Api\ApiQueryRandom\run(), MediaWiki\Api\ApiQueryRecentChanges\run(), MediaWiki\Api\ApiQueryAllDeletedRevisions\run(), MediaWiki\Api\ApiQueryAllRevisions\run(), and MediaWiki\Api\ApiQueryRandom\runQuery().

◆ getSummaryMessage()

MediaWiki\Api\ApiBase::getSummaryMessage ( )
protected

Return the summary message.

This is a one-line description of the module, suitable for display in a list of modules.

Since
1.30
Stability: stable
to override
Returns
string|array|Message Message definition, see Message::newFromSpecifier()

Reimplemented in MediaWiki\Api\ApiDisabled, MediaWiki\Api\ApiQueryContributors, and MediaWiki\Api\ApiQueryDisabled.

Definition at line 1825 of file ApiBase.php.

◆ getTitleFromTitleOrPageId()

MediaWiki\Api\ApiBase::getTitleFromTitleOrPageId ( $params)

Get a Title object from a title or pageid param, if it is possible.

It can die if no param is set or if the title or page ID is not valid.

Since
1.29
Parameters
array$paramsUser provided parameter set, as from $this->extractRequestParams()
Returns
Title

Definition at line 1197 of file ApiBase.php.

References wfEscapeWikiText().

◆ getTitleOrPageId()

MediaWiki\Api\ApiBase::getTitleOrPageId ( $params,
$load = false )

Attempts to load a WikiPage object from a title or pageid parameter, if possible.

It can die if no param is set or if the title or page ID is not valid.

Parameters
array$paramsUser provided parameter set, as from $this->extractRequestParams()
string | false$loadWhether load the object's state from the database:
  • false: don't load (if the pageid is given, it will still be loaded)
  • 'fromdb': load from a replica DB
  • 'fromdbmaster': load from the primary database
Returns
WikiPage

Definition at line 1158 of file ApiBase.php.

References MediaWiki\MediaWikiServices\getInstance(), and wfEscapeWikiText().

Referenced by MediaWiki\Api\ApiChangeContentModel\execute(), MediaWiki\Api\ApiDelete\execute(), MediaWiki\Api\ApiEditPage\execute(), MediaWiki\Api\ApiProtect\execute(), MediaWiki\Api\ApiSetPageLanguage\execute(), and MediaWiki\Api\ApiStashEdit\execute().

◆ getWatchlistUser()

MediaWiki\Api\ApiBase::getWatchlistUser ( $params)

Gets the user for whom to get the watchlist.

Parameters
array$params
Returns
User

Definition at line 1306 of file ApiBase.php.

References MediaWiki\MediaWikiServices\getInstance(), MediaWiki\Api\getUser(), and wfEscapeWikiText().

◆ getWebUITokenSalt()

MediaWiki\Api\ApiBase::getWebUITokenSalt ( array $params)
protected

Fetch the salt used in the Web UI corresponding to this module.

Only override this if the Web UI uses a token with a non-constant salt.

Since
1.24
Parameters
array$paramsAll supplied parameters for the module
Stability: stable
to override
Returns
string|array|null

Reimplemented in MediaWiki\Api\ApiLogout, and MediaWiki\Api\ApiUserrights.

Definition at line 525 of file ApiBase.php.

◆ handleParamNormalization()

MediaWiki\Api\ApiBase::handleParamNormalization ( $paramName,
$value,
$rawValue )

Handle when a parameter was Unicode-normalized.

Since
1.28
1.35 $paramName is prefixed
Access: internal
For overriding by subclasses and use by ApiParamValidatorCallbacks only.
Parameters
string$paramNamePrefixed parameter name
string$valueInput that will be used.
string$rawValueInput before normalization.

Reimplemented in MediaWiki\Api\ApiPageSet.

Definition at line 1258 of file ApiBase.php.

◆ isDeprecated()

MediaWiki\Api\ApiBase::isDeprecated ( )

Indicates whether this module is deprecated.

Since
1.25
Stability: stable
to override
Returns
bool

Reimplemented in MediaWiki\Api\ApiLogin, and MediaWiki\Api\ApiQueryDeletedrevs.

Definition at line 475 of file ApiBase.php.

◆ isInternal()

MediaWiki\Api\ApiBase::isInternal ( )

Indicates whether this module is considered to be "internal".

Internal API modules are not (yet) intended for 3rd party use and may be unstable.

Since
1.25
Stability: stable
to override
Returns
bool

Reimplemented in MediaWiki\Api\ApiCSPReport, and MediaWiki\Api\ApiStashEdit.

Definition at line 488 of file ApiBase.php.

◆ isMain()

MediaWiki\Api\ApiBase::isMain ( )

Returns true if this module is the main module ($this === $this->mMainModule), false otherwise.

Returns
bool

Definition at line 585 of file ApiBase.php.

Referenced by MediaWiki\Api\ApiBase\__construct(), MediaWiki\Api\ApiBase\getModulePath(), and MediaWiki\Api\ApiBase\getParent().

◆ isReadMode()

◆ isWriteMode()

MediaWiki\Api\ApiBase::isWriteMode ( )

Indicates whether this module requires write access to the wiki.

API modules must override this method to return true if the operation they will perform is not "safe" per RFC 7231 section 4.2.1. A module's operation is "safe" if it is essentially read-only, i.e. the client does not request nor expect any state change that would be observable in the responses to future requests.

Implementations of this method must always return the same value, regardless of the parameters passed to the constructor or system state.

Modules that do not require POST requests should only perform "safe" operations. Note that some modules might require POST requests because they need to support large input parameters and not because they perform non-"safe" operations.

The information provided by this method is used to perform authorization checks. It can also be used to enforce proper routing of supposedly "safe" POST requests to the closest datacenter via the Promise-Non-Write-API-Action header.

See also
mustBePosted()
needsToken()
Stability: stable
to override
Returns
bool

Reimplemented in MediaWiki\Api\ApiAcquireTempUserName, MediaWiki\Api\ApiAMCreateAccount, MediaWiki\Api\ApiBlock, MediaWiki\Api\ApiChangeAuthenticationData, MediaWiki\Api\ApiChangeContentModel, MediaWiki\Api\ApiClearHasMsg, MediaWiki\Api\ApiClientLogin, MediaWiki\Api\ApiDelete, MediaWiki\Api\ApiEditPage, MediaWiki\Api\ApiEmailUser, MediaWiki\Api\ApiFileRevert, MediaWiki\Api\ApiImageRotate, MediaWiki\Api\ApiImport, MediaWiki\Api\ApiLinkAccount, MediaWiki\Api\ApiLogin, MediaWiki\Api\ApiLogout, MediaWiki\Api\ApiManageTags, MediaWiki\Api\ApiMergeHistory, MediaWiki\Api\ApiMove, MediaWiki\Api\ApiOptionsBase, MediaWiki\Api\ApiPatrol, MediaWiki\Api\ApiProtect, MediaWiki\Api\ApiPurge, MediaWiki\Api\ApiQuery, MediaWiki\Api\ApiRemoveAuthenticationData, MediaWiki\Api\ApiResetPassword, MediaWiki\Api\ApiRevisionDelete, MediaWiki\Api\ApiRollback, MediaWiki\Api\ApiSetNotificationTimestamp, MediaWiki\Api\ApiSetPageLanguage, MediaWiki\Api\ApiStashEdit, MediaWiki\Api\ApiTag, MediaWiki\Api\ApiUnblock, MediaWiki\Api\ApiUndelete, MediaWiki\Api\ApiUpload, MediaWiki\Api\ApiUserrights, and MediaWiki\Api\ApiWatch.

Definition at line 451 of file ApiBase.php.

Referenced by MediaWiki\Api\ApiMain\setRequestExpectations().

◆ lacksSameOriginSecurity()

MediaWiki\Api\ApiBase::lacksSameOriginSecurity ( )

Returns true if the current request breaks the same-origin policy.

For example, json with callbacks.

https://en.wikipedia.org/wiki/Same-origin_policy

Since
1.25
Returns
bool

Reimplemented in MediaWiki\Api\ApiMain.

Definition at line 623 of file ApiBase.php.

References MediaWiki\Api\ApiBase\getMain().

Referenced by MediaWiki\Api\ApiLogin\execute(), MediaWiki\Api\ApiQueryDeletedrevs\execute(), and MediaWiki\Api\ApiQueryTokens\execute().

◆ logFeatureUsage()

MediaWiki\Api\ApiBase::logFeatureUsage ( $feature)

Write logging information for API features to a debug log, for usage analysis.

Note
Consider using $this->addDeprecation() instead to both warn and log.
Parameters
string$featureFeature being used.

Definition at line 1770 of file ApiBase.php.

References MediaWiki\Api\getRequest(), MediaWiki\Api\getUser(), wfDebugLog(), and wfUrlencode().

◆ makeMessage()

static MediaWiki\Api\ApiBase::makeMessage ( $msg,
IContextSource $context,
?array $params = null )
static

Create a Message from a string or array.

A string is used as a message key. An array has the message key as the first value and message parameters as subsequent values.

Since
1.25
Deprecated
since 1.43, use ApiBase::msg()
Parameters
string | array | Message$msg
IContextSource$context
array | null$params
Returns
Message|null

Definition at line 1346 of file ApiBase.php.

References wfDeprecated(), and wfMessage().

◆ modifyHelp()

MediaWiki\Api\ApiBase::modifyHelp ( array & $help,
array $options,
array & $tocData )

Called from ApiHelp before the pieces are joined together and returned.

This exists mainly for ApiMain to add the Permissions and Credits sections. Other modules probably don't need it.

Stability: stable
to override
Parameters
string[]&$helpArray of help data
array$optionsOptions passed to ApiHelp::getHelp
array&$tocDataIf a TOC is being generated, this array has keys as anchors in the page and values as for SectionMetadata::fromLegacy().

Reimplemented in MediaWiki\Api\ApiMain.

Definition at line 2184 of file ApiBase.php.

◆ mustBePosted()

◆ needsToken()

MediaWiki\Api\ApiBase::needsToken ( )

Returns the token type this module requires in order to execute.

Modules are strongly encouraged to use the core 'csrf' type unless they have specialized security needs. If the token type is not one of the core types, you must use the ApiQueryTokensRegisterTypes hook to register it.

Returning a non-falsey value here will force the addition of an appropriate 'token' parameter in self::getFinalParams(). Also, self::mustBePosted() must return true when tokens are used.

In previous versions of MediaWiki, true was a valid return value. Returning true will generate errors indicating that the API module needs updating.

Stability: stable
to override
Returns
string|false

Reimplemented in MediaWiki\Api\ApiAMCreateAccount, MediaWiki\Api\ApiBlock, MediaWiki\Api\ApiChangeAuthenticationData, MediaWiki\Api\ApiChangeContentModel, MediaWiki\Api\ApiClientLogin, MediaWiki\Api\ApiDelete, MediaWiki\Api\ApiEditPage, MediaWiki\Api\ApiEmailUser, MediaWiki\Api\ApiFileRevert, MediaWiki\Api\ApiImageRotate, MediaWiki\Api\ApiImport, MediaWiki\Api\ApiLinkAccount, MediaWiki\Api\ApiLogout, MediaWiki\Api\ApiManageTags, MediaWiki\Api\ApiMergeHistory, MediaWiki\Api\ApiMove, MediaWiki\Api\ApiOptionsBase, MediaWiki\Api\ApiPatrol, MediaWiki\Api\ApiProtect, MediaWiki\Api\ApiRemoveAuthenticationData, MediaWiki\Api\ApiResetPassword, MediaWiki\Api\ApiRevisionDelete, MediaWiki\Api\ApiRollback, MediaWiki\Api\ApiSetNotificationTimestamp, MediaWiki\Api\ApiSetPageLanguage, MediaWiki\Api\ApiStashEdit, MediaWiki\Api\ApiTag, MediaWiki\Api\ApiUnblock, MediaWiki\Api\ApiUndelete, MediaWiki\Api\ApiUpload, MediaWiki\Api\ApiUserrights, and MediaWiki\Api\ApiWatch.

Definition at line 511 of file ApiBase.php.

Referenced by MediaWiki\Api\ApiBase\mustBePosted().

◆ parseContinueParamOrDie()

MediaWiki\Api\ApiBase::parseContinueParamOrDie ( string $continue,
array $types )
protected

Parse the 'continue' parameter in the usual format and validate the types of each part, or die with the 'badcontinue' error if the format, types, or the number of parts is wrong.

Parameters
string$continueValue of 'continue' parameter obtained from extractRequestParams()
string[]$typesTypes of the expected parts in order, 'string', 'int' or 'timestamp'
Returns
mixed[] Array containing strings, integers or timestamps
Exceptions
ApiUsageException
Since
1.40

Definition at line 1707 of file ApiBase.php.

References MediaWiki\Api\getDB().

Referenced by MediaWiki\Api\ApiQueryBlocks\execute(), MediaWiki\Api\ApiQueryContributors\execute(), MediaWiki\Api\ApiQueryDeletedrevs\execute(), MediaWiki\Api\ApiQueryExternalLinks\execute(), MediaWiki\Api\ApiQueryFilearchive\execute(), MediaWiki\Api\ApiQueryImageInfo\execute(), MediaWiki\Api\ApiQueryInfo\execute(), MediaWiki\Api\ApiQueryIWLinks\execute(), MediaWiki\Api\ApiQueryLangLinks\execute(), MediaWiki\Api\ApiQueryLogEvents\execute(), MediaWiki\Api\ApiQueryMyStashedFiles\execute(), MediaWiki\Api\ApiQueryPagePropNames\execute(), MediaWiki\Api\ApiQueryPageProps\execute(), MediaWiki\Api\ApiQueryUserContribs\execute(), MediaWiki\Api\ApiQueryIWBacklinks\run(), MediaWiki\Api\ApiQueryLangBacklinks\run(), MediaWiki\Api\ApiQueryRandom\run(), MediaWiki\Api\ApiQueryRecentChanges\run(), MediaWiki\Api\ApiQueryAllDeletedRevisions\run(), MediaWiki\Api\ApiQueryAllRevisions\run(), MediaWiki\Api\ApiQueryDeletedRevisions\run(), and MediaWiki\Api\ApiQueryRevisions\run().

◆ requireAtLeastOneParameter()

MediaWiki\Api\ApiBase::requireAtLeastOneParameter ( $params,
$required )

Die if 0 of a certain set of parameters is set and not false.

Since
1.23
Parameters
array$paramsUser provided parameters set, as from $this->extractRequestParams()
string...$required Names of parameters of which at least one must be set

Definition at line 1036 of file ApiBase.php.

References MediaWiki\Message\Message\listParam().

Referenced by MediaWiki\Api\ApiAMCreateAccount\execute(), MediaWiki\Api\ApiClientLogin\execute(), MediaWiki\Api\ApiComparePages\execute(), MediaWiki\Api\ApiEditPage\execute(), MediaWiki\Api\ApiLinkAccount\execute(), MediaWiki\Api\ApiQueryStashImageInfo\execute(), and MediaWiki\Api\ApiTag\execute().

◆ requireMaxOneParameter()

◆ requireNoConflictingParameters()

MediaWiki\Api\ApiBase::requireNoConflictingParameters ( $params,
$trigger,
$conflicts )

Die with an "invalid param mix" error if the parameters contain the trigger parameter and any of the conflicting parameters.

Since
1.44
Parameters
array$paramsUser provided parameters set, as from $this->extractRequestParams()
string$triggerThe name of the trigger parameter
string | string[]$conflictsThe conflicting parameter or a list of conflicting parameters

Definition at line 1067 of file ApiBase.php.

References MediaWiki\Message\Message\listParam().

Referenced by MediaWiki\Api\ApiBlock\execute().

◆ requireOnlyOneParameter()

MediaWiki\Api\ApiBase::requireOnlyOneParameter ( $params,
$required )

Die if 0 or more than one of a certain set of parameters is set and not false.

Parameters
array$paramsUser provided parameter set, as from $this->extractRequestParams()
string...$required Names of parameters of which exactly one must be set

Definition at line 976 of file ApiBase.php.

References MediaWiki\Message\Message\listParam().

Referenced by MediaWiki\Api\ApiBlock\execute(), MediaWiki\Api\ApiMergeHistory\execute(), MediaWiki\Api\ApiMove\execute(), MediaWiki\Api\ApiPatrol\execute(), MediaWiki\Api\ApiQueryUserContribs\execute(), MediaWiki\Api\ApiStashEdit\execute(), and MediaWiki\Api\ApiUnblock\execute().

◆ requirePostedParameters()

MediaWiki\Api\ApiBase::requirePostedParameters ( $params,
$prefix = 'prefix' )

Die if any of the specified parameters were found in the query part of the URL rather than the HTTP post body contents.

Since
1.28
Parameters
string[]$paramsParameters to check
string$prefixSet to 'noprefix' to skip calling $this->encodeParamName()

Definition at line 1098 of file ApiBase.php.

References MediaWiki\MainConfigNames\DebugAPI, MediaWiki\Api\getRequest(), and wfDeprecatedMsg().

Referenced by MediaWiki\Api\ApiLogin\execute(), and MediaWiki\Api\ApiValidatePassword\execute().

◆ setContinuationManager()

MediaWiki\Api\ApiBase::setContinuationManager ( ?ApiContinuationManager $manager = null)

◆ shouldCheckMaxlag()

MediaWiki\Api\ApiBase::shouldCheckMaxlag ( )

Indicates if this module needs maxlag to be checked.

Stability: stable
to override
Returns
bool

Reimplemented in MediaWiki\Api\ApiHelp, and MediaWiki\Api\ApiQueryCodexIcons.

Definition at line 412 of file ApiBase.php.

◆ useTransactionalTimeLimit()

◆ validateToken()

MediaWiki\Api\ApiBase::validateToken ( $token,
array $params )
final

Validate the supplied token.

Since
1.24
Parameters
string$tokenSupplied token
array$paramsAll supplied parameters for the module
Returns
bool

Definition at line 1270 of file ApiBase.php.

References MediaWiki\Api\getRequest(), MediaWiki\Api\ApiQueryTokens\getToken(), MediaWiki\Api\ApiQueryTokens\getTokenTypeSalts(), and MediaWiki\Api\getUser().

Member Data Documentation

◆ ALL_DEFAULT_STRING

const MediaWiki\Api\ApiBase::ALL_DEFAULT_STRING = '*'

(string|array|Message) Specify an alternative i18n documentation message for this parameter.

Default is apihelp-{$path}-param-{$param}. See Message::newFromSpecifier() for a description of allowed values.

Since
1.25

Definition at line 243 of file ApiBase.php.

◆ GET_VALUES_FOR_HELP

const MediaWiki\Api\ApiBase::GET_VALUES_FOR_HELP = 1

getAllowedParams() flag: When this is set, the result could take longer to generate, but should be more thorough.

E.g. get the list of generators for ApiSandBox extension

Since
1.21

Definition at line 259 of file ApiBase.php.

Referenced by MediaWiki\Api\ApiQueryAllUsers\getAllowedParams(), MediaWiki\Api\ApiQueryContributors\getAllowedParams(), MediaWiki\Api\ApiQueryLogEvents\getAllowedParams(), and MediaWiki\Api\ApiUserrights\getAllowedParams().

◆ LIMIT_BIG1

const MediaWiki\Api\ApiBase::LIMIT_BIG1 = 500

Fast query, standard limit.

Definition at line 246 of file ApiBase.php.

Referenced by MediaWiki\Api\buildCommonApiParams(), MediaWiki\Api\ApiQueryDeletedrevs\execute(), MediaWiki\Api\ApiQueryAllUsers\getAllowedParams(), MediaWiki\Api\ApiQueryContributors\getAllowedParams(), MediaWiki\Api\ApiQueryLogEvents\getAllowedParams(), MediaWiki\Api\ApiQueryAllCategories\getAllowedParams(), MediaWiki\Api\ApiQueryAllImages\getAllowedParams(), MediaWiki\Api\ApiQueryAllPages\getAllowedParams(), MediaWiki\Api\ApiQueryBacklinksprop\getAllowedParams(), MediaWiki\Api\ApiQueryBlocks\getAllowedParams(), MediaWiki\Api\ApiQueryCategories\getAllowedParams(), MediaWiki\Api\ApiQueryCategoryMembers\getAllowedParams(), MediaWiki\Api\ApiQueryDeletedrevs\getAllowedParams(), MediaWiki\Api\ApiQueryDuplicateFiles\getAllowedParams(), MediaWiki\Api\ApiQueryExternalLinks\getAllowedParams(), MediaWiki\Api\ApiQueryExtLinksUsage\getAllowedParams(), MediaWiki\Api\ApiQueryFilearchive\getAllowedParams(), MediaWiki\Api\ApiQueryImageInfo\getAllowedParams(), MediaWiki\Api\ApiQueryImages\getAllowedParams(), MediaWiki\Api\ApiQueryIWBacklinks\getAllowedParams(), MediaWiki\Api\ApiQueryIWLinks\getAllowedParams(), MediaWiki\Api\ApiQueryLangBacklinks\getAllowedParams(), MediaWiki\Api\ApiQueryLangLinks\getAllowedParams(), MediaWiki\Api\ApiQueryLinks\getAllowedParams(), MediaWiki\Api\ApiQueryMyStashedFiles\getAllowedParams(), MediaWiki\Api\ApiQueryPagePropNames\getAllowedParams(), MediaWiki\Api\ApiQueryPagesWithProp\getAllowedParams(), MediaWiki\Api\ApiQueryProtectedTitles\getAllowedParams(), MediaWiki\Api\ApiQueryQueryPage\getAllowedParams(), MediaWiki\Api\ApiQueryRandom\getAllowedParams(), MediaWiki\Api\ApiQueryRecentChanges\getAllowedParams(), MediaWiki\Api\ApiQueryTags\getAllowedParams(), MediaWiki\Api\ApiQueryUserContribs\getAllowedParams(), MediaWiki\Api\ApiQueryWatchlist\getAllowedParams(), MediaWiki\Api\ApiQueryWatchlistRaw\getAllowedParams(), and MediaWiki\Api\ApiQueryRevisionsBase\parseParameters().

◆ LIMIT_BIG2

const MediaWiki\Api\ApiBase::LIMIT_BIG2 = 5000

Fast query, apihighlimits limit.

Definition at line 248 of file ApiBase.php.

Referenced by MediaWiki\Api\buildCommonApiParams(), MediaWiki\Api\ApiQueryDeletedrevs\execute(), MediaWiki\Api\ApiQueryAllUsers\getAllowedParams(), MediaWiki\Api\ApiQueryContributors\getAllowedParams(), MediaWiki\Api\ApiQueryLogEvents\getAllowedParams(), MediaWiki\Api\ApiQueryAllCategories\getAllowedParams(), MediaWiki\Api\ApiQueryAllImages\getAllowedParams(), MediaWiki\Api\ApiQueryAllPages\getAllowedParams(), MediaWiki\Api\ApiQueryBacklinksprop\getAllowedParams(), MediaWiki\Api\ApiQueryBlocks\getAllowedParams(), MediaWiki\Api\ApiQueryCategories\getAllowedParams(), MediaWiki\Api\ApiQueryCategoryMembers\getAllowedParams(), MediaWiki\Api\ApiQueryDeletedrevs\getAllowedParams(), MediaWiki\Api\ApiQueryDuplicateFiles\getAllowedParams(), MediaWiki\Api\ApiQueryExternalLinks\getAllowedParams(), MediaWiki\Api\ApiQueryExtLinksUsage\getAllowedParams(), MediaWiki\Api\ApiQueryFilearchive\getAllowedParams(), MediaWiki\Api\ApiQueryImageInfo\getAllowedParams(), MediaWiki\Api\ApiQueryImages\getAllowedParams(), MediaWiki\Api\ApiQueryIWBacklinks\getAllowedParams(), MediaWiki\Api\ApiQueryIWLinks\getAllowedParams(), MediaWiki\Api\ApiQueryLangBacklinks\getAllowedParams(), MediaWiki\Api\ApiQueryLangLinks\getAllowedParams(), MediaWiki\Api\ApiQueryLinks\getAllowedParams(), MediaWiki\Api\ApiQueryMyStashedFiles\getAllowedParams(), MediaWiki\Api\ApiQueryPagePropNames\getAllowedParams(), MediaWiki\Api\ApiQueryPagesWithProp\getAllowedParams(), MediaWiki\Api\ApiQueryProtectedTitles\getAllowedParams(), MediaWiki\Api\ApiQueryQueryPage\getAllowedParams(), MediaWiki\Api\ApiQueryRandom\getAllowedParams(), MediaWiki\Api\ApiQueryRecentChanges\getAllowedParams(), MediaWiki\Api\ApiQueryTags\getAllowedParams(), MediaWiki\Api\ApiQueryUserContribs\getAllowedParams(), MediaWiki\Api\ApiQueryWatchlist\getAllowedParams(), MediaWiki\Api\ApiQueryWatchlistRaw\getAllowedParams(), and MediaWiki\Api\ApiQueryRevisionsBase\parseParameters().

◆ LIMIT_SML1

◆ LIMIT_SML2

◆ PARAM_ALL

const MediaWiki\Api\ApiBase::PARAM_ALL = ParamValidator::PARAM_ALL
Deprecated
since 1.35, use ParamValidator::PARAM_ALL instead

Definition at line 135 of file ApiBase.php.

◆ PARAM_ALLOW_DUPLICATES

const MediaWiki\Api\ApiBase::PARAM_ALLOW_DUPLICATES = ParamValidator::PARAM_ALLOW_DUPLICATES
Deprecated
since 1.35, use ParamValidator::PARAM_ALLOW_DUPLICATES instead

Definition at line 115 of file ApiBase.php.

◆ PARAM_DEPRECATED

const MediaWiki\Api\ApiBase::PARAM_DEPRECATED = ParamValidator::PARAM_DEPRECATED
Deprecated
since 1.35, use ParamValidator::PARAM_DEPRECATED instead

Definition at line 119 of file ApiBase.php.

◆ PARAM_DEPRECATED_VALUES

const MediaWiki\Api\ApiBase::PARAM_DEPRECATED_VALUES = EnumDef::PARAM_DEPRECATED_VALUES
Deprecated
since 1.35, use EnumDef::PARAM_DEPRECATED_VALUES instead

Definition at line 147 of file ApiBase.php.

◆ PARAM_DFLT

const MediaWiki\Api\ApiBase::PARAM_DFLT = ParamValidator::PARAM_DEFAULT
Deprecated
since 1.35, use ParamValidator::PARAM_DEFAULT instead

Definition at line 91 of file ApiBase.php.

◆ PARAM_EXTRA_NAMESPACES

const MediaWiki\Api\ApiBase::PARAM_EXTRA_NAMESPACES = NamespaceDef::PARAM_EXTRA_NAMESPACES
Deprecated
since 1.35, use NamespaceDef::PARAM_EXTRA_NAMESPACES instead

Definition at line 139 of file ApiBase.php.

◆ PARAM_HELP_MSG

const MediaWiki\Api\ApiBase::PARAM_HELP_MSG = 'api-param-help-msg'

(string|array|Message) Specify an alternative i18n documentation message for this parameter.

Default is apihelp-{$path}-param-{$param}. See Message::newFromSpecifier() for a description of allowed values.

Since
1.25

Definition at line 181 of file ApiBase.php.

Referenced by MediaWiki\Api\buildCommonApiParams(), MediaWiki\Api\ApiFeedWatchlist\getAllowedParams(), MediaWiki\Api\ApiImageRotate\getAllowedParams(), MediaWiki\Api\ApiPurge\getAllowedParams(), MediaWiki\Api\ApiQuery\getAllowedParams(), MediaWiki\Api\ApiQueryAllUsers\getAllowedParams(), MediaWiki\Api\ApiQueryContributors\getAllowedParams(), MediaWiki\Api\ApiQueryLogEvents\getAllowedParams(), MediaWiki\Api\ApiSetNotificationTimestamp\getAllowedParams(), MediaWiki\Api\ApiWatch\getAllowedParams(), MediaWiki\Api\ApiFeedContributions\getAllowedParams(), MediaWiki\Api\ApiFeedRecentChanges\getAllowedParams(), MediaWiki\Api\ApiFormatBase\getAllowedParams(), MediaWiki\Api\ApiFormatJson\getAllowedParams(), MediaWiki\Api\ApiFormatPhp\getAllowedParams(), MediaWiki\Api\ApiFormatXml\getAllowedParams(), MediaWiki\Api\ApiLogin\getAllowedParams(), MediaWiki\Api\ApiQueryAllCategories\getAllowedParams(), MediaWiki\Api\ApiQueryAllDeletedRevisions\getAllowedParams(), MediaWiki\Api\ApiQueryAllImages\getAllowedParams(), MediaWiki\Api\ApiQueryAllPages\getAllowedParams(), MediaWiki\Api\ApiQueryAllRevisions\getAllowedParams(), MediaWiki\Api\ApiQueryBacklinksprop\getAllowedParams(), MediaWiki\Api\ApiQueryBlocks\getAllowedParams(), MediaWiki\Api\ApiQueryCategories\getAllowedParams(), MediaWiki\Api\ApiQueryCategoryInfo\getAllowedParams(), MediaWiki\Api\ApiQueryCategoryMembers\getAllowedParams(), MediaWiki\Api\ApiQueryDeletedRevisions\getAllowedParams(), MediaWiki\Api\ApiQueryDeletedrevs\getAllowedParams(), MediaWiki\Api\ApiQueryDuplicateFiles\getAllowedParams(), MediaWiki\Api\ApiQueryExternalLinks\getAllowedParams(), MediaWiki\Api\ApiQueryExtLinksUsage\getAllowedParams(), MediaWiki\Api\ApiQueryFilearchive\getAllowedParams(), MediaWiki\Api\ApiQueryImageInfo\getAllowedParams(), MediaWiki\Api\ApiQueryImages\getAllowedParams(), MediaWiki\Api\ApiQueryInfo\getAllowedParams(), MediaWiki\Api\ApiQueryIWBacklinks\getAllowedParams(), MediaWiki\Api\ApiQueryIWLinks\getAllowedParams(), MediaWiki\Api\ApiQueryLangBacklinks\getAllowedParams(), MediaWiki\Api\ApiQueryLangLinks\getAllowedParams(), MediaWiki\Api\ApiQueryLinks\getAllowedParams(), MediaWiki\Api\ApiQueryMyStashedFiles\getAllowedParams(), MediaWiki\Api\ApiQueryPagePropNames\getAllowedParams(), MediaWiki\Api\ApiQueryPageProps\getAllowedParams(), MediaWiki\Api\ApiQueryPagesWithProp\getAllowedParams(), MediaWiki\Api\ApiQueryProtectedTitles\getAllowedParams(), MediaWiki\Api\ApiQueryQueryPage\getAllowedParams(), MediaWiki\Api\ApiQueryRandom\getAllowedParams(), MediaWiki\Api\ApiQueryRecentChanges\getAllowedParams(), MediaWiki\Api\ApiQueryRevisions\getAllowedParams(), MediaWiki\Api\ApiQueryStashImageInfo\getAllowedParams(), MediaWiki\Api\ApiQueryTags\getAllowedParams(), MediaWiki\Api\ApiQueryUserContribs\getAllowedParams(), MediaWiki\Api\ApiQueryWatchlist\getAllowedParams(), MediaWiki\Api\ApiQueryWatchlistRaw\getAllowedParams(), and MediaWiki\Api\ApiAuthManagerHelper\getStandardParams().

◆ PARAM_HELP_MSG_APPEND

◆ PARAM_HELP_MSG_INFO

const MediaWiki\Api\ApiBase::PARAM_HELP_MSG_INFO = 'api-param-help-msg-info'

(array) Specify additional information tags for the parameter.

The value is an array of arrays, with the first member being the 'tag' for the info and the remaining members being the values. In the help, this is formatted using apihelp-{$path}-paraminfo-{$tag}, which is passed $1 = count, $2 = comma-joined list of values, $3 = module prefix.

Since
1.25

Definition at line 199 of file ApiBase.php.

Referenced by MediaWiki\Api\ApiQueryAllDeletedRevisions\getAllowedParams(), MediaWiki\Api\ApiQueryDeletedrevs\getAllowedParams(), MediaWiki\Api\ApiQueryInfo\getAllowedParams(), and MediaWiki\Api\ApiQueryRevisions\getAllowedParams().

◆ PARAM_HELP_MSG_PER_VALUE

const MediaWiki\Api\ApiBase::PARAM_HELP_MSG_PER_VALUE = 'api-param-help-msg-per-value'

((string|array|Message)[]) When PARAM_TYPE is an array, or 'string' with PARAM_ISMULTI, this is an array mapping parameter values to help messages.

See Message::newFromSpecifier() for a description of allowed values.

When PARAM_TYPE is an array, any value not having a mapping will use the apihelp-{$path}-paramvalue-{$param}-{$value} message. (This means you can use an empty array to use the default message key for all values.)

Since
1.25
Note
Use with PARAM_TYPE = 'string' is allowed since 1.40.

Definition at line 221 of file ApiBase.php.

Referenced by MediaWiki\Api\ApiFeedWatchlist\getAllowedParams(), MediaWiki\Api\ApiQueryAllUsers\getAllowedParams(), MediaWiki\Api\ApiQueryLogEvents\getAllowedParams(), MediaWiki\Api\ApiComparePages\getAllowedParams(), MediaWiki\Api\ApiExpandTemplates\getAllowedParams(), MediaWiki\Api\ApiFormatJson\getAllowedParams(), MediaWiki\Api\ApiFormatPhp\getAllowedParams(), MediaWiki\Api\ApiMain\getAllowedParams(), MediaWiki\Api\ApiManageTags\getAllowedParams(), MediaWiki\Api\ApiOpenSearch\getAllowedParams(), MediaWiki\Api\ApiQueryAllCategories\getAllowedParams(), MediaWiki\Api\ApiQueryAllDeletedRevisions\getAllowedParams(), MediaWiki\Api\ApiQueryAllImages\getAllowedParams(), MediaWiki\Api\ApiQueryAllPages\getAllowedParams(), MediaWiki\Api\ApiQueryAllRevisions\getAllowedParams(), MediaWiki\Api\ApiQueryBacklinksprop\getAllowedParams(), MediaWiki\Api\ApiQueryBlocks\getAllowedParams(), MediaWiki\Api\ApiQueryCategories\getAllowedParams(), MediaWiki\Api\ApiQueryCategoryMembers\getAllowedParams(), MediaWiki\Api\ApiQueryDeletedRevisions\getAllowedParams(), MediaWiki\Api\ApiQueryDeletedrevs\getAllowedParams(), MediaWiki\Api\ApiQueryExtLinksUsage\getAllowedParams(), MediaWiki\Api\ApiQueryFilearchive\getAllowedParams(), MediaWiki\Api\ApiQueryFileRepoInfo\getAllowedParams(), MediaWiki\Api\ApiQueryImageInfo\getAllowedParams(), MediaWiki\Api\ApiQueryInfo\getAllowedParams(), MediaWiki\Api\ApiQueryIWBacklinks\getAllowedParams(), MediaWiki\Api\ApiQueryIWLinks\getAllowedParams(), MediaWiki\Api\ApiQueryLangBacklinks\getAllowedParams(), MediaWiki\Api\ApiQueryLangLinks\getAllowedParams(), MediaWiki\Api\ApiQueryMyStashedFiles\getAllowedParams(), MediaWiki\Api\ApiQueryPagesWithProp\getAllowedParams(), MediaWiki\Api\ApiQueryProtectedTitles\getAllowedParams(), MediaWiki\Api\ApiQueryRecentChanges\getAllowedParams(), MediaWiki\Api\ApiQueryRevisions\getAllowedParams(), MediaWiki\Api\ApiQuerySearch\getAllowedParams(), MediaWiki\Api\ApiQuerySiteinfo\getAllowedParams(), MediaWiki\Api\ApiQueryStashImageInfo\getAllowedParams(), MediaWiki\Api\ApiQueryTags\getAllowedParams(), MediaWiki\Api\ApiQueryUserContribs\getAllowedParams(), MediaWiki\Api\ApiQueryUserInfo\getAllowedParams(), MediaWiki\Api\ApiQueryUsers\getAllowedParams(), MediaWiki\Api\ApiQueryWatchlist\getAllowedParams(), and MediaWiki\Api\ApiQueryWatchlistRaw\getAllowedParams().

◆ PARAM_ISMULTI

const MediaWiki\Api\ApiBase::PARAM_ISMULTI = ParamValidator::PARAM_ISMULTI
Deprecated
since 1.35, use ParamValidator::PARAM_ISMULTI instead

Definition at line 95 of file ApiBase.php.

◆ PARAM_ISMULTI_LIMIT1

const MediaWiki\Api\ApiBase::PARAM_ISMULTI_LIMIT1 = ParamValidator::PARAM_ISMULTI_LIMIT1
Deprecated
since 1.35, use ParamValidator::PARAM_ISMULTI_LIMIT1 instead

Definition at line 151 of file ApiBase.php.

◆ PARAM_ISMULTI_LIMIT2

const MediaWiki\Api\ApiBase::PARAM_ISMULTI_LIMIT2 = ParamValidator::PARAM_ISMULTI_LIMIT2
Deprecated
since 1.35, use ParamValidator::PARAM_ISMULTI_LIMIT2 instead

Definition at line 155 of file ApiBase.php.

◆ PARAM_MAX

const MediaWiki\Api\ApiBase::PARAM_MAX = IntegerDef::PARAM_MAX
Deprecated
since 1.35, use IntegerDef::PARAM_MAX instead

Definition at line 103 of file ApiBase.php.

◆ PARAM_MAX2

const MediaWiki\Api\ApiBase::PARAM_MAX2 = IntegerDef::PARAM_MAX2
Deprecated
since 1.35, use IntegerDef::PARAM_MAX2 instead

Definition at line 107 of file ApiBase.php.

◆ PARAM_MAX_BYTES

const MediaWiki\Api\ApiBase::PARAM_MAX_BYTES = StringDef::PARAM_MAX_BYTES
Deprecated
since 1.35, use StringDef::PARAM_MAX_BYTES instead

Definition at line 159 of file ApiBase.php.

◆ PARAM_MAX_CHARS

const MediaWiki\Api\ApiBase::PARAM_MAX_CHARS = StringDef::PARAM_MAX_CHARS
Deprecated
since 1.35, use StringDef::PARAM_MAX_CHARS instead

Definition at line 163 of file ApiBase.php.

◆ PARAM_MIN

const MediaWiki\Api\ApiBase::PARAM_MIN = IntegerDef::PARAM_MIN
Deprecated
since 1.35, use IntegerDef::PARAM_MIN instead

Definition at line 111 of file ApiBase.php.

◆ PARAM_RANGE_ENFORCE

const MediaWiki\Api\ApiBase::PARAM_RANGE_ENFORCE = 'api-param-range-enforce'

(boolean) Inverse of IntegerDef::PARAM_IGNORE_RANGE

Deprecated
since 1.35

Definition at line 170 of file ApiBase.php.

Referenced by MediaWiki\Api\ApiEditPage\getAllowedParams().

◆ PARAM_REQUIRED

const MediaWiki\Api\ApiBase::PARAM_REQUIRED = ParamValidator::PARAM_REQUIRED
Deprecated
since 1.35, use ParamValidator::PARAM_REQUIRED instead

Definition at line 123 of file ApiBase.php.

◆ PARAM_SENSITIVE

const MediaWiki\Api\ApiBase::PARAM_SENSITIVE = ParamValidator::PARAM_SENSITIVE
Deprecated
since 1.35, use ParamValidator::PARAM_SENSITIVE instead

Definition at line 143 of file ApiBase.php.

◆ PARAM_SUBMODULE_MAP

const MediaWiki\Api\ApiBase::PARAM_SUBMODULE_MAP = SubmoduleDef::PARAM_SUBMODULE_MAP
Deprecated
since 1.35, use SubmoduleDef::PARAM_SUBMODULE_MAP instead

Definition at line 127 of file ApiBase.php.

◆ PARAM_SUBMODULE_PARAM_PREFIX

const MediaWiki\Api\ApiBase::PARAM_SUBMODULE_PARAM_PREFIX = SubmoduleDef::PARAM_SUBMODULE_PARAM_PREFIX
Deprecated
since 1.35, use SubmoduleDef::PARAM_SUBMODULE_PARAM_PREFIX instead

Definition at line 131 of file ApiBase.php.

◆ PARAM_TEMPLATE_VARS

const MediaWiki\Api\ApiBase::PARAM_TEMPLATE_VARS = 'param-template-vars'

(array) Indicate that this is a templated parameter, and specify replacements.

Keys are the placeholders in the parameter name and values are the names of (unprefixed) parameters from which the replacement values are taken.

For example, a parameter "foo-{ns}-{title}" could be defined with PARAM_TEMPLATE_VARS => [ 'ns' => 'namespaces', 'title' => 'titles' ]. Then a query for namespaces=0|1&titles=X|Y would support parameters foo-0-X, foo-0-Y, foo-1-X, and foo-1-Y.

All placeholders must be present in the parameter's name. Each target parameter must have PARAM_ISMULTI true. If a target is itself a templated parameter, its PARAM_TEMPLATE_VARS must be a subset of the referring parameter's, mapping the same placeholders to the same targets. A parameter cannot target itself.

Since
1.32

Definition at line 239 of file ApiBase.php.

Referenced by MediaWiki\Api\ApiComparePages\getAllowedParams().

◆ PARAM_TYPE

const MediaWiki\Api\ApiBase::PARAM_TYPE = ParamValidator::PARAM_TYPE
Deprecated
since 1.35, use ParamValidator::PARAM_TYPE instead

Definition at line 99 of file ApiBase.php.

◆ PARAM_VALUE_LINKS

const MediaWiki\Api\ApiBase::PARAM_VALUE_LINKS = 'api-param-value-links'

Deprecated and unused.

Since
1.25
Deprecated
since 1.35

Definition at line 206 of file ApiBase.php.


The documentation for this class was generated from the following file: