Sending offline events from your back-end services
The best method of logging non-web events is to call your Corvidae ingress pixel via your corvidae tracking subdomain, or using its IP directly.
In this example I will assume
Transactions are occurring outside of the tracked web properties
A
transactionIdcan be supplied at the point of TransactionYour Corvidae subdomain has already been configured
When the Transaction is detected by your backend system, an https request should be made immediately to your ingress pixel, containing necessary information about the transaction, a transactionId which matches a transactionId which occurred on your website.
This is a sample request made in Windows PowerShell
Invoke-WebRequest -UseBasicParsing -Uri "https://corvidae.example.com/i?timestamp=1735689600000&event=tr&trackerVersion=na&appId=your-app-id&platform=server&digitalProperty=your-property-name&timezone=Europe/London&characterSet=UTF-8&eventID=unique-event-id&visitorId=a8469964-2f2d-41fe-94fa-7e71c1df1022&sessionId=b1aadba2-97c4-4c48-9fff-ae9b51579470&userId=8679739f-8a1c-48fb-b498-d46b78e0fa01&conversionName=your-conversion&orderId=1234abcd¤cy=USD&revenue=1000.99&tax=200.2&shipping=14.99"
The URL is broken into components, the first of which is the request target
Protocol + Hostname | The location of your Corvidae tracking subdomain | |
Path | /i | The requests ingress identifier |
Then following the query string delimiter ? are the values for ingestion
Key | Value | Description |
|---|---|---|
timestamp | 1735689600000 | The millisecond timestamp in UTC the moment the request is made |
event | tr |
|
trackerVersion |
|
|
appId | your-app-id | Identifies your Corvidae application |
platform |
|
|
digitalProperty | your-property-name | A property name congruent with the respective property in your Corvidae account |
timezone | Europe/London | The timezone of the server from which the request is being made |
characterSet |
| The charset of the request |
eventID | unique-event-id | A unique ID for this event. If the same ID is sent more than once, requests beyond the first will be deduplicated and ignored. |
visitorId | a8469964-2f2d-41fe-94fa-7e71c1df1022 | The ID of the web visitor who is responsible for this transaction, if available. |
sessionId | b1aadba2-97c4-4c48-9fff-ae9b51579470 | The ID of any session for the web visitor who is responsible for this transaction, if available. |
userId | 8679739f-8a1c-48fb-b498-d46b78e0fa01 | The ID of the user who is responsible for this transaction, if available. |
conversionName | your-conversion | A conversion type name congruent with the respective conversion in your Corvidae account. |
transactionId | 1234abcd | The unique order ID for this Transaction. Duplicative Order IDs after the first will be discarded from your reporting data. |
currency | USD | The currency code for the currency this Transaction was completed in, and the currency that your Corvidae account has been assigned. E.g. |
revenue | 1000.99 | Decimal for the gross value of this Transaction |
tax | 200.20 | (Optional) Decimal for the tax applied to this Transaction |
shipping | 14.99 | (Optional) Decimal for the shipping included in this Transaction |