fastmon Docs
Analytics

Change the name or props of one event

Report an issue

Change the name or the props of one event, for a wrong name or a wrong value.

event_id comes from a row of POST /analytics/events or a visitor's events. The time, the visitor, the pageview and the source stay as they were: they are facts of the visit. The event list shows the change at once, every other reader within its 30 s cache, the live summary's week-old day within an hour. Needs site:write and analytics:read, so owners and members may, viewers may not. Each edit is an event.updated entry in the audit log.

Authorization

bearerAuth
headerAuthorizationBearer <fm_… / fmo_…>

API token generated from the fastmon dashboard (Account → API Token) or at organization level (fmo_…, one that outlives its creator). Send as Authorization: Bearer fm_... or paste the full token (including its prefix) into the Authorize dialog.

Path Parameters

event_id*Event Id
Formatuuid
site_id*Site Id
Formatuuid

Request Body

application/json
  1. body

What an edit of one event changes. A field left out stays as it is.

name?|

The new name, lowercased and checked as the collector checks it

props?|

The new props, replacing the old ones whole. Flattened, capped and checked as the collector does: a key the collector would drop, such as email, is a 422 here. {} removes every prop

Response Body

Successful Response

application/json
  1. response

One event row, in the wire shapes /analytics/beacons already uses.

event_id*Event Id

Opaque id of this event within its site. Pass it with site_id to PATCH or DELETE /sites/{site_id}/events/{event_id}. An edit keeps it

Formatuuid
timestamp*Timestamp

When the event happened, millisecond precision

Formatdate-time
name*Name

The event's name as the sender chose it, lowercased, matching ^[a-z0-9_.-]{1,48}$. view_cart, begin_checkout, add_payment_info and order_placed are the checkout vocabulary and reach their stage whoever sent them. purchase, GA4's name, reaches success as well. Any other name is the shop's own, ...

stage?EventStage

The funnel stage this event's name reaches. Absent for a name outside the checkout vocabulary and for add_payment_info, which is no stage: a visitor who submitted payment and shows no order_placed most likely paid through a wallet whose completion Shopify does not report.

Value in"cart""checkout""success"
source*Source

Who sent the event: shopify_pixel for the Shopify checkout pixel, collector for the stage event derived from a checkout pageview, tracker for an event a page sent on purpose, through the tracker or a direct POST /c/e/{collector_hash}. The set grows with each way in, ...

props*

The event's properties, flattened to dot notation, every value a string. An array is its JSON text, a number or a boolean its text. Empty when the sender sent none, and always empty on a collector event

site_id*Site Id

The site the event was sent from

Formatuuid
visitor_id?Visitor Id

The 32-hex edge pseudonym (stitch), the wire form /analytics/visitors uses, so a row links straight into the visitor detail. No identity sits beside it, so it is always the stitch. Absent where the site has store_stitch off: the 16 zero bytes join nothing, and 32 zeros would look like an id that does.

pvid*Pvid

The decimal string of the script-load id, as in BeaconRow.pvid. On a pixel event it groups the events of ONE checkout load and matches no pageview, because the checkout runs where no theme script does. On a collector event it is the pvid of the pageview it was derived from, on a tracker event the pvid of the pageview that sent it.

country*Country

Edge-derived country code

asn*Asn

Edge-derived autonomous system number of the network, 0 when unknown

isp*Isp

Name of that network, empty when unknown

device_type*Device Type

Edge-derived device class

browser*Browser

Edge-derived browser family

os*Os

Edge-derived operating system

bot_name*Bot Name

Bot label, empty for human traffic

bot_type*Bot Type

Bot category, empty for human traffic

datacenter*Datacenter

Datacenter label, empty for a consumer network

ua_anomaly*Ua Anomaly

User-agent anomaly label, empty when there is none

tracker_version*Tracker Version

Build that sent the event, YYMMDD-<sha>

PATCH
/sites/{site_id}/events/{event_id}
Example Request
curl -X PATCH 'https://api.fastmon.eu/sites/497f6eca-6276-4993-bfeb-53cbbbba6f08/events/497f6eca-6276-4993-bfeb-53cbbbba6f08' \  -H 'Content-Type: application/json' \  -d '{}'
Example Response
{  "event_id": "a7a26ff2-e851-45b6-9634-d595f45458b7",  "timestamp": "2019-08-24T14:15:22Z",  "name": "string",  "stage": "cart",  "source": "string",  "props": {    "property1": "string",    "property2": "string"  },  "site_id": "72771e6a-6f5e-4de4-a5b9-1266c4197811",  "visitor_id": "string",  "pvid": "string",  "country": "string",  "asn": 0,  "isp": "string",  "device_type": "string",  "browser": "string",  "os": "string",  "bot_name": "string",  "bot_type": "string",  "datacenter": "string",  "ua_anomaly": "string",  "tracker_version": "string"}