Resources
A resource is one managed marketing-platform object. You address it logically; Agoraform stores the provider-native ID in local state.
Address
Section titled “Address”provider.type.nameExamples:
matomo.goal.trial_startedmatomo.variable.user_idgoogleads.conversion_action.trial_started
Supported types in v0.3.0
Section titled “Supported types in v0.3.0”| Type | Introduced | Role |
|---|---|---|
matomo.goal | v0.1.0 | Matomo analytics goal |
matomo.variable | v0.2.0 | Tag Manager Data Layer variable |
matomo.trigger | v0.2.0 | Tag Manager Custom Event trigger |
matomo.tag | v0.2.0 | Matomo Analytics event tag |
googleads.conversion_action | v0.3.0 | Website conversion action |
googleads.customer_conversion_goal | v0.3.0 | Account-default website conversion-goal biddability |
Other resource types are not implemented in this release. Unsupported remote objects fail import with guidance instead of producing a lossy manifest.
Dependencies
Section titled “Dependencies”When one resource must exist before another, use $ref. Agoraform plans and applies prerequisites first.
Provider-native IDs stay in agoraform.state.json. Do not put Matomo idGoal / idvariable values or Google Ads resource names in YAML.
Identity and naming
Section titled “Identity and naming”Once local state binds a Matomo goal, name is immutable. Managed Matomo Tag Manager type fields are similarly immutable after import or create. Renaming a bound resource is not a supported way to retarget a different remote object; plan reads the exact bound identity.
See Matomo and Google Ads for attribute schemas.