How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Matomo TagManager API

The Matomo TagManager API exposes 47 operations of the Matomo Reporting API (module `TagManager`). Matomo Tag Manager — containers, versions, tags, triggers and variables, plus embed codes, preview mode and container import/export. Every operation is dispatched through the single `/index.php?module=API&method=TagManager.` entrypoint on the customer's own Matomo instance, self-hosted or on Matomo Cloud. The OpenAPI 3.1.0 document is Matomo's own, generated by its first-party ApiReference plugin.

Matomo TagManager API is one of 61 APIs that Matomo publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Analytics, Tag Management, Containers, and Triggers. The published artifact set on APIs.io includes an OpenAPI specification and API documentation.

This API exposes 47 operations across 47 paths, and defines 4 schemas. It is described by OpenAPI 3.1.0, at version 1.0.0.

Requests are made against a single base URL, https://demo-proxy.innocraft.cloud/.

47 operations 47 paths 4 schemas 47 GET

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.1.0
API Version
1.0.0
Base URL
https://{matomo_host}/index.php
Authentication
HTTP Bearer
Resource Areas
1

Authentication & Security 1

Matomo TagManager API declares 1 security scheme for authenticating requests. It accepts HTTP bearer tokens (MatomoToken). By default, every request must be authenticated.

  • MatomoToken — Paste your token generated from Personal Security. Swagger will send it as a Bearer token.

Paths & Operations 47

Across 47 paths, the API surfaces 47 operations — 47 GET. Each is listed below with its method, path, parameters, and response codes.

TagManager 47

Exposes the Tag Manager API for managing containers, versions, tags, triggers, and variables. The endpoints also provide installation metadata, publishing workflows, preview contr…

GET
/index.php?module=API&method=TagManager.getAvailableContexts
Returns the contexts that currently expose at least one tag type.
TagManager.getAvailableContexts 1 param → 200400401403404500default
GET
/index.php?module=API&method=TagManager.getAvailableEnvironments
Returns the environments that can receive container releases.
TagManager.getAvailableEnvironments 1 param → 200400401403404500default
GET
/index.php?module=API&method=TagManager.getAvailableEnvironmentsWithPublishCapability
Returns the environments the current user can publish to for a site.
TagManager.getAvailableEnvironmentsWithPublishCapability 2 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.getAvailableTagFireLimits
Returns the supported fire limit options for tags.
TagManager.getAvailableTagFireLimits 1 param → 200400401403404500default
GET
/index.php?module=API&method=TagManager.getAvailableComparisons
Returns the comparison operators available for trigger conditions and variable lookup tables.
TagManager.getAvailableComparisons 1 param → 200400401403404500default
GET
/index.php?module=API&method=TagManager.getAvailableTagTypesInContext
Returns the tag templates that support the requested context.
TagManager.getAvailableTagTypesInContext 2 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.getAvailableTriggerTypesInContext
Returns the trigger templates that support the requested context.
TagManager.getAvailableTriggerTypesInContext 2 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.getAvailableVariableTypesInContext
Returns the manually creatable variable templates that support the requested context.
TagManager.getAvailableVariableTypesInContext 2 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.getContainerEmbedCode
Returns the embed code for loading a container release on a website.
TagManager.getContainerEmbedCode 4 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.getContainerInstallInstructions
Returns installation instructions for embedding a container release.
TagManager.getContainerInstallInstructions 5 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.getContainerTags
Returns all configured tags in a container version.
TagManager.getContainerTags 4 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.createDefaultContainerForSite
Creates a default web container for a site with the standard Matomo tracking setup.
TagManager.createDefaultContainerForSite 2 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.addContainerTag
Creates a tag in the requested container version.
TagManager.addContainerTag 16 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.updateContainerTag
Updates a tag in the requested container version.
TagManager.updateContainerTag 15 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.deleteContainerTag
Deletes a tag from a container version.
TagManager.deleteContainerTag 5 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.pauseContainerTag
Pauses a tag in a container version.
TagManager.pauseContainerTag 5 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.resumeContainerTag
Resumes a paused tag in a container version.
TagManager.resumeContainerTag 5 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.getContainerTag
Returns the configuration for a specific tag.
TagManager.getContainerTag 5 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.getContainerTriggerReferences
Returns the places where a trigger is referenced in a container version.
TagManager.getContainerTriggerReferences 5 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.getContainerTriggers
Returns all configured triggers in a container version.
TagManager.getContainerTriggers 4 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.addContainerTrigger
Creates a trigger in the requested container version.
TagManager.addContainerTrigger 9 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.updateContainerTrigger
Updates a trigger in the requested container version.
TagManager.updateContainerTrigger 9 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.deleteContainerTrigger
Deletes a trigger from a container version.
TagManager.deleteContainerTrigger 5 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.getContainerTrigger
Returns the configuration for a specific trigger.
TagManager.getContainerTrigger 5 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.getContainerVariableReferences
Returns the places where a variable is referenced in a container version.
TagManager.getContainerVariableReferences 5 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.getContainerVariables
Returns the manually configured variables in a container version.
TagManager.getContainerVariables 4 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.getAvailableContainerVariables
Returns the manual and preconfigured variables available in a container version.
TagManager.getAvailableContainerVariables 4 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.addContainerVariable
Creates a variable in the requested container version.
TagManager.addContainerVariable 10 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.updateContainerVariable
Updates a variable in the requested container version.
TagManager.updateContainerVariable 10 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.deleteContainerVariable
Deletes a variable from a container version.
TagManager.deleteContainerVariable 5 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.getContainerVariable
Returns the configuration for a specific variable.
TagManager.getContainerVariable 5 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.getContainers
Get a list of all available containers within a site.
TagManager.getContainers 2 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.addContainer
Create a new container within the given site.
TagManager.addContainer 8 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.updateContainer
Updates the given container and its settings.
TagManager.updateContainer 8 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.createContainerVersion
Creates a new version from either the current draft version or the given container version.
TagManager.createContainerVersion 6 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.updateContainerVersion
Updates a container version.
TagManager.updateContainerVersion 6 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.getContainerVersions
Get a list of all versions that exist for the given container.
TagManager.getContainerVersions 3 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.getContainerVersion
Get details about a specific container version.
TagManager.getContainerVersion 4 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.deleteContainerVersion
Delete a specific container version.
TagManager.deleteContainerVersion 4 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.publishContainerVersion
Publish (release) a container version to the given environment.
TagManager.publishContainerVersion 5 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.deleteContainer
Deletes a container including all versions, releases, etc.
TagManager.deleteContainer 3 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.getContainer
Get details about a specific container including existing versions, releases, the ID of the draft version, etc.
TagManager.getContainer 3 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.enablePreviewMode
Enables the preview/debug mode for the given container. The preview mode will be enabled for all environments a container has releases for. To enable the preview mode for a specific version instead o…
TagManager.enablePreviewMode 4 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.disablePreviewMode
Disables the preview/debug mode for the given container.
TagManager.disablePreviewMode 4 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.changeDebugUrl
Updates the debug siteurl cookie
TagManager.changeDebugUrl 3 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.exportContainerVersion
Exports a container version including all details such as the configured tags, triggers, and variables within this version. You can use this export to import it into a different container version for…
TagManager.exportContainerVersion 4 params → 200400401403404500default
GET
/index.php?module=API&method=TagManager.importContainerVersion
Import all tags, triggers, and variables from the given import. Please note that this will delete / remove the all current tags, triggers, and variables from the current draft version and then import…
TagManager.importContainerVersion 6 params → 200400401403404500default

Schemas 4

The contract defines 4 schemas that model the data the API accepts and returns. The most detailed are Error (3 properties), GenericSuccess (3 properties), ErrorXml (1 property), GenericSuccessXml (1 property). Each schema is shown below with its type and property counts.

GenericSuccess
object
Generic Matomo success payload.
3 properties 2 required
GenericSuccessXml
object
Generic Matomo success payload in XML.
1 property 1 required
Error
object
Generic Matomo error payload.
3 properties 2 required
ErrorXml
object
Generic Matomo error payload in XML.
1 property

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

matomo-tag-manager-openapi.json Raw ↑

Other APIs Matomo publishes across the network.

Matomo Live API
Matomo Goals API
Matomo Segments API
Matomo Reporting API (index.php entrypoint)
Matomo Tracking API (matomo.php entrypoint)
Matomo SitesManager API
Matomo UsersManager API
Matomo CrashAnalytics API
Matomo HeatmapSessionRecording API
Matomo FormAnalytics API
Matomo Referrers API
Matomo Funnels API
Where this information came from

This is an independent, third-party profile of Matomo TagManager API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.