Bloomerang Webhooks API
Webhook subscriptions for event notifications.
Webhook subscriptions for event notifications.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/bloomerang-webhooks-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Bloomerang REST API v2 Webhooks API
description: The Bloomerang REST API v2 is a private-key, server-to-server API for reading and writing data in a Bloomerang donor management CRM account - constituents, transactions (donations, pledges, recurring donations), interactions, notes, relationships, and webhook subscriptions.
version: '2.0'
contact:
name: Bloomerang
url: https://bloomerang.com/api/rest-api
servers:
- url: https://api.bloomerang.co/v2
description: Bloomerang REST API v2 (production - no sandbox is offered)
security:
- apiKeyAuth: []
- oauth2Bearer: []
tags:
- name: Webhooks
description: Webhook subscriptions for event notifications.
paths:
/webhooks:
get:
operationId: listWebhooks
tags:
- Webhooks
summary: List webhook subscriptions
description: Lists the webhook subscriptions registered for the account.
responses:
'200':
description: A list of webhook subscriptions.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Webhook'
'401':
$ref: '#/components/responses/Unauthorized'
post:
operationId: createWebhook
tags:
- Webhooks
summary: Register a webhook subscription
description: Registers a webhook subscription that receives an HTTP callback, signed with an x-bloomerang-signature header, when the given event occurs.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookInput'
responses:
'200':
description: The created webhook subscription.
content:
application/json:
schema:
$ref: '#/components/schemas/Webhook'
'401':
$ref: '#/components/responses/Unauthorized'
'422':
$ref: '#/components/responses/ValidationError'
/webhooks/{id}:
parameters:
- name: id
in: path
required: true
description: The ID of the webhook subscription.
schema:
type: string
delete:
operationId: deleteWebhook
tags:
- Webhooks
summary: Delete a webhook subscription
description: Removes a webhook subscription.
responses:
'200':
description: Deletion confirmation.
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
components:
schemas:
WebhookInput:
type: object
required:
- url
- event
properties:
url:
type: string
format: uri
description: The HTTPS endpoint Bloomerang will POST the event payload to.
event:
type: string
description: The event type to subscribe to, e.g. constituent.created.
enum:
- constituent.created
- constituent.updated
- transaction.created
- interaction.created
active:
type: boolean
default: true
Error:
type: object
properties:
Message:
type: string
Errors:
type: array
items:
type: string
DeleteResponse:
type: object
properties:
Id:
type: string
Deleted:
type: boolean
Webhook:
allOf:
- $ref: '#/components/schemas/WebhookInput'
- type: object
properties:
id:
type: string
responses:
NotFound:
description: The requested resource was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
Unauthorized:
description: Missing or invalid API key / access token.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
ValidationError:
description: The request payload failed validation.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
securitySchemes:
apiKeyAuth:
type: apiKey
in: header
name: X-Api-Key
description: Private API key generated by an Administrator user in Bloomerang under User Settings > Edit My User. Grants full read/write access - keep it secret.
oauth2Bearer:
type: oauth2
description: 'OAuth 2.0 access token for third-party applications, presented as `Authorization: Bearer {access_token}`.'
flows:
authorizationCode:
authorizationUrl: https://crm.bloomerang.co/oauth/authorize
tokenUrl: https://api.bloomerang.co/v2/oauth/token
scopes:
api: Full read/write access to account data.