Manual:ApiBase.php
This page is outdated. |
MediaWiki file: ApiBase.php | |
---|---|
Location: | includes/api/ |
Source code: | master • 1.43.0 • 1.42.4 • 1.39.11 |
Classes: | ApiBase |
The ApiBase
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. - Profiling: various methods to allow keeping tabs on various tasks and their time costs
- Self-documentation: code to allow the API to document its own state
Functions
editgetAllowedParams()
editSpecify which parameters are allowed and what requirements are to be imposed on them. See the documentation at the top of includes/api/ApiBase.php for the constants PARAM_DFLT, PARAM_ISMULTI, PARAM_TYPE, PARAM_MAX, PARAM_MAX2, PARAM_MIN, PARAM_ALLOW_DUPLICATES, PARAM_DEPRECATED, PARAM_REQUIRED, and PARAM_RANGE_ENFORCE. The possible types of parameters are NULL, string, integer, limit, boolean, timestamp, user, or upload. A "user" parameter is a username that is validated using Title::makeTitleSafe()
. For boolean parameters, a default value of anything other than 'false' is not allowed.
Example:
// Title parameter.
public function getAllowedParams() {
return array(
'title' => array (
ApiBase::PARAM_TYPE => 'string',
ApiBase::PARAM_REQUIRED => true
),
);
}
getResultProperties() and getFinalResultProperties()
editTODO: Describe what these do
getResult()
editGets the API result (see Manual:ApiResult.php ).
Hooks
editHooks called from this file are listed in the Category:MediaWiki hooks included in ApiBase.php category.