Create a pacing rule
Creates a pacing rule. An hours rule holds mail outside the weekly windows you declare, evaluated in the rule’s own timezone. A limit rule caps sends per rolling window against a scope — the rule as a whole, or per sender address, sending domain, recipient, or recipient domain. An empty match array applies the rule to every send. space_id makes the rule read one space’s mail alone; workspace rules apply to every space and stack on top.
POST
/pacing-rulesAuthorization
AuthorizationBearer token (API key) · headerrequiredPass an AI Inbx API key as a Bearer token.
Request body
requiredapplication/jsonOne of:
object
namestringrequiredmin length 1 · max length 120
space_idstringWhich space a created resource goes in. Omitted, the workspace itself.
matches ^[a-z]+_[0-9a-f]{32}$
enabledbooleanmatchobject[]requiredmax items 50
Show propertiesHide properties
Array of
objectfieldstringrequiredAllowed:
fromtoeitherpatternstringrequiredmin length 1 · max length 320
kindstringrequiredscheduleobjectrequiredShow propertiesHide properties
timezonestringrequiredmin length 1
windowsobject[]requiredShow propertiesHide properties
Array of
objectdaysinteger[]requiredstart_minuteintegerrequiredmin 0 · max 1440
end_minuteintegerrequiredmin 0 · max 1440
object
namestringrequiredmin length 1 · max length 120
space_idstringWhich space a created resource goes in. Omitted, the workspace itself.
matches ^[a-z]+_[0-9a-f]{32}$
enabledbooleanmatchobject[]requiredmax items 50
Show propertiesHide properties
Array of
objectfieldstringrequiredAllowed:
fromtoeitherpatternstringrequiredmin length 1 · max length 320
kindstringrequiredlimitobjectrequiredShow propertiesHide properties
scopestringrequiredAllowed:
rulefrom_addressfrom_domainto_addressto_domainamountintegerrequiredmin 1 · max 1000000
per_secondsintegerrequiredmin 1 · max 2678400
Responses
201The pacing rule was created.
One of:
object
idstringrequiredmatches ^[a-z]+_[0-9a-f]{32}$
namestringrequiredspace_idstring | anyrequiredWhich space a resource is in. Null is the workspace itself — what every resource of a workspace that has no spaces says.
Show propertiesHide properties
Any of:
string
stringany
anyenabledbooleanrequiredmatchobject[]requiredShow propertiesHide properties
Array of
objectfieldstringrequiredAllowed:
fromtoeitherpatternstringrequiredmin length 1 · max length 320
created_atstring<date-time>requiredmatches ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
kindstringrequiredscheduleobjectrequiredShow propertiesHide properties
timezonestringrequiredmin length 1
windowsobject[]requiredShow propertiesHide properties
Array of
objectdaysinteger[]requiredstart_minuteintegerrequiredmin 0 · max 1440
end_minuteintegerrequiredmin 0 · max 1440
object
idstringrequiredmatches ^[a-z]+_[0-9a-f]{32}$
namestringrequiredspace_idstring | anyrequiredWhich space a resource is in. Null is the workspace itself — what every resource of a workspace that has no spaces says.
Show propertiesHide properties
Any of:
string
stringany
anyenabledbooleanrequiredmatchobject[]requiredShow propertiesHide properties
Array of
objectfieldstringrequiredAllowed:
fromtoeitherpatternstringrequiredmin length 1 · max length 320
created_atstring<date-time>requiredmatches ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
kindstringrequiredlimitobjectrequiredShow propertiesHide properties
scopestringrequiredAllowed:
rulefrom_addressfrom_domainto_addressto_domainamountintegerrequiredmin 1 · max 1000000
per_secondsintegerrequiredmin 1 · max 2678400
400The request is invalid.
typestringrequiredtitlestringrequiredstatusintegerrequiredmin -9007199254740991 · max 9007199254740991
detailstringrequiredcodestringrequiredrequest_idstringrequiredissuesobject[]Show propertiesHide properties
Array of
objectpathstringrequiredmessagestringrequired401The API key is missing or invalid.
typestringrequiredtitlestringrequiredstatusintegerrequiredmin -9007199254740991 · max 9007199254740991
detailstringrequiredcodestringrequiredrequest_idstringrequiredissuesobject[]Show propertiesHide properties
Array of
objectpathstringrequiredmessagestringrequired403The API key does not have the required scope.
typestringrequiredtitlestringrequiredstatusintegerrequiredmin -9007199254740991 · max 9007199254740991
detailstringrequiredcodestringrequiredrequest_idstringrequiredissuesobject[]Show propertiesHide properties
Array of
objectpathstringrequiredmessagestringrequired404The requested resource does not exist.
typestringrequiredtitlestringrequiredstatusintegerrequiredmin -9007199254740991 · max 9007199254740991
detailstringrequiredcodestringrequiredrequest_idstringrequiredissuesobject[]Show propertiesHide properties
Array of
objectpathstringrequiredmessagestringrequired409The request conflicts with the resource's current state.
typestringrequiredtitlestringrequiredstatusintegerrequiredmin -9007199254740991 · max 9007199254740991
detailstringrequiredcodestringrequiredrequest_idstringrequiredissuesobject[]Show propertiesHide properties
Array of
objectpathstringrequiredmessagestringrequired413The request body or attachments are too large.
typestringrequiredtitlestringrequiredstatusintegerrequiredmin -9007199254740991 · max 9007199254740991
detailstringrequiredcodestringrequiredrequest_idstringrequiredissuesobject[]Show propertiesHide properties
Array of
objectpathstringrequiredmessagestringrequired415The request body is not JSON.
typestringrequiredtitlestringrequiredstatusintegerrequiredmin -9007199254740991 · max 9007199254740991
detailstringrequiredcodestringrequiredrequest_idstringrequiredissuesobject[]Show propertiesHide properties
Array of
objectpathstringrequiredmessagestringrequired422The request body failed validation.
typestringrequiredtitlestringrequiredstatusintegerrequiredmin -9007199254740991 · max 9007199254740991
detailstringrequiredcodestringrequiredrequest_idstringrequiredissuesobject[]Show propertiesHide properties
Array of
objectpathstringrequiredmessagestringrequired429The organisation's request budget is spent (`too_many_requests`), or an upstream mail provider is throttling (`rate_limited`).
typestringrequiredtitlestringrequiredstatusintegerrequiredmin -9007199254740991 · max 9007199254740991
detailstringrequiredcodestringrequiredrequest_idstringrequiredissuesobject[]Show propertiesHide properties
Array of
objectpathstringrequiredmessagestringrequired500An internal error occurred.
typestringrequiredtitlestringrequiredstatusintegerrequiredmin -9007199254740991 · max 9007199254740991
detailstringrequiredcodestringrequiredrequest_idstringrequiredissuesobject[]Show propertiesHide properties
Array of
objectpathstringrequiredmessagestringrequired502An upstream mail provider failed.
typestringrequiredtitlestringrequiredstatusintegerrequiredmin -9007199254740991 · max 9007199254740991
detailstringrequiredcodestringrequiredrequest_idstringrequiredissuesobject[]Show propertiesHide properties
Array of
objectpathstringrequiredmessagestringrequired503The service is temporarily unavailable.
typestringrequiredtitlestringrequiredstatusintegerrequiredmin -9007199254740991 · max 9007199254740991
detailstringrequiredcodestringrequiredrequest_idstringrequiredissuesobject[]Show propertiesHide properties
Array of
objectpathstringrequiredmessagestringrequired