Bonus claim admin

Package: agentrouter.billing.v1 Service: BonusClaimAdminService

Endpoints

List bonus claims

Changed in v0.11.0 (new features): Administrators can review, approve, reject and cancel bonus claims, and reveal contact details, through the API.

Connect / gRPC only

What it does: Pages through the claims, with filters.

Request fields:

FieldRequiredDescription
customer_idnoundocumented
pageno1-based. Zero means the first page.
page_sizenoAt most 100. Zero means 25.
statusnoundocumented
risk_tiernoundocumented
sourcenoundocumented
domain_categorynoundocumented
email_domainnoundocumented
user_idnoundocumented
searchnoA substring of the claim id, the user id or the email domain.
date_fromnoYYYY-MM-DD or an RFC 3339 time, on create_time.
date_tonoundocumented
sort_byno"create_time" (the default), "status", "risk_tier" or "expire_time".
sort_ascendingnoundocumented

Response fields:

FieldRequiredDescription
claimsnoundocumented
total_countnoundocumented
{"signatures":{"go":"c.BonusClaimAdmin().ListBonusClaims(ctx, \u0026billingv1.ListBonusClaimsRequest{...})","python":"client.bonusclaimadmin.listbonusclaims(...)","typescript":"client.bonusclaimadmin.listbonusclaims({...})"},"examples":{"go":"// No Go SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below.","python":"# No Python SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below.","typescript":"// No TypeScript SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below."},"persona":"Admin","slug":"list-bonus-claims"}

Get bonus claim statistics

Changed in v0.11.0 (new features): Administrators can review, approve, reject and cancel bonus claims, and reveal contact details, through the API.

Connect / gRPC only

What it does: Counts the claims by status: over the last 24 hours and 7 days, or over a date range.

Request fields:

FieldRequiredDescription
customer_idnoundocumented
date_fromnoWith either date set, the counts are over the range; otherwise over the last 24 hours and the last 7 days.
date_tonoundocumented

Response fields:

FieldRequiredDescription
last_24hnoSet without a date range.
last_7dnoundocumented
rangenoSet with a date range.
award_ratenoawarded / (awarded + rejected + expired), over last_24h or range.
pending_payment_countnoundocumented
under_review_countnoundocumented
{"signatures":{"go":"c.BonusClaimAdmin().GetBonusClaimStats(ctx, \u0026billingv1.GetBonusClaimStatsRequest{...})","python":"client.bonusclaimadmin.getbonusclaimstats(...)","typescript":"client.bonusclaimadmin.getbonusclaimstats({...})"},"examples":{"go":"// No Go SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below.","python":"# No Python SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below.","typescript":"// No TypeScript SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below."},"persona":"Admin","slug":"get-bonus-claim-statistics"}

Get a bonus claim

Changed in v0.11.0 (new features): Administrators can review, approve, reject and cancel bonus claims, and reveal contact details, through the API.

Connect / gRPC only

What it does: Returns one claim with its payment verifications, charge reviews, ledger entries and the other recent claims of its email domain.

Request fields:

FieldRequiredDescription
customer_idnoundocumented
claim_idnoundocumented

Response fields:

FieldRequiredDescription
claimnoundocumented
payment_verificationnoThe newest verification.
charge_reviewsnoundocumented
ledger_entriesnoundocumented
related_claimsnoUp to 5 other claims of the same email domain that the caller reaches.
{"signatures":{"go":"c.BonusClaimAdmin().GetBonusClaim(ctx, \u0026billingv1.GetBonusClaimRequest{...})","python":"client.bonusclaimadmin.getbonusclaim(...)","typescript":"client.bonusclaimadmin.getbonusclaim({...})"},"examples":{"go":"// No Go SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below.","python":"# No Python SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below.","typescript":"// No TypeScript SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below."},"persona":"Admin","slug":"get-a-bonus-claim"}

List a review queue

Changed in v0.11.0 (new features): Administrators can review, approve, reject and cancel bonus claims, and reveal contact details, through the API.

Connect / gRPC only

What it does: Pages through the claims of one review queue.

Request fields:

FieldRequiredDescription
customer_idnoundocumented
queueno"under_review", "domain_cap", "suspicious_volume" or "stale_pending".
pagenoundocumented
page_sizenoundocumented

Response fields:

FieldRequiredDescription
claimsnoundocumented
total_countnoundocumented
{"signatures":{"go":"c.BonusClaimAdmin().ListReviewQueue(ctx, \u0026billingv1.ListReviewQueueRequest{...})","python":"client.bonusclaimadmin.listreviewqueue(...)","typescript":"client.bonusclaimadmin.listreviewqueue({...})"},"examples":{"go":"// No Go SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below.","python":"# No Python SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below.","typescript":"// No TypeScript SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below."},"persona":"Admin","slug":"list-a-review-queue"}

Count the review queues

Changed in v0.11.0 (new features): Administrators can review, approve, reject and cancel bonus claims, and reveal contact details, through the API.

Connect / gRPC only

What it does: Counts the claims of each review queue.

Request fields:

FieldRequiredDescription
customer_idnoundocumented

Response fields:

FieldRequiredDescription
countsnoundocumented
{"signatures":{"go":"c.BonusClaimAdmin().GetReviewQueueCounts(ctx, \u0026billingv1.GetReviewQueueCountsRequest{...})","python":"client.bonusclaimadmin.getreviewqueuecounts(...)","typescript":"client.bonusclaimadmin.getreviewqueuecounts({...})"},"examples":{"go":"// No Go SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below.","python":"# No Python SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below.","typescript":"// No TypeScript SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below."},"persona":"Admin","slug":"count-the-review-queues"}

Get the bonus claim abuse summary

Changed in v0.11.0 (new features): Administrators can review, approve, reject and cancel bonus claims, and reveal contact details, through the API.

Connect / gRPC only

What it does: Returns the claim funnel and the abuse signals of a time window. An unmasked summary (with bonus_claims.edit) is audited.

Request fields:

FieldRequiredDescription
customer_idnoundocumented
window_hoursnoFrom 1 to 720. Zero means 24.

Response fields:

FieldRequiredDescription
window_hoursnoundocumented
generate_timenoundocumented
by_sourcenosource -> status -> count.
by_risk_tiernoundocumented
by_domain_categorynoundocumented
domains_at_cap_totalnoundocumented
domains_at_capnoundocumented
suspicious_domains_totalnoundocumented
suspicious_domainsnoundocumented
recent_fingerprint_blocksnoundocumented
{"signatures":{"go":"c.BonusClaimAdmin().GetBonusClaimAbuseSummary(ctx, \u0026billingv1.GetBonusClaimAbuseSummaryRequest{...})","python":"client.bonusclaimadmin.getbonusclaimabusesummary(...)","typescript":"client.bonusclaimadmin.getbonusclaimabusesummary({...})"},"examples":{"go":"// No Go SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below.","python":"# No Python SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below.","typescript":"// No TypeScript SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below."},"persona":"Admin","slug":"get-the-bonus-claim-abuse-summary"}

Approve a bonus claim

Changed in v0.11.0 (new features): Administrators can review, approve, reject and cancel bonus claims, and reveal contact details, through the API.

Connect / gRPC only

What it does: Awards a claim that is under review, with the credit transaction the reviewer created. A claim that is already awarded returns as it is.

Request fields:

FieldRequiredDescription
customer_idnoundocumented
claim_idnoundocumented
awarded_transaction_idnoThe credit transaction that pays the bonus. A UUID.
notenoAt most 500 characters.

Response fields:

FieldRequiredDescription
claimnoundocumented
awarded_transaction_idnoundocumented
{"signatures":{"go":"c.BonusClaimAdmin().ApproveBonusClaim(ctx, \u0026billingv1.ApproveBonusClaimRequest{...})","python":"client.bonusclaimadmin.approvebonusclaim(...)","typescript":"client.bonusclaimadmin.approvebonusclaim({...})"},"examples":{"go":"// No Go SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below.","python":"# No Python SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below.","typescript":"// No TypeScript SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below."},"persona":"Admin","slug":"approve-a-bonus-claim"}

Reject a bonus claim

Changed in v0.11.0 (new features): Administrators can review, approve, reject and cancel bonus claims, and reveal contact details, through the API.

Connect / gRPC only

What it does: Rejects a claim that is under review.

Request fields:

FieldRequiredDescription
customer_idnoundocumented
claim_idnoundocumented
reasonno3 to 500 characters.
notenoundocumented

Response fields:

FieldRequiredDescription
claimnoundocumented
{"signatures":{"go":"c.BonusClaimAdmin().RejectBonusClaim(ctx, \u0026billingv1.RejectBonusClaimRequest{...})","python":"client.bonusclaimadmin.rejectbonusclaim(...)","typescript":"client.bonusclaimadmin.rejectbonusclaim({...})"},"examples":{"go":"// No Go SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below.","python":"# No Python SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below.","typescript":"// No TypeScript SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below."},"persona":"Admin","slug":"reject-a-bonus-claim"}

Cancel a bonus claim

Changed in v0.11.0 (new features): Administrators can review, approve, reject and cancel bonus claims, and reveal contact details, through the API.

Connect / gRPC only

What it does: Cancels a claim that is a draft, pending payment or under review.

Request fields:

FieldRequiredDescription
customer_idnoundocumented
claim_idnoundocumented
reasonnoEmpty, or 3 to 500 characters.

Response fields:

FieldRequiredDescription
claimnoundocumented
{"signatures":{"go":"c.BonusClaimAdmin().CancelBonusClaim(ctx, \u0026billingv1.CancelBonusClaimRequest{...})","python":"client.bonusclaimadmin.cancelbonusclaim(...)","typescript":"client.bonusclaimadmin.cancelbonusclaim({...})"},"examples":{"go":"// No Go SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below.","python":"# No Python SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below.","typescript":"// No TypeScript SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below."},"persona":"Admin","slug":"cancel-a-bonus-claim"}

Reveal a bonus claimant's contact details

Changed in v0.11.0 (new features): Administrators can review, approve, reject and cancel bonus claims, and reveal contact details, through the API.

Connect / gRPC only

What it does: Returns the claimant's email and lead data. Each reveal is audited, and a person can reveal at most BONUS_CLAIMS_PII_REVEAL_RATE_LIMIT claims (default 20) in an hour; more get RESOURCE_EXHAUSTED.

Request fields:

FieldRequiredDescription
customer_idnoundocumented
claim_idnoundocumented

Response fields:

FieldRequiredDescription
user_emailnoundocumented
lead_datanoundocumented
reveal_timenoundocumented
revealed_bynoundocumented
{"signatures":{"go":"c.BonusClaimAdmin().RevealBonusClaimPii(ctx, \u0026billingv1.RevealBonusClaimPiiRequest{...})","python":"client.bonusclaimadmin.revealbonusclaimpii(...)","typescript":"client.bonusclaimadmin.revealbonusclaimpii({...})"},"examples":{"go":"// No Go SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below.","python":"# No Python SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below.","typescript":"// No TypeScript SDK wrapper for BonusClaimAdminService yet -- use the CLI or curl example below."},"persona":"Admin","slug":"reveal-a-bonus-claimants-contact-details"}