openapi: 3.1.0 info: title: Givebutter Campaign Members API version: 1.0.0 description: The Campaign Members surface of the Givebutter Public API — 3 operation(s). Split by tag from Givebutter's own published OpenAPI at https://givebutter.com/docs/api.json (harvested 2026-09-12). Operations, schemas and responses are verbatim from the provider's spec. contact: name: Givebutter API Documentation url: https://docs.givebutter.com/api-reference/authentication servers: - url: https://api.givebutter.com/ security: - http: [] tags: - name: Campaign Members paths: /v1/campaigns/{campaign}/members: get: operationId: campaigns.members.index summary: List all campaign members tags: - Campaign Members parameters: - name: campaign in: path required: true description: The campaign ID schema: type: integer responses: '200': description: Paginated set of `CampaignMemberResource` content: application/json: schema: anyOf: - type: object properties: data: type: array items: $ref: '#/components/schemas/CampaignMemberResource' links: type: object properties: first: type: - string - 'null' last: type: - string - 'null' prev: type: - string - 'null' next: type: - string - 'null' required: - first - last - prev - next meta: type: object properties: current_page: type: integer minimum: 1 from: type: - integer - 'null' minimum: 1 last_page: type: integer minimum: 1 links: type: array description: Generated paginator links. items: type: object properties: url: type: - string - 'null' label: type: string active: type: boolean required: - url - label - active path: type: - string - 'null' description: Base path for paginator generated URLs. per_page: type: integer description: Number of items shown per page. minimum: 0 to: type: - integer - 'null' description: Number of the last item in the slice. minimum: 1 total: type: integer description: Total number of items being paginated. minimum: 0 required: - current_page - from - last_page - links - path - per_page - to - total required: - data - links - meta - type: object '404': $ref: '#/components/responses/ModelNotFoundException' /v1/campaigns/{campaign}/members/{member}: get: operationId: campaigns.members.show summary: Get a campaign member tags: - Campaign Members parameters: - name: campaign in: path required: true description: The campaign ID schema: type: integer - name: member in: path required: true description: The member ID schema: type: integer responses: '200': description: '`CampaignMemberResource`' content: application/json: schema: anyOf: - $ref: '#/components/schemas/CampaignMemberResource' - type: object '404': $ref: '#/components/responses/ModelNotFoundException' delete: operationId: campaigns.members.destroy summary: Delete a campaign member tags: - Campaign Members parameters: - name: campaign in: path required: true description: The campaign ID schema: type: integer - name: member in: path required: true description: The member ID schema: type: integer responses: '200': description: '' content: application/json: schema: type: object '404': $ref: '#/components/responses/ModelNotFoundException' components: schemas: CampaignMemberResource: type: object properties: id: type: string first_name: type: string last_name: type: string display_name: type: string email: type: string phone: type: string picture: type: string raised: type: number goal: type: integer donors: type: integer items: type: integer url: type: string created_at: type: string updated_at: type: string required: - id - first_name - last_name - display_name - email - phone - picture - raised - goal - donors - items - url - created_at - updated_at title: CampaignMemberResource responses: ModelNotFoundException: description: Not found content: application/json: schema: type: object properties: message: type: string description: Error overview. required: - message securitySchemes: http: type: http scheme: bearer x-source: https://givebutter.com/docs/api.json x-harvested: '2026-09-12'