Guides
Custom events
Send events specific to your product.
Automatic capture covers screens and taps. For actions that matter to your product, like a search or a saved item, send your own events.
Sending an event
tsx
import { Riveora } from '@riveora/react-native';
Riveora.track('item_saved', { category: 'shoes', price_tier: 'premium', from_search: true });The event appears in Live events within seconds and in each user’s journey, tagged with the screen that was open when it happened.
Naming
- Use
snake_caseverbs in the past tense:search_performed,list_shared. - Keep names stable. Put variations in properties, not in the name.
- Avoid the names the SDK already uses; see the event catalog.
Properties
| Rule | Limit | If you go over it |
|---|---|---|
| Event name | Up to 80 characters | Shortened to 80 characters |
| Property key | Up to 80 characters | The property is dropped |
| Property value | Text (up to 500 characters), number, true/false or null | Longer text is shortened. Dates are sent as text. Lists, objects and functions are dropped. |
An event keeps at most 50 properties.
Automatically removed
The SDK drops these before an event leaves the device, and the Riveora server drops them again before storing it:
- Keys that name a secret or contact detail, anywhere in the key:
password,token,secret,auth,email,phone,card,cvv,ssn,dob,birth,address,iban. - Keys with one of these words (whole words, in
snake_caseorcamelCase): phone words liketel,mobile_numberoruser_mobile; secrets likepin,otp,pwd,passcode,cookie,credentials,api_key,verification_codeorseed_phrase; and a person’s name likefirst_name,full_name,usernameorsurname. Keys such asshipping,country_code,promo_code,nameorplan_nameare kept. - Values that contain an email address or a token (a JWT, “Bearer …”, an API key such as
sk_live_…,sk-…orAKIA…), or that are a formatted phone number, a card number or an IBAN.
Still, never put personal data in properties: these rules catch common mistakes, not everything.
Something unclear or missing? Email us and we’ll improve this page.