Create limit group
POST
/providers/{providerID}/limit-groups
Create a limit group: a named set of ceilings that applies to its member participants, between your provider default and a participant override.
Auth: API key or bearer token. Scoped to the calling provider.
Request
curl -X POST https://api.moov.money/providers/{providerID}/limit-groups \
-u "$MOOV_API_KEY_ID:$MOOV_API_KEY_SECRET" \
-H "X-Moov-Version: v2026.10.00" \
-H "Content-Type: application/json" \
-d '{
"dailyAmount": {
"currency": {
"code": "USD",
"decimalPlaces": 2
},
"value": "1000.00"
},
"dailySendCount": 10,
"description": "Higher limits for premium customers",
"monthlyAmount": {
"currency": {
"code": "USD",
"decimalPlaces": 2
},
"value": "10000.00"
},
"name": "Premium",
"perTransactionAmount": {
"currency": {
"code": "USD",
"decimalPlaces": 2
},
"value": "500.00"
},
"weeklyAmount": {
"currency": {
"code": "USD",
"decimalPlaces": 2
},
"value": "2500.00"
}
}'Responses
The resource was successfully created.
{
"group": {
"createdOn": "2026-08-31T12:00:00Z",
"currency": "USD",
"dailyAmount": {
"currency": {
"code": "USD",
"decimalPlaces": 2
},
"value": "2500.00"
},
"dailySendCount": 25,
"description": "Higher limits for premium customers",
"groupID": "grp_01HF5J9ZKQT4RXP8M2VYBN3D",
"monthlyAmount": {
"currency": {
"code": "USD",
"decimalPlaces": 2
},
"value": "25000.00"
},
"name": "Premium",
"perTransactionAmount": {
"currency": {
"code": "USD",
"decimalPlaces": 2
},
"value": "1000.00"
},
"versionID": "ver_01HF5J9ZKQT4RXP8M2VYBN3D",
"weeklyAmount": {
"currency": {
"code": "USD",
"decimalPlaces": 2
},
"value": "5000.00"
}
}
}Malformed request: the body or headers failed validation.
Response body application/problem+json
RFC 9457 Problem Details error body, served as
application/problem+json.
From v2026.10.00, every error response that has a body uses this schema.type
string
requiredURI that tells you which problem occurred. Branch on this value; it never
changes. Moov problem types look like
https://api.moov.money/errors#<code> (for
example invalid-request, idempotency-key-reused, or
idempotency-request-in-progress). Treat the value as
an opaque constant and do not fetch it. about:blank means the HTTP
status code says everything there is to know.title
string
requiredShort human-readable name of the problem type. Fixed per type; defaults to the HTTP status text.
status
integer<int32>
requiredThe HTTP status code of this response.
detail
stringHuman-readable explanation of this specific occurrence.
instance
stringURI reference that identifies this specific occurrence.
errors
array<object>The request-body fields that failed validation. Present on validation errors only.
Show child attributes
errors[]
pointer
string
requiredRFC 6901 JSON Pointer to the field, using the public JSON field names. If the field is missing, the pointer shows where it belongs.
detail
string
requiredWhat is wrong with the field.
Authentication missing, invalid, or insufficient.
Authentication present but the action is forbidden for this principal/claim.
The request was well-formed but couldn’t be processed (e.g. card declined).
Response body application/problem+json
RFC 9457 Problem Details error body, served as
application/problem+json.
From v2026.10.00, every error response that has a body uses this schema.type
string
requiredURI that tells you which problem occurred. Branch on this value; it never
changes. Moov problem types look like
https://api.moov.money/errors#<code> (for
example invalid-request, idempotency-key-reused, or
idempotency-request-in-progress). Treat the value as
an opaque constant and do not fetch it. about:blank means the HTTP
status code says everything there is to know.title
string
requiredShort human-readable name of the problem type. Fixed per type; defaults to the HTTP status text.
status
integer<int32>
requiredThe HTTP status code of this response.
detail
stringHuman-readable explanation of this specific occurrence.
instance
stringURI reference that identifies this specific occurrence.
errors
array<object>The request-body fields that failed validation. Present on validation errors only.
Show child attributes
errors[]
pointer
string
requiredRFC 6901 JSON Pointer to the field, using the public JSON field names. If the field is missing, the pointer shows where it belongs.
detail
string
requiredWhat is wrong with the field.
Headers
X-Moov-Version
stringSet this header to the API version being targeted (e.g.
v2026.10.00). When omitted, the server applies its default version.Path parameters
providerID
string
requiredYour provider account ID.
Request
application/json
A limit group to create.
name
string
[1 to 128] characters
requiredDisplay name. Must be 1–128 characters.
description
stringOptional description. At most 512 characters.
perTransactionAmount
objectPer-send amount ceiling.
Show child attributes
perTransactionAmount
value
string
requiredDecimal amount as a string.
currency
object
requiredISO 4217 currency descriptor.
Show child attributes
perTransactionAmount.currency
code
string
requiredUppercase 3-letter ISO 4217 currency code.
decimalPlaces
integer<uint8>
requiredNumber of minor-unit decimal places for
code. Required.numericCode
stringISO 4217 numeric currency code, if known. Informational only.
name
stringHuman-readable currency name, if known. Informational only.
dailyAmount
objectTrailing 24h amount ceiling.
Show child attributes
dailyAmount
value
string
requiredDecimal amount as a string.
currency
object
requiredISO 4217 currency descriptor.
Show child attributes
dailyAmount.currency
code
string
requiredUppercase 3-letter ISO 4217 currency code.
decimalPlaces
integer<uint8>
requiredNumber of minor-unit decimal places for
code. Required.numericCode
stringISO 4217 numeric currency code, if known. Informational only.
name
stringHuman-readable currency name, if known. Informational only.
weeklyAmount
objectTrailing 7d amount ceiling.
Show child attributes
weeklyAmount
value
string
requiredDecimal amount as a string.
currency
object
requiredISO 4217 currency descriptor.
Show child attributes
weeklyAmount.currency
code
string
requiredUppercase 3-letter ISO 4217 currency code.
decimalPlaces
integer<uint8>
requiredNumber of minor-unit decimal places for
code. Required.numericCode
stringISO 4217 numeric currency code, if known. Informational only.
name
stringHuman-readable currency name, if known. Informational only.
monthlyAmount
objectTrailing 30d amount ceiling.
Show child attributes
monthlyAmount
value
string
requiredDecimal amount as a string.
currency
object
requiredISO 4217 currency descriptor.
Show child attributes
monthlyAmount.currency
code
string
requiredUppercase 3-letter ISO 4217 currency code.
decimalPlaces
integer<uint8>
requiredNumber of minor-unit decimal places for
code. Required.numericCode
stringISO 4217 numeric currency code, if known. Informational only.
name
stringHuman-readable currency name, if known. Informational only.
dailySendCount
integer<int64>Trailing 24h send-count ceiling.
Response
Response envelope for a single limit group; the group is nested under
group.group
object
requiredThe limit group.
Show child attributes
group
groupID
string
requiredSystem-assigned group identifier.
name
string
[1 to 128] characters
requiredDisplay name. Must be 1–128 characters.
description
stringOptional description. At most 512 characters.
currency
string
requiredThree-letter ISO 4217 currency the group is denominated in (v1 USD-only).
perTransactionAmount
objectPer-send amount ceiling.
Show child attributes
group.perTransactionAmount
value
string
requiredDecimal amount as a string.
currency
object
requiredISO 4217 currency descriptor.
Show child attributes
group.perTransactionAmount.currency
code
string
requiredUppercase 3-letter ISO 4217 currency code.
decimalPlaces
integer<uint8>
requiredNumber of minor-unit decimal places for
code. Required.numericCode
stringISO 4217 numeric currency code, if known. Informational only.
name
stringHuman-readable currency name, if known. Informational only.
dailyAmount
objectTrailing 24h amount ceiling.
Show child attributes
group.dailyAmount
value
string
requiredDecimal amount as a string.
currency
object
requiredISO 4217 currency descriptor.
Show child attributes
group.dailyAmount.currency
code
string
requiredUppercase 3-letter ISO 4217 currency code.
decimalPlaces
integer<uint8>
requiredNumber of minor-unit decimal places for
code. Required.numericCode
stringISO 4217 numeric currency code, if known. Informational only.
name
stringHuman-readable currency name, if known. Informational only.
weeklyAmount
objectTrailing 7d amount ceiling.
Show child attributes
group.weeklyAmount
value
string
requiredDecimal amount as a string.
currency
object
requiredISO 4217 currency descriptor.
Show child attributes
group.weeklyAmount.currency
code
string
requiredUppercase 3-letter ISO 4217 currency code.
decimalPlaces
integer<uint8>
requiredNumber of minor-unit decimal places for
code. Required.numericCode
stringISO 4217 numeric currency code, if known. Informational only.
name
stringHuman-readable currency name, if known. Informational only.
monthlyAmount
objectTrailing 30d amount ceiling.
Show child attributes
group.monthlyAmount
value
string
requiredDecimal amount as a string.
currency
object
requiredISO 4217 currency descriptor.
Show child attributes
group.monthlyAmount.currency
code
string
requiredUppercase 3-letter ISO 4217 currency code.
decimalPlaces
integer<uint8>
requiredNumber of minor-unit decimal places for
code. Required.numericCode
stringISO 4217 numeric currency code, if known. Informational only.
name
stringHuman-readable currency name, if known. Informational only.
dailySendCount
integer<int64>Trailing 24h send-count ceiling.
versionID
string
requiredLatest version ID; send this back as
expectedVersionID on your next mutation.createdOn
string<date-time>
requiredWhen this version was created.