Bloomerang Reference Data API

Users, funds, campaigns, and appeals used as designations and attribution.

OpenAPI Specification

bloomerang-reference-data-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Bloomerang REST API v2 Constituents Reference Data 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. Requests are authenticated with either a private API key sent in the X-Api-Key header (generated by an Administrator user under User Settings) or an OAuth 2.0 access token for third-party applications. Bloomerang does not offer a sandbox environment - all requests operate against production data. Endpoints for Constituents, Transactions, and Interactions are directly confirmed in Bloomerang's public documentation and third-party integration guides; endpoints for Households, Notes, Relationships, Custom Fields, Webhooks, Users, Funds, Campaigns, and Appeals are modeled from Bloomerang's REST API v1 resource parity, community client libraries, and CRM feature documentation, since Bloomerang does not publish a complete, versioned OpenAPI/Swagger document for v2. See review.yml in this repository for the endpointsConfirmed vs endpointsModeled breakdown.
  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: Reference Data
  description: Users, funds, campaigns, and appeals used as designations and attribution.
paths:
  /users:
    get:
      operationId: listUsers
      tags:
      - Reference Data
      summary: List CRM users
      description: Lists the CRM users on the account, for attributing interactions and tasks. Endpoint modeled from Bloomerang REST API v1 User resource parity - see review.yml.
      responses:
        '200':
          description: A list of users.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/User'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /funds:
    get:
      operationId: listFunds
      tags:
      - Reference Data
      summary: List funds
      description: Lists the funds available as transaction designations. Endpoint modeled from Bloomerang REST API v1 Fund resource parity - see review.yml.
      responses:
        '200':
          description: A list of funds.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Fund'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /campaigns:
    get:
      operationId: listCampaigns
      tags:
      - Reference Data
      summary: List campaigns
      description: Lists fundraising campaigns. Endpoint modeled from Bloomerang REST API v1 Campaign resource parity - see review.yml.
      responses:
        '200':
          description: A list of campaigns.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Campaign'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /appeals:
    get:
      operationId: listAppeals
      tags:
      - Reference Data
      summary: List appeals
      description: Lists fundraising appeals. Endpoint modeled from Bloomerang REST API v1 Appeal resource parity - see review.yml.
      responses:
        '200':
          description: A list of appeals.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Appeal'
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  schemas:
    Fund:
      type: object
      properties:
        Id:
          type: integer
        Name:
          type: string
        IsActive:
          type: boolean
    Campaign:
      type: object
      properties:
        Id:
          type: integer
        Name:
          type: string
        StartDate:
          type: string
          format: date
        EndDate:
          type: string
          format: date
        GoalAmount:
          type: number
          format: double
    User:
      type: object
      properties:
        Id:
          type: integer
        FirstName:
          type: string
        LastName:
          type: string
        EmailAddress:
          type: string
          format: email
        IsActive:
          type: boolean
    Error:
      type: object
      properties:
        Message:
          type: string
        Errors:
          type: array
          items:
            type: string
    Appeal:
      type: object
      properties:
        Id:
          type: integer
        Name:
          type: string
        IsActive:
          type: boolean
  responses:
    Unauthorized:
      description: Missing or invalid API key / access token.
      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.