Follow

EventRegistrations API call

You can use the EventRegistrations API call to retrieve a list of event registrations for a particular event or contact, and to retrieve details for a particular registration. You can also add, update, or delete event registrations using this API call, allowing you to migrate old event registrations to your Wild Apricot database.

Wild Apricot's API is intended for use by developers with technical expertise. If you need assistance, we provide support via email or through our Developers forum.

Retrieving registrations for a particular contact

Syntax
GET [baseAPIaddress]/v2/Accounts/[accountID]/EventRegistrations?contactId=[contactID]
Example
GET https://api.wildapricot.org/v2/Accounts/58293/EventRegistrations?contactId=725295

Retrieving registrations for a particular event

Syntax
GET [baseAPIaddress]/v2/Accounts/[accountID]/EventRegistrations?eventId=[eventID]
Example
GET https://api.wildapricot.org/v2/Accounts/58293/EventRegistrations?eventId=11769 
You can specify both a contact and an event – e.g. ?contactId=725295&eventId=11769 – to further narrow the results.

Retrieving specific registrations

You can filter the registrations returned by the EventRegistrations API call by specifying a list of registration IDs. Only registrations with the specified IDs will be retrieved.

Syntax
GET [baseAPIaddress]/v2/Accounts/[accountID]/EventRegistrations?$filter=ID in [1,2,3,4…]
Example
GET https://api.wildapricot.org/v2/Accounts/58293/EventRegistrations?$filter=ID in [1,2,7,9]

Retrieving event registration details

Syntax
GET [baseAPIaddress]/v2/Accounts/[accountID]/EventRegistrations/[eventRegistrationID]
Example:
GET https://api.wildapricot.org/v2/Accounts/58293/EventRegistrations/112745

Parameters

The following parameters are used within the EventRegistrations API call:

baseAPIaddress
The base address of the API. For more information, see API access options.

accountID
The account identifier that is returned by the Accounts API call.

contactID
The unique identifier for a contact. Contacts IDs are returned by the Contacts API call.

eventID
The unique identifier of an event. Event IDs are returned by the Events API call.

eventRegistrationID
The unique identifier of an event registration. Event registration IDs are returned by the EventRegistrations API call.

Each API call must include an authentication information that verifies your account and prevents others from accessing your data. For more information, see API access options.

Response fields

For each invoice, the EventRegistrations API call retrieves the following information.

Contact
The ID and URL of the registrant.

Event
The start date, ID, URL, and name of the event.

GuestRegistrationsSummary
A summary of guest registrations for this registration.

  • NumberOfGuests
    The number of guests for this registration, if guest registrations are set up to collect only the total number of guests.
  • NumberOfGuestsCheckIn
    The number of guests under this registration who have been checked in, where guest registrations have been set up to collect only the total number of guests.
  • GuestRegistrations
    The contact ID and URL of each guest, if guest registrations are set up to collect contact information or full registration information for each guest.

ID
The unique identifier of the event registration.

IsCheckedIn
Indicates whether the registrant has been checked in to the event.

IsGuestRegistration
Indicates whether the registration is a guest registration.

IsPaid
Indicates whether the registration has a status of Paid.

Invoice
The ID and URL of the invoice for the registration.

Memo
Any internal notes entered for the registration.

PaidSum
The amount paid towards the registration fee.

ParentRegistration
The ID and URL of the parent registration. The value is NULL if registration is not a guest registration.

RegistrationDate
The date of the registration.

RegistrationFee
The fee for the registration.

RegistrationFields
The name and value of the fields appearing on the registration form for this registration. To identify the field, you can use FieldName or SystemCode. SystemCode is a unique field identifier and can be used instead of FieldName for more accurate field identification. If both FieldName and SystemCode are defined, the field will be searched first by SystemCode and then by FieldName, (where there are no fields with the specified SystemCode). If only FieldName is defined and there are two fields that use it – system and custom – then only the system field will be updated.

RegistrationTypeID
The ID of the registration type.

ShowToPublic
Indicates whether the registrant is included in the public list of event registrants.

URL
The address of the URL call for the event registration.

Sample JSON response

 {
"Event": {
"StartDate": "2015-09-10T20:00:00-04:00",
"Id": 11769,
"Url": "http://api.wildapricot.org/v2/accounts/42353/Events/11769",
"Name": "Annual General Meeting"
},
"Contact": {
"Id": 725188,
"Url": "http://api.wildapricot.org/v2/accounts/42353/Contacts/725188"
},
"IsCheckedIn": false,
"RegistrationFee": 26.03,
"PaidSum": 26.03,
"Invoice": {
"Id": 206301,
"Url": "http://api.wildapricot.org/v2/accounts/42353/Invoices/206301"
},
"RegistrationTypeId": 29522,
"IsPaid": false,
"RegistrationFields": [
{
"FieldName": "Section",
"Value": null
},
{
"FieldName": "First name",
"Value": "John"
},
{
"FieldName": "Country",
"Value": ""
},
{
"FieldName": "Last name",
"Value": "Didsbury"
},
{
"FieldName": "Organization",
"Value": "Type Factory"
},
{
"FieldName": "e-Mail",
"Value": "jdidsbury@test.com"
},
{
"FieldName": "Phone",
"Value": ""
},
{
"FieldName": "State/Province",
"Value": {
"Id": 137447,
"Label": "Washington"
}
}
],
"ShowToPublic": false,
"RegistrationDate": "2014-06-12T04:00:00+04:00",
"Memo": "",
"GuestRegistrationsSummary": {
"NumberOfGuests": 0,
"NumberOfGuestsCheckedIn": 0,
"GuestRegistrations": []
},
"Id": 112745,
"Url": "http://api.wildapricot.org/v2/accounts/42353/EventRegistrations/112745"
}

Sample XML response

<EventRegistration xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Bonasource.MembershipFS.PublicAPI.Model.V2.Events">
<Id xmlns="http://api.wildapricot.org">112745</Id>
<Url xmlns="http://api.wildapricot.org">http://api.wildapricot.org/v2/accounts/42353/EventRegistrations/112745</Url>
<CheckInStatusChangeDate xmlns:d2p1="http://schemas.datacontract.org/2004/07/System">
<d2p1:DateTime>2014-07-14T09:51:24Z</d2p1:DateTime>
<d2p1:OffsetMinutes>240</d2p1:OffsetMinutes>
</CheckInStatusChangeDate>
<CheckInStatusChangedBy xmlns:d2p1="http://api.wildapricot.org">
<d2p1:Id>725060</d2p1:Id>
<d2p1:Url>http://api.wildapricot.org/v2/accounts/42353/Contacts/725060</d2p1:Url>
</CheckInStatusChangedBy>
<Contact xmlns:d2p1="http://api.wildapricot.org">
<d2p1:Id>725188</d2p1:Id>
<d2p1:Url>http://api.wildapricot.org/v2/accounts/42353/Contacts/725188</d2p1:Url>
</Contact>
<Event>
<Id xmlns="http://api.wildapricot.org">11769</Id>
<Url xmlns="http://api.wildapricot.org">http://api.wildapricot.org/v2/accounts/42353/Events/11769</Url>
<Name xmlns="http://api.wildapricot.org">Annual General Meeting</Name>
<StartDate xmlns:d3p1="http://schemas.datacontract.org/2004/07/System">
<d3p1:DateTime>2015-09-11T00:00:00Z</d3p1:DateTime>
<d3p1:OffsetMinutes>-240</d3p1:OffsetMinutes>
</StartDate>
</Event>
<GuestRegistrationsSummary>
<GuestRegistrations xmlns:d3p1="http://api.wildapricot.org">
<d3p1:LinkedResourceOfint>
<d3p1:Id>112985</d3p1:Id>
<d3p1:Url>/v2/accounts/42353/EventRegistrations/112985</d3p1:Url>
</d3p1:LinkedResourceOfint>
<d3p1:LinkedResourceOfint>
<d3p1:Id>112986</d3p1:Id>
<d3p1:Url>/v2/accounts/42353/EventRegistrations/112986</d3p1:Url>
</d3p1:LinkedResourceOfint>
<d3p1:LinkedResourceOfint>
<d3p1:Id>112987</d3p1:Id>
<d3p1:Url>/v2/accounts/42353/EventRegistrations/112987</d3p1:Url>
</d3p1:LinkedResourceOfint>
</GuestRegistrations>
<NumberOfGuests>0</NumberOfGuests>
<NumberOfGuestsCheckedIn i:nil="true" />
</GuestRegistrationsSummary>
<Invoice xmlns:d2p1="http://api.wildapricot.org">
<d2p1:Id>206301</d2p1:Id>
<d2p1:Url>http://api.wildapricot.org/v2/accounts/42353/Invoices/206301</d2p1:Url>
</Invoice>
<IsCheckedIn>true</IsCheckedIn>
<IsPaid>false</IsPaid>
<Memo>
</Memo>
<PaidSum>26.0300</PaidSum>
<RecreateInvoice i:nil="true" />
<RegistrationDate xmlns:d2p1="http://schemas.datacontract.org/2004/07/System">
<d2p1:DateTime>2014-06-12T00:00:00Z</d2p1:DateTime>
<d2p1:OffsetMinutes>240</d2p1:OffsetMinutes>
</RegistrationDate>
<RegistrationFee>104.1000</RegistrationFee>
<RegistrationFields>
<EventField>
<FieldName>First name</FieldName>
<Value xmlns:d4p1="http://www.w3.org/2001/XMLSchema" i:type="d4p1:string">John</Value>
</EventField>
<EventField>
<FieldName>Last name</FieldName>
<Value xmlns:d4p1="http://www.w3.org/2001/XMLSchema" i:type="d4p1:string">Didsbury</Value>
</EventField>
<EventField>
<FieldName>Organization</FieldName>
<Value xmlns:d4p1="http://www.w3.org/2001/XMLSchema" i:type="d4p1:string">Type Factory</Value>
</EventField>
<EventField>
<FieldName>e-Mail</FieldName>
<Value xmlns:d4p1="http://www.w3.org/2001/XMLSchema" i:type="d4p1:string">jdidsbury@test.com</Value>
</EventField>
<EventField>
<FieldName>Phone</FieldName>
<Value xmlns:d4p1="http://www.w3.org/2001/XMLSchema" i:type="d4p1:string">
</Value>
</EventField>
<EventField>
<FieldName>State/Province</FieldName>
<Value xmlns:d4p1="http://api.wildapricot.org" i:type="d4p1:ListItem">
<d4p1:ExtraCost i:nil="true" />
<d4p1:Id>137447</d4p1:Id>
<d4p1:Label>Washington</d4p1:Label>
<d4p1:Position i:nil="true" />
<d4p1:SelectedByDefault i:nil="true" />
<d4p1:Value i:nil="true" />
</Value>
</EventField>
<EventField>
<FieldName>Member only</FieldName>
<Value i:nil="true" />
</EventField>
<EventField>
<FieldName>Section</FieldName>
<Value i:nil="true" />
</EventField>
<EventField>
<FieldName>Country</FieldName>
<Value xmlns:d4p1="http://www.w3.org/2001/XMLSchema" i:type="d4p1:string">
</Value>
</EventField>
</RegistrationFields>
<RegistrationTypeId>29522</RegistrationTypeId>
<ShowToPublic>false</ShowToPublic>
</EventRegistration>

Creating a new event registration

You can use an EventRegistrations API call to create a new event registration.

Syntax
POST [baseAPIaddress]/v2/Accounts/[accountID]/EventRegistrations
{
"eventRegistrationField": eventRegistrationFieldValue,
"eventRegistrationField": eventRegistrationFieldValue,
...
}
  • The event registration ID should be 0 or should not be specified.
  • The following event registration fields are required: event ID, contact ID, RegistrationTypeID, and any required registration fields.
  • To identify the field, you can use FieldName or SystemCode. SystemCode is a unique field identifier and can be used instead of FieldName for more accurate field identification. If both FieldName and SystemCode are defined, the field will be searched first by SystemCode and then by FieldName, (where there are no fields with the specified SystemCode). If only FieldName is defined and there are two fields that use it – system and custom – then only the system field will be updated.
  • You can create the corresponding registration invoice by including a RecreateInvoice field and setting it to true .
Example
POST https://api.wildapricot.org/v2/Accounts/58293/EventRegistrations
{
"Event": {
"Id":11769
},
"RegistrationTypeId":23456,
"Contact":{
"Id": 725188
},
"IscheckedIn": false,
"IsPaid": false,
"RegistrationFields": [
{
"FieldName": "First name",
"Value": "John"
},
{
"FieldName": "Last name",
"Value": "Barrett"
},
{
"FieldName": "Organization",
"Value": "Design Partners"
}
],
"ShowToPublic": true,
"Memo":"Important member",
"GuestRegistrationsSummary":{
"NumberOfGuests":1
}
}

If any of the required fields are missing, or if any of the fields include invalid data, a 400 Bad Request error will be returned. For more information, see API status codes.

Updating an existing registration

You can update an existing event registration using an EventRegistrations API call.

Syntax
PUT [baseAPIaddress]/v2/Accounts/[accountID]/EventRegistrations/[eventRegistrationID]
{
"Id": eventRegistrationID,
"eventRegistrationField": eventRegistrationFieldValue,
"eventRegistrationField": eventRegistrationFieldValue,
...
}
  • The event registration ID must be specified both as a field and within the requesting URL. All other event registration fields are optional.
  • To identify the field, you can use FieldName or SystemCode. SystemCode is a unique field identifier and can be used instead of FieldName for more accurate field identification. If both FieldName and SystemCode are defined, the field will be searched first by SystemCode and then by FieldName, (where there are no fields with the specified SystemCode). If only FieldName is defined and there are two fields that use it – system and custom – then only the system field will be updated.
  • You can update the registration invoice to match the updated registration type and any extra cost options by including a RecreateInvoice field and setting it to true.
Example
PUT https://api.wildapricot.org/v2/Accounts/58293/EventRegistrations/112745
{
"Id":112745,
"Event": {
"Id":11769
},
"RegistrationTypeId":23456,
"Contact":{
"Id": 725188
},
"IscheckedIn": false,
"IsPaid": false,
"RegistrationFields": [
{
"FieldName": "First name",
"Value": "John"
},
{
"FieldName": "Last name",
"Value": "Barrett"
},
{
"FieldName": "Organization",
"Value": "Design Partners"
}
],
"ShowToPublic": true,
"Memo":"Important member",
"GuestRegistrationsSummary":{
"NumberOfGuests":1
}
}

Deleting an event registration

Syntax
DELETE [baseAPIaddress]/v2/Accounts/[accountID]/EventRegistrations/[eventRegistrationID]
Example
DELETE https://api.wildapricot.org/v2/Accounts/58293/EventRegistrations/112745

0 Comments

Please sign in to leave a comment.

Search: WildApricot.com 

About results ( seconds) Sort by: 
Sorry, an error occured when performing search.