Manual:ApiBase.php
This page is outdated. |
MediaWiki file: ApiBase.php | |
---|---|
Location: | includes/api/ |
Source code: | master • 1.42.3 • 1.41.4 • 1.39.10 |
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
[edit]getAllowedParams()
[edit]Specify 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()
[edit]TODO: Describe what these do
getResult()
[edit]Gets the API result (see Manual:ApiResult.php ).
Hooks
[edit]Hooks called from this file are listed in the Category:MediaWiki hooks included in ApiBase.php category.