API:Query/uk

Модуль  дозволяє отримувати інформацію про вікі та дані, що зберігаються в ній, наприклад, вікітекст певної сторінки, посилання та категорії набору сторінок або маркер, необхідний для.

Модулі запитів
Модуль запиту (query module) має три типи підмодулів (їх також називають модулями запитів):


 * про вікі та зареєстрованого користувача.
 * сторінок, включаючи версії та вміст сторінок.
 * сторінок, які відповідають певним критеріям.

Приклад 1: Вказання ​​сторінок
На відміну від модулів запитів метаінформації та списку, усі модулі запитів властивостей працюють на наборі сторінок, які можна вказати одним із таких способів:


 * За назвою, використовуючи параметр, наприклад.
 * За ідентифікатором сторінки з використанням параметра, напр..
 * За ідентифікатором версії за допомогою параметра, напр.   . Більшість модулів запитів перетворюють ідентифікатор версії у відповідний ідентифікатор сторінки. Тільки  насправді використовує сам ідентифікатор версії.
 * Використовуючи генератор.

Приклад 2: Нормалізація назви
Нормалізація перетворює назви сторінок у їхню канонічну форму.

Це означає використання великих літер першим символом, заміну підкреслень пробілами та зміну простору назв на локалізовану форму, визначену для цієї вікі.

Приклад 3: Відсутні та недопустимі назви
Назви, які не існують або є недійсними, матимуть у відповіді атрибут  або.

У вихідних форматах, які підтримують числові ключі масивів, відсутні та недійсні заголовки матимуть від’ємні ідентифікатори сторінок.

Приклад 4: Запити з продовженням
Коли не всі дані повертаються у відповідь на запит, з'явиться атрибут, який вказує на те, що даних є більше.

Щоб отримати додаткові дані, додайте його значення до початкового запиту.

Example 5: Batchcomplete
The API returns a  element to indicate that all data for the current batch of items has been returned.

In the response of the sample query below,  has been included to indicate that all the data for each of the three images has been returned.

The next continuation will begin returning data for the next set of 3 images.

Example 6: Generators
Use generators if you want to get data about a set of pages.

For example, to get data about pages in a certain category, instead of querying  and then querying again with   set to all the returned pages, combine the two API calls into one by using.

When using a list module as a generator, you don't need to specify the pages.

However, for a property module, you should specify the pages which the generator will work on.

For example, to load all pages that are linked to from the main page, use.

Parameters passed to a generator must be prefixed with a. For instance, when using, use   instead of.

The sample query below gets links and categories for the first three pages in the main namespace starting with "Ba".

Parameter history

 * v1.21: Introduced
 * v1.24: Introduced  (note raw continuation was the default behavior until v1.26)

Additional notes

 * Specifying titles through  or   is limited to 50 titles per query, or 500 for those with the   right.
 * Use multiple query modules together to get what you need in one request, e.g..
 * Generators only pass page titles to the query module and do not output any information themselves. Setting parameters like  will therefore have no effect.

Resolving redirects
Redirects can be resolved automatically, so that the target of a redirect is returned instead of the given title. When present, they will always contain  and   attributes and may contain a   attribute for those redirects that point to specific sections.

Both normalization and redirection may take place. In the case of multiple redirects, all redirects will be resolved, and in case of a circular redirect, there might not be a page in the 'pages' section (see also below). Redirect resolution cannot be used in combination with the  parameter or with a generator generating revids; doing that will produce a warning and will not resolve redirects for the specified revids.

The examples below show how the  parameter works.