Blackbaud · Schema
ConsentListOptions
Optional Get constituent consents filters.
Non-ProfitFundraisingDonor ManagementCRMFund AccountingEducationGrantmakingPaymentsPhilanthropySocial Impact
Properties
| Name | Type | Description |
|---|---|---|
| channels | arraynull | Limit results to the given list of channels. All channels are included by default. |
| constituent_ids | arraynull | Limit results to the given list of constituent identifiers. |
| category_filter_type | string | Category filter type Members:
|
| category | stringnull | The category name or identifier with which to filter by when CategoryFilterType is SpecificCategory. |
| response | stringnull | Consent response Members:
|
| source | stringnull | Source description or identifier |
| from_date | stringnull | From date filter |
| to_date | stringnull | To date filters |
| continuation_token | stringnull | Continuation token for paging |
| limit | integer | Represents the number of records to return. (The default is 500) |
| offset | integer | Represents the number of records to skip.(For use with pagination) |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/blackbaud/main/json-schema/blackbaud-consent-list-options-schema.json",
"title": "ConsentListOptions",
"description": "Optional Get constituent consents filters.",
"x-generated": "2026-10-14",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/blackbaud-consent-api-openapi.yml#/components/schemas/ConsentListOptions",
"type": "object",
"properties": {
"channels": {
"type": [
"array",
"null"
],
"items": {
"enum": [
"Email",
"Mail",
"SMS",
"Phone",
"AutoPhone",
"Social",
"DataProcessing",
"Other"
],
"type": "string",
"description": "Consent channels<p>Members:</p><ul><li><i>Email</i> - Email</li><li><i>Mail</i> - Mail</li><li><i>SMS</i> - SMS</li><li><i>Phone</i> - Phone</li><li><i>AutoPhone</i> - AutoPhone</li><li><i>Social</i> - Social media</li><li><i>DataProcessing</i> - Data processing</li><li><i>Other</i> - Other</li></ul>"
},
"description": "Limit results to the given list of channels. All channels are included by default."
},
"constituent_ids": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
},
"description": "Limit results to the given list of constituent identifiers."
},
"category_filter_type": {
"enum": [
"NoFilter",
"AnyCategory",
"NoCategory",
"SpecificCategory"
],
"type": "string",
"description": "Category filter type<p>Members:</p><ul><li><i>NoFilter</i> - Include all consents regardless of assigned category.</li><li><i>AnyCategory</i> - Include all consents assigned to any category.</li><li><i>NoCategory</i> - Include only consents without an assigned category.</li><li><i>SpecificCategory</i> - Include only consents assigned a specific category.</li></ul>"
},
"category": {
"type": [
"string",
"null"
],
"description": "The category name or identifier with which to filter by when CategoryFilterType is SpecificCategory."
},
"response": {
"enum": [
"OptIn",
"OptOut",
"NoResponse"
],
"type": [
"string",
"null"
],
"description": "Consent response<p>Members:</p><ul><li><i>OptIn</i> - Opt-in</li><li><i>OptOut</i> - Opt-out</li><li><i>NoResponse</i> - No response</li></ul>"
},
"source": {
"type": [
"string",
"null"
],
"description": "Source description or identifier"
},
"from_date": {
"type": [
"string",
"null"
],
"description": "From date filter",
"format": "date-time"
},
"to_date": {
"type": [
"string",
"null"
],
"description": "To date filters",
"format": "date-time"
},
"continuation_token": {
"type": [
"string",
"null"
],
"description": "Continuation token for paging"
},
"limit": {
"maximum": 10000,
"minimum": 1,
"type": "integer",
"description": "Represents the number of records to return. (The default is 500)",
"format": "int32",
"default": 500
},
"offset": {
"maximum": 2147483647,
"minimum": 0,
"type": "integer",
"description": "Represents the number of records to skip.(For use with pagination)",
"format": "int32"
}
},
"additionalProperties": false
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.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.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/blackbaud-consent-list-options"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
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.