...
...
...
The following tags should exist on every page, except Admin pages. No need to customize based on environment (e.g. Test, Prod). Same tag is to be shown.
Head
...
Table of Contents
Table of Contents | ||||
---|---|---|---|---|
|
Global GTM tag
The following tags should exist on every page, except Admin pages. No need to customize based on environment (e.g. Test, Prod). Same tag is to be shown.
Head
refid
is a variable which indicates:
For Partner of type Partner insert https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/490307680/Partner+Functionality#Referrer-Profiles ID
For Partner of type Affiliate insert “affiliate”
Code Block | ||
---|---|---|
| ||
<script>
window.dataLayer = window.dataLayer || [];
</script>
<script>
dataLayer.push({event: "userData", refid: "uniqueone"})
</script>
<!-- Google Tag Manager -->
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-KZHJFJH');</script>
<!-- End Google Tag Manager --> |
Body
Immediately after <body> tag.
Code Block | ||
---|---|---|
| ||
<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-KZHJFJH"
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager (noscript) --> |
Page titles
Page views are triggered by change in url, therefore every page needs to have a unique url. URLs in red need to be updated, as they are duplicates now.
URL | Spec reference | Page Title |
---|---|---|
/ (unauthenticated) | FIO App - Home | |
/myfio | FIO App - My FIO | |
/create-account | https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/255623302/Account#Email-%26-Password | FIO App - Create Account |
/create-account-pin | https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/255623302/Account#PIN-Code | FIO App - Create Account Pin |
/create-account-confirm | FIO App - Create Account Confirm | |
/create-account-confirmation | FIO App - Create Account Confirmation | |
/create-account-secret-questions | https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/255623302/Account#Secret-Questions | FIO App - Create Account Secret Questions |
/create-account-secret-questions-skip | FIO App - Create Account Secret Questions Skip | |
/create-account-secret-answers | https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/255623302/Account#Secret-Questions-Answer | FIO App - Create Account Secret Answers |
/email-confirm-gate | https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/255623302/Account#Verify-Email-Blocker | FIO App - Confirm email |
/signin | https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/255623302/Account#Sign-in | FIO App - Sign in |
/fio-crypto-handles-selection | FIO App - Crypto Handle Registration | |
/fio-domains-selection | https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/255624148/Registration#Register-FIO-Domain.1 | FIO App - Domain Registration |
/cart | https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/500793345/Checkout#Cart | FIO App - Shopping Cart |
/checkout | https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/500793345/Checkout#Pay-with-FIO https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/500793345/Checkout#Pay-with-Stripe | FIO App - Checkout |
/purchase | https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/500793345/Checkout#Pay-with-FIO-Confirmation | FIO App - Purchase Confirmation |
/tokens | FIO Apps - Wallets | |
/import | FIO App - Import FIO Wallet | |
/fio-wallet | FIO App - Wallet Transactions | |
/fio-wallet-details | FIO App - Wallet Details | |
/stake | FIO App - Stake FIO Tokens | |
/unstake | FIO App - Unstake FIO Tokens | |
/send | FIO App - Send FIO Tokens | |
/send-confirmation | FIO App - Send FIO Tokens Confirmation | |
/new-request |
...
Code Block | ||
---|---|---|
| ||
<script>
window.dataLayer = window.dataLayer || [];
</script>
<script>
dataLayer.push({event: "userData", refid: "uniqueone"})
</script>
<!-- Google Tag Manager -->
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-KZHJFJH');</script>
<!-- End Google Tag Manager --> |
Body
Immediately after <body> tag.
Code Block | ||
---|---|---|
| ||
<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-KZHJFJH"
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager (noscript) --> |
Page titles
Page views are triggered by change in url, therefore every page needs to have a unique url. URLs in red need to be updated, as they are duplicates now.
URL
Spec reference
Page Title
/ (unauthenticated)
FIO App - FIO Request | ||
/new-request-confirmation | FIO App - FIO Request Confirmation | |
/reject-fio-request | FIO App - Reject FIO Request | |
/reject-fio-request-confirmation | FIO App - Reject FIO Request Confirmation | |
/payment-details | FIO App - Send FIO Data | |
/payment-details-confirmation | FIO App - Send FIO Data Confirmation | |
/fio-domains |
FIO |
App - |
Domains |
/ |
fio-domain-settings |
FIO Dashboard - My FIO
FIO App - Domain Settings | ||
/fio-domain-renew | Domain renewal | FIO App - Renew Domain |
/fio-domain-renew-confirmation | Domain renewal confirmation | FIO App - Renew Domain Confirmation |
/fio-domain-status-change |
FIO Dashboard - Create Account
255590800/Address+and+Domain+Management#FIO-Domain-Status-Change | FIO App - Domain Status Change |
/fio-domain-status-change-confirmation |
FIO Dashboard - Create Account Pin
/create-account-confirm
FIO Dashboard - Create Account Confirm
/create-account-confirmation
FIO Dashboard - Create Account Confirmation
/create-account-secret-questions
255590800/Address+and+Domain+Management#FIO-Domain-Status-Change-Confirmation | FIO App - Domain Status Change Confirmation |
/fio-domain-ownership |
FIO Dashboard - Create Account Secret Questions
255590800/Address+and+Domain+Management#Transfer-FIO-Address%2FDomain-Ownership | FIO App - Domain Ownership Transfer |
/fio-domain-ownership-confirmation |
FIO Dashboard - Create Account Secret Questions Skip
255590800/Address+and+Domain+Management#Transfer-FIO-Address%2FDomain-Confirmation | FIO App - Domain Ownership Transfer Confirmation |
/fio-crypto-handles |
FIO Dashboard - Create Account Secret Answers
FIO App - Crypto Handles | |
/fio-crypto-handle-settings |
FIO Dashboard - Confirm email
/signin
255590800/Address+and+Domain+Management#FIO-Address-Settings | FIO App - Crypto Handle Settings | |
/add-bundles | Add bundles | FIO App - Add Bundles |
/add-bundles-confirmation | Add bundles confirmation | FIO App - Add Bundles Confirmation |
/fio-crypto-handle-ownership |
255590800/Address+and+Domain+Management#Transfer-FIO-Address%2FDomain-Ownership | FIO App - Crypto Handle Ownership Transfer |
/fio-crypto- |
handle-ownership- |
confirmation |
Address+and+Domain+Management#Transfer-FIO-Address%2FDomain-Confirmation | FIO App - Crypto Handle |
Ownership Transfer Confirmation |
/ |
nft- |
signatures |
FIO |
App - |
NFT Signatures |
/ |
sign-nft |
FIO |
App - |
Sign NFT |
/ |
sign-nft-confirmation |
FIO App - Sign NFT Confirmation | |
/link-token-list |
FIO Dashboard - Checkout
FIO App - Linked Token List | |
/add-token |
FIO App - Link Token | |
/add-token-confirmation |
FIO Dashboard - Purchase Confirmation
255590800/Address+and+Domain+Management#Link-Token-Confirmation | FIO App - Link Token Confirmation | |
/fio-domain | FIO App - Domain | |
/orders |
FIO Dashboards - Wallets
FIO App - Orders | |
/order-details |
FIO Dashboard - Import FIO Wallet
FIO App - Order Details | |
/order-invoice |
FIO Dashboard - Wallet Transactions
FIO App - Order Invoice | ||
/settings | FIO App - Settings | |
/ref/partnername |
FIO Dashboard - Wallet Details
/stake
FIO Dashboard - Stake FIO Tokens
/unstake
FIO Dashboard - Unstake FIO Tokens
FIO App - partnername | |
/wrap-tokens |
FIO |
App - |
Wrap FIO Tokens |
/ |
wrap-tokens-confirmation |
FIO |
App - |
Wrap FIO Tokens Confirmation |
/ |
unwrap- |
tokens |
FIO |
App - Unwrap FIO |
Tokens |
/ |
unwrap- |
tokens-confirmation |
FIO App - Unwrap FIO Tokens Confirmation | |
/ |
wrap- |
domain |
FIO |
App - |
Wrap FIO |
Domain |
/ |
wrap- |
domain-confirmation |
FIO Dashboard - Reject FIO Request Confirmation
FIO App - Wrap FIO Domain Confirmation | ||
/unwrap | FIO App - Unwrap | |
/unwrap-domain |
FIO Dashboard - Send FIO Data
FIO App - Unwrap FIO Domain | |
/unwrap-domain-confirmation |
FIO Dashboard - Send FIO Data Confirmation
/fio-domains
FIO Dashboard - Domains
FIO App - Unwrap FIO Domain Confirmation | ||
/privacy-policy | FIO App - Privacy Policy | |
/terms-of-service | FIO App - Terms of Service | |
/reset-password |
FIO Dashboard - Domain Settings
/fio-domain-renew
Domain renewal
FIO Dashboard - Renew Domain
/fio-domain-renew-confirmation
Domain renewal confirmation
FIO Dashboard - Renew Domain Confirmation
FIO App - Reset Password | ||
/404 | FIO App - Not Found | |
/cookie-notice | FIO App - Cookie Notice | |
/error | FIO App - Error | |
/nft-validation | FIO App - Validate NFT Signature | |
/affiliate-program | FIO App - Affiliate Program | |
/affiliate-program-enabled |
FIO App - Affiliate Program Enabled | |
/fio- |
crypto- |
handles- |
custom |
FIO Dashboard - Domain Status Change Confirmation
FIO App - Crypto Handle Registration on Custom Domain | |
/unavailable |
FIO Dashboard - Domain Ownership Transfer
/fio-domain-ownership-confirmation
FIO App - Unavailable | ||
/twitter-handle | Your Twitter Handle Can Now Receive Crypto | |
/ | Using fio.id domain https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/ |
FIO Dashboard - Domain Ownership Transfer Confirmation
/fio-crypto-handles
FIO Handle Look-up | |
/example@domain | Using fio.id domain https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/ |
FIO Dashboard - Crypto Handles
/fio-crypto-handle-settings
FIO Dashboard - Crypto Handle Settings
/add-bundles
Add bundles
FIO Dashboard - Add Bundles
/add-bundles-confirmation
Add bundles confirmation
FIO Dashboard - Add Bundles Confirmation
/fio-crypto-handle-ownership
FIO Dashboard - Crypto Handle Ownership Transfer
FIO Handle - example@domain | ||
/metamask | FIO App - MetaMask |
Events
When fires | Event name | Parameters |
---|---|---|
User creates account |
| |
User logs in |
|
|
User searches for FCH or Domain or both |
| |
User adds item to cart |
FIO Dashboard - Crypto Handle Ownership Transfer Confirmation
/nft-signatures
https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/299630593/NFT+Signatures#NFT-Signatures-List
FIO Dashboard - NFT Signatures
/sign-nft
https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/299630593/NFT+Signatures#Sign-NFT.1
FIO Dashboard - Sign NFT
/sign-nft-confirmation
https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/299630593/NFT+Signatures#Sign-NFT-Details
FIO Dashboard - Sign NFT Confirmation
|
| |
User removes item from cart |
FIO Dashboard - Linked Token List
| Same as Add item to cart | |
User clicks Checkout Now (or Complete Transaction) or Cart icon in main navigation |
FIO Dashboard - Link Token
| Same as Add item to cart | |
Price updated in cart |
FIO Dashboard - Link Token Confirmation
/fio-domain
FIO Dashboard - Domain
| ||
User clicks Purchase Now or Pay on checkout page |
| Same as Add item to cart |
Shopping cart is purchased |
FIO Dashboard - Orders
FIO Dashboard - Order Details
500793345/Checkout#Pay-with-CoinPayments%2FStripe-Confirmation |
| Same as Add item to cart plus:
|
Partial purchase error |
/settings
FIO Dashboard - Settings
FIO Dashboard - partnername
500793345/Checkout#Pay-with-CoinPayments%2FStripe-Confirmation |
| |
Complete purchase error |
/wrap-tokens-confirmation
FIO Dashboard - Wrap FIO Tokens Confirmation
/unwrap-tokens
| ||
Cart is emptied due to inactivity |
| |
User creates new FIO wallet |
FIO Dashboard - Unwrap FIO Tokens
/unwrap-tokens-confirmation
FIO Dashboard - Unwrap FIO Tokens Confirmation
|
| |
User stakes FIO tokens |
|
|
User unstakes FIO tokens |
|
|
User sends FIO Tokens |
FIO Dashboard - Wrap FIO Domain
|
| |
User sends new FIO Request |
FIO Dashboard - Wrap FIO Domain Confirmation
| ||
User sends FIO Data |
FIO Dashboard - Unwrap FIO Domain
/unwrap-domain-confirmation
| ||
User rejects FIO Request |
FIO Dashboard - Unwrap FIO Domain Confirmation
/privacy-policy
FIO Dashboard - Privacy Policy
/terms-of-service
FIO Dashboard - Terms of Service
/reset-password
| ||
Users flips domain status |
| |
Users transfers domain ownership |
FIO Dashboard - Reset Password
/404
FIO Dashboard - Not Found
/cookie-notice
FIO Dashboard - Cookie Notice
error
FIO Dashboard - Error
Events
When fires
Event name
Parameters
User creates account
sign_up
User logs in
login
method
= “password” (when user logs in with password); “pin” = when user logs in with PIN
User searches for FCH or Domain or both
search
search_term
= domain or FCH
type
= “domain”, “fch” or “combo” (if search was for FCH on custom domain)
User sees “already registered” error after searching for FCH or Domain or both
search_not_available
User adds item to cart
https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/500793345/Checkout#Cart
add_to_cart
currency
= “USD”
value
= cost of all items being added
items
= Array of items
item_name
= FCH or Domain name
item_category
= “domain”, “fch”, “combo” (if search was for FCH on custom domain) or “free_fch” (if FCH is free)
price
= price of item (set to 0 for free FCH)
User removes item from cart
https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/500793345/Checkout#Cart
remove_from_cart
Same as Add item to cart
User clicks Checkout Now (or Complete Transaction) or Cart icon in main navigation
https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/500793345/Checkout#Cart
begin_checkout
Same as Add item to cart
Price updated in cart
https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/500793345/Checkout#Price-Change
price_change
User clicks Purchase Now or Pay on checkout page
purchase_started
Same as Add item to cart
Shopping cart is purchased
https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/500793345/Checkout#Pay-with-FIO-Confirmation
purchase
Same as Add item to cart plus:
transaction_id
- order number
payment_type
- purchase type: “free”, “fio”, “stripe”
Partial purchase error
https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/500793345/Checkout#Pay-with-FIO-Confirmation
purchase_partial
Complete purchase error
https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/500793345/Checkout#Pay-with-FIO-Confirmation
purchase_error
Cart is emptied due to inactivity
cart_emptied
User creates new FIO wallet
wallet_create
wallet_create_type
- “ledger” (wallet is ledger hardware wallet), “standard” (all other wallets)
User stakes FIO tokens
token_stake
token_stake_amount
- Amount of FIO Tokens staked
User unstakes FIO tokens
token_unstake
token_unstake_amount
- Amount of FIO Tokens unstaked
User sends FIO Tokens
token_send
token_send_amount
- Amount of FIO Tokens sent
token_send_type
- Type of send: “fch” (send to FCH), “pubadd” (sent to public address)
User sends new FIO Request
fio_request_new
User sends FIO Data
fio_data_new
User rejects FIO Request
fio_request_reject
User renews domain
fio_domain_renew
Users flips domain status
fio_domain_status
Users transfers domain ownership
fio_domain_transfer
Users transfers FCH ownership
fch_transfer
User adds bundles to FCH
fch_add_bundles
User signs NFT
https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/299630593/NFT+Signatures#Sign-NFT.1
fch_sign_nft
Users links token to FCH
255590800/Address+and+Domain+Management#Transfer-FIO-Address/Domain-Ownership |
| |
Users transfers FCH ownership |
| |
User signs NFT https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/299630593/NFT+Signatures#Sign-NFT.1 |
| |
Users links token to FCH |
| |
User enables 2FA |
| |
User sets up recovery |
| |
User encounters chain error on any transaction, except purchase |
| |
User validates NFT on https://dashboard.fioprotocol.io/nft-validation |
| |
User wraps tokens |
| |
User wraps domain |
| |
User unwraps tokens |
| |
User unwraps domain |
| |
User enables affiliate program |
|
SendInBlue Analytics
High-level Requirements
Anytime the above event occurs and the user is known (logged in) and has opted in to receiving marketing emails, the server needs to send an event notification to SendInBlue:
If initial opt-in flag (set by user during registration) is not stored on the server, send the request for every user, but expect 404 error to be returned if user has not opted in and is not in SendInBlue db.
There is a way to also send events via js: https://developers.sendinblue.com/docs/gettings-started-with-sendinblue-tracker , but I believe the API method better matches what was already developed for Mailchimp
API Spec
Server and credentials
See https://fioprotocol.atlassian.net/wiki/spaces/DAO/pages/
...
fch_link_token
...
User enables 2FA
...
sec_2fa
...
User sets up recovery
...
sec_recovery
...
User encounters chain error on any transaction, except purchase
...
Request
Variable | Type | Value |
---|---|---|
User’s email address | ||
event | Body | Event name as above |
Body Example
Code Block | ||
---|---|---|
| ||
{
"email":"bob@gmail.com",
"event":"sign_up"
} |
Response
Ignore response