Check offers went to one person once
const url = 'https://api.proxymail.qa/v1/addresses/k7f2x9ab12cd%40mailclub.dev/offers';const options = { method: 'GET', headers: { 'Proxy-Mail-QA-Test': 'sign-up%20%E2%80%BA%20sends%20one%20code', Authorization: 'Bearer <token>' }};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://api.proxymail.qa/v1/addresses/k7f2x9ab12cd%40mailclub.dev/offers \ --header 'Authorization: Bearer <token>' \ --header 'Proxy-Mail-QA-Test: sign-up%20%E2%80%BA%20sends%20one%20code'For each sender, its coupons at this address and which version of the address each went to: plain, capitals or a +tag. Mail to all of them reaches one inbox, so an offer that reached two or more versions was given to one person more than once: reused is true, passed false, and with a run, that fails it. Gmail’s dot trick can’t be tested here: on these domains a dot makes another address. In Labs: answers 403 until the key’s creator switches on Marketing and offer emails in Account settings → Labs.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”The test address, URL-encoded. A variant also works: capitals, or a +tag (k7f2x9ab12cd+o’brien@mailclub.dev). It acts on the plain address; waiting on a +tag variant, or listing its messages, only finds mail sent to that variant.
Example
k7f2x9ab12cd@mailclub.devHeader Parameters
Section titled “Header Parameters”A run’s id (POST /v1/runs): adds what this call saw to the run. If it can’t be added (the run finished, or isn’t in this project), the call still works and the Proxy-Mail-QA-Run-Warning response header says why.
With Proxy-Mail-QA-Run: the test this call belongs to, percent-encoded (encodeURIComponent), up to 200 characters once decoded. The run’s report shows it beside what the call saw.
Example
sign-up%20%E2%80%BA%20sends%20one%20codeResponses
Section titled “Responses”Each sender’s coupons
object
No sender gave a coupon to two or more versions of the address.
object
Plain, capitals or +tag
Every coupon had the same code.
object
Example generated
{ "address": "example", "passed": true, "offers": [ { "sender": "example", "service": "example", "reused": true, "variants": [ "example" ], "same_code": true, "coupons": [ { "variant": "example", "code": "example", "discount": "example", "valid_until": "2026-04-15", "received_at": "2026-04-15T12:00:00Z", "email_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0" } ] } ]}An error
object
Example generated
{ "error": "example", "message": "example"}