API reference · Communities & institutions

Communities

Group pots with roles, campaigns and multi-signature payouts. About communities Live

GET List communities

GET /community

Lists the communities visible to the caller.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Query parameters

NameDefault
statusOptional
pageNumberOptional
pageSizeOptional

Example

Response: List<CommunityResponse>

curl -X GET "https://api.bridgemoni.com/community?status=value&pageNumber=value&pageSize=value" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Communities fetched successfully

POST Create a community

POST /community

Creates a community - a real-world group that holds money collectively. It starts inactive and must be activated before it can accept members or open accounts.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Example

Request body: CommunityRequest · Response: CommunityResponse

curl -X POST "https://api.bridgemoni.com/community" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Ada Obi",
    "description": "March payroll",
    "category": "text",
    "visibility": "PUBLIC",
    "joinPolicy": "OPEN",
    "parentCommunityReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
    "countryCode": "NG",
    "defaultCurrencyCode": "NGN",
    "maximumMembers": 1,
    "payoutApprovalsRequired": 1
  }'

Responses

StatusWhen
200Community created successfully
400Too few approvals required
403Your role in this community does not allow this
404Community not found
409Community is closed; Community name already in use; Nesting limit reached

DELETE Close a community

DELETE /community/{reference}

Closes a community permanently. Distinct from suspension, which is reversible.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference

Example

Request body: CloseCommunityRequest · Response: CommunityResponse

curl -X DELETE "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "reason": "March payroll"
  }'

Responses

StatusWhen
200Community closed
403Your role in this community does not allow this
404Community not found
409Community is closed; Community is not a draft; Community is not active; Sub-communities are still open

GET Fetch a community

GET /community/{reference}

Fetches one community by reference.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference

Example

Response: CommunityResponse

curl -X GET "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Community fetched successfully
403Your role in this community does not allow this
404Community not found

PUT Update a community

PUT /community/{reference}

Updates a community's own attributes. Does not change its members, roles or accounts.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference

Example

Request body: UpdateCommunityRequest · Response: CommunityResponse

curl -X PUT "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Ada Obi",
    "description": "March payroll",
    "category": "text",
    "visibility": "PUBLIC",
    "joinPolicy": "OPEN",
    "maximumMembers": 1,
    "payoutApprovalsRequired": 1,
    "allowDirectAdd": true
  }'

Responses

StatusWhen
200Community updated successfully
400Too few approvals required
403Your role in this community does not allow this
404Community not found
409Community is closed; Community name already in use; Member limit is below the current roll

GET List a community's accounts

GET /community/{reference}/account

Lists the accounts a community holds, one per currency.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference

Example

Response: List<CommunityAccountResponse>

curl -X GET "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/account" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Community accounts fetched successfully
403Your role in this community does not allow this
404Community not found

POST Open a community account

POST /community/{reference}/account

Opens an account the community owns collectively, in a given currency. This is the pot: money in it belongs to the group, not to any one member.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference

Example

Request body: OpenCommunityAccountRequest · Response: CommunityAccountResponse

curl -X POST "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/account" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "currencyCode": "NGN"
  }'

Responses

StatusWhen
200Community account opened successfully
403Your role in this community does not allow this
404Community not found
409An account in this currency is already open; Community is not active

GET Fetch a community account statement

GET /community/{reference}/account/{currencyCode}/statement

Returns the pot's statement for one currency - every contribution in and every payout out, with who was responsible for each.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference
currencyCode

Query parameters

NameDefault
fromOptional
toOptional
pageNumberOptional
pageSizeOptional

Example

Response: List<CommunityStatementEntry>

curl -X GET "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/account/BRG-001/statement?from=value&to=value&pageNumber=value&pageSize=value" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Statement fetched successfully
403Your role in this community does not allow this
404Community not found; This community has no account in that currency

POST Activate a community

POST /community/{reference}/activate

Activates a community so it can accept members and open accounts.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference

Example

Response: CommunityResponse

curl -X POST "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/activate" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Community activated - it can now accept members and open accounts
403Only the community owner may do this
404Community not found
409Community is closed; Community is not a draft; Community is not active

GET List a community's campaigns

GET /community/{reference}/campaign

Lists the campaigns a community has run, open and closed.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference

Query parameters

NameDefault
statusOptional
pageNumberOptional
pageSizeOptional

Example

Response: List<CampaignResponse>

curl -X GET "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/campaign?status=value&pageNumber=value&pageSize=value" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Campaigns fetched successfully
403Your role in this community does not allow this
404Community not found

POST Create a funding campaign

POST /community/{reference}/campaign

Creates a campaign to raise money toward one named thing, with a target and a set of members expected to contribute.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference

Example

Request body: CampaignRequest · Response: CampaignResponse

curl -X POST "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/campaign" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Ada Obi",
    "description": "March payroll",
    "campaignType": "BILL",
    "targetAmount": 250000.0,
    "currencyCode": "NGN",
    "deadline": "2027-03-14T14:30:01",
    "contributionMode": "ASSIGNED",
    "approvalsRequired": 1,
    "allowOverfunding": true,
    "billProductCode": "Ada Obi",
    "billCustomerIdentifier": "March payroll",
    "beneficiaryAccountNumber": "0123456789",
    "beneficiaryUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e"
  }'

Responses

StatusWhen
200Campaign created successfully
400A contribution must be a positive amount
403Your role in this community does not allow this
404Community not found
409A campaign needs at least three signatories; Community is not active; This campaign has closed

GET Fetch a campaign

GET /community/{reference}/campaign/{campaignReference}

Fetches one campaign, including what has been raised against its target.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference
campaignReference

Example

Response: CampaignResponse

curl -X GET "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/campaign/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Campaign fetched successfully
403Your role in this community does not allow this
404Campaign not found; Community not found

POST Approve a campaign release

POST /community/{reference}/campaign/{campaignReference}/approve

Records one officer's signature on a pending release. The funds move once the quorum is met, so a partial approval is a successful call, not a failure.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference
campaignReference

Example

Request body: CommunityApprovalDecisionRequest · Response: CampaignResponse

curl -X POST "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/campaign/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/approve" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "comment": "March payroll"
  }'

Responses

StatusWhen
200Campaign approved
403You cannot sign for a release you requested; Your role in this community does not allow this
404Campaign not found; Community not found; This community has no account in that currency
409This campaign is not awaiting signatures; You have already decided on this campaign

PUT Assign campaign shares

PUT /community/{reference}/campaign/{campaignReference}/assignment

Sets what each member is expected to contribute toward the campaign's target.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference
campaignReference

Example

Request body: CampaignAssignmentRequest · Response: CampaignResponse

curl -X PUT "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/campaign/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/assignment" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "shares": [
      {
        "membershipReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
        "assignedAmount": 250000.0
      }
    ],
    "membershipReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
    "assignedAmount": 250000.0
  }'

Responses

StatusWhen
200Shares assigned successfully
403Your role in this community does not allow this
404Campaign not found; Community not found; Membership not found
409The assigned shares exceed the target; This campaign has already been opened

POST Waive a member's share

POST /community/{reference}/campaign/{campaignReference}/assignment/{membershipReference}/waive

Excuses one member from their assigned share, reducing what the campaign still expects from them without changing anyone else's.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference
campaignReference
membershipReference

Example

Request body: WaiveCampaignAssignmentRequest · Response: CampaignResponse

curl -X POST "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/campaign/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/assignment/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/waive" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "reason": "March payroll"
  }'

Responses

StatusWhen
200Assignment waived
400A role must grant at least one permission
403Your role in this community does not allow this
404Campaign not found; Community not found; Membership not found

POST Cancel a campaign

POST /community/{reference}/campaign/{campaignReference}/cancel

Cancels a campaign outright, returning what was contributed.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference
campaignReference

Example

Request body: CommunityApprovalDecisionRequest · Response: CampaignResponse

curl -X POST "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/campaign/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/cancel" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "comment": "March payroll"
  }'

Responses

StatusWhen
200Campaign cancelled
403Your role in this community does not allow this
404Campaign not found; Community not found
409This campaign is not awaiting signatures

POST Contribute to a campaign

POST /community/{reference}/campaign/{campaignReference}/contribution

Moves money from a member's own account into the campaign, counted against their assigned share.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference
campaignReference

Example

Request body: CampaignContributionRequest · Response: CampaignResponse

curl -X POST "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/campaign/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/contribution" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "amount": 250000.0,
    "narrative": "March payroll",
    "idempotencyKey": "text"
  }'

Responses

StatusWhen
200Contribution received successfully
400A contribution must be a positive amount
403Your role in this community does not allow this
404Campaign not found; Community not found; This community has no account in that currency
409That would take the campaign past its target; This campaign has closed; This campaign is not accepting contributions; You have no account in that currency

POST Open a campaign for contributions

POST /community/{reference}/campaign/{campaignReference}/open

Opens the campaign so members can begin contributing against their assigned shares.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference
campaignReference

Example

Response: CampaignResponse

curl -X POST "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/campaign/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/open" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Campaign is now accepting contributions
403Your role in this community does not allow this
404Campaign not found; Community not found; This community has no account in that currency
409A campaign needs at least three signatories; This campaign has already been opened

POST Reject a campaign release

POST /community/{reference}/campaign/{campaignReference}/reject

Rejects a pending release. Contributions already made are returned to the members who made them.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference
campaignReference

Example

Request body: CommunityApprovalDecisionRequest · Response: CampaignResponse

curl -X POST "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/campaign/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/reject" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "comment": "March payroll"
  }'

Responses

StatusWhen
200Campaign rejected - contributions are being returned
403Your role in this community does not allow this
404Campaign not found; Community not found
409This campaign is not awaiting signatures

POST Request release of campaign funds

POST /community/{reference}/campaign/{campaignReference}/release

Requests that the money raised be released for its stated purpose. The release waits for the signatures the community's quorum rules require.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference
campaignReference

Example

Response: CampaignResponse

curl -X POST "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/campaign/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/release" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Release requested - awaiting signatures
403Your role in this community does not allow this
404Campaign not found; Community not found
409This campaign has not reached its target

GET List a community's sub-communities

GET /community/{reference}/children

Lists the communities nested directly beneath this one, for groups that organise into chapters or branches.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference

Example

Response: List<CommunityResponse>

curl -X GET "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/children" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Sub-communities fetched successfully
403Your role in this community does not allow this
404Community not found

POST Contribute to a community pot

POST /community/{reference}/contribution

Moves money from a member's own account into the community's pot and records who contributed it.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference

Example

Request body: CommunityContributionRequest · Response: CommunityContributionResponse

curl -X POST "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/contribution" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "amount": 250000.0,
    "currencyCode": "NGN",
    "narrative": "March payroll",
    "scheduledAt": "2027-03-14T14:30:01",
    "recurrenceFrequency": "HOURLY",
    "recurrenceEndAt": "2027-03-14T14:30:01",
    "maximumOccurrences": 1,
    "idempotencyKey": "text"
  }'

Responses

StatusWhen
200Contribution received successfully
400A contribution must be a positive amount
403Your role in this community does not allow this
404Community not found
409Community is not active; This community's account is not active; You have no account in that currency

GET List a community's invitations

GET /community/{reference}/invitation

Lists invitations issued by the community and their current state.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference

Query parameters

NameDefault
statusOptional
pageNumberOptional
pageSizeOptional

Example

Response: List<CommunityInvitationResponse>

curl -X GET "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/invitation?status=value&pageNumber=value&pageSize=value" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Invitations fetched successfully
403Your role in this community does not allow this
404Community not found; Community role not found

POST Invite someone to join

POST /community/{reference}/invitation

Creates an invitation for a specific person, who joins by accepting its code.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference

Example

Request body: CommunityInvitationRequest · Response: CommunityInvitationResponse

curl -X POST "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/invitation" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "invitationType": "DIRECT",
    "inviteeIdentifierType": "MSISDN",
    "inviteeIdentifier": "text",
    "roleReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
    "expiresInDays": 1,
    "maximumUses": 1,
    "message": "March payroll"
  }'

Responses

StatusWhen
200Invitation created successfully
403Your role in this community does not allow this
404Community not found; Community role not found; This invitation cannot be used
409Community is not active; That role cannot be assigned; They have already been invited

DELETE Revoke an invitation

DELETE /community/{reference}/invitation/{invitationReference}

Revokes an invitation that has not yet been accepted.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference
invitationReference

Example

Response: CommunityInvitationResponse

curl -X DELETE "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/invitation/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Invitation revoked
403Your role in this community does not allow this
404Community not found; Community role not found; This invitation cannot be used
409This invitation has already been answered

GET List pending join requests

GET /community/{reference}/join-request

Returns the queue of people asking to join, for an officer to work through.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference

Query parameters

NameDefault
statusOptional
pageNumberOptional
pageSizeOptional

Example

Response: List<JoinRequestResponse>

curl -X GET "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/join-request?status=value&pageNumber=value&pageSize=value" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Join requests fetched successfully
403Your role in this community does not allow this
404Community not found

POST Apply to join a community

POST /community/{reference}/join-request

Submits a request to join, for a community that admits members by application rather than by invitation. The request waits for an officer's decision.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference

Example

Request body: JoinCommunityRequest · Response: JoinRequestResponse

curl -X POST "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/join-request" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "joinCode": "text",
    "message": "March payroll"
  }'

Responses

StatusWhen
200Join request submitted
403Too many failed attempts
404Community not found; Community role not found
409Already a member; Community is not active; Member limit reached; This community admits members by invitation only; You have already applied

DELETE Withdraw a join request

DELETE /community/{reference}/join-request/{joinRequestReference}

The requester withdraws their own pending request.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference
joinRequestReference

Example

Response: JoinRequestResponse

curl -X DELETE "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/join-request/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Join request withdrawn
404Community not found; Join request not found
409This application has already been decided

POST Approve a join request

POST /community/{reference}/join-request/{joinRequestReference}/approve

Approves a request to join. The requester becomes a member immediately.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference
joinRequestReference

Example

Request body: JoinRequestDecisionRequest · Response: JoinRequestResponse

curl -X POST "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/join-request/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/approve" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "roleReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
    "reviewNote": "March payroll"
  }'

Responses

StatusWhen
200Join request approved - the requester is now a member
403Your role in this community does not allow this
404Community not found; Community role not found; Join request not found
409Already a member; Member limit reached; That role cannot be assigned; This application has already been decided

POST Reject a join request

POST /community/{reference}/join-request/{joinRequestReference}/reject

Rejects a request to join.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference
joinRequestReference

Example

Request body: JoinRequestDecisionRequest · Response: JoinRequestResponse

curl -X POST "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/join-request/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/reject" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "roleReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
    "reviewNote": "March payroll"
  }'

Responses

StatusWhen
200Join request rejected
403Your role in this community does not allow this
404Community not found; Join request not found
409This application has already been decided

POST Leave a community

POST /community/{reference}/leave

The calling user leaves the community themselves, rather than being removed by an officer.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference

Example

Response: MembershipResponse

curl -X POST "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/leave" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200You have left the community
404Community not found; Membership not found
409That is not a valid change for this membership; The owner cannot leave or be removed

GET List a community's members

GET /community/{reference}/member

Returns the community's roll - who belongs to it and what authority each of them holds.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference

Query parameters

NameDefault
statusOptional
pageNumberOptional
pageSizeOptional

Example

Response: List<MembershipResponse>

curl -X GET "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/member?status=value&pageNumber=value&pageSize=value" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Members fetched successfully
403Your role in this community does not allow this
404Community not found

POST Add a member

POST /community/{reference}/member

Adds a person to the community's roll directly, without an invitation or a join request.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference

Example

Request body: AddMemberRequest · Response: MembershipResponse

curl -X POST "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/member" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "identifierType": "MSISDN",
    "identifier": "text",
    "roleReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
    "memberNumber": "text",
    "displayName": "Ada Obi"
  }'

Responses

StatusWhen
200Member added successfully
403Only the community owner may do this; That role outranks your own; Your role in this community does not allow this
404Community not found; Community role not found; No such user
409Already a member; Community is not active; Member limit reached; That role cannot be assigned; This community does not allow members to be added directly

DELETE Remove a member

DELETE /community/{reference}/member/{membershipReference}

Removes a member from the community's roll.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference
membershipReference

Example

Request body: MemberDecisionRequest · Response: MembershipResponse

curl -X DELETE "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/member/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "reason": "March payroll"
  }'

Responses

StatusWhen
200Member removed
403Your role in this community does not allow this
404Membership not found
409That is not a valid change for this membership; The owner cannot leave or be removed

GET Fetch one member

GET /community/{reference}/member/{membershipReference}

Fetches a single membership, including the role it carries.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference
membershipReference

Example

Response: MembershipResponse

curl -X GET "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/member/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Member fetched successfully
403That role outranks your own; Your role in this community does not allow this
404Community not found; Membership not found

POST Reinstate a suspended member

POST /community/{reference}/member/{membershipReference}/reinstate

Returns a suspended member to active.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference
membershipReference

Example

Response: MembershipResponse

curl -X POST "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/member/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/reinstate" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Member reinstated
403Your role in this community does not allow this
404Membership not found
409That is not a valid change for this membership; The owner cannot leave or be removed

PUT Change a member's role

PUT /community/{reference}/member/{membershipReference}/role

Assigns a different role to a member, changing what they are permitted to do inside the community - including whether their signature counts toward a quorum.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference
membershipReference

Example

Request body: AssignMemberRoleRequest · Response: MembershipResponse

curl -X PUT "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/member/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/role" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "roleReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
    "reason": "March payroll"
  }'

Responses

StatusWhen
200Member role updated successfully
403Only the community owner may do this; That role outranks your own; Your role in this community does not allow this
404Community not found; Community role not found; Membership not found
409That role cannot be assigned; The owner's role cannot be reassigned

POST Suspend a member

POST /community/{reference}/member/{membershipReference}/suspend

Suspends a member without removing them. They remain on the roll and their contribution history is preserved.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference
membershipReference

Example

Request body: MemberDecisionRequest · Response: MembershipResponse

curl -X POST "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/member/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/suspend" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "reason": "March payroll"
  }'

Responses

StatusWhen
200Member suspended
403Your role in this community does not allow this
404Membership not found
409That is not a valid change for this membership; The owner cannot leave or be removed

POST Transfer ownership

POST /community/{reference}/owner

Transfers ownership of the community to another member. A community always has exactly one owner, so this is a handover rather than an addition.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference

Example

Request body: TransferOwnershipRequest · Response: MembershipResponse

curl -X POST "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/owner" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "newOwnerMembershipReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
    "reason": "March payroll"
  }'

Responses

StatusWhen
200Ownership transferred
403Only the community owner may do this
404Community not found; Community role not found; Membership not found
409The successor is not an active member

GET List a community's payouts

GET /community/{reference}/payout

Lists payouts requested from the pot, pending and settled.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference

Query parameters

NameDefault
statusOptional
pageNumberOptional
pageSizeOptional

Example

Response: List<CommunityPayoutResponse>

curl -X GET "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/payout?status=value&pageNumber=value&pageSize=value" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Payouts fetched successfully
403Your role in this community does not allow this
404Community not found

POST Request a payout from the pot

POST /community/{reference}/payout

Requests that money leave the community's pot. The payout waits for the signatures the community's quorum rules require - this is the control that stops one officer moving the group's money alone.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference

Example

Request body: CommunityPayoutRequest · Response: CommunityPayoutResponse

curl -X POST "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/payout" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "amount": 250000.0,
    "currencyCode": "NGN",
    "beneficiaryUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
    "beneficiaryAccountNumber": "0123456789",
    "purpose": "March payroll",
    "idempotencyKey": "text"
  }'

Responses

StatusWhen
200Payout requested - awaiting signatures
400A contribution must be a positive amount
403You cannot sign for a payout you requested; Your role in this community does not allow this
404Community not found; This community has no account in that currency
409Community is not active; The pot does not hold enough available funds; This community has too few signatories

POST Approve a payout

POST /community/{reference}/payout/{payoutReference}/approve

Records one officer's signature on a pending payout. The money moves once the quorum is met, so a partial approval is a successful call, not a failure.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference
payoutReference

Example

Request body: CommunityApprovalDecisionRequest · Response: CommunityPayoutResponse

curl -X POST "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/payout/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/approve" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "comment": "March payroll"
  }'

Responses

StatusWhen
200Payout approved
400A contribution must be a positive amount
403You cannot sign for a payout you requested; Your role in this community does not allow this
404Community not found; Payout not found; This community has no account in that currency
409Community is not active; The pot does not hold enough available funds; This community has too few signatories; This payout has already been decided

POST Reject a payout

POST /community/{reference}/payout/{payoutReference}/reject

Rejects a pending payout. Nothing leaves the pot.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference
payoutReference

Example

Request body: CommunityApprovalDecisionRequest · Response: CommunityPayoutResponse

curl -X POST "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/payout/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/reject" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "comment": "March payroll"
  }'

Responses

StatusWhen
200Payout rejected
403Your role in this community does not allow this
404Community not found; Payout not found
409This payout has already been decided

GET List a community's roles

GET /community/{reference}/role

Lists the roles defined inside one community.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference

Example

Response: List<CommunityRoleResponse>

curl -X GET "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/role" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Community roles fetched successfully

POST Create a role in a community

POST /community/{reference}/role

Creates a role inside one community, defining what its holders may do and whether their signature counts toward a quorum.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference

Example

Request body: CommunityRoleRequest · Response: CommunityRoleResponse

curl -X POST "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/role" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Ada Obi",
    "displayName": "Ada Obi",
    "description": "March payroll",
    "rank": 1,
    "permissions": [
      "COMMUNITY_VIEW"
    ]
  }'

Responses

StatusWhen
200Community role created successfully
400A role must grant at least one permission
409Community role name already in use

DELETE Delete a community's role

DELETE /community/{reference}/role/{roleReference}

Deletes a role from one community.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference
roleReference

Example

Response: Void

curl -X DELETE "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/role/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Community role deleted successfully
404Community role not found
409This role is built in

PUT Update a community's role

PUT /community/{reference}/role/{roleReference}

Updates a role inside one community. Takes effect for every member currently holding it.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference
roleReference

Example

Request body: CommunityRoleRequest · Response: CommunityRoleResponse

curl -X PUT "https://api.bridgemoni.com/community/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/role/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Ada Obi",
    "displayName": "Ada Obi",
    "description": "March payroll",
    "rank": 1,
    "permissions": [
      "COMMUNITY_VIEW"
    ]
  }'

Responses

StatusWhen
200Community role updated successfully
400A role must grant at least one permission
404Community role not found
409This role is built in

GET Preview an invitation

GET /invitation/{code}

Reads an invitation by its code without accepting it, so the recipient can see which community they are being asked to join before committing.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
code

Example

Response: CommunityInvitationPreviewResponse

curl -X GET "https://api.bridgemoni.com/invitation/BRG-001" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Invitation retrieved successfully
403Too many failed attempts
404This invitation cannot be used

POST Accept an invitation

POST /invitation/{code}/accept

Accepts an invitation and joins the community, creating the caller's membership.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
code

Example

Response: MembershipResponse

curl -X POST "https://api.bridgemoni.com/invitation/BRG-001/accept" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200You have joined the community
403Too many failed attempts
404Community not found; Community role not found; This invitation cannot be used
409Already a member; Community is not active; Member limit reached

POST Decline an invitation

POST /invitation/{code}/decline

Declines an invitation without joining.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
code

Example

Response: CommunityInvitationResponse

curl -X POST "https://api.bridgemoni.com/invitation/BRG-001/decline" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Invitation declined
403Too many failed attempts
404Community role not found; This invitation cannot be used

GET List the caller's own memberships

GET /membership

Lists every community the calling user belongs to, and their role in each.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Query parameters

NameDefault
statusOptional
pageNumberOptional
pageSizeOptional

Example

Response: List<MembershipResponse>

curl -X GET "https://api.bridgemoni.com/membership?status=value&pageNumber=value&pageSize=value" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Memberships fetched successfully

Generated from the OpenAPI document. Branch on the HTTP status: there is no machine-readable error code on the wire. Errors