Validate Report Data
curl --request POST \
--url https://api.loyalty.dog/v2/giftcards/programs/{programId}/reports/validate \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"reportType": "analytics",
"from": "<string>",
"to": "<string>"
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({reportType: 'analytics', from: '<string>', to: '<string>'})
};
fetch('https://api.loyalty.dog/v2/giftcards/programs/{programId}/reports/validate', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.loyalty.dog/v2/giftcards/programs/{programId}/reports/validate"
payload = {
"reportType": "analytics",
"from": "<string>",
"to": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Gift Card Reports
Validate Report Data
Run data-integrity checks against the programme’s gift card collection.
Checks include balance consistency, status transitions, future-dated
transactions, and revenue reconciliation. Returns a list of issues
with severity ("error" | "warning") so the caller can surface
them in the UI.
POST
/
v2
/
giftcards
/
programs
/
{programId}
/
reports
/
validate
Validate Report Data
curl --request POST \
--url https://api.loyalty.dog/v2/giftcards/programs/{programId}/reports/validate \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"reportType": "analytics",
"from": "<string>",
"to": "<string>"
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({reportType: 'analytics', from: '<string>', to: '<string>'})
};
fetch('https://api.loyalty.dog/v2/giftcards/programs/{programId}/reports/validate', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.loyalty.dog/v2/giftcards/programs/{programId}/reports/validate"
payload = {
"reportType": "analytics",
"from": "<string>",
"to": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Authorizations
JWT access token obtained from POST /v2/token.
Path Parameters
Required string length:
24Pattern:
^[0-9a-f]{24}$Example:
"5eb7cf5a86d9755df3a6c593"
Query Parameters
Required string length:
24Pattern:
^[0-9a-f]{24}$Example:
"5eb7cf5a86d9755df3a6c593"
Body
application/json
Response
Successful Response
