Authentication

All API requests require authentication via Bearer token. Include your API key in the Authorization header.

Authorization: Bearer mce_live_...
GET/v1/contributions

List contributions

Bearer token required. Key must be bound to a committee.

Returns a paginated list of contributions for this committee. Supports filtering by date range, contributor, and itemization status. Results are ordered by date_received descending.

Parameters

pageinteger

Page number. Default: 1.

limitinteger

Results per page. Range: 1--250. Default: 50.

start_datestring

Filter contributions received on or after this date (YYYY-MM-DD).

end_datestring

Filter contributions received on or before this date (YYYY-MM-DD).

contributor_idstring (uuid)

Filter contributions by contributor UUID.

itemizedstring

Filter by itemization status. "true" returns only itemized contributions (aggregate YTD > $200). "false" returns only unitemized.

Request

cURL
bash
curl -X GET "https://developer.mesocrats.org/api/v1/contributions?start_date=2026-01-01&end_date=2026-03-31&itemized=true&limit=2" \
-H "Authorization: Bearer mce_live_sk_your_key_here"

Response

200 OK
JSON
json
{
"data": [
{
"id": "d1e2f3a4-b5c6-7890-abcd-ef1234567890",
"committee_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"contributor_id": "c1d2e3f4-a5b6-7890-cdef-123456789abc",
"amount_cents": 5000,
"date_received": "2026-03-15",
"contribution_type": "individual",
"payment_method": "credit_card",
"stripe_charge_id": "ch_3abc123def456",
"frequency": "one_time",
"citizenship_attested": true,
"personal_funds_attested": true,
"non_contractor_attested": true,
"personal_card_attested": true,
"age_attested": true,
"ip_address": "192.168.1.1",
"aggregate_ytd_cents": 25000,
"itemized": true,
"report_id": null,
"created_at": "2026-03-15T14:30:00Z"
}
],
"pagination": {
"page": 1,
"limit": 2,
"total": 47,
"total_pages": 24
}
}