Validate Credentials
Request, response and authentication details for your Mailat instance.
/api/v1/settings/aws/validateValidateCredentials checks if AWS credentials are valid
Authentication & compatibility
This operation requires an active human session. API keys cannot call it. Additional role or MFA checks may apply.
Legacy AWS provisioning handler with a distinct response envelope. Prefer domain setup-sending/sending-status and explicit /inbox/setup for the current SES workflow; this handler's compatibility is not verified by the documentation.
Contract 2026-10-04. Your running instance's /api/v1/openapi.json is authoritative for its deployed release.
Request
Set MAILAT_BASE_URL to your instance origin (without /api/v1) and MAILAT_TOKEN to an appropriate credential. Replace path placeholders and example data before running. These examples do not execute in this page.
curl --request POST "$MAILAT_BASE_URL/api/v1/settings/aws/validate" \
--header "Authorization: Bearer $MAILAT_TOKEN" \
--header 'Content-Type: application/json' \
--data @request.jsonBuild the request from the schema below; request.json and upload paths are local placeholders.
Request body (required)
application/json
bodyobjectrequiredFields · handler.ValidateCredentialsRequest
accessKeyIdstringrequiredregionstringrequiredsecretAccessKeystringrequiredResponses
HTTP statuses and body shapes below come from the pinned contract. Not every shared error applies to every request. Retain the original idempotency key when retrying a send.
200 · Success
application/json
responseobjectFields
messagestringvalidboolean400 · Invalid input
application/json
responseone ofVariant 1objectFields
codeintegerrequiredmessagestringrequiredVariant 2objectFields
errorstringrequiredmessagestringsuccessbooleanvalidboolean401 · Missing, expired or revoked authentication
application/json
responseone ofVariant 1objectFields
codeintegerrequiredmessagestringrequiredVariant 2objectFields
errorstringrequiredmessagestringsuccessbooleanvalidboolean403 · Insufficient permission
application/json
responseobjectFields
codeintegerrequiredmessagestringrequired404 · Resource not found
application/json
responseobjectFields
codeintegerrequiredmessagestringrequired409 · Conflict or changed idempotency payload
application/json
responseobjectFields
codeintegerrequiredmessagestringrequired410 · Recovery cursor expired; resynchronize
application/json
responseobjectFields
codeintegerrequiredmessagestringrequired429 · Rate limit exceeded; respect Retry-After
Header: Retry-AfterintegerSeconds until the next fixed-minute request window.
minimum: 1
application/json
responseobjectFields
codeintegerrequiredmessagestringrequired500 · Internal failure; retain the idempotency key
application/json
responseone ofVariant 1objectFields
codeintegerrequiredmessagestringrequiredVariant 2objectFields
errorstringrequiredmessagestringsuccessbooleanvalidboolean