Download OpenAPI specification:
Official Karpura API specification. Visit main website: Karpura Admin Portal.
Returns bare minimum organization details associated with the authenticated API Key. Use this API to get your organization ID, which is required for all other org-specific API calls.
{- "orgs_minimal": [
- {
- "id": 4,
- "name": "Demo"
}
], - "pagination": {
- "total_records": 1,
- "affected_records": 1,
- "field_aggregations": [
- {
- "field": "amount",
- "grand_value": 10486
}
]
}
}Returns a paginated list of users belonging to a specific organization.
| org_id required | integer Unique Organization identifier |
| page_index | integer Default: 0 Zero-based page index for pagination |
| page_size | integer Example: page_size=25 Number of records to return per page. |
| sort_column | string Default: "created_at" Example: sort_column=created_at Column field to sort results by. |
| sort_order | string Default: "desc" Enum: "asc" "desc" Example: sort_order=desc Sort order direction. |
| include_subscription | boolean Default: true Example: include_subscription=true Filter to include user subscription state. |
{- "org_users": [
- {
- "id": 471,
- "org_id": 4,
- "email": "gregory@example.com",
- "fname": "Gregory",
- "lname": "House",
- "dname": "Gregory",
- "phone": "+15857890243",
- "email_verified": false,
- "email_valid": true,
- "email_blocked": false,
- "subscribed": true,
- "user_custom_fields": [
- {
- "type_id": 7,
- "value": "John Doe"
}
], - "address": {
- "street_line1": "1234 Main Street",
- "street_line2": "Suite 123",
- "city": "Rochester",
- "state": "NY",
- "postal_code": "14602",
- "country": "United States"
}, - "family_details": null,
- "created_at": "2026-08-09T09:11:09.5954-04:00"
}
], - "pagination": {
- "total_records": 1,
- "affected_records": 1,
- "field_aggregations": [
- {
- "field": "amount",
- "grand_value": 10486
}
]
}
}Returns a paginated list of donation types a.k.a fundraising campaigns configured for an organization.
| org_id required | integer Unique Organization identifier |
| include_future | boolean Default: false Example: include_future=true Filter to include Donation Types / Fundraising campaigns that are scheduled to open in the future. |
| include_past | boolean Default: false Filter to include past (expired or outdated) records |
| include_canceled | boolean Default: false Filter to include canceled records |
| page_index | integer Default: 0 Zero-based page index for pagination |
| page_size | integer Example: page_size=25 Number of records to return per page. |
| sort_column | string Default: "created_at" Example: sort_column=created_at Column field to sort results by. |
| sort_order | string Default: "desc" Enum: "asc" "desc" Example: sort_order=desc Sort order direction. |
{- "donation_types": [
- {
- "id": 23,
- "org_id": 4,
- "label": "Plant 1M Trees",
- "short_summary": "Plant 1M Trees in 1 Year",
- "details": "{\"version\":1,\"bg_color\":\"00000000\",\"rows\":[]}",
- "goal": 15000,
- "achieved": 8062.1,
- "tribute_enabled": true,
- "publish_donors": true,
- "donation_options": [
- {
- "id": 30,
- "donation_type_id": 23,
- "label": "50 Plants",
- "amount": 500,
- "created_at": "2026-08-09T09:11:09.5954-04:00",
- "updated_at": "2026-08-09T09:11:09.5954-04:00"
}
], - "created_at": "2026-08-09T09:11:09.5954-04:00"
}
], - "pagination": {
- "total_records": 1,
- "affected_records": 1,
- "field_aggregations": [
- {
- "field": "amount",
- "grand_value": 10486
}
]
}
}Returns a paginated list of recorded donor contributions and recurring donations for an organization.
Refer to Donation Types for details on associated fundraising campaigns and preset tiers.
| org_id required | integer Unique Organization identifier |
| include_canceled | boolean Default: false Filter to include canceled records |
| page_index | integer Default: 0 Zero-based page index for pagination |
| page_size | integer Example: page_size=25 Number of records to return per page. |
| sort_column | string Default: "created_at" Example: sort_column=created_at Column field to sort results by. |
| sort_order | string Default: "desc" Enum: "asc" "desc" Example: sort_order=desc Sort order direction. |
{- "donations": [
- {
- "id": 127,
- "donation_type_id": 23,
- "donation_option_id": 30,
- "org_id": 4,
- "user_id": 471,
- "email": "gregory@example.com",
- "fname": "Gregory",
- "lname": "House",
- "dname": "Gregory",
- "phone": "+15857890243",
- "email_verified": false,
- "email_valid": true,
- "email_blocked": false,
- "user_custom_fields": [
- {
- "type_id": 7,
- "value": "John Doe"
}
], - "address": {
- "street_line1": "1234 Main Street",
- "street_line2": "Suite 123",
- "city": "Rochester",
- "state": "NY",
- "postal_code": "14602",
- "country": "United States"
}, - "amount": 101,
- "fee_amount": 1.39,
- "recurring": true,
- "publish": false,
- "donation_date": "2026-08-28T13:36:00.385185Z",
- "recurring_date": "2026-09-28T13:36:00.385185Z",
- "payment_service_type": 4,
- "payment_notes": "User initiated Transaction",
- "order_id": 672,
- "created_at": "2026-08-09T09:11:09.5954-04:00",
- "canceled_at": null
}
], - "pagination": {
- "total_records": 1,
- "affected_records": 1,
- "field_aggregations": [
- {
- "field": "amount",
- "grand_value": 10486
}
]
}
}Returns Event Types along with their scheduled slots and ticket categories for a specific organization.
| org_id required | integer Unique Organization identifier |
| include_future | boolean Default: false Example: include_future=true Filter to include Events and Slots whose booking opens in the future. |
| include_past | boolean Default: false Filter to include past (expired or outdated) records |
| include_canceled | boolean Default: false Filter to include canceled records |
| include_tags | boolean Default: false Example: include_tags=true Include Event Category IDs associated with Events. |
| page_index | integer Default: 0 Zero-based page index for pagination |
| page_size | integer Example: page_size=25 Number of records to return per page. |
{- "event_types": [
- {
- "id": 9,
- "org_id": 4,
- "name": "Annual Banquet",
- "description": "Join our Annual Gala and Dinner...",
- "additional_details": "{\"version\":1,\"bg_color\":\"00000000\",\"rows\":[]}",
- "timezone_name": "America/New_York",
- "location": "Symphony Hall",
- "sequence": 10,
- "slots": [
- {
- "id": 10,
- "event_type_id": 9,
- "start_time": "2025-08-01T13:00:00Z",
- "end_time": "2027-01-01T01:30:00Z",
- "count_booked": 120,
- "tickets": [
- {
- "id": 12,
- "event_slot_id": 10,
- "name": "Premium Entry",
- "rate": 201,
- "member_rate": 151,
- "count_per_ticket": 1,
- "ticket_booked": 20,
- "max_adults": 1,
- "max_children": 0,
- "ask_names_of_attendees": false,
- "created_at": "2026-08-09T09:11:09.5954-04:00"
}
], - "created_at": "2026-08-09T09:11:09.5954-04:00"
}
], - "tag_ids": [
- 412
], - "created_at": "2026-08-09T09:11:09.5954-04:00"
}
], - "pagination": {
- "total_records": 1,
- "affected_records": 1,
- "field_aggregations": [
- {
- "field": "amount",
- "grand_value": 10486
}
]
}
}Creates a new Event Type along with event slots, and ticket structures for an organization.
| org_id required | integer Unique Organization identifier |
| name required | string (EventName) <= 120 characters Event Name |
| description required | string (EventDescription) <= 500 characters A short description of the Event |
| additional_details | string or null (EventAdditionalDetails) Additional details formatted using Karpura Multimedia Format (supports rich text, structured layouts, and embedded images via the Karpura Admin Portal).
Critical: This property cannot be created or modified via the API. Edits must be made in the Admin Portal. When issuing a
PATCH request to update an Event Type, you must include this property exactly as received from the prior GET call to prevent it from being cleared.
|
| timezone_name required | string (TimezoneName) The official IANA time zone identifier for the location where the Event takes place. |
| location required | string (EventLocation) <= 240 characters Event Venue or Location Name or Address |
required | Array of objects (EventSlotsCreate) non-empty Event Time slots and ticket configurations |
| sequence | integer or null (DisplaySequence) Display sequence number used to sort the items. |
| tag_ids | Array of integers or null (EventCategoryIDs) List of Event Category IDs associated with Events |
{- "name": "Annual Banquet",
- "description": "Join our Annual Gala and Dinner...",
- "additional_details": "{\"version\":1,\"bg_color\":\"00000000\",\"rows\":[]}",
- "timezone_name": "America/New_York",
- "location": "Symphony Hall",
- "slots": [
- {
- "start_time": "2025-08-01T13:00:00Z",
- "end_time": "2027-01-01T01:30:00Z",
- "tickets": [
- {
- "name": "Premium Entry",
- "rate": 201,
- "member_rate": null,
- "count_per_ticket": null,
- "max_adults": null,
- "max_children": null,
- "ask_names_of_attendees": false
}
]
}
], - "sequence": null,
- "tag_ids": null
}{- "event_types": [
- {
- "id": 9,
- "org_id": 4,
- "name": "Annual Banquet",
- "description": "Join our Annual Gala and Dinner...",
- "additional_details": "{\"version\":1,\"bg_color\":\"00000000\",\"rows\":[]}",
- "timezone_name": "America/New_York",
- "location": "Symphony Hall",
- "sequence": 10,
- "slots": [
- {
- "id": 10,
- "event_type_id": 9,
- "start_time": "2025-08-01T13:00:00Z",
- "end_time": "2027-01-01T01:30:00Z",
- "count_booked": 120,
- "tickets": [
- {
- "id": 12,
- "event_slot_id": 10,
- "name": "Premium Entry",
- "rate": 201,
- "member_rate": 151,
- "count_per_ticket": 1,
- "ticket_booked": 20,
- "max_adults": 1,
- "max_children": 0,
- "ask_names_of_attendees": false,
- "created_at": "2026-08-09T09:11:09.5954-04:00"
}
], - "created_at": "2026-08-09T09:11:09.5954-04:00"
}
], - "tag_ids": [
- 412
], - "created_at": "2026-08-09T09:11:09.5954-04:00"
}
], - "job_status": {
- "success": [
- "Operation was successfully completed"
]
}
}Updates an existing Event Type.
PATCH operations, this endpoint performs a full resource replacement:
| org_id required | integer Unique Organization identifier |
| id required | integer Unique Event Type identifier |
| name required | string (EventName) <= 120 characters Event Name |
| description required | string (EventDescription) <= 500 characters A short description of the Event |
| additional_details | string or null (EventAdditionalDetails) Additional details formatted using Karpura Multimedia Format (supports rich text, structured layouts, and embedded images via the Karpura Admin Portal).
Critical: This property cannot be created or modified via the API. Edits must be made in the Admin Portal. When issuing a
PATCH request to update an Event Type, you must include this property exactly as received from the prior GET call to prevent it from being cleared.
|
| timezone_name required | string (TimezoneName) The official IANA time zone identifier for the location where the Event takes place. |
| location required | string (EventLocation) <= 240 characters Event Venue or Location Name or Address |
required | Array of objects (EventSlotsUpdate) non-empty Event Time slots and ticket configurations |
| sequence | integer or null Default: null Display sequence number used to sort the items. |
| tag_ids | Array of integers or null Default: null List of Event Category IDs associated with Events |
{- "name": "Annual Banquet",
- "description": "Join our Annual Gala and Dinner...",
- "additional_details": "{\"version\":1,\"bg_color\":\"00000000\",\"rows\":[]}",
- "timezone_name": "America/New_York",
- "location": "Symphony Hall",
- "slots": [
- {
- "id": 10,
- "event_type_id": 9,
- "start_time": "2025-08-01T13:00:00Z",
- "end_time": "2027-01-01T01:30:00Z",
- "tickets": [
- {
- "id": 12,
- "event_slot_id": 10,
- "name": "Premium Entry",
- "rate": 201,
- "member_rate": null,
- "count_per_ticket": null,
- "max_adults": null,
- "max_children": null,
- "ask_names_of_attendees": false
}
]
}
], - "sequence": 10,
- "tag_ids": [
- 412
]
}{- "event_types": [
- {
- "id": 9,
- "org_id": 4,
- "name": "Annual Banquet",
- "description": "Join our Annual Gala and Dinner...",
- "additional_details": "{\"version\":1,\"bg_color\":\"00000000\",\"rows\":[]}",
- "timezone_name": "America/New_York",
- "location": "Symphony Hall",
- "sequence": 10,
- "slots": [
- {
- "id": 10,
- "event_type_id": 9,
- "start_time": "2025-08-01T13:00:00Z",
- "end_time": "2027-01-01T01:30:00Z",
- "count_booked": 120,
- "tickets": [
- {
- "id": 12,
- "event_slot_id": 10,
- "name": "Premium Entry",
- "rate": 201,
- "member_rate": 151,
- "count_per_ticket": 1,
- "ticket_booked": 20,
- "max_adults": 1,
- "max_children": 0,
- "ask_names_of_attendees": false,
- "created_at": "2026-08-09T09:11:09.5954-04:00"
}
], - "created_at": "2026-08-09T09:11:09.5954-04:00"
}
], - "tag_ids": [
- 412
], - "created_at": "2026-08-09T09:11:09.5954-04:00"
}
], - "job_status": {
- "success": [
- "Operation was successfully completed"
]
}
}Deletes an Event Type.
| org_id required | integer Unique Organization identifier |
| id required | integer Unique Event Type identifier |
{- "job_status": {
- "success": [
- "Operation was successfully completed"
]
}
}Returns a paginated list of event ticket registrations, financial breakdowns, and custom field data for an organization.
| org_id required | integer Unique Organization identifier |
| include_past | boolean Default: false Filter to include past (expired or outdated) records |
| include_future | boolean Default: false Example: include_future=true Filter to include Events and Slots whose booking opens in the future. |
| include_canceled | boolean Default: false Filter to include canceled records |
| include_declined | boolean Default: false Filter to include Events Registrations declined by users |
| include_count | boolean Default: true Example: include_count=true Filter to include aggregate record counts in the pagination payload. |
| include_summary | boolean Default: true Example: include_summary=true Filter to include financial and summaries in field aggregations. |
| page_index | integer Default: 0 Zero-based page index for pagination |
| page_size | integer Example: page_size=25 Number of records to return per page. |
| sort_column | string Default: "created_at" Example: sort_column=created_at Column field to sort results by. |
| sort_order | string Default: "desc" Enum: "asc" "desc" Example: sort_order=desc Sort order direction. |
{- "event_registrations": [
- {
- "id": 186,
- "org_id": 4,
- "user_id": 471,
- "event_type_id": 9,
- "event_slot_id": 10,
- "event_ticket_id": 12,
- "email": "gregory@example.com",
- "fname": "Gregory",
- "lname": "House",
- "dname": "Gregory",
- "phone": "+15857890243",
- "email_verified": false,
- "email_valid": true,
- "email_blocked": false,
- "user_custom_fields": [
- {
- "type_id": 7,
- "value": "John Doe"
}
], - "address": {
- "street_line1": "1234 Main Street",
- "street_line2": "Suite 123",
- "city": "Rochester",
- "state": "NY",
- "postal_code": "14602",
- "country": "United States"
}, - "will_attend": "yes",
- "rate": 100,
- "is_member_rate": false,
- "override_rate": false,
- "amount": 1000,
- "donation_amount": 0,
- "fee_amount": 1.39,
- "pay_later_amount": 0,
- "pay_later_donation_amount": 0,
- "pay_later_fee_amount": 0,
- "pay_later_payment_pending": false,
- "number_of_tickets": 1,
- "count_per_ticket": 1,
- "count_of_adults": 1,
- "count_of_children": 0,
- "payment_service_type": 4,
- "payment_notes": "User initiated Transaction",
- "event_payment_at": "2026-08-06T01:16:27.978749Z",
- "checked_in_at": "2026-06-03T23:31:49.637438Z",
- "checked_in_count": 1,
- "attendee_adults_list": [
- {
- "name": "Marutha",
- "is_member": true,
- "override_rate": false
}
], - "attendee_children_list": [
- {
- "name": "Marutha Jr",
- "is_member": true,
- "override_rate": false
}
], - "event_custom_fields": [
- {
- "type_id": 13,
- "value": "Option 1"
}
], - "created_at": "2026-08-09T09:11:09.5954-04:00"
}
], - "pagination": {
- "total_records": 1,
- "affected_records": 1,
- "field_aggregations": [
- {
- "field": "amount",
- "grand_value": 10486
}
]
}
}Returns a paginated list of membership types configured for a specific organization.
| org_id required | integer Unique Organization identifier |
| include_canceled | boolean Default: false Filter to include canceled records |
| page_index | integer Default: 0 Zero-based page index for pagination |
| page_size | integer Example: page_size=25 Number of records to return per page. |
| sort_column | string Default: "created_at" Example: sort_column=created_at Column field to sort results by. |
| sort_order | string Default: "desc" Enum: "asc" "desc" Example: sort_order=desc Sort order direction. |
{- "membership_types": [
- {
- "id": 5,
- "org_id": 4,
- "sequence": null,
- "title": "Adult Annual",
- "subtitle": "Adult Annual membership for the current year",
- "benefits": "{\"version\":1,\"bg_color\":\"00000000\",\"rows\":[]}",
- "rate": 100,
- "duration": "yearly",
- "start_date_logic": 1,
- "end_date_logic": 1,
- "family_membership": true,
- "max_adults": 2,
- "max_children": 2,
- "ask_count_of_family_members": true,
- "ask_names_of_family_members": true,
- "reason_for_family_details": "Family of Two or more...",
- "adult_label": "More than 18 Years",
- "children_label": "Up to 18 Years",
- "adult_labels": [
- {
- "name": "Member"
}
], - "children_labels": [
- {
- "name": "Member"
}
], - "created_at": "2026-08-09T09:11:09.5954-04:00"
}
], - "pagination": {
- "total_records": 1,
- "affected_records": 1,
- "field_aggregations": [
- {
- "field": "amount",
- "grand_value": 10486
}
]
}
}Returns a paginated list of historical member registrations for a specific organization.
Refer to Members for the list of currently active members.
| org_id required | integer Unique Organization identifier |
| include_past | boolean Default: false Filter to include past (expired or outdated) records |
| include_canceled | boolean Default: false Filter to include canceled records |
| page_index | integer Default: 0 Zero-based page index for pagination |
| page_size | integer Example: page_size=25 Number of records to return per page. |
| sort_column | string Default: "created_at" Example: sort_column=created_at Column field to sort results by. |
| sort_order | string Default: "desc" Enum: "asc" "desc" Example: sort_order=desc Sort order direction. |
{- "memberships": [
- {
- "id": 120,
- "org_id": 4,
- "user_id": 471,
- "membership_type_id": 5,
- "email": "gregory@example.com",
- "fname": "Gregory",
- "lname": "House",
- "dname": "Gregory",
- "phone": "+15857890243",
- "email_verified": false,
- "email_valid": true,
- "email_blocked": false,
- "user_custom_fields": [
- {
- "type_id": 7,
- "value": "John Doe"
}
], - "address": {
- "street_line1": "1234 Main Street",
- "street_line2": "Suite 123",
- "city": "Rochester",
- "state": "NY",
- "postal_code": "14602",
- "country": "United States"
}, - "family_details": null,
- "amount": 100,
- "fee_amount": 1.39,
- "payment_service_type": 4,
- "payment_notes": "User initiated Transaction",
- "auto_renew": false,
- "membership_buy_date": "2026-08-06T01:08:03.750028Z",
- "membership_start_date": "2026-05-10T04:00:00Z",
- "membership_end_date": "2027-01-01T04:59:59Z",
- "member_since": "2025-05-10T04:00:00Z",
- "created_at": "2026-08-09T09:11:09.5954-04:00"
}
], - "pagination": {
- "total_records": 1,
- "affected_records": 1,
- "field_aggregations": [
- {
- "field": "amount",
- "grand_value": 10486
}
]
}
}Returns a paginated list of currently active members along with their profile details for a specific organization.
Refer to Member Registrations for the historical records of member registrations.
| org_id required | integer Unique Organization identifier |
| page_index | integer Default: 0 Zero-based page index for pagination |
| page_size | integer Example: page_size=25 Number of records to return per page. |
| sort_column | string Default: "created_at" Example: sort_column=created_at Column field to sort results by. |
| sort_order | string Default: "desc" Enum: "asc" "desc" Example: sort_order=desc Sort order direction. |
{- "members": [
- {
- "org_id": 4,
- "user_id": 471,
- "membership_type_id": 5,
- "email": "gregory@example.com",
- "fname": "Gregory",
- "lname": "House",
- "dname": "Gregory",
- "email_verified": false,
- "email_valid": true,
- "email_blocked": false,
- "user_custom_fields": [
- {
- "type_id": 7,
- "value": "John Doe"
}
], - "address": {
- "street_line1": "1234 Main Street",
- "street_line2": "Suite 123",
- "city": "Rochester",
- "state": "NY",
- "postal_code": "14602",
- "country": "United States"
}, - "family_details": null,
- "auto_renew": false,
- "membership_start_date": "2026-05-10T04:00:00Z",
- "membership_end_date": "2027-01-01T04:59:59Z",
- "member_since": "2025-05-10T04:00:00Z"
}
], - "pagination": {
- "total_records": 1,
- "affected_records": 1,
- "field_aggregations": [
- {
- "field": "amount",
- "grand_value": 10486
}
]
}
}Returns a paginated list of registered volunteers along with contact availability, address, and profile details for an organization.
Refer to Volunteer Programs for details on associated programs.
| org_id required | integer Unique Organization identifier |
| pid | integer Example: pid=22 Filter volunteers by Volunteer Program ID. |
| page_index | integer Default: 0 Zero-based page index for pagination |
| page_size | integer Example: page_size=25 Number of records to return per page. |
| sort_column | string Default: "created_at" Example: sort_column=created_at Column field to sort results by. |
| sort_order | string Default: "desc" Enum: "asc" "desc" Example: sort_order=desc Sort order direction. |
{- "volunteers": [
- {
- "id": 2,
- "org_id": 4,
- "user_id": 471,
- "program_id": 7,
- "program_volunteer_id": 3,
- "email": "gregory@example.com",
- "fname": "Gregory",
- "lname": "House",
- "dname": "Gregory",
- "phone": "+15857890243",
- "email_verified": false,
- "email_valid": true,
- "email_blocked": false,
- "user_custom_fields": [
- {
- "type_id": 7,
- "value": "John Doe"
}
], - "address": {
- "street_line1": "1234 Main Street",
- "street_line2": "Suite 123",
- "city": "Rochester",
- "state": "NY",
- "postal_code": "14602",
- "country": "United States"
}, - "best_time_to_contact": "evening",
- "volunteered_before": true,
- "additional_info": "Some comment...",
- "sunday": true,
- "monday": true,
- "tuesday": true,
- "wednesday": true,
- "thursday": true,
- "friday": true,
- "saturday": true,
- "created_at": "2026-08-09T09:11:09.5954-04:00"
}
], - "pagination": {
- "total_records": 1,
- "affected_records": 1,
- "field_aggregations": [
- {
- "field": "amount",
- "grand_value": 10486
}
]
}
}Returns a paginated list of volunteer programs configured for an organization.
| org_id required | integer Unique Organization identifier |
| inactive | boolean Default: false Filter to include or exclude inactive volunteer programs. |
| canceled | boolean Default: false Filter to include or exclude canceled volunteer programs. |
| page_index | integer Default: 0 Zero-based page index for pagination |
| page_size | integer Example: page_size=25 Number of records to return per page. |
| sort_column | string Default: "created_at" Example: sort_column=created_at Column field to sort results by. |
| sort_order | string Default: "desc" Enum: "asc" "desc" Example: sort_order=desc Sort order direction. |
{- "programs": [
- {
- "id": 7,
- "org_id": 4,
- "title": "New Vol Program",
- "short_summary": "This is a new Vol Program",
- "program_details": "{\"version\":1,\"bg_color\":\"00000000\",\"rows\":[]}",
- "requirements": "{\"version\":1,\"bg_color\":\"00000000\",\"rows\":[]}",
- "start_date": "2026-06-03T04:00:00Z",
- "created_at": "2026-08-09T09:11:09.5954-04:00"
}
], - "pagination": {
- "total_records": 1,
- "affected_records": 1,
- "field_aggregations": [
- {
- "field": "amount",
- "grand_value": 10486
}
]
}
}