API reference · Communities & institutions
Credit union notices GET Read the notice register GET /credit-union/{reference}/notice
Every attempt, with the content as it was sent, the address as it stood, and whether it served.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Query parameters Name Default codeOptional positionOptional statusOptional page0 size25
Example Response: GenericResponseNoticePageResponse
curl Response
Copy curl -X GET "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/notice?page=value&size=25" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"data": {
"content": [
{
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"unionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"noticeCode": "AGM_NOTICE",
"subjectPositionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"subjectUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"recipientUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"triggerReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"renderedSubject": "string",
"renderedContent": "string",
"contentHash": "string",
"language": "string",
"languageFallbackUsed": true,
"classification": "TRANSACTIONAL",
"channel": "SMS",
"addressUsed": "string",
"senderIdUsed": "string",
"senderFallbackUsed": true,
"dispatchedAt": "2026-09-25T10:00:00Z",
"dispatchStatus": "QUEUED",
"providerReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"failureReason": "string",
"fallbackOfNoticeReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"attemptNumber": 0,
"servedAt": "2026-09-25T10:00:00Z",
"periodEndsOn": "2026-09-25",
"acknowledgedAt": "2026-09-25T10:00:00Z"
}
],
"page": 0,
"size": 0,
"totalElements": 0,
"totalPages": 0
},
"description": "Notices retrieved successfully"
} Responses Status When 200Notices retrieved successfully
POST Serve a notice POST /credit-union/{reference}/notice
Renders the notice from this union's template, resolves who is entitled to receive it, and queues one record per recipient per channel attempt. Who receives depends on the subject: a corporate member's live signatories, a junior's guardian, a society's office holders. A parent serving on a society reaches its officers, never its members — the one exception is the supervision mandate, which the society's members must be told about directly.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live Content-Typeapplication/json
Path parameters Example Request body: ServeNoticeRequest · Response: GenericResponseNoticeServiceResponse
curl Request Response
Copy curl -X POST "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/notice" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" \
-H "Content-Type: application/json" \
-d '{
"noticeCode": "AGM_NOTICE",
"subjectPositionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"subjectUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"triggerReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"eventOn": "2026-09-25",
"parameters": {}
}' Copy {
"noticeCode": "AGM_NOTICE",
"subjectPositionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"subjectUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"triggerReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"eventOn": "2026-09-25",
"parameters": {}
} Copy {
"data": {
"noticeCode": "AGM_NOTICE",
"triggerReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"served": true,
"firstServedAt": "2026-09-25T10:00:00Z",
"periodEndsOn": "2026-09-25",
"periodElapsed": true,
"recipientsServed": 0,
"recipientsUnreached": 0,
"noticeReferences": [
"string"
]
},
"description": "Notice queued successfully"
} Responses Status When 200Notice queued successfully
GET Read the notice templates in force GET /credit-union/{reference}/notice-template
The system catalogue with this union's overrides applied. Every entry is transactional, because a statutory notice routed as promotional may not reach a member on a do-not-disturb list — and the union would believe it had served notice.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: GenericResponseListNoticeTemplateResponse
curl Response
Copy curl -X GET "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/notice-template" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"data": [
{
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"unionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"noticeCode": "AGM_NOTICE",
"language": "string",
"subject": "string",
"body": "string",
"classification": "TRANSACTIONAL",
"channelOrder": [
"SMS"
],
"periodDays": 0,
"periodBasis": "CLEAR_DAYS",
"systemDefined": true
}
],
"description": "Notice templates retrieved successfully"
} Responses Status When 200Notice templates retrieved successfully
PUT Override a notice template's wording PUT /credit-union/{reference}/notice-template
Wording, language and channel order are the union's. The classification and the notice period are not, and sending a different classification is refused rather than ignored.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live Content-Typeapplication/json
Path parameters Example Request body: OverrideNoticeTemplateRequest · Response: GenericResponseNoticeTemplateResponse
curl Request Response
Copy curl -X PUT "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/notice-template" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" \
-H "Content-Type: application/json" \
-d '{
"noticeCode": "AGM_NOTICE",
"language": "string",
"subject": "string",
"body": "string",
"channelOrder": [
"SMS"
],
"classification": "TRANSACTIONAL"
}' Copy {
"noticeCode": "AGM_NOTICE",
"language": "string",
"subject": "string",
"body": "string",
"channelOrder": [
"SMS"
],
"classification": "TRANSACTIONAL"
} Copy {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"unionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"noticeCode": "AGM_NOTICE",
"language": "string",
"subject": "string",
"body": "string",
"classification": "TRANSACTIONAL",
"channelOrder": [
"SMS"
],
"periodDays": 0,
"periodBasis": "CLEAR_DAYS",
"systemDefined": true
},
"description": "Notice template overridden successfully"
} Responses Status When 200Notice template overridden successfully
GET Ask whether notice has been served for something GET /credit-union/{reference}/notice/service
The check a guarantee call, a supervision mandate and a tariff change all make. Service is on successful dispatch to an address of record, and the period runs from that, not from the attempt — so a notice that bounced and was re-sent three days later has a period that starts three days later.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Query parameters Name Default codeOptional triggerOptional
Example Response: GenericResponseNoticeServiceResponse
curl Response
Copy curl -X GET "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/notice/service?code=value&trigger=value" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"data": {
"noticeCode": "AGM_NOTICE",
"triggerReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"served": true,
"firstServedAt": "2026-09-25T10:00:00Z",
"periodEndsOn": "2026-09-25",
"periodElapsed": true,
"recipientsServed": 0,
"recipientsUnreached": 0,
"noticeReferences": [
"string"
]
},
"description": "Notice service retrieved successfully"
} Responses Status When 200Notice service retrieved successfully
GET Read one notice as it was served GET /credit-union/{reference}/notice/{noticeReference}
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name referencenoticeReference
Example Response: GenericResponseNoticeResponse
curl Response
Copy curl -X GET "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/notice/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"unionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"noticeCode": "AGM_NOTICE",
"subjectPositionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"subjectUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"recipientUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"triggerReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"renderedSubject": "string",
"renderedContent": "string",
"contentHash": "string",
"language": "string",
"languageFallbackUsed": true,
"classification": "TRANSACTIONAL",
"channel": "SMS",
"addressUsed": "string",
"senderIdUsed": "string",
"senderFallbackUsed": true,
"dispatchedAt": "2026-09-25T10:00:00Z",
"dispatchStatus": "QUEUED",
"providerReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"failureReason": "string",
"fallbackOfNoticeReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"attemptNumber": 0,
"servedAt": "2026-09-25T10:00:00Z",
"periodEndsOn": "2026-09-25",
"acknowledgedAt": "2026-09-25T10:00:00Z"
},
"description": "Notice retrieved successfully"
} Responses Status When 200Notice retrieved successfully
POST Acknowledge a notice POST /credit-union/{reference}/notice/{noticeReference}/acknowledge
Acknowledgement is evidence a member saw it. It is never required for service.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name referencenoticeReference
Example Response: GenericResponseNoticeResponse
curl Response
Copy curl -X POST "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/notice/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/acknowledge" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"unionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"noticeCode": "AGM_NOTICE",
"subjectPositionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"subjectUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"recipientUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"triggerReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"renderedSubject": "string",
"renderedContent": "string",
"contentHash": "string",
"language": "string",
"languageFallbackUsed": true,
"classification": "TRANSACTIONAL",
"channel": "SMS",
"addressUsed": "string",
"senderIdUsed": "string",
"senderFallbackUsed": true,
"dispatchedAt": "2026-09-25T10:00:00Z",
"dispatchStatus": "QUEUED",
"providerReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"failureReason": "string",
"fallbackOfNoticeReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"attemptNumber": 0,
"servedAt": "2026-09-25T10:00:00Z",
"periodEndsOn": "2026-09-25",
"acknowledgedAt": "2026-09-25T10:00:00Z"
},
"description": "Notice acknowledged successfully"
} Responses Status When 200Notice acknowledged successfully
GET Read the union's sender profile GET /credit-union/{reference}/sender-profile
The union is the sender. An alphanumeric SMS sender ID must be registered and approved per carrier before it can be used.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: GenericResponseSenderProfileResponse
curl Response
Copy curl -X GET "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/sender-profile" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"unionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"displayName": "string",
"smsSenderId": "string",
"smsSenderIdStatus": "UNREGISTERED",
"smsSenderIdApprovedFor": "string",
"smsSenderIdReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"emailFromName": "string",
"emailReplyTo": "string",
"logoDocumentReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"supportContact": "string",
"defaultLanguage": "string"
},
"description": "Sender profile retrieved successfully"
} Responses Status When 200Sender profile retrieved successfully
PUT Update the union's sender profile PUT /credit-union/{reference}/sender-profile
Until the sender ID is APPROVED, notices go out under the tenant's registered ID with the union's name in the body, and each notice records that it did. Sending silently under a federation's brand, or not sending at all, are both worse than an explicit fallback.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live Content-Typeapplication/json
Path parameters Example Request body: UpdateSenderProfileRequest · Response: GenericResponseSenderProfileResponse
curl Request Response
Copy curl -X PUT "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/sender-profile" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" \
-H "Content-Type: application/json" \
-d '{
"displayName": "string",
"smsSenderId": "LAGOSTEACH",
"smsSenderIdStatus": "UNREGISTERED",
"smsSenderIdApprovedFor": "string",
"smsSenderIdReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"emailFromName": "string",
"emailReplyTo": "string",
"logoDocumentReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"supportContact": "string",
"defaultLanguage": "string"
}' Copy {
"displayName": "string",
"smsSenderId": "LAGOSTEACH",
"smsSenderIdStatus": "UNREGISTERED",
"smsSenderIdApprovedFor": "string",
"smsSenderIdReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"emailFromName": "string",
"emailReplyTo": "string",
"logoDocumentReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"supportContact": "string",
"defaultLanguage": "string"
} Copy {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"unionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"displayName": "string",
"smsSenderId": "string",
"smsSenderIdStatus": "UNREGISTERED",
"smsSenderIdApprovedFor": "string",
"smsSenderIdReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"emailFromName": "string",
"emailReplyTo": "string",
"logoDocumentReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"supportContact": "string",
"defaultLanguage": "string"
},
"description": "Sender profile updated successfully"
} Responses Status When 200Sender profile updated successfully