Historical Data
Historical data plays a crucial role in tailoring the information we provide to you. It helps our model understand patterns and trends, enabling us to deliver more personalized insights.
info
Data is securely stored and anonymized to maintain confidentiality.
We understand that you might not have all the information listed below. Just share whatever details you can for each transaction:.
Request Data:
Sample Parameter Name | Description | Type |
---|---|---|
transaction_data | An object containing information about the transaction. | JSON object. |
transaction_id | The unique identifier of the transaction. | String e.g d48ed552-eaef-46ed-bd0c-d230189e1de0 |
status | Before a fraud check is run on a transaction, the client must have run some pre-checks e.g does user have enough balance? has user passed kyc checks? etc. This field presents that status. It should be set to true if all pre- fraud checks passed or false otherwise. | Boolean e.g true | false. |
amount | The amount of the transaction. | String e.g 234.90 |
balance_before | The current balance of the account before the transaction. | String e.g 9000.00 |
externalPayment | This field answers the question “Is this an internal transfer or an external payment?" | Boolean e.g true | false. |
Provider | The provider of the transaction. | String e.g atm, pos. |
type | The type of the transaction, such as "debit" or "credit". | String e.g debit | credit. |
channel | Transaction channel (i.e. card, mobile, web transfer, cash withdrawal, etc.). | String e.g card. |
transaction_date | The date and time when the transaction occurred. | String in ISO-8601 format e.g 2023-04-28T20:16:12.642Z. |
sender_bank_code | The bank code of the sender. The User would be the sender if the transaction is a debit transaction. | String e.g 255. |
receiver_bank_code | The bank code of the receiver. The User would be the receiver if the transaction is a credit transaction. | String e.g 2435. |
sender_account_number | The account number of the sender. The User would be the sender if the transaction is a debit transaction. | String e.g 2000456355. |
receiver_account_number | The account number of the receiver. The User would be the receiver if the transaction is a credit transaction. | String e.g 25735262625. |
narration | The narration of the transaction. | |
device | An object containing information about the device used to make the transaction. | JSON object |
device_id | The unique identifier of the device used to make the transaction. | String e.g d48ed552-eaef-46edbd0c-d230189e1de0. |
manufacturer | The manufacturer of the device used to make the transaction. | String e.g Samsung. |
model | The model of the device used to make the transaction. | String e.g s22 Ultra. |
name | The name of the device used to make the transaction. | String e.g s22 Ultra. |
os_name | The name of the operating system of the device used to make the transaction. | String e.g Android. |
os_version | The version of the operating system of the device used to make the transaction. | String e.g 13.0. |
location | An object containing latitude and longitude coordinates of the location where the transaction occurred. | JSON object. |
latitude | The latitude of the location where the transaction occurred. | String e.g 37.7749. |
longitude | The longitude of the location where the transaction occurred. | String e.g -122.4194. |
anonymized_user_data | An object containing anonymized information about the user who made the transaction. | JSON Object |
unique_id | A unique identifier for the user. | String e.g d48ed552-eaef-46edbd0c-d230189e1de0. |
is_phone_number_verified | A boolean indicating whether the user's phone number has been verified or not. | Boolean e.g true | false. |
is_banned | A boolean indicating whether the user's account has been banned or not. | Boolean e.g true | false. |
date_joined | The date and time when the user joined the service. | String in ISO-8601 format e.g 2023-04-28T20:16:12.642Z. |
age_years | The age of the User. | String e.g 25. |
is_identity_verified | A boolean indicating whether the user's identity has been verified or not. | Boolean e.g true | false. |
state | The state the user lives in. | String e.g Lagos. |
city | The city the user lives in. | String e.g Egbeda. |
Country | The country the user lives in. | String e.g Nigeria. |
AccountType | The type of the account. | String e.g business or individual. |
UpdatedAt | When the user data was updated last. | String in ISO-8601 format e.g 2023-04-28T20:16:12.642Z. |
Fraudulent | Target variable (boolean indicating whether the transaction was fraudulent or not). | Boolean e.g true | false. |
How to send historical data
The data can be uploaded data in batches.
- Historical data upload files must be in gZip format.
- Files should contain a JSON file with an array of all transactions.
API
Call the endpoint:
Request
Method: GET
Endpoint: api/v1/upload?fileType=gz&access=private
Headers :
apiKey : [YOUR APP API_KEY],
apiSecret : [YOUR APP API_SECRET]
The above endpoint call will return a response like below:
{
"message": "Signed url for upload generated successfully",
"data": {
"key": "2023-06-22/75abbbdf-e8ee-40c2-9ca6-e7310cb7b757.gz",
"url": "https://sigma-upload.s3.us-east-2.amazonaws.com/2023-06-22/75abbbdf-e8ee-40c2-9ca6-e7310cb7b757.gz?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIA6HZ67RLRY2LZTUMQ%2F20230622%2Fus-east-2%2Fs3%2Faws4_request&X-Amz-Date=20230622T092707Z&X-Amz-Expires=900&X-Amz-Signature=c1ad699da583bc03e776e1e2be9f069f5235dab099f622a12dcb7170acfc0a36&X-Amz-SignedHeaders=host%3Bx-amz-acl&x-amz-acl=private"
}
}
Make a request to the url you received from the response above to upload your data to be analyzed by sigma. For example:
Request
Method: PUT
Endpoint: https://sigma-upload.s3.us-east-2.amazonaws.com/2023-06-22/XXXXXX-XXXXXX-XXXXXX.gz?X-Amz-Algorithm=XXX&X-Amz-Credential=XXXXX&X-Amz-Date=XXXXXX&x-amz-acl=private
Body : [YOUR GZIP.FILE]