Skip to content

SendingDomainRates_list

GET
/sending-domains/rates
curl --request GET \
--url 'http://localhost:3000/api/sending-domains/rates?windowDays=7' \
--header 'Authorization: Bearer <token>'

Complaint and bounce rates per sending domain over a trailing window

windowDays
integer format: int32
default: 7

Trailing window in days (1 to 90)

The request has succeeded.

Media typeapplication/json

Paginated response

object
items
required

List of items

Array<object>

Complaint and bounce rates of one Sending domain over a trailing window (ADR 0011). Complaint rate is complaints / (sent - hard bounces); bounce rate is hard bounces / sent.

object
sendingDomainId
required

Sending domain id

string format: int64
/^[0-9]{1,18}$/
domain
required

The domain the rates are for

string
windowDays
required

Trailing window the rates cover, in days

integer format: int32
complaintRate
required

Complaints over delivered-ish sends (sent minus hard bounces)

object
numerator
required

Events counted against the rate

integer format: int32
denominator
required

The population the rate is over

integer format: int32
rate
required

Numerator / denominator, null when the denominator is zero

number format: double
nullable
bounceRate
required

Hard bounces over sent

object
numerator
required

Events counted against the rate

integer format: int32
denominator
required

The population the rate is over

integer format: int32
rate
required

Numerator / denominator, null when the denominator is zero

number format: double
nullable
page
required

Page number (1-based)

integer format: int32
pageSize
required

Page size

integer format: int32
totalItems
required

Total number of elements

integer format: int32
totalPages
required

Total number of pages

integer format: int32

Example generated

{
"items": [
{
"sendingDomainId": "example",
"domain": "example",
"windowDays": 1,
"complaintRate": {
"numerator": 1,
"denominator": 1,
"rate": 1
},
"bounceRate": {
"numerator": 1,
"denominator": 1,
"rate": 1
}
}
],
"page": 1,
"pageSize": 1,
"totalItems": 1,
"totalPages": 1
}

RFC 7807 bad request response

Media typeapplication/problem+json

RFC 7807 Problem Details

object
code

Why the request was refused, when the client should act on it

string
Allowed values: second_factor_required email_verification_required signup_closed
type

A URI reference that identifies the problem type

string
title

A short, human-readable summary of the problem type

string
status

HTTP status code

integer format: int32
detail

A human-readable explanation specific to this occurrence

string
instance

A URI reference that identifies the specific occurrence

string
errors

Validation errors grouped by field

object
key
additional properties
Array<string>
form

Form-level validation error

string
fields

Field validation errors

object
key
additional properties
string
retryAfter

Seconds to wait before retrying; set on a 429 so a client that only sees the body can show the wait

integer format: int32
debug

Why a 500 happened, sent only by a development server (SPHERICON_ENV=development)

object
error
required

The error that failed the request, or the panic value

string
stack

The goroutine stack of a panic; absent for an error a handler returned

string
requestId

The request id the server log carries for this request

string
method
required

The HTTP method of the failed request

string
path
required

The path of the failed request

string

Example

{
"code": "second_factor_required"
}

RFC 7807 unauthorized response

Media typeapplication/problem+json

RFC 7807 Problem Details

object
code

Why the request was refused, when the client should act on it

string
Allowed values: second_factor_required email_verification_required signup_closed
type

A URI reference that identifies the problem type

string
title

A short, human-readable summary of the problem type

string
status

HTTP status code

integer format: int32
detail

A human-readable explanation specific to this occurrence

string
instance

A URI reference that identifies the specific occurrence

string
errors

Validation errors grouped by field

object
key
additional properties
Array<string>
form

Form-level validation error

string
fields

Field validation errors

object
key
additional properties
string
retryAfter

Seconds to wait before retrying; set on a 429 so a client that only sees the body can show the wait

integer format: int32
debug

Why a 500 happened, sent only by a development server (SPHERICON_ENV=development)

object
error
required

The error that failed the request, or the panic value

string
stack

The goroutine stack of a panic; absent for an error a handler returned

string
requestId

The request id the server log carries for this request

string
method
required

The HTTP method of the failed request

string
path
required

The path of the failed request

string

Example

{
"code": "second_factor_required"
}

RFC 7807 too many requests response: a rate limit was exceeded (ADR 0025)

Media typeapplication/problem+json

RFC 7807 Problem Details

object
code

Why the request was refused, when the client should act on it

string
Allowed values: second_factor_required email_verification_required signup_closed
type

A URI reference that identifies the problem type

string
title

A short, human-readable summary of the problem type

string
status

HTTP status code

integer format: int32
detail

A human-readable explanation specific to this occurrence

string
instance

A URI reference that identifies the specific occurrence

string
errors

Validation errors grouped by field

object
key
additional properties
Array<string>
form

Form-level validation error

string
fields

Field validation errors

object
key
additional properties
string
retryAfter

Seconds to wait before retrying; set on a 429 so a client that only sees the body can show the wait

integer format: int32
debug

Why a 500 happened, sent only by a development server (SPHERICON_ENV=development)

object
error
required

The error that failed the request, or the panic value

string
stack

The goroutine stack of a panic; absent for an error a handler returned

string
requestId

The request id the server log carries for this request

string
method
required

The HTTP method of the failed request

string
path
required

The path of the failed request

string

Example

{
"code": "second_factor_required"
}
Retry-After
required
integer format: int32

Seconds to wait before retrying

X-RateLimit-Limit
required
integer format: int32

The request budget of the window that was exceeded

X-RateLimit-Remaining
required
integer format: int32

Requests left in the current window

X-RateLimit-Reset
required
integer format: int64

Unix time at which the window resets