Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Annotations/AnnotationGenerator.php
Original file line number Diff line number Diff line change
Expand Up @@ -933,7 +933,7 @@ protected function getApplicableDemoExampleUrls(string $pluginName, string $meth
];

// Don't build example URLs for anything that isn't the R in CRUD. E.g. No create, update, or delete.
$notAllowedExampleUrlOperations = ['create', 'add', 'save', 'set', 'update', 'delete', 'remove', 'copy', 'duplicate'];
$notAllowedExampleUrlOperations = ['create', 'add', 'save', 'set', 'update', 'delete', 'remove', 'copy', 'duplicate', 'generate'];
foreach ($notAllowedExampleUrlOperations as $operation) {
if (stripos($methodName, $operation) === 0) {
return [];
Expand Down
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
## Changelog
5.0.1 - 25/05/2026
- Added fix for endpoints that don't return valid API responses

5.0.0
- Initial release of ApiReference plugin
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,13 @@

## Description

The API Reference plugin generates an OpenAPI (Swagger) specification from Matomo API definitions and supported plugin metadata.

As APIs and plugins expose additional metadata, developers can browse available API endpoints, explore request parameters and response formats, and test API requests directly from the documentation interface.

### Features include:

* Interactive Swagger/OpenAPI-based API documentation
* Searchable API methods and endpoints
* Request and response schema documentation
* Parameter descriptions and example requests
* Improved navigation and API discoverability
Expand Down
39 changes: 39 additions & 0 deletions docs/faq.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
## Why is the OpenAPI specification file not generated?

This can happen if the API Reference plugin is disabled, the Matomo cache has not been cleared, or the API specification generation process encountered an error.

Try the following:

- Ensure the API Reference plugin is installed and activated.
- Clear the Matomo cache.
- Check your server logs for PHP or permission errors.
- Verify that the Matomo instance can write generated files to the configured directory.
- Ensure all required plugins and dependencies are enabled.

The specification files are generated daily using a scheduled Matomo task. To check when this task is scheduled to run next, use the TasksTimetable plugin.

You can manually generate the specification files using the following command:


The initial generation process may take some time to complete, depending on the number of installed plugins.


```bash
core:run-scheduled-tasks "Piwik\Plugins\ApiReference\Tasks.generateConfiguredPluginSpecs"
```

## Can I still see the legacy API reference page?

Yes. The legacy API reference remains available for compatibility and migration purposes while transitioning to the new API documentation.

## Why do some request or response schemas appear incomplete?

The API Reference plugin generates request and response examples using data available in your Matomo instance. As a result, some response examples may appear incomplete if there is limited or no matching data available for a specific API request.

Not all API methods include response examples. Response examples are primarily generated for API methods that retrieve data from Matomo.

## Does the API Reference plugin replace existing Matomo APIs?

No. The plugin modernises the API documentation experience while remaining compatible with existing Matomo APIs and integrations.

Existing API endpoints and integrations continue to function normally.
4 changes: 2 additions & 2 deletions plugin.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "ApiReference",
"description": "Generate and view API documentation for Matomo in the OpenAPI format.",
"version": "5.0.0",
"description": "Modern interactive API documentation for Matomo based on OpenAPI (Swagger). Explore endpoints, parameters, and responses directly in your browser. ",
"version": "5.0.1",
"theme": false,
"keywords": [
"API",
Expand Down
Loading