Jump to content

Manual:ApiBase.php

From mediawiki.org

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.

See also

[edit]