ga4-events-editlisted
Install: claude install-skill arcbaslow/google-analytics-agent
# GA4: Edit Events
EventCreateRule and EventEditRule live **per data stream**, not per property,
so every command needs both `--property` and `--stream`.
Scope required: `analytics.edit`. If the user is on read-only auth, instruct
them to run:
```
gcloud auth application-default login --scopes=https://www.googleapis.com/auth/analytics.edit,https://www.googleapis.com/auth/cloud-platform
```
## Process
1. Verify auth: `python scripts/ga4_auth.py --check`
2. If the user does not pass `--stream`, list streams with
`python scripts/ga4_admin.py --property <id> --streams --json` and ask them
to pick.
3. For diagnostic-driven proposals, spawn the `ga4-events-editor` agent.
4. Print the resolved rule JSON to the user and ask `y/n` before any write.
5. Run the script.
## Direct commands
| Intent | Command |
|--------|---------|
| List rules on a stream | `python scripts/ga4_admin.py --property X --stream Y --list-event-rules --json` |
| Add an edit rule | `python scripts/ga4_admin.py --property X --stream Y --add-edit-rule rule.json --json` |
| Add a create rule | `python scripts/ga4_admin.py --property X --stream Y --add-create-rule rule.json --json` |
| Delete an edit rule | `python scripts/ga4_admin.py --rule-name <full> --delete-edit-rule --json` |
| Delete a create rule | `python scripts/ga4_admin.py --rule-name <full> --delete-create-rule --json` |
## Rule JSON shapes
`EventEditRule` (rewrite an existing event):
```json
{
"display_name": "Normalize signup events