Credit union offices
- GET
/credit-union/{reference}/governanceRead who currently holds office - POST
/credit-union/{reference}/nominationNominate a representative - POST
/credit-union/{reference}/nomination/{nominationReference}/withdrawWithdraw a nomination - GET
/credit-union/{reference}/officeList the offices of a credit union - POST
/credit-union/{reference}/office/appointmentAppoint a member to an office - POST
/credit-union/{reference}/office/appointment/{appointmentReference}/removeRemove an office holder - POST
/credit-union/{reference}/office/appointment/{appointmentReference}/resignResign an office
GET Read who currently holds office
GET /credit-union/{reference}/governance
Live terms only. A term ends in the query rather than when a scheduler next runs, so a lapsed term carries no authority even before it is marked EXPIRED.
Headers
| Name | Notes |
|---|---|
Authorization | Bearer token |
X-Tenant | Your tenant |
X-Environment | test or live |
Path parameters
| Name |
|---|
reference |
Example
Response: GenericResponseListMemberOfficeResponse
curl -X GET "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/governance" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" {
"data": [
{
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"positionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"heldByUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"nominationReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"officeCode": "CHAIRPERSON",
"unionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"termNumber": 0,
"consecutiveTermNumber": 0,
"status": "NOMINATED",
"termStartsOn": "2026-09-25",
"termEndsOn": "2026-09-25",
"electionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"resignedAt": "2026-09-25T10:00:00Z",
"removedAt": "2026-09-25T10:00:00Z",
"removalReason": "string"
}
],
"description": "Governance retrieved successfully"
} Responses
| Status | When |
|---|---|
200 | Governance retrieved successfully |
POST Nominate a representative
POST /credit-union/{reference}/nomination
How a member society puts a person in its seat at a secondary or apex union. The nominee's standing at that union is the office and nothing else: they do not become a member of it and cannot borrow from it.
Headers
| Name | Notes |
|---|---|
Authorization | Bearer token |
X-Tenant | Your tenant |
X-Environment | test or live |
Content-Type | application/json |
Path parameters
| Name |
|---|
reference |
Example
Request body: NominateToOfficeRequest · Response: GenericResponseNominationResponse
curl -X POST "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/nomination" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" \
-H "Content-Type: application/json" \
-d '{
"officeCode": "CHAIRPERSON",
"positionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"nomineeUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"resolutionDocumentReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e"
}' {
"officeCode": "CHAIRPERSON",
"positionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"nomineeUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"resolutionDocumentReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e"
} {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"positionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"officeReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"nomineeUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"resolutionDocumentReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"nominatedOn": "2026-09-25",
"withdrawnOn": "2026-09-25",
"withdrawalReason": "string"
},
"description": "Nomination recorded successfully"
} Responses
| Status | When |
|---|---|
200 | Nomination recorded successfully |
POST Withdraw a nomination
POST /credit-union/{reference}/nomination/{nominationReference}/withdraw
Ends any term held on it in the same transaction. It is how a society recalls its representative without the union's board removing anyone.
Headers
| Name | Notes |
|---|---|
Authorization | Bearer token |
X-Tenant | Your tenant |
X-Environment | test or live |
Content-Type | application/json |
Path parameters
| Name |
|---|
reference |
nominationReference |
Example
Request body: OfficeDecisionRequest · Response: GenericResponseNominationResponse
curl -X POST "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/nomination/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/withdraw" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" \
-H "Content-Type: application/json" \
-d '{
"reason": "string"
}' {
"reason": "string"
} {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"positionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"officeReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"nomineeUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"resolutionDocumentReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"nominatedOn": "2026-09-25",
"withdrawnOn": "2026-09-25",
"withdrawalReason": "string"
},
"description": "Nomination withdrawn successfully"
} Responses
| Status | When |
|---|---|
200 | Nomination withdrawn successfully |
GET List the offices of a credit union
GET /credit-union/{reference}/office
Seeded at activation. An office carries permissions and a term. It is held in one union only: financial authority is never inherited down the tree, so a parent's treasurer is not a treasurer of the child.
Headers
| Name | Notes |
|---|---|
Authorization | Bearer token |
X-Tenant | Your tenant |
X-Environment | test or live |
Path parameters
| Name |
|---|
reference |
Example
Response: GenericResponseListOfficeResponse
curl -X GET "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/office" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" {
"data": [
{
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"officeCode": "CHAIRPERSON",
"name": "string",
"rank": 0,
"seats": 0,
"appointmentMethod": "ELECTED",
"termMonths": 0,
"maximumConsecutiveTerms": 0,
"requiredClassCodes": [
"LIFE"
],
"minimumMembershipMonths": 0,
"permissions": [
"string"
],
"incompatibleWithOfficeCodes": [
"CHAIRPERSON"
],
"requiresSuitability": true,
"active": true
}
],
"description": "Offices retrieved successfully"
} Responses
| Status | When |
|---|---|
200 | Offices retrieved successfully |
POST Appoint a member to an office
POST /credit-union/{reference}/office/appointment
Checks the seat count, the member's class, the minimum membership period, the incompatible offices in both directions and, for an elected office, that a ratified election names them. Nobody appoints to an office above their own.
Headers
| Name | Notes |
|---|---|
Authorization | Bearer token |
X-Tenant | Your tenant |
X-Environment | test or live |
Content-Type | application/json |
Path parameters
| Name |
|---|
reference |
Example
Request body: AppointToOfficeRequest · Response: GenericResponseMemberOfficeResponse
curl -X POST "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/office/appointment" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" \
-H "Content-Type: application/json" \
-d '{
"officeCode": "CHAIRPERSON",
"positionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"heldByUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"termStartsOn": "2026-09-25",
"electionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e"
}' {
"officeCode": "CHAIRPERSON",
"positionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"heldByUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"termStartsOn": "2026-09-25",
"electionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e"
} {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"positionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"heldByUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"nominationReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"officeCode": "CHAIRPERSON",
"unionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"termNumber": 0,
"consecutiveTermNumber": 0,
"status": "NOMINATED",
"termStartsOn": "2026-09-25",
"termEndsOn": "2026-09-25",
"electionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"resignedAt": "2026-09-25T10:00:00Z",
"removedAt": "2026-09-25T10:00:00Z",
"removalReason": "string"
},
"description": "Appointment made successfully"
} Responses
| Status | When |
|---|---|
200 | Appointment made successfully |
POST Remove an office holder
POST /credit-union/{reference}/office/appointment/{appointmentReference}/remove
The reason is recorded on the term and on the event.
Headers
| Name | Notes |
|---|---|
Authorization | Bearer token |
X-Tenant | Your tenant |
X-Environment | test or live |
Content-Type | application/json |
Path parameters
| Name |
|---|
reference |
appointmentReference |
Example
Request body: OfficeDecisionRequest · Response: GenericResponseMemberOfficeResponse
curl -X POST "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/office/appointment/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/remove" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" \
-H "Content-Type: application/json" \
-d '{
"reason": "string"
}' {
"reason": "string"
} {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"positionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"heldByUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"nominationReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"officeCode": "CHAIRPERSON",
"unionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"termNumber": 0,
"consecutiveTermNumber": 0,
"status": "NOMINATED",
"termStartsOn": "2026-09-25",
"termEndsOn": "2026-09-25",
"electionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"resignedAt": "2026-09-25T10:00:00Z",
"removedAt": "2026-09-25T10:00:00Z",
"removalReason": "string"
},
"description": "Office holder removed successfully"
} Responses
| Status | When |
|---|---|
200 | Office holder removed successfully |
POST Resign an office
POST /credit-union/{reference}/office/appointment/{appointmentReference}/resign
Headers
| Name | Notes |
|---|---|
Authorization | Bearer token |
X-Tenant | Your tenant |
X-Environment | test or live |
Path parameters
| Name |
|---|
reference |
appointmentReference |
Example
Response: GenericResponseMemberOfficeResponse
curl -X POST "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/office/appointment/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/resign" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"positionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"heldByUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"nominationReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"officeCode": "CHAIRPERSON",
"unionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"termNumber": 0,
"consecutiveTermNumber": 0,
"status": "NOMINATED",
"termStartsOn": "2026-09-25",
"termEndsOn": "2026-09-25",
"electionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"resignedAt": "2026-09-25T10:00:00Z",
"removedAt": "2026-09-25T10:00:00Z",
"removalReason": "string"
},
"description": "Resignation recorded successfully"
} Responses
| Status | When |
|---|---|
200 | Resignation recorded successfully |
Generated from the OpenAPI document. Branch on the HTTP status: there is no machine-readable error code on the wire. Errors