Event
This API manages event information and related entities such as participant.
Request URL
Request parameters
Parameter | Required | Type | Description |
---|---|---|---|
event_id | Property is required | string | The ID of the event. |
name | string | A filter for results that match the specified name. For example, name=Smith returns participants with a name containing Smith. |
|
participation_level | array | A filter for results that match the specified level of participant involvement in the event. For example, participation_level=level returns participants with a participation level of level. |
|
attended_filter | boolean | A filter to include or exclude participants marked as attended. |
|
is_constituent_filter | boolean | A filter to include or exclude participants who are constituents. |
|
email_eligible_filter | boolean | A filter to include or exclude participants based on whether they have a primary email address that's not marked Do not email. |
|
phone_call_eligible_filter | boolean | A filter to include or exclude participants based on whether they have a primary phone number that's not marked Do not call. |
|
invitation_status | array | A filter for results that match the specified invitation status.
For example, invitation_status=NotInvited returns participants with a status of Not Invited.
|
|
rsvp_status | array | A filter for results that match the specified RSVP status.
For example, rsvp_status=Attending,NotApplicable returns participants with a status of Attending or Not Applicable.
|
|
date_added | string | Represents a filter for results created on or after the specified date. Includes an offset from UTC in ISO-8601 format: 1969-11-21T10:29:43-04:00. |
|
last_modified | string | Represents a filter for results modified on or after the specified date. Includes an offset from UTC in ISO-8601 format: 1969-11-21T10:29:43-04:00. |
|
fees_paid_filter | boolean | A filter to include or exclude participants that have paid or not paid their fees. |
|
fields | array | Represents a list of fields to include on the returned records. Supported request fields include: id, constituent_id, name, phone, email, participation_level, attended, rsvp_status, invitation_status, rsvp_date, total_registration_fees, total_paid, host, guests, name_tag, seat, memberships, lookup_id, is_constituent, summary_note, date_added, date_modified, donations, revenue, participant_options, registration_form, online_data_health. See the sample response output for all the return fields. |
|
sort | array | Represents a list of fields to sort the results by. Returns a list that sorts participants based on the supplied fields. Results are in ascending order by default, and a '-' sign denotes descending order. For example, sort=invitation_status,-name sorts participants by the invitation_status field in ascending order and then by the name field in descending order. If no fields are provided, results are sorted by participant last name in ascending order. |
|
participant_option_id | string | A filter for participants who are assigned to a specific participant option. |
|
participant_option_values | array | A filter for results that match values for a specific participant option. For example, participant_option_values=true returns participants who selected true if you also include the participant_option_id for a boolean type option in the request. If you include a participant_option_id for a list type option, include the ID for the value to return. For example, participant_option_values=1476f7ea-816e-4a97-9f33-b99a5acb26cd returns participants who selected the value associated with id 1476f7ea-816e-4a97-9f33-b99a5acb26cd. |
|
registration_form_include_type | string | A filter for participants who are registered through online registration forms. For example, registration_form_include_type=Specific returns participants who registered for forms you indicate in the registration_form_ids filter. |
|
registration_form_ids | array | A filter for participants who registered through specific online registration forms. |
|
online_data_health | array | A filter for results that match the specified online data health statuses. For example, online_data_health=PossibleDuplicate,Matched returns participants with a status of Possible Duplicate or Matched.
|
|
limit | integer | Represents the number of records to return. The default is 500. The maximum is 10,000. |
|
offset | integer | Represents the number of records to skip. |
Request headers
Header | Required | Type | Description |
---|---|---|---|
Bb-Api-Subscription-Key | Property is required | string | Subscription key which provides access to this API. Found in your Profile. |
Authorization | Property is required | string | OAuth 2.0 access token obtained from Blackbaud OAuth 2.0 Service. Supported grant types: Authorization code, Implicit. |
Response 200 OK
Returned when the operation succeeds. The response body contains a collection and count of filtered participants.
{
"count": 15,
"value": [
{
"id": "1",
"contact_id": "175",
"date_added": "2017-09-15T13:00:00Z",
"date_modified": "2017-09-15T13:00:00Z",
"is_constituent": true,
"lookup_id": "12345",
"name": "Mrs. Janice E. Doe",
"first_name": "Janice",
"middle_name": "Elise",
"last_name": "Doe",
"preferred_name": "Jane",
"former_name": "Woods",
"title": "Mrs.",
"suffix": ", III",
"class_of": "1992",
"phone": "(843) 555-1234",
"do_not_call": true,
"email": "jane@domain.com",
"do_not_email": false,
"participation_level": {
"id": "4",
"name": "Custom Level",
"is_inactive": false
},
"attended": true,
"rsvp_status": "Attending",
"invitation_status": "Invited",
"rsvp_date": {
"d": 23,
"m": 7,
"y": 2018
},
"total_registration_fees": 1525.0,
"total_paid": 1025.0,
"guests": [
{
"contact_id": "280",
"participant_id": "2",
"name": "Mr. John M. Doe"
}
],
"seat": "B11",
"name_tag": "Jane Doe",
"summary_note": "Major donor who invites a lot of people.",
"memberships": [
{
"category": {
"id": "8",
"name": "Patron"
}
}
],
"participant_options": [
{
"id": "31d3c741-719c-4f96-a4d5-807605ddd37b",
"name": "Sample string participant option",
"input_type": "String",
"values": [
{
"value": "sample text"
}
]
},
{
"id": "7d1fdd30-6613-4e20-a097-325f53c21d9b",
"name": "Sample bool participant option",
"input_type": "Boolean",
"values": [
{
"value": "true"
}
]
},
{
"id": "fdc14e60-179a-4655-adeb-c295862b9e76",
"name": "Sample list participant option",
"input_type": "List",
"values": [
{
"id": "f53c1662-7fc3-4ae7-9559-40dcacc6c05f",
"value": "Sample list option 1"
}
]
}
],
"registration_form": {
"id": "1476f7ea-816e-4a97-9f33-b99a5acb26ce",
"name": "Sample registration form"
},
"donations": 435.0,
"revenue": 1457.0,
"online_data_health": "PossibleDuplicate"
},
{
"id": "2",
"contact_id": "280",
"date_added": "2017-09-15T13:00:00Z",
"date_modified": "2017-09-15T13:00:00Z",
"is_constituent": true,
"lookup_id": "67890",
"name": "Mr. John M. Doe",
"first_name": "John",
"middle_name": "Matthew",
"last_name": "Doe",
"title": "Mr.",
"suffix": "",
"class_of": "1990",
"phone": "(843) 555-5678",
"do_not_call": false,
"email": "john@domain.com",
"do_not_email": false,
"participation_level": {
"id": "5",
"name": "Custom Level 2",
"is_inactive": false
},
"attended": false,
"rsvp_status": "NotApplicable",
"invitation_status": "NotApplicable",
"total_registration_fees": 0.0,
"total_paid": 0.0,
"host": {
"contact_id": "175",
"participant_id": "1",
"name": "Mrs. Jane E. Doe"
},
"participant_options": [
{
"id": "31d3c741-719c-4f96-a4d5-807605ddd37b",
"name": "Sample string participant option",
"input_type": "String",
"values": [
{
"value": "sample text"
}
]
},
{
"id": "7d1fdd30-6613-4e20-a097-325f53c21d9b",
"name": "Sample bool participant option",
"input_type": "Boolean",
"values": [
{
"value": "false"
}
]
},
{
"id": "fdc14e60-179a-4655-adeb-c295862b9e76",
"name": "Sample list participant option",
"input_type": "List",
"values": [
{
"id": "34855568-d266-4c1c-8706-c004f3d7bcd3",
"value": "Sample list option 2"
}
]
}
],
"registration_form": {
"id": "acf457f1-4132-4b22-8ed6-44ef7651cc51",
"name": "Second sample registration form"
},
"donations": 2341.0,
"revenue": 654.0,
"online_data_health": "NewConstituent"
}
]
}
{
"type": "object",
"properties": {
"count": {
"type": "integer",
"description": "The total number of items in the collection before limit/offset",
"format": "int32"
},
"value": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the participant.",
"nullable": true
},
"contact_id": {
"type": "string",
"description": "The ID of the contact attending the event.",
"nullable": true
},
"date_added": {
"type": "string",
"description": "The date the participant was created. Includes an offset from UTC in <a href=\"https://tools.ietf.org/html/rfc3339\">ISO-8601 format: </a><i>1969-11-21T10:29:43-04:00</i>.",
"format": "date-time",
"nullable": true
},
"date_modified": {
"type": "string",
"description": "The date when the participant was last modified. Includes an offset from UTC in <a href=\"https://tools.ietf.org/html/rfc3339\">ISO-8601 format: </a><i>1969-11-21T10:29:43-04:00</i>.",
"format": "date-time",
"nullable": true
},
"is_constituent": {
"type": "boolean",
"description": "Indicates whether the participant is a constituent.",
"nullable": true
},
"lookup_id": {
"type": "string",
"description": "The LookupId of the participant.",
"nullable": true
},
"name": {
"type": "string",
"description": "The participant's full name.",
"nullable": true
},
"first_name": {
"type": "string",
"description": "The participant's first name.",
"nullable": true
},
"middle_name": {
"type": "string",
"description": "The participant's middle name.",
"nullable": true
},
"last_name": {
"type": "string",
"description": "The participant's last name.",
"nullable": true
},
"preferred_name": {
"type": "string",
"description": "The participant's preferred name.",
"nullable": true
},
"former_name": {
"type": "string",
"description": "The participant's former name.",
"nullable": true
},
"title": {
"type": "string",
"description": "The participant's title.",
"nullable": true
},
"suffix": {
"type": "string",
"description": "The participant's suffix.",
"nullable": true
},
"class_of": {
"type": "string",
"description": "The participant's graduating class.",
"nullable": true
},
"phone": {
"type": "string",
"description": "The participant's phone number.",
"nullable": true
},
"do_not_call": {
"type": "boolean",
"description": "The participant's phone call preference.",
"nullable": true
},
"email": {
"type": "string",
"description": "The participant's email address.",
"nullable": true
},
"do_not_email": {
"type": "boolean",
"description": "The participant's email preference.",
"nullable": true
},
"participation_level": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the participation level.",
"nullable": true
},
"name": {
"type": "string",
"description": "The name of the participation level.",
"nullable": true
},
"is_inactive": {
"type": "boolean",
"description": "Whether the participation level is inactive. True if inactive."
}
},
"additionalProperties": false,
"description": "Participation levels are the level of involvement participants have in an event."
},
"attended": {
"type": "boolean",
"description": "Whether the participant attended the event.",
"nullable": true
},
"rsvp_status": {
"title": "RSVPStatus",
"enum": [
"NoResponse",
"Attending",
"Declined",
"Interested",
"Canceled",
"Waitlisted",
"NotApplicable"
],
"type": "string",
"description": "The status of the participant's engagement with the event.",
"nullable": true
},
"invitation_status": {
"title": "InvitationStatus",
"enum": [
"NotApplicable",
"NotInvited",
"Invited"
],
"type": "string",
"description": "The status of the invitation to the participant.",
"nullable": true
},
"rsvp_date": {
"type": "object",
"properties": {
"d": {
"type": "integer",
"description": "The day in the fuzzy date.",
"format": "int32",
"nullable": true
},
"m": {
"type": "integer",
"description": "The month in the fuzzy date.",
"format": "int32",
"nullable": true
},
"y": {
"type": "integer",
"description": "The year in the fuzzy date.",
"format": "int32",
"nullable": true
}
},
"additionalProperties": false,
"description": "Fuzzy dates provide a versatile date type to create partial dates such as February 9 (with no year indicated)."
},
"total_registration_fees": {
"type": "number",
"description": "The sum of the participant's fee amounts.",
"format": "double",
"nullable": true
},
"total_paid": {
"type": "number",
"description": "The sum of the participant's paid gifts with a type of Registration Fees.",
"format": "double",
"nullable": true
},
"host": {
"type": "object",
"properties": {
"contact_id": {
"type": "string",
"description": "The ID of the contact attending the event.",
"nullable": true
},
"participant_id": {
"type": "string",
"description": "The ID of the participant.",
"nullable": true
},
"name": {
"type": "string",
"description": "The participant's full name.",
"nullable": true
}
},
"additionalProperties": false,
"description": "The participant's basic summary information."
},
"guests": {
"type": "array",
"items": {
"type": "object",
"properties": {
"contact_id": {
"type": "string",
"description": "The ID of the contact attending the event.",
"nullable": true
},
"participant_id": {
"type": "string",
"description": "The ID of the participant.",
"nullable": true
},
"name": {
"type": "string",
"description": "The participant's full name.",
"nullable": true
}
},
"additionalProperties": false,
"description": "The participant's basic summary information."
},
"description": "The guests of the participant.",
"nullable": true
},
"seat": {
"type": "string",
"description": "The seat assignment for the participant.",
"nullable": true
},
"name_tag": {
"type": "string",
"description": "The name tag for the participant",
"nullable": true
},
"summary_note": {
"type": "string",
"description": "Quick reference information pinned to the participant's record.",
"nullable": true
},
"memberships": {
"type": "array",
"items": {
"type": "object",
"properties": {
"category": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the membership category.",
"nullable": true
},
"name": {
"type": "string",
"description": "The name of the membership category.",
"nullable": true
}
},
"additionalProperties": false,
"description": "The individual's membership category."
}
},
"additionalProperties": false,
"description": "Membership information for the participant."
},
"description": "The membership information for the participant.",
"nullable": true
},
"participant_options": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The event participant option ID",
"nullable": true
},
"name": {
"type": "string",
"description": "The event participant option name",
"nullable": true
},
"input_type": {
"title": "EventParticipantOptionType",
"enum": [
"Boolean",
"String",
"List"
],
"type": "string",
"description": "The event participant option type"
},
"values": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "A participant option value's id",
"nullable": true
},
"value": {
"type": "string",
"description": "A participant option value's value",
"nullable": true
}
},
"additionalProperties": false,
"description": "A participant option value"
},
"description": "The participant option value(s)",
"nullable": true
}
},
"additionalProperties": false,
"description": "An event participant option for a participant entry"
},
"description": "The requested participant options for the participant",
"nullable": true
},
"registration_form": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The registration form ID",
"nullable": true
},
"name": {
"type": "string",
"description": "The registration form name",
"nullable": true
}
},
"additionalProperties": false,
"description": "A registration form for a participant entry"
},
"donations": {
"type": "number",
"description": "The sum of the participant's paid gifts with a type of Donations.",
"format": "double",
"nullable": true
},
"revenue": {
"type": "number",
"description": "The sum of the participant's paid gifts across all types.",
"format": "double",
"nullable": true
},
"online_data_health": {
"title": "OnlineDataHealthStatus",
"enum": [
"Matched",
"PossibleDuplicate",
"NewNamedGuest",
"NewConstituent",
"FormerPossibleDuplicate",
"ManuallyChanged"
],
"type": "string",
"description": "For a participant who registers online, shows their online data health status, such as if they were matched to an existing constituent or added as a possible duplicate.",
"nullable": true
}
},
"additionalProperties": false,
"description": "Participant list entries contain the list information for participants"
},
"description": "The set of items included in the response. This may be a subset of the items in the collection.",
"nullable": true
}
},
"additionalProperties": false,
"description": "Defines a collection of participant list entries."
}
Response 400 Bad Request
Returned when the specified request parameters are not in the appropriate format.
[
{
"message": "The request body is not in the appropriate format.",
"error_name": "BadRequest",
"error_code": 400,
"raw_message": "The request body is not in the appropriate format."
}
]
{
"type": "array",
"items": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "The description of the error.",
"nullable": true
},
"error_name": {
"type": "string",
"description": "The name of the error.",
"nullable": true
},
"error_code": {
"type": "integer",
"description": "The number associated with the error.",
"format": "int32"
},
"raw_message": {
"type": "string",
"description": "The description of the error which can include argument placeholders.",
"nullable": true
},
"error_args": {
"type": "array",
"items": {
"type": "string"
},
"description": "The argument data for the placeholders.",
"nullable": true
}
},
"additionalProperties": false,
"description": "Explains the reason for an error."
},
"x-apim-inline": true
}
Response 403 Forbidden
Returned when the user does not have rights to view the participant records.
[
{
"message": "The user does not have the necessary permissions for this task.",
"error_name": "Forbidden",
"error_code": 403,
"raw_message": "The user does not have the necessary permissions for this task."
}
]
{
"type": "array",
"items": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "The description of the error.",
"nullable": true
},
"error_name": {
"type": "string",
"description": "The name of the error.",
"nullable": true
},
"error_code": {
"type": "integer",
"description": "The number associated with the error.",
"format": "int32"
},
"raw_message": {
"type": "string",
"description": "The description of the error which can include argument placeholders.",
"nullable": true
},
"error_args": {
"type": "array",
"items": {
"type": "string"
},
"description": "The argument data for the placeholders.",
"nullable": true
}
},
"additionalProperties": false,
"description": "Explains the reason for an error."
},
"x-apim-inline": true
}
Response 404 Not Found
Returned when the specified event is not found.
[
{
"message": "The requested record was not found.",
"error_name": "NotFound",
"error_code": 404,
"raw_message": "The requested record was not found."
}
]
{
"type": "array",
"items": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "The description of the error.",
"nullable": true
},
"error_name": {
"type": "string",
"description": "The name of the error.",
"nullable": true
},
"error_code": {
"type": "integer",
"description": "The number associated with the error.",
"format": "int32"
},
"raw_message": {
"type": "string",
"description": "The description of the error which can include argument placeholders.",
"nullable": true
},
"error_args": {
"type": "array",
"items": {
"type": "string"
},
"description": "The argument data for the placeholders.",
"nullable": true
}
},
"additionalProperties": false,
"description": "Explains the reason for an error."
},
"x-apim-inline": true
}
Code samples
@ECHO OFF
curl -v -X GET "https://api.sky.blackbaud.com/event/v1/events/{event_id}/participants?name={string}&participation_level={array}&attended_filter={boolean}&is_constituent_filter={boolean}&email_eligible_filter={boolean}&phone_call_eligible_filter={boolean}&invitation_status={array}&rsvp_status={array}&date_added={string}&last_modified={string}&fees_paid_filter={boolean}&fields={array}&sort={array}&participant_option_id={string}&participant_option_values={array}®istration_form_include_type={string}®istration_form_ids={array}&online_data_health={array}&limit={integer}&offset={integer}"
-H "Bb-Api-Subscription-Key: {subscription key}"
-H "Authorization: Bearer {access token}"
--data-ascii "{body}"
using System;
using System.Net.Http.Headers;
using System.Text;
using System.Net.Http;
using System.Web;
namespace CSHttpClientSample
{
static class Program
{
static void Main()
{
MakeRequest();
Console.WriteLine("Hit ENTER to exit...");
Console.ReadLine();
}
static async void MakeRequest()
{
var client = new HttpClient();
var queryString = HttpUtility.ParseQueryString(string.Empty);
// Request headers
client.DefaultRequestHeaders.Add("Bb-Api-Subscription-Key", "{subscription key}");
client.DefaultRequestHeaders.Add("Authorization", "Bearer {access token}");
// Request parameters
queryString["name"] = "{string}";
queryString["participation_level"] = "{array}";
queryString["attended_filter"] = "{boolean}";
queryString["is_constituent_filter"] = "{boolean}";
queryString["email_eligible_filter"] = "{boolean}";
queryString["phone_call_eligible_filter"] = "{boolean}";
queryString["invitation_status"] = "{array}";
queryString["rsvp_status"] = "{array}";
queryString["date_added"] = "{string}";
queryString["last_modified"] = "{string}";
queryString["fees_paid_filter"] = "{boolean}";
queryString["fields"] = "{array}";
queryString["sort"] = "{array}";
queryString["participant_option_id"] = "{string}";
queryString["participant_option_values"] = "{array}";
queryString["registration_form_include_type"] = "{string}";
queryString["registration_form_ids"] = "{array}";
queryString["online_data_health"] = "{array}";
queryString["limit"] = "{integer}";
queryString["offset"] = "{integer}";
var uri = "https://api.sky.blackbaud.com/event/v1/events/{event_id}/participants?" + queryString;
var response = await client.GetAsync(uri);
}
}
}
// // This sample uses the Apache HTTP client from HTTP Components (http://hc.apache.org/httpcomponents-client-ga/)
import java.net.URI;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.utils.URIBuilder;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
public class JavaSample
{
public static void main(String[] args)
{
HttpClient httpclient = HttpClients.createDefault();
try
{
URIBuilder builder = new URIBuilder("https://api.sky.blackbaud.com/event/v1/events/{event_id}/participants");
builder.setParameter("name", "{string}");
builder.setParameter("participation_level", "{array}");
builder.setParameter("attended_filter", "{boolean}");
builder.setParameter("is_constituent_filter", "{boolean}");
builder.setParameter("email_eligible_filter", "{boolean}");
builder.setParameter("phone_call_eligible_filter", "{boolean}");
builder.setParameter("invitation_status", "{array}");
builder.setParameter("rsvp_status", "{array}");
builder.setParameter("date_added", "{string}");
builder.setParameter("last_modified", "{string}");
builder.setParameter("fees_paid_filter", "{boolean}");
builder.setParameter("fields", "{array}");
builder.setParameter("sort", "{array}");
builder.setParameter("participant_option_id", "{string}");
builder.setParameter("participant_option_values", "{array}");
builder.setParameter("registration_form_include_type", "{string}");
builder.setParameter("registration_form_ids", "{array}");
builder.setParameter("online_data_health", "{array}");
builder.setParameter("limit", "{integer}");
builder.setParameter("offset", "{integer}");
URI uri = builder.build();
HttpGet request = new HttpGet(uri);
request.setHeader("Bb-Api-Subscription-Key", "{subscription key}");
request.setHeader("Authorization", "Bearer {access token}");
// Request body
StringEntity reqEntity = new StringEntity("{body}");
request.setEntity(reqEntity);
HttpResponse response = httpclient.execute(request);
HttpEntity entity = response.getEntity();
if (entity != null)
{
System.out.println(EntityUtils.toString(entity));
}
}
catch (Exception e)
{
System.out.println(e.getMessage());
}
}
}
<!DOCTYPE html>
<html>
<head>
<title>JSSample</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
</head>
<body>
<script type="text/javascript">
$(function() {
var params = {
// Request parameters
"name": "{string}",
"participation_level": "{array}",
"attended_filter": "{boolean}",
"is_constituent_filter": "{boolean}",
"email_eligible_filter": "{boolean}",
"phone_call_eligible_filter": "{boolean}",
"invitation_status": "{array}",
"rsvp_status": "{array}",
"date_added": "{string}",
"last_modified": "{string}",
"fees_paid_filter": "{boolean}",
"fields": "{array}",
"sort": "{array}",
"participant_option_id": "{string}",
"participant_option_values": "{array}",
"registration_form_include_type": "{string}",
"registration_form_ids": "{array}",
"online_data_health": "{array}",
"limit": "{integer}",
"offset": "{integer}",
};
$.ajax({
url: "https://api.sky.blackbaud.com/event/v1/events/{event_id}/participants?" + $.param(params),
beforeSend: function(xhrObj){
// Request headers
xhrObj.setRequestHeader("Bb-Api-Subscription-Key","{subscription key}");
xhrObj.setRequestHeader("Authorization","Bearer {access token}");
},
type: "GET",
// Request body
data: "{body}",
})
.done(function(data) {
alert("success");
})
.fail(function() {
alert("error");
});
});
</script>
</body>
</html>
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[])
{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
NSString* path = @"https://api.sky.blackbaud.com/event/v1/events/{event_id}/participants";
NSArray* array = @[
// Request parameters
@"entities=true",
@"name={string}",
@"participation_level={array}",
@"attended_filter={boolean}",
@"is_constituent_filter={boolean}",
@"email_eligible_filter={boolean}",
@"phone_call_eligible_filter={boolean}",
@"invitation_status={array}",
@"rsvp_status={array}",
@"date_added={string}",
@"last_modified={string}",
@"fees_paid_filter={boolean}",
@"fields={array}",
@"sort={array}",
@"participant_option_id={string}",
@"participant_option_values={array}",
@"registration_form_include_type={string}",
@"registration_form_ids={array}",
@"online_data_health={array}",
@"limit={integer}",
@"offset={integer}",
];
NSString* string = [array componentsJoinedByString:@"&"];
path = [path stringByAppendingFormat:@"?%@", string];
NSLog(@"%@", path);
NSMutableURLRequest* _request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:path]];
[_request setHTTPMethod:@"GET"];
// Request headers
[_request setValue:@"{subscription key}" forHTTPHeaderField:@"Bb-Api-Subscription-Key"];
[_request setValue:@"Bearer {access token}" forHTTPHeaderField:@"Authorization"];
// Request body
[_request setHTTPBody:[@"{body}" dataUsingEncoding:NSUTF8StringEncoding]];
NSURLResponse *response = nil;
NSError *error = nil;
NSData* _connectionData = [NSURLConnection sendSynchronousRequest:_request returningResponse:&response error:&error];
if (nil != error)
{
NSLog(@"Error: %@", error);
}
else
{
NSError* error = nil;
NSMutableDictionary* json = nil;
NSString* dataString = [[NSString alloc] initWithData:_connectionData encoding:NSUTF8StringEncoding];
NSLog(@"%@", dataString);
if (nil != _connectionData)
{
json = [NSJSONSerialization JSONObjectWithData:_connectionData options:NSJSONReadingMutableContainers error:&error];
}
if (error || !json)
{
NSLog(@"Could not parse loaded json with error:%@", error);
}
NSLog(@"%@", json);
_connectionData = nil;
}
[pool drain];
return 0;
}
<?php
// This sample uses the PEAR HTTP client from http://pear.php.net/package/HTTP_Request2
require_once 'HTTP/Request2.php';
$request = new Http_Request2('https://api.sky.blackbaud.com/event/v1/events/{event_id}/participants');
$url = $request->getUrl();
$headers = array(
// Request headers
'Bb-Api-Subscription-Key' => '{subscription key}',
'Authorization' => 'Bearer {access token}',
);
$request->setHeader($headers);
$parameters = array(
// Request parameters
'name' => '{string}',
'participation_level' => '{array}',
'attended_filter' => '{boolean}',
'is_constituent_filter' => '{boolean}',
'email_eligible_filter' => '{boolean}',
'phone_call_eligible_filter' => '{boolean}',
'invitation_status' => '{array}',
'rsvp_status' => '{array}',
'date_added' => '{string}',
'last_modified' => '{string}',
'fees_paid_filter' => '{boolean}',
'fields' => '{array}',
'sort' => '{array}',
'participant_option_id' => '{string}',
'participant_option_values' => '{array}',
'registration_form_include_type' => '{string}',
'registration_form_ids' => '{array}',
'online_data_health' => '{array}',
'limit' => '{integer}',
'offset' => '{integer}',
);
$url->setQueryVariables($parameters);
$request->setMethod(HTTP_Request2::METHOD_GET);
// Request body
$request->setBody("{body}");
try
{
$response = $request->send();
echo $response->getBody();
}
catch (HttpException $ex)
{
echo $ex;
}
?>
########### Python 2.7 #############
import httplib, urllib, base64
headers = {
# Request headers
'Bb-Api-Subscription-Key': '{subscription key}',
'Authorization': 'Bearer {access token}',
}
params = urllib.urlencode({
# Request parameters
'name': '{string}',
'participation_level': '{array}',
'attended_filter': '{boolean}',
'is_constituent_filter': '{boolean}',
'email_eligible_filter': '{boolean}',
'phone_call_eligible_filter': '{boolean}',
'invitation_status': '{array}',
'rsvp_status': '{array}',
'date_added': '{string}',
'last_modified': '{string}',
'fees_paid_filter': '{boolean}',
'fields': '{array}',
'sort': '{array}',
'participant_option_id': '{string}',
'participant_option_values': '{array}',
'registration_form_include_type': '{string}',
'registration_form_ids': '{array}',
'online_data_health': '{array}',
'limit': '{integer}',
'offset': '{integer}',
})
try:
conn = httplib.HTTPSConnection('api.sky.blackbaud.com')
conn.request("GET", "/event/v1/events/{event_id}/participants?%s" % params, "{body}", headers)
response = conn.getresponse()
data = response.read()
print(data)
conn.close()
except Exception as e:
print("[Errno {0}] {1}".format(e.errno, e.strerror))
####################################
########### Python 3.2 #############
import http.client, urllib.request, urllib.parse, urllib.error, base64
headers = {
# Request headers
'Bb-Api-Subscription-Key': '{subscription key}',
'Authorization': 'Bearer {access token}',
}
params = urllib.parse.urlencode({
# Request parameters
'name': '{string}',
'participation_level': '{array}',
'attended_filter': '{boolean}',
'is_constituent_filter': '{boolean}',
'email_eligible_filter': '{boolean}',
'phone_call_eligible_filter': '{boolean}',
'invitation_status': '{array}',
'rsvp_status': '{array}',
'date_added': '{string}',
'last_modified': '{string}',
'fees_paid_filter': '{boolean}',
'fields': '{array}',
'sort': '{array}',
'participant_option_id': '{string}',
'participant_option_values': '{array}',
'registration_form_include_type': '{string}',
'registration_form_ids': '{array}',
'online_data_health': '{array}',
'limit': '{integer}',
'offset': '{integer}',
})
try:
conn = http.client.HTTPSConnection('api.sky.blackbaud.com')
conn.request("GET", "/event/v1/events/{event_id}/participants?%s" % params, "{body}", headers)
response = conn.getresponse()
data = response.read()
print(data)
conn.close()
except Exception as e:
print("[Errno {0}] {1}".format(e.errno, e.strerror))
####################################
require 'net/http'
uri = URI('https://api.sky.blackbaud.com/event/v1/events/{event_id}/participants')
query = URI.encode_www_form({
# Request parameters
'name' => '{string}',
'participation_level' => '{array}',
'attended_filter' => '{boolean}',
'is_constituent_filter' => '{boolean}',
'email_eligible_filter' => '{boolean}',
'phone_call_eligible_filter' => '{boolean}',
'invitation_status' => '{array}',
'rsvp_status' => '{array}',
'date_added' => '{string}',
'last_modified' => '{string}',
'fees_paid_filter' => '{boolean}',
'fields' => '{array}',
'sort' => '{array}',
'participant_option_id' => '{string}',
'participant_option_values' => '{array}',
'registration_form_include_type' => '{string}',
'registration_form_ids' => '{array}',
'online_data_health' => '{array}',
'limit' => '{integer}',
'offset' => '{integer}'
})
if query.length > 0
if uri.query && uri.query.length > 0
uri.query += '&' + query
else
uri.query = query
end
end
request = Net::HTTP::Get.new(uri.request_uri)
# Request headers
request['Bb-Api-Subscription-Key'] = '{subscription key}'
request['Authorization'] = 'Bearer {access token}'
# Request body
request.body = "{body}"
response = Net::HTTP.start(uri.host, uri.port, :use_ssl => uri.scheme == 'https') do |http|
http.request(request)
end
puts response.body
Comments