Home → API Documentation → Printer Friendly Version
API Documentation
- 1. Example API Request
- 2. Events/Training Calendar
- 3. Directory
- 4. Login / Password Reset
- 5. Registration Process
- 6. Booking Process
- 7. Membership
- 8. User Dashboard
- 9. Member Submitted Item List
- 10. Payment Process
- 11. Miscellaneous API Calls
- 12. Custom API Calls
1. Example API Request
1.1. api/Directory
The following example is an API request to the Directory API method using Postman.
1.2. api/Registration
The following example is an API request to the Registration API method using Postman.
1.3. api/FileUpload
The following example code shows how to make a request to the FileUpload API method.
HTML
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>File Upload</title>
<meta content="width=device-width, initial-scale=1.0" name="viewport">
</head>
<body>
<div style="font-size: 18pt;">
<span id="spanlogofile">Click to upload new logo</span>
<div id="orglogo" style="margin-top: 10px;"></div>
<input type="file" id="logofile" />
</div>
<!-- JavaScript Libraries -->
<script src="lib/jquery/jquery.min.js"></script>
<script src="lib/jquery/jquery-migrate.min.js"></script>
<script src="js/fileupload.js"></script>
</body>
</html>
Javascript
$(document).ready(function () {
var baseurl = "https://web-integration-v3.rubicrm.com/";
var apikey = <YOUR-API-KEY>;
var uid = <YOUR-UID>;
var myitems = [];
myitems.push(uid);
myitems.push('UserCompany');
var myvalues = [];
myvalues.push({ uid: uid });
myitems.push(JSON.stringify(myvalues));
myitems.push(apikey);
$.ajax({
type: "POST",
url: baseurl + "api/User",
data: { '': JSON.stringify(myitems) },
success: function (data) {
if (data.length > 0) {
data = JSON.parse(data);
var responseCode = JSON.parse(data.ResponseCode);
var responseMessage = JSON.parse(data.ResponseMessage);
}
if (Number(responseCode) === 200) {
var responsemessagelength = responseMessage.length;
var orglogo = $('#orglogo');
for (i = 0; i < responsemessagelength; i++) {
var CompanyLogo = responseMessage[i].CompanyLogo;
if (CompanyLogo !== '') {
orglogo.html('<img id="userlogo" data-file="logofile" data-old="' + CompanyLogo + '" src="' + CompanyLogo + '" + class="img-fluid" />');
}
else if (CompanyLogo === '') {
orglogo.html('<img id="userlogo" data-file="logofile" data-old="" src="/img/upload-file.png" + class="img-fluid" />');
}
}
var userlogo = $('#userlogo');
fileupload(userlogo, userlogo.data('file'), userlogo.data('old'));
}
else {
console.log(responseMessage);
}
},
error: function (error) {
var test = error;
},
failure: function (error) {
var test = error;
}
});
function fileupload(mycontrol, uploadtype, oldfile) {
var datafile = mycontrol.data('file');
mycontrol.click(function () {
$('#' + datafile).click();
});
$('#' + datafile).unbind('click');
$('#' + datafile).change(function () {
var filecontrol = $(this);
if (filecontrol.val() === '') {
alert('Please select file');
return;
}
else {
var formData = new FormData();
var file = filecontrol[0];
var filesize = file.files[0].size;
if (filesize > 1000000) {
alert("Files must be < 1mb in size");
}
else {
formData.append("file", file.files[0]);
formData.append("uid", uid);
formData.append("uploadtype", uploadtype);
formData.append("oldfile", oldfile);
formData.append("apikey", apikey);
$.ajax({
url: baseurl + "api/FileUpload",
type: "POST",
data: formData,
contentType: false,
processData: false,
success: function (data) {
if (data.length > 0) {
data = JSON.parse(data);
var responseCode = data.ResponseCode;
var responseMessage = data.ResponseMessage;
}
if (Number(responseCode) === 200 && responseMessage === "True") {
window.location.reload();
}
else {
console.log(responseMessage);
}
},
error: function (error) {
console.log(error);
}
});
}
}
});
}
});
2. Events/Training Calendar
2.1. api/Calendar
This API call will return all events/training available to display online.
You can return items that are in the Future or items in the Past based on the parameter EventTimeFrame supplied.
If the EventTimeFrame supplied is the Past, then the items returned are based on:
• Display On Web in Rubi being ticked.
• The Event Status not being Pending or Cancelled.
• The event’s start date and time being in the past compared to the current date and time.
Parameters To Submit
If the parameters below highlighted with “*” are submitted, they cannot be submitted as blank values.
| Parameter | Parameter Help | Parameter Data Type |
| uid | Logged in user’s uid. | Boolean |
| EventType* | An Event Type value can be supplied to filter return results otherwise "All". | String – Max 50 chars |
| EventTimeFrame* | Submit either "Future" or "Past". | String – Max 10 chars |
Return Response
The API call will return the following fields of data.
| Field | Field Help |
| eid | Event GUID. |
| EventName | Event name. |
| EventStatus | Status of the event. |
| EventMonthYear | Integer value of month and year of the event. |
| EventDay | Day of event in shorthand string format. |
| EventStartTime | Event start time. |
| EventEndTime | Event end time. |
| EventDescription | The main body of text detailing the event. The field is named “Long Desc” in Rubi and is located on the event record’s “Details” page. |
| EventLocationOrganisation | Name of organisation the event is held (if applicable). |
| EventLocation1 | First line of the event address location. |
| EventLocation2 | Second line of the event address location. |
| EventLocation3 | Third line of the event address location. |
| EventLocation4 | Fourth line of the event address location. |
| EventLocationCounty | County of the event address location. |
| EventLocationPostcode | Postcode of the event address location. |
| EventLocationCountry | Country of the event address location. |
| EventTheme | Theme of the event. |
| EventType | Type of the event. |
| EventSponsor | JSON stringified array of sponsors. |
| BookOnline | Whether the event is bookable. This relates to the “Book Online” field set in Rubi under the “Web” section. |
| PriceCurrency | Currency code. |
| MemberPrice | Price of the event set for Member users. |
| NonMemberPrice | Price of the event set for Non Member users. |
| EventImage | Image URL set for the event. Field labelled “Event Image” in Rubi under the “Web” section. |
2.2. api/CalendarDetail
This API call will return details about a specific event. To retrieve details about a specific event you must pass in the eid acquired from api/Calendar.
Parameters To Submit
Parameters can be submitted as blank values.
| Parameter | Parameter Help | Parameter Data Type |
| uid | Logged in user’s uid. | String – Max 50 chars |
| eid | The event eid to return more information on. | String – Max 50 chars |
Return Response
The API call ResponseMessage will return the following fields of data.
| Field | Field Help |
| eid | Event GUID. |
| EventName | Event name. |
| EventStatus | Status of the event. |
| EventMonthYear | Integer value of month and year of the event. |
| EventDay | Day of event in shorthand string format. |
| EventDate | Date of the event in format dd/mm/yyyy. |
| EventStartTime | Event start time. |
| EventEndTime | Event end time. |
| EventDescription | The main body of text detailing the event. The field is named “Long Desc” in Rubi and is located on the event record’s “Details” page. |
| EventLocationOrganisation | Name of organisation the event is held (if applicable). |
| EventLocation1 | First line of the event address location. |
| EventLocation2 | Second line of the event address location. |
| EventLocation3 | Third line of the event address location. |
| EventLocation4 | Fourth line of the event address location. |
| EventLocationCounty | County of the event address location. |
| EventLocationPostcode | Postcode of the event address location. |
| EventLocationCountry | Country of the event address location. |
| EventTheme | Theme of the event. |
| EventType | Type of the event. |
| EventSponsor | JSON stringified array of sponsors. |
| EventPresenters | JSON stringified array of presenters. |
| BookOnline | Whether the event is bookable. This relates to the “Book Online” field set in Rubi under the “Web” section. |
| AllowWaitlist | Whether the event has a waitlist if the “MaxRemaining” is 0 noting no more spaces on the event. This relates to the “Allow Waitlist” field set in Rubi under the “Web” section. |
| PriceCurrency | Currency code. |
| MemberPrice | Price of the event set for Member users. |
| MemberPriceSpecial | Price of event set for Member users if a special rate (early bird) has been applied. The special rate should be valid until “MemberPriceSpecialDate” has passed. |
| MemberPriceSpecialDate | Date the till “MemberPriceSpecial” is valid. |
| NonMemberPrice | Price of the event set for Non Member users. |
| NonMemberPriceSpecial | Price of event set for Non Member users if a special rate (early bird) has been applied. The special rate should be valid until “NonMemberPriceSpecialDate” has passed. |
| NonMemberPriceSpecialDate | Date the till “NonMemberPriceSpecial” is valid. |
| EventImage | Image URL set for the event. Field labelled “Event Image” in Rubi under the “Web” section. |
| MaxCompany | The maximum amount of bookings allowed per company. Used to minimise company numbers for networking events. |
| MaxCompanyRemaining | The remaining number of bookings allowed for a company after taking into account active bookings and bookings awaiting payment. Provided a uid is supplied. |
| MaxRemaining | Total number of bookings available as a whole for the event. Takes into account active bookings. |
| CompanyWaitlist | Returns the total number of bookings that are on the waitlist for the company. Provided a uid is supplied. |
| CompanyActive | Returns the total number of active bookings for the company. Provided a uid is supplied. |
| CompanyWebAwaitingPayment | Returns the total number of bookings awaiting payment for the company. Provided a uid is supplied. |
| CanxPol | Cancellation policy for the event. Only to be used if the cancellation policy differs from the standard. If empty then use standard cancellation policy. |
| Agenda | Agenda for the event. The field named “Agenda” in Rubi and is located on the event’s “Details” page. |
| IsMember | Whether the user is a member or not. Provided a uid is supplied. |
2.3. Events/Training Calendar Guidance
We would advise your website to make calls to api/Calendar on a scheduled basis and cache these results on the website backend. Most clients who operate on a schedule make a new call to api/Calendar every hour.
However, we would advise implementing a method for your client to instantly refresh the cache and pull the most up-to-date event data if they needed.
When clients visit an event, you should call api/CalendarDetail to return the most up-to-date information about the event, such as remaining bookings, but also to update statistics on page views.
3. Directory
3.1. api/Directory
This API call will return all records deemed as members, which can be displayed in a directory.
All records which have an applicable membership status set to denote the record as a member will return.
Additionally, only records where the Comp/Ind field is set to Company will return. The Comp/Ind field can be located in the General section of the Primary Record.
You can either pass an empty string for the cid, which will return all records, or you can provide a specific cid to return data for a specific company.
Parameters To Submit
Parameters can be submitted as blank values.
| Parameter | Parameter Help | Parameter Data Type |
| uid | Logged in user’s uid. | String – Max 50 chars |
| cid | Company cid if you require only specific company information to return. | String – Max 50 chars |
Return Response
The API call ResponseMessage will return the following fields of data.
| Field | Field Help |
| cid | Company GUID. |
| Company | Company’s name. |
| CompanyTel | Generic company telephone number. |
| CompanyFax | Company’s fax number. |
| CompanyEmail | Generic company email. |
| CompanyWeb | Company’s website URL. |
| Category | The business category of the company. |
| BusinessDescription | The company’s business description. |
| Address1 | First line of the company’s address. |
| Address2 | Second line of the company’s address. |
| Address3 | Third line of the company’s address. |
| Address4 | Fourth line of the company’s address. |
| County | County set on the company’s address. |
| Postcode | Company’s postcode. |
| Country | Country set on the company’s address. |
| Offers | The number of member offers the company has set to display will be returned. |
| CompanyLogo | The URL of the company’s logo. |
| URL of company’s Twitter. | |
| URL of company’s LinkedIn. | |
| URL of company’s Facebook. | |
| YouTube | URL of company’s YouTube. |
| URL of company’s Google+. | |
| URL of company’s Instagram. | |
| Yammer | URL of company’s Yammer. |
| URL of company’s Pinterest. |
4. Login / Password Reset
4.1. api/Login
This API call is used to log in a user and validate their credentials.
Parameters To Submit
All parameters are required and cannot be empty.
| Parameter | Parameter Help | Parameter Data Type |
| emailaddress | Contact’s email address. | String – Max 250 chars |
| password | Contact’s password. Must convert String to Base64 encrypted format. | String – Max 150 chars |
Return Response
The API call ResponseMessage will return the following fields of data.
| Field | Field Help |
| uid | The contact’s uid that has the provided email address associated with their contact record. |
| EmailAddress | The contact’s email address. |
| FirstName | The contact’s first name that has the provided email address associated with their contact record. |
| LastName | The contact’s last name that has the provided email address associated with their contact record. |
| KnownAs | What the contact is known by provided the email address associated with their contact record. |
| Company | The company that the contact who is associated with the provided email address is a part of. |
| WebAdmin | Whether the contact is a website administrator. |
| LoginVerified | True/False value indicating if the email address has been verified. |
| ConsentReceived | Whether the contact has consented to the terms and conditions. Refer to api/UserActions with calltype UserConsent. |
| UserStatus | The membership status of the company the contact is associated with. |
| AllowLogin | Can be custom-configured as required. |
| ValidationVal | If LoginVerified is false, this Val is required as part of api/Validation. Will return as NULL if LoginVerified is already true. |
| ValidationID | If LoginVerified is false, this ID is required as part of api/Validation. Will return as NULL if LoginVerified is already true. |
If a user's LoginVerified value returns false, you must verify the email address associated with the contact is correct and pass ValidationID and ValidationVal as part of api/Validation.
More information can be found here on the validation process.
4.2. api/Validation
This API call is used to validate a user’s email address. The account validation email address should redirect users to a specified URL on your website.
Parameters To Submit
All parameters are required and cannot be empty.
| Parameter | Parameter Help | Parameter Data Type |
| val | Should be obtained as a querystring value on your page (sent as part of account validation email) and denotes the encrypted users email address. This value is required and cannot be an empty string. | String |
| id | Should be obtained as a querystring value on your page (sent as part of account validation email) and denotes whether the link is still active. This value is required and cannot be an empty string. | String |
Return Response
The API call ResponseMessage will return a Boolean indicating whether the update was successful.
4.3. api/LoginReset
This API call is used to generate a password reset link for a user.
You can first use api/EmailCheck to confirm the contact's uid.
Parameters To Submit
All parameters are required and cannot be empty.
| Parameter | Parameter Help | Parameter Data Type |
| emailaddress | Contact’s email address. | String – Max 250 chars |
| uid | Contact's GUID. | String – Max 50 chars |
Return Response
The API call ResponseMessage will return the following fields of data.
| Field | Field Help |
| uid | The contact’s uid that has the provided email address associated with their contact record. |
| LoginVerified | True/False value indicating if the email address has been verified. |
|
PasswordResetVal
|
This Val is required as part of api/PasswordReset. |
|
PasswordResetID
|
This ID is required as part of api/PasswordReset. |
You must pass ValidationID and ValidationVal as part of api/PasswordReset.
4.4. api/PasswordReset
This API call is used to reset a user's password.
Parameters To Submit
All parameters are required and cannot be empty.
| Parameter | Parameter Help | Parameter Data Type |
| val | Should be obtained as a querystring value on your page (sent as part of password reset email) and denotes the encrypted users email address. This value is required and cannot be an empty string. | String |
| id | Should be obtained as a querystring value on your page (sent as part of password reset email) and denotes whether the link is still active. This value is required and cannot be an empty string. | String |
| newpassword | Password value supplied must be converted to Base64 with 4 random characters added to the right and 6 random characters to the left. | String – 150 Chars |
Return Response
The API call ResponseMessage will return a Boolean indicating whether the update was successful.
4.5. Overview of Validation Process
Within RubiCRM, the contact's Settings section contains a field called Email Validated.
This field represents whether the email address associated with the contact record has been validated.
Validation of the email address is important before the contact should be able to use any online services you provide.
Validating the email address ensures that emails are being sent to the correct place. This creates a step to ensure that the user or staff member has not entered the incorrect email address, whether due to a spelling mistake or a genuine wrong email address input.
The following steps assume a querystring link is used to validate the email address.
Steps for Validating
Step 1
When a contact tries to log in to your website, the application should call api/Login. This API call will return LoginVerified, which is a bit value telling you if the email has been validated.
Step 2
If LoginVerified is false, you must take the ValidationVal and ValidationID returned within the same api/Login call just made.
The ValidationVal and ValidationID are valid for 1 hour. You will be required to store the ValidationVal and ValidationID for a future step.
Step 3
Send an email to the contact using the email address on file for them.
This email will act as a validation email, which should ask them to validate their account.
Within this email, you should input the ValidationVal and ValidationID into a querystring URL that acts as a validation button.
Step 4
Once the user validates their email address by clicking the validation button, retrieve the ValidationVal and ValidationID from the querystring.
Pass the ValidationVal and ValidationID to the API call api/Validation.
Step 5
If the api/Validation returns true based on the provided ValidationVal and ValidationID, calling api/Login again will result in LoginVerified being true.
5. Registration Process
5.1. Overview
The registration process has two API calls. The first is api/EmailCheck and the second api/Registration.
Each contact record within the CRM must have a unique email address to log in.
With this in mind, when processing new registrations and creating new accounts, you must first check if the email address already exists/associated with a contact within the CRM.
You can perform this check using api/EmailCheck. If the email address is associated with a contact already, you should prompt the user to log in, as they will already have an account.
If api/EmailCheck returns empty, then you can proceed with the registration.
5.2. api/EmailCheck
This API call is used to check if an email address is recognised/already associated with a contact record within the CRM.
Parameters To Submit
The parameter cannot be submitted as a blank value.
| Parameter | Parameter Help | Parameter Data Type |
| EmailAddress | Registering user’s email address. | String – Max 250 chars |
Return Response
The API call ResponseMessage will return the following fields of data.
| Field | Field Help |
| uid | The contact’s uid that has the provided email address associated with their contact record. |
| FirstName | The contact’s first name that has the provided email address associated with their contact record. |
| LastName | The contact’s last name that has the provided email address associated with their contact record. |
| Company | The company that the contact who is associated with the provided email address is a part of. |
| LoginVerified | True/False value indicating if the email address has been verified. |
If 0 items are returned, the email address is not recognised.
5.3. api/Registration
This API call is used to supply all registration values to register a new user.
Registration Steps
• Step 1 - Capture the user’s email address and use api/EmailCheck call to check if the email address is already registered. If the email is registered, prompt the user that they already have an account and to log in. Otherwise, continue to step 2.
• Step 2 - Capture the user's Company/Organisation Postcode and use the api/PortalList call to return matching records. The user should then be able to choose an existing record to add themselves to or be given a "My Organisation Is Not Listed" option.
• Step 3 - Allow the user to make a selection. If the user selects an existing record, maintain the selected "cid" value for use in the main api/Registration call later. If the user selects "My Organisation Is Not Listed", maintain an empty string as the "cid" to be used in api/Registration call later.
• Step 4 - If the user selects an existing record (cid not empty), maintain all details about the Company/Organisation as the user is not required to enter this information again. Only values relating to the individual are required. Note: Users registering against an existing record should not be offered the ability to activate a subscription.
• Step 5 - If the user selects "My Organisation Is Not Listed", make a call to api/PortalList to return any available subscription packages. Maintain the user’s selection.
• Step 6 - Show the user any applicable terms & conditions and maintain the content.
• Step 7 – Submit the “Parameters To Submit” as detailed below in the api/Registration call.
Parameters To Submit
If the parameters below highlighted with “*” are submitted, they cannot be submitted as blank values. If parameters below are highlighted with “¬”, they cannot be submitted as blank values if the CompanyIndividual field is submitted as C.
If parameters are highlighted with “#”, they cannot be submitted as blank values if the CompanyIndividual field is submitted as I.
| Parameter | Parameter Help | Parameter Data Type |
| cid | Maintained from earlier selection (joining existing company) or an empty string (new company/individual). | String – Max 50 chars |
| ssid | Maintained from earlier selection (ssid available from api/PortalList) or an empty string. | String – Max 50 chars |
| CompanyIndividual* | Either "C", if the user is registering a "Company" or "I" if they are registering as an "Individual". | String – Max 1 char |
| Company¬ | Company’s name. | String – Max 250 chars |
| CompanyTel¬ | Company’s telephone. | String – Max 30 chars |
| CompanyEmail | Company’s email address. | String – Max 250 chars |
| CompanyWeb | Company’s website URL. Should prefix with “http://” or “https://”. | String – Max 250 chars |
| Category* | The value passed to the API must be ListValue (Text Value not ID). If “CompanyIndividual” is “I” then submit “None”. | String – Provide ListValue from api/PortalList “BusinessCategory”. |
| Employees | Number of employees at the company. If an empty string will default to 1. | Integer |
| CompanyAddress1¬ | First line of company’s address. | String – Max 75 chars |
| CompanyAddress2 | Second line of company’s address. | String – Max 75 chars |
| CompanyAddress3 | Third line of company’s address. | String – Max 75 chars |
| CompanyAddress4¬ | Fourth line of company’s address. | String – Max 75 chars |
| CompanyCounty¬ | The value passed to the API must be ListValue (Text Value not ID). Submit a default value of “None” if no selection is made. | String – Provide ListValue from api/PortalList “County”. |
| CompanyPostcode¬ | Postcode of company’s address. | String – Max 15 chars |
| CompanyCountry¬ | The value passed to the API must be ListValue (Text Value not ID). Submit a default value of “None” if no selection is made. | String – Provide ListValue from api/PortalList “Country”. |
| ContactFirstName* | Contact’s first name. | String – Max 100 chars |
| ContactLastName* | Contact’s last name. | String – Max 100 chars |
| ContactEmail* | Contact’s email address as entered when checked through api/EmailCheck. | String – Max 200 chars |
| Password* | Contact’s password. Must convert String to Base64 encrypted format. | String – Max 150 chars |
| ContactTel* | Contact’s telephone number. | String – Max 30 chars |
| ContactMob | Contact’s mobile number. | String – Max 25 chars |
| ContactWhereHear* | The value passed to the API must be ListValue (Text Value not ID). Submit a default value of “None” if no selection is made. | String – Provide ListValue from api/PortalList “WhereHear”. |
| ContactAddress1# | First line of contact’s address. | String – Max 75 chars |
| ContactAddress2 | Second line of contact’s address. | String – Max 75 chars |
| ContactAddress3 | Third line of contact’s address. | String – Max 75 chars |
| ContactAddress4# | Fourth line of contact’s address. | String – Max 75 chars |
| ContactCounty* | The value passed to the API must be ListValue (Text Value not ID). Submit default value of “None” if no selection made. | String – Provide ListValue from api/PortalList “County”. |
| ContactPostcode# | Postcode of contact’s address. | String – Max 15 chars |
| ContactCountry* | The value passed to the API must be ListValue (Text Value not ID). Submit default value of “None” if no selection made. | String – Provide ListValue from api/PortalList “Country”. |
| Consent* | String value maintained from earlier display. Provide consent text as this will be noted within the CRM when consent was given and what the consent was. | String |
This API call does NOT require the API Key to be supplied as part of the call.
Return Response
The API call ResponseMessage will return a range of fields. The following fields of data will be relevant for your purposes.
| Field | Field Help |
| uid | Contact’s new uid that has just been created. |
| EmailAddress | Contact’s email address. |
| FirstName | Contact’s first name. |
6. Booking Process
6.1. api/Booking
This API call is the primary call for creating bookings in the CRM.
You must provide the uid of the user logged in and making the booking, the eid of the event being booked, and the number of bookings being made (bookingplaces). The uid and eid cannot be empty strings and the bookingplaces must be greater than 0.
Before calling this method, api/CalendarDetail should be checked for if BookOnline is true, the number of remaining places is greater than or equal to the number of intended bookings being made, and if the user should be able to make the booking (is the event a member-only event where they are a non member).
Parameters To Submit
All parameters are required and cannot be empty.
| Parameter | Parameter Help | Parameter Data Type |
| uid | Logged in user’s uid. | String – Max 50 chars |
| eid | The event eid being booked onto. | String – Max 50 chars |
| BookingPlaces | The number of places to be booked. | String – Max 50 chars |
Return Response
The API call ResponseMessage will return a JSON stringified array containing arrays of the bookings created, provided the number of places submitted. The following fields of data will be returned in the arrays.
| Field | Field Help |
| BookingGUID | The bid of the booking to be used in subsequent calls. |
| BookingStatus | The booking status as it currently appears in Rubi. |
| SavingApplied | Whether the inserted booking received a discount such as the user being a member. |
| PotentialSaving | The saving applied to the booking. |
6.2. api/BookingAttendeesToBook
This API call is used to find who from the company the user can assign as the attendee. The call will return all users and a TBC option.
If the client allows users to make bookings where they don’t know who the attendee will be at the time, you can set the attendee for the booking as TBC.
By default, the attendee will be set to TBC for the bookings you created using api/Booking if the number of created bookings is greater than 1. If one booking is made using api/Booking automatically, the booker will be set as the attendee.
You will be required to pass the uid of the logged-in user and the bid of the booking you plan to update the attendee for. The bid is supplied in the result of api/Booking but can also be taken from api/UserBasket (returned as ItemGUID).
Parameters To Submit
All parameters are required and cannot be empty.
| Parameter | Parameter Help | Parameter Data Type |
| uid | Logged in user’s uid. | String – Max 50 chars |
| bid | The booking bid that is being checked to see who can be assigned to it. | String – Max 50 chars |
Return Response
The API call ResponseMessage will return a JSON stringified array. The following fields of data will be returned.
| Field | Field Help |
| conid | The uid of the user. |
| ContactFullName | The full name of the user. |
| BookingStatus | Whether the user can be assigned to the booking “Booking Allowed” or whether they are already assigned to a booking “In Basket”, “Active”, “Cancelled” etc. |
6.3. api/BookingUpdate
This API call is used to update information about the booking.
The API call allows you to submit different update types depending on what information you are updating about the booking. The different update types are SpecialRequests, Attendee, NamedGuest and Remove.
The API call requires you to pass the uid of the user logged in, the bid of the booking to be updated, the updatetype and the updatevalue.
Update Types
• SpecialRequests – The value supplied can be a simple string.
• Attendee – Used in conjunction with api/BookingAttendeesToBook where you would supply the “conid” (uid) of the user you intend to assign as the attendee for the booking.
• NamedGuest – If the user does not appear as an option in api/BookingAttendeesToBook and the client does not want to allow TBC bookings, you can set a named guest. You would supply a stringified array of GuestOrg, GuestName and GuestEmail.
• Remove – If you wish to delete the booking.
Data Types for Update Values
| Update Type | Update Value Data Type |
| SpecialRequests | String – Max 250 chars |
| Attendee | Boolean |
| NamedGuest | String |
| Remove | Boolean |
Parameters To Submit
All parameters are required and cannot be empty.
| Parameter | Parameter Help | Parameter Data Type |
| uid | Logged in user’s uid. | String – Max 50 chars |
| bid | The booking bid to be updated. | String – Max 50 chars |
| UpdateType | Update type with available options above. | String – Max 20 chars |
| UpdateValues | Value to be submitted as part of the call. | String |
Return Response
The API call ResponseMessage will return a Boolean indicating whether the update was successful.
6.4. Booking Process Guidance
During the booking process, we would advise your website to make the api/Booking call first.
You can update the attendee for each booking using the bid returned from api/Booking by calling api/BookingAttendeesToBook using each bid returned and using api/BookingUpdate, supplying the conid chosen by the user.
Alternatively, you can require the attendee to visit a basket page and call api/UserBasket. This will return all bookings that are still to be processed to the user’s basket. From there, you can follow the same steps of first calling api/BookingAttendeesToBook and updating the attendee using api/BookingUpdate.
7. Membership
7.1. api/Subscription
This call will allow you to add/remove membership sale pipeline items. The following fields of information are required for the call.
Parameters To Submit
All parameters are required and cannot be empty.
| Parameter | Parameter Help | Parameter Data Type |
| uid | Contact’s uid. | String – Max 50 chars |
| ssid | If adding a sale pipeline provide the ssid (Sale Service ID) selected by the user as returned from api/PortalList "Subscriptions". If removing a sale pipeline provide the ItemGUID for the item as provided in api/UserBasket. | String – Max 50 chars |
| action | Whether you are adding an item or removing it. “Add” or “Remove”. | String – Max 10 chars |
Return Response
The API call will return a Boolean to indicate if the call action has been completed.
7.2. Membership Guidance
Once you’ve added a membership sale pipeline, you can use api/UserBasket to purchase said membership.
Automated processes will update the company information to reflect their membership status.
8. User Dashboard
8.1. api/User
This API call will return information such as contact information and company information, depending on the call type (calltype). The call requires you to pass the uid of the user logged in, the calltype and updatevalues.
The updatevalues you can pass as an empty string.
Call Types
• UserProfile – Returns an array of data relating to the individual user.
• UserCompany – Returns an array of data relating to the individual user’s Company/Organisation.
• UserBookings – Returns an array of all bookings for this user or where the user made the booking for someone else.
• Users – Returns an array of other Contacts within the same organisation (will only return data if the user is marked as a Main Contact or Web Admin within Rubi).
• UserOffers – Returns an array of all offers submitted by the user’s company.
• UserEvents – Returns an array of all events submitted by the user’s company.
• UserNews – Returns an array of all news items submitted by the user’s company.
• UserVacancies – Returns an array of all vacancies submitted by the user’s company.
Parameters To Submit
If the parameters below highlighted with “*” are submitted, they cannot be submitted as blank values.
| Parameter | Parameter Help | Parameter Data Type |
| uid* | Logged in user’s uid. | String – Max 50 chars |
| CallType* | Call type with available options above. | String – Max 20 chars |
| UpdateValues | Empty string. | String |
Return Response
The API call will return different fields of data depending on the call type used.
UserProfile
| Field | Field Help |
| uid | Contact’s uid. |
| ConsentReceived | Whether the user has accepted the client’s Terms and Conditions. Expected to reconsent every 365 days. |
| Title | Contact’s title. |
| FirstName | Contact’s first name. |
| LastName | Contact’s last name. |
| KnownAs | What the contact is known by. |
| EmailAddress | Contact’s email address. |
| JobTitle | Contact’s job title. |
| MobileCountry | Contact’s mobile country code. |
| Mobile | Contact’s mobile number. |
| TelCountry | Contact’s telephone country code. |
| Tel | Contact’s telephone number. |
| TelExt | Contact’s telephone extension number. |
| Address1 | First line of the contact’s address. |
| Address2 | Second line of the contact’s address. |
| Address3 | Third line of the contact’s address. |
| Address4 | Fourth line of the contact’s address. |
| County | County contact lives in. |
| Postcode | Contact’s postcode. |
| Country | Country contact lives in. |
| UserImage | URL of contact’s profile image. |
| SocialMedia | A JSON array of the contact’s social media. |
| MarketingPreferences | A JSON array of the contact’s marketing preferences (Contact Interests in Rubi). |
| CompInd | Whether the contact is a part of a company record or an individual record. Returns “C”, “I” or “U” (unknown). |
| AdditionalInfo | Additional information if required by the client. |
UserCompany
| Field | Field Help |
| cid | Company’s cid. |
| Company | Company’s name. |
| CompanyTelCountry | Company’s telephone country code. |
| CompanyTel | Company’s telephone number. |
| CompanyFax | Company’s fax number. |
| CompanyEmail | Company’s email address. |
| CompanyWeb | Company’s website URL. |
| Category | The business category of the company. |
| BusinessDescription | The company’s business description. |
| Address1 | First line of the company’s address. |
| Address2 | Second line of the company’s address. |
| Address3 | Third line of the company’s address. |
| Address4 | Fourth line of the company’s address. |
| County | County the company resides in. |
| Postcode | Company’s postcode. |
| Country | Country company resides in. |
| Contact | One of the main contacts in the company. Decided based on top 1. |
| Offers | The number of member offers the company has set to display will be returned. |
| CompanyLogo | URL of the company’s profile image. |
| SocialMedia | A JSON array of the company’s social media. |
| [Status] | The company’s membership status. |
| DateJoined | The company’s membership join date. |
| DateRenewal | The company’s membership renewal date. |
| CompanyInterests | A JSON array of the company’s interests. |
| TradingAs | Company’s trading name. |
UserBookings
| Field | Field Help |
| ItemGUID | bid. |
| Item | Returns that the item is a “Booking”. |
| ItemDetails | The name of the event the booking is associated with. |
| ItemContact | The contact attending the event the booking is associated with. |
| ItemValue | The booking price excluding tax. |
| ItemTax | The booking tax. |
| ItemTaxRate | The booking tax rate. |
| ItemTotal | The booking price including tax. |
| ItemSaving | The saving made on the booking (may be different to default saving of price type). |
| ItemPotentialSaving | The saving set for the price type. |
| ItemRateType | Price type used for booking. |
| ItemInfo1 | Special requests made. |
| ItemInfo2 | Booking notes made. Normally for internal purposes for the client. |
| eid | The event’s eid the booking was made for. |
| NamedGuestOrg | Named guest organisation (if a named guest was set). |
| NamedGuestName | Named guest name (if a named guest was set). |
| NamedGuestEmail | Named guest email (if a named guest was set). |
| BookingStatus | Status of the booking. Could be “Active”, “Cancelled”, “Attended”, “No Show” etc. |
| EventDate | Date of the event that the booking is for. |
Users
| Field | Field Help |
| uid | uid of the user. |
| FirstName | User’s first name. |
| LastName | User’s last name. |
| EmailAddress | User’s email address. |
| JobTitle | User’s job title. |
| ContactLeft | Whether the contact has left or not. We do not return users who have left as part of this call. |
UserOffers
| Field | Field Help |
| oid | oid of the offer. |
| Category | Category of the offer. |
| ShortDescription | Title of the offer. |
| LongDescription | Main body of text about the offer. |
| StartDate | When the offer should begin showing on the website. |
| EndDate | When the offer should stop showing on the website. |
| OfferCode | Offer code. |
| DateCreated | When the offer was submitted. |
| CreatedBy | Who the offer was submitted by. |
| Approved | Whether the client has approved the offer to display on the website. |
| Removed | If the offer has been deleted. |
UserEvents
| Field | Field Help |
| mid | mid of the event. |
| Category | Category of the event. |
| ShortDescription | Title of the event. |
| LongDescription | Main body of text about the event. |
| EventLocation | Location of where the event is taking place. |
| StartDate | When the event begins. |
| EndDate | When the event ends. |
| EventCode | Event code. |
| DateCreated | When the event was submitted. |
| CreatedBy | Who the event was submitted by. |
| Approved | Whether the client has approved the event to display on the website. |
| Removed | If the event has been deleted. |
UserNews
| Field | Field Help |
| nid | nid of the news item. |
| Category | Category of the news item. |
| ShortDescription | Title of the news item. |
| LongDescription | Main body of text about the news item. |
| StartDate | The date the news item should begin showing on the website. |
| StartTime | The time the news item should begin showing on the website. |
| EndDate | The date the news item should stop showing on the website. |
| EndTime | The time the news item should stop showing on the website. |
| DateCreated | When the news item was submitted. |
| CreatedBy | Who the news item was submitted by. |
| Approved | Whether the client has approved the news item to display on the website. |
| Removed | If the news item has been deleted. |
UserVacancies
| Field | Field Help |
| vid | vid of the vacancy. |
| Category | Category of the vacancy. |
| ShortDescription | Title of the vacancy. |
| LongDescription | Main body of text about the vacancy. |
| StartDate | The date the vacancy should begin showing on the website. |
| EndDate | The date the vacancy should stop showing on the website. |
| DateCreated | When the vacancy was submitted. |
| CreatedBy | Who the vacancy was submitted by. |
| Approved | Whether the client has approved the vacancy to display on the website. |
| Removed | If the vacancy has been deleted. |
8.2. api/UserActions
This API call allows you to submit updates, such as to contact information and company information, depending on the call type (calltype).
The call requires you to pass the uid of the user logged in, the calltype and updatevalues.
Call Types
• UserProfileUpdate – Update contact information.
• UserCompanyUpdate – Update company information.
• UserUpdate – Update whether a user has left the primary record.
• UserAdded – Add a new user to the primary record.
• UserOfferUpdate – Update/submit user offer.
• UserEventUpdate – Update/submit user event.
• UserNewsUpdate – Update/submit user news item.
• UserVacancyUpdate – Update/submit user vacancy
• UserConsent
UserProfileUpdate
This call will allow you to update contact information, given the uid that is provided.
The following fields of information can be added to the JSONString stringified array to be passed in the updatevalues field.
Parameters To Submit
If the parameters below highlighted with “*” are submitted, they cannot be submitted as blank values. County and Country can be submitted as None.
| Parameter | Parameter Help | Parameter Data Type |
| Title | Contact’s title. | String – Max 20 chars |
| FirstName* | Contact’s first name. | String – Max 100 chars |
| LastName* | Contact’s last name. | String – Max 100 chars |
| KnownAs* | What the contact is known by. | String – Max 100 chars |
| EmailAddress* | Contact’s email address. | String – Max 200 chars |
| JobTitle* | Contact’s job title. | String – Max 200 chars |
| MobileCountry* | Contact’s mobile country code. | String – Max 5 chars |
| Mobile* | Contact’s mobile number. | String – Max 25 chars |
| TelCountry* | Contact’s telephone country code. | String – Max 5 chars |
| Tel* | Contact’s telephone number. | String – Max 30 chars |
| TelExt* | Contact’s telephone extension number. | String – Max 10 chars |
| Address1 | First line of the contact’s address if the contact has a personal address different to main Company/Organisation address. | String – Max 75 chars |
| Address2 | Second line of the contact’s address if the contact has a personal address different to main Company/Organisation address. | String – Max 75 chars |
| Address3 | Third line of the contact’s address if the contact has a personal address different to main Company/Organisation address. | String – Max 75 chars |
| Address4 | Fourth line of the contact’s address if the contact has a personal address different to main Company/Organisation address. | String – Max 75 chars |
| County* | County the contact resides if the contact has a personal address different to the main Company/Organisation address. (See api/PortalList with list “County” for available options) | String – Provide ListValue from api/PortalList “County” |
| Postcode | Postcode of contact’s address if the contact has a personal address different to the main Company/Organisation address. | String – Max 15 chars |
| Country* | County the contact resides if the contact has a personal address different to the main Company/Organisation address. (See api/PortalList with list “Country” for available options) | String – Provide ListValue from api/PortalList “Country” |
| SocialMedia | Stringified array of social media information with "SocialMedia" and "SocialMediaURL" properties. Available social media options will return as part of api/User. | String |
| MarketingPreferences | Stringified array of marketing interest preferences with "Marketing", "Email", "Mail" and "Tel" properties where "Email", "Mail" and "Tel" are true or false. | String |
This call returns a Boolean of True if successful.
UserCompanyUpdate
This call will allow you to update the primary record information, given the uid that is provided.
The following fields of information can be added to the JSONString stringified array to be passed in the updatevalues field. Please note that we only allow the update to take place if the user (uid) is a main contact or web admin.
Parameters To Submit
If the parameters below highlighted with “*” are submitted, they cannot be submitted as blank values.
| Parameter | Parameter Help | Parameter Data Type |
| Company* | Primary record’s name. | String – Max 250 chars |
| CompanyTelCountry* | Primary record’s telephone country code. | String – Max 5 chars |
| CompanyTel* | Primary record’s telephone number. | String – Max 30 chars |
| CompanyFax | Primary record’s fax number. | String – Max 20 chars |
| CompanyEmail* | Primary record’s email address. | String – Max 250 chars |
| CompanyWeb* | Primary record’s website URL. Should prefix with “http://” or “https://”. | String – Max 250 chars |
| Category* | Primary record’s business category. | String – Provide ListValue from api/PortalList “BusinessCategory” |
| BusinessDescription | Primary record’s business description that is used in the directory. | String |
| Address1* | First line of the primary record’s main address. | String – Max 75 chars |
| Address2 | Second line of the primary record’s main address. | String – Max 75 chars |
| Address3 | Third line of the primary record’s main address. | String – Max 75 chars |
| Address4* | Fourth line of the primary record’s main address. | String – Max 75 chars |
| County* | County where the primary record resides. | String – Provide ListValue from api/PortalList “County” |
| Postcode* | Postcode of the primary record’s main address. | String – Max 15 chars |
| Country* | Country where the primary record resides. | String – Provide ListValue from api/PortalList “Country” |
| SocialMedia | Stringified array of social media information with "SocialMedia" and "SocialMediaURL" properties. Available social media options will return as part of api/User. | String |
This call returns a Boolean of True if successful.
UserAdded
This call will allow a contact to add a new contact to the primary record.
Parameters To Submit
If the parameters below highlighted with “*” are submitted, they cannot be submitted as blank values.
| Parameter | Parameter Help | Parameter Data Type |
| FirstName* | Contact’s first name to be added. | String – Max 100 chars |
| LastName* | Contact’s last name to be added. | String – Max 100 chars |
| EmailAddress* | Contact’s email address to be added. | String – Max 200 chars |
| JobTitle | Contact’s job title to be added. | String – Max 200 chars |
This call returns a JSONString if successful. Within the JSONString is ContactAdded containing the new contact's uid, First Name, Last Name and Email Address.
UserUpdate
This call will allow a main contact or web admin to update contact records to say the contact has Left.
Parameters To Submit
All parameters are required and cannot be empty.
| Parameter | Parameter Help | Parameter Data Type |
| uid | Contact’s uid to be updated. | String – Max 50 chars |
| ContactLeft | Whether the client has left or not (true/false). By default, we do not return users who have been marked as left. This can be changed if you wish for the ability to unmark contacts who have returned. | Boolean |
This call returns a Boolean of True if successful.
UserOfferUpdate
This call will allow a main contact or web admin to update/submit an offer.
Parameters To Submit
If the parameters below highlighted with “*” are submitted, they cannot be submitted as blank values.
| Parameter | Parameter Help | Parameter Data Type |
| oid* | "AddNew" if a new offer or oid of offer being updated. | String – Max 50 chars |
| Category* | The category of the offer. | String – Provide ListValue from api/PortalList “OfferCategory” |
| ShortDescription* | The title of the offer. | String – Max 150 chars |
| LongDescription | The main body of text of the offer. | String |
| StartDate* | Then the offer should start displaying on the website. | Datetime - YYYY-MM-DD hh:mm:ss.mmm |
| EndDate* | Then the offer should stop displaying on the website. | Datetime - YYYY-MM-DD hh:mm:ss.mmm |
| OfferCode | User can submit a code that needs to be used to redeem the offer. | String – Max 50 chars |
| Removed* | If the offer has been deleted. | Boolean |
This call returns a Boolean of True if successful.
UserEventUpdate
This call will allow a main contact or web admin to update/submit an event.
Parameters To Submit
If the parameters below highlighted with “*” are submitted, they cannot be submitted as blank values.
| Parameter | Parameter Help | Parameter Data Type |
| mid* | "AddNew" if a new event or mid of event being updated. | String – Max 50 chars |
| Category* | The category of the event. | String – Provide ListValue from api/PortalList “EventCategory” |
| ShortDescription* | The title of the event. | String – Max 150 chars |
| LongDescription | The main body of text of the event. | String |
| StartDate* | The date the event should start displaying on the website. | Datetime - YYYY-MM-DD hh:mm:ss.mmm |
| StartTime* | The time the event should start displaying on the website. | Datetime - YYYY-MM-DD hh:mm:ss.mmm |
| EndDate* | The date the event should stop displaying on the website. | Datetime - YYYY-MM-DD hh:mm:ss.mmm |
| EndTime* | The time the event should stop displaying on the website. | Datetime - YYYY-MM-DD hh:mm:ss.mmm |
| EventLocation | The location of the event. | String |
| EventCode | User can submit a code that needs to be used to redeem the event or for them to track how the booking came through. | String – Max 50 chars |
| Removed* | If the offer has been deleted. | Boolean |
This call returns a Boolean of True if successful.
UserNewsUpdate
This call will allow a main contact or web admin to update/submit a news item.
Parameters To Submit
If the parameters below highlighted with “*” are submitted, they cannot be submitted as blank values.
| Parameter | Parameter Help | Parameter Data Type |
| nid* | "AddNew" if a new news item or nid of the news item being updated. | String – Max 50 chars |
| Category* | The category of the news item. | String – Provide ListValue from api/PortalList “NewsCategory” |
| ShortDescription* | The title of the news item. | String – Max 150 chars |
| LongDescription | The main body of text of the news item. | String |
| StartDate* | The date the news item should start displaying on the website. | Datetime - YYYY-MM-DD hh:mm:ss.mmm |
| EndDate* | The date the news item should stop displaying on the website. | Datetime - YYYY-MM-DD hh:mm:ss.mmm |
| Removed* | If the news item has been deleted. | Boolean |
This call returns a Boolean of True if successful.
UserVacancyUpdate
This call will allow a main contact or web admin to update/submit a vacancy.
Parameters To Submit
If the parameters below highlighted with “*” are submitted, they cannot be submitted as blank values.
| Parameter | Parameter Help | Parameter Data Type |
| vid* | "AddNew" if a new vacancy or vid of the vacancy being updated. | String – Max 50 chars |
| Category* | The category of the vacancy. | String – Provide ListValue from api/PortalList “VacancyCategory” |
| ShortDescription* | The title of the vacancy. | String – Max 150 chars |
| LongDescription | The main body of text of the vacancy. | String |
| StartDate* | The date the vacancy should start displaying on the website. | Datetime - YYYY-MM-DD hh:mm:ss.mmm |
| EndDate* | The date the vacancy should stop displaying on the website. | Datetime - YYYY-MM-DD hh:mm:ss.mmm |
| Removed* | If the vacancy has been deleted. | Boolean |
This call returns a Boolean of True if successful.
UserConsent
This call allows storage of the exact consent text the user is agreeing to. Should be performed on a yearly (365-day) basis.
Property is normally returned via users login, as to whether consent agreement is currently required.
Parameters To Submit
All parameters are required and cannot be empty.
| Parameter | Parameter Help | Parameter Data Type |
| ConsentReceived | Whether the user has agreed to the clients terms and conditions. (true/false) | Boolean |
| ConsentText | Full consent/terms and conditions text being agreed to. This is stored within the CRM and dated on when consented. | String |
This call returns a Boolean of True if successful.
9. Member Submitted Item List
9.1. api/MemberOffers
This API call is used to return submitted Member Offers.
Parameters To Submit
Parameters can be submitted as blank values.
| Parameter | Parameter Help | Parameter Data Type |
| uid | Contact’s uid. | String – Max 50 chars |
| oid | Empty string for all offers or provide an oid for a specific offer. | String – Max 50 chars |
Return Response
This API call will return in the ResponseMessage an array of the following fields.
| Field | Field Help |
| cid | Company GUID. |
| oid | oid of the offer. |
| Company | Company name. |
| CompanyTel | Company telephone. |
| CompanyFax | Company fax number. |
| CompanyEmail | Company email |
| CompanyWeb | Company website URL. |
| Category | Category of the offer. |
| ShortDescription | Title of the offer. |
| LongDescription | Main body of text about the offer. |
| StartDate | The date the offer should begin showing on the website. |
| EndDate | The date the offer should stop showing on the website. |
| OfferCode | |
| Address1 | First line of the company’s address. |
| Address2 | Second line of the company’s address. |
| Address3 | Third line of the company’s address. |
| Address4 | Fourth line of the company’s address. |
| County | Countr set on the company’s address. |
| Postcode | Company’s postcode. |
| Country | Country set on the company’s address. |
| CompanyLogo | URL of the company’s logo. |
| URL of the company’s Twitter. | |
| URL of the company’s LinkedIn. | |
| URL of the company’s Facebook. | |
| YouTube | URL of the company’s YouTube. |
| URL of the company’s Google. | |
| URL of the company’s Instagram. | |
| Yammer | URL of the company’s Yammer. |
| URL of the company’s Pinterest. |
9.2. api/MemberEvents
This API call is used to return submitted Member Events.
Parameters To Submit
Parameters can be submitted as blank values.
| Parameter | Parameter Help | Parameter Data Type |
| uid | Contact’s uid. | String – Max 50 chars |
| mid | Empty string for all events or provide an mid for a specific event. | String – Max 50 chars |
Return Response
This API call will return in the ResponseMessage an array of the following fields.
| Field | Field Help |
| cid | Company GUID. |
| mid | mid of the event. |
| Company | Company name. |
| CompanyTel | Company telephone. |
| CompanyFax | Company fax number. |
| CompanyEmail | Company email |
| CompanyWeb | Company website URL. |
| Category | Category of the event. |
| ShortDescription | Title of the event. |
| LongDescription | Main body of text about the event. |
| EventLocation | Location of the event. |
| StartDate | The date the event should begin showing on the website. |
| StartTime | The time the event should begin showing on the website. |
| EndDate | The date the event should stop showing on the website. |
| EndTime | The time the event should stop showing on the website. |
| EventCode | |
| Address1 | First line of the company’s address. |
| Address2 | Second line of the company’s address. |
| Address3 | Third line of the company’s address. |
| Address4 | Fourth line of the company’s address. |
| County | Countr set on the company’s address. |
| Postcode | Company’s postcode. |
| Country | Country set on the company’s address. |
| CompanyLogo | URL of the company’s logo. |
| URL of the company’s Twitter. | |
| URL of the company’s LinkedIn. | |
| URL of the company’s Facebook. | |
| YouTube | URL of the company’s YouTube. |
| URL of the company’s Google. | |
| URL of the company’s Instagram. | |
| Yammer | URL of the company’s Yammer. |
| URL of the company’s Pinterest. |
9.3. api/MemberNews
This API call is used to return submitted Member News.
Parameters To Submit
Parameters can be submitted as blank values.
| Parameter | Parameter Help | Parameter Data Type |
| uid | Contact’s uid. | String – Max 50 chars |
| nid | Empty string for all news item or provide an nid for a specific news item. | String – Max 50 chars |
Return Response
This API call will return in the ResponseMessage an array of the following fields.
| Field | Field Help |
| cid | Company GUID. |
| nid | nid of the news item. |
| Company | Company name. |
| CompanyTel | Company telephone. |
| CompanyFax | Company fax number. |
| CompanyEmail | Company email |
| CompanyWeb | Company website URL. |
| Category | Category of the news item. |
| ShortDescription | Title of the news item. |
| LongDescription | Main body of text about the news item. |
| StartDate | The date the news item should begin showing on the website. |
| EndDate | The date the news item should stop showing on the website. |
| Address1 | First line of the company’s address. |
| Address2 | Second line of the company’s address. |
| Address3 | Third line of the company’s address. |
| Address4 | Fourth line of the company’s address. |
| County | Countr set on the company’s address. |
| Postcode | Company’s postcode. |
| Country | Country set on the company’s address. |
| CompanyLogo | URL of the company’s logo. |
| URL of the company’s Twitter. | |
| URL of the company’s LinkedIn. | |
| URL of the company’s Facebook. | |
| YouTube | URL of the company’s YouTube. |
| URL of the company’s Google. | |
| URL of the company’s Instagram. | |
| Yammer | URL of the company’s Yammer. |
| URL of the company’s Pinterest. |
9.4. api/MemberVacancies
This API call is used to return submitted Member Vacancies.
Parameters To Submit
Parameters can be submitted as blank values.
| Parameter | Parameter Help | Parameter Data Type |
| uid | Contact’s uid. | String – Max 50 chars |
| vid | Empty string for all vacancies or provide an vid for a specific vacancy. | String – Max 50 chars |
Return Response
This API call will return in the ResponseMessage an array of the following fields.
| Field | Field Help |
| cid | Company GUID. |
| vid | vid of the vacancy. |
| Company | Company name. |
| CompanyTel | Company telephone. |
| CompanyFax | Company fax number. |
| CompanyEmail | Company email |
| CompanyWeb | Company website URL. |
| Category | Category of the vacancy. |
| ShortDescription | Title of the vacancy. |
| LongDescription | Main body of text about the vacancy. |
| StartDate | The date the vacancy should begin showing on the website. |
| EndDate | The date the vacancy should stop showing on the website. |
| Address1 | First line of the company’s address. |
| Address2 | Second line of the company’s address. |
| Address3 | Third line of the company’s address. |
| Address4 | Fourth line of the company’s address. |
| County | Country set on the company’s address. |
| Postcode | Company’s postcode. |
| Country | Country set on the company’s address. |
| CompanyLogo | URL of the company’s logo. |
| URL of the company’s Twitter. | |
| URL of the company’s LinkedIn. | |
| URL of the company’s Facebook. | |
| YouTube | URL of the company’s YouTube. |
| URL of the company’s Google. | |
| URL of the company’s Instagram. | |
| Yammer | URL of the company’s Yammer. |
| URL of the company’s Pinterest. |
10. Payment Process
10.1. api/UserPayment
This API call is used to submit items from a user’s basket for payment. You have three payment type options that you can submit. These are:
• Invoice – If the client allows users to pay for an item by invoice. An invoice request will be generated and created in Rubi to be submitted to the client’s accounting integration (if applicable). A booking confirmation email will be sent to the user, noting that they will receive an invoice in due course.
• CardPayment – If the client allows users to pay by card, you can submit this option. This will return details such as the TransactionID, which can be used in the subsequent payment result call, like the api/StripeResult API call.
• Confirm – If the total items in the user’s basket equals 0.00. A booking confirmation email will automatically be sent to the user.
Parameters To Submit
All parameters below highlighted with “*” cannot be submitted as blank values.
| Parameter | Parameter Help | Parameter Data Type |
| uid* | Contact’s uid. | String – Max 50 chars |
| PaymentType* | Submit payment type of either "Invoice", "CardPayment" or "Confirm" ("Confirm" should only be used where the items total = 0.00). | String – Max 20 chars |
| PaymentItems* | An array of ItemGUIDs returned from UserBasket. Process “Bookings” and “Subscriptions” separately. | String |
| Address1* | First line of the contact’s address if the contact has a personal address different to main Company/Organisation address. | String – Max 75 chars |
| Address2 | Second line of the contact’s address if the contact has a personal address different to main Company/Organisation address. | String – Max 75 chars |
| Address3 | Third line of the contact’s address if the contact has a personal address different to main Company/Organisation address. | String – Max 75 chars |
| Address4* | Fourth line of the contact’s address if the contact has a personal address different to main Company/Organisation address. | String – Max 75 chars |
| County* | County the contact resides if the contact has a personal address different to main Company/Organisation address. | String – Provide ListValue from api/PortalList “County” |
| Postcode* | Postcode of the contact’s address if the contact has a personal address different to main Company/Organisation address. | String – Max 15 chars |
| Country* | Country where the contact resides if the contact has a personal address different to main Company/Organisation address. | String – Provide ListValue from api/PortalList “Country” |
| EmailAddress* | Contact’s email address. | String – Max 250 chars |
| PONumber | Transaction PO Number. | String – Max 100 chars |
| MobCountry* | Contact’s telephone country code. | String – Max 5 chars |
| Mob* | Contact’s telephone number. | String – Max 25 chars |
Return Response
This API call will return in the ResponseMessage an array of the following fields.
| Field | Field Help |
| TransactionID | Value can be passed to the client’s Card Payment Processing provider. For matching up transactions in Rubi. |
| TransactionType | The value will match the PaymentType provided when calling the method. |
| ItemGUID | The value will match the value provided when calling the method. |
| ItemTotal | The value will be the total value of the item, including any applicable VAT/tax. |
| ItemDetail | String value to describe what the item is. |
| ItemStatus | Will return either the Booking or Subscription status. |
| Address1 | The value will match the value provided when calling the method. |
| Address2 | “” |
| Address3 | “” |
| Address4 | “” |
| County | “” |
| Postcode | “” |
| Country | “” |
| EmailAddress | “” |
| PONumber | “” |
| MobCountry | “” |
| Mob | “” |
| EmailSubject | Will have an email subject for generating emails to send to the end-user (applies to Invoice or Confirm items only). |
| EmailBody | Will have an email body for generating emails to send to the end-user (applies to Invoice or Confirm items only). |
| EmailBCC | Will have an email bcc array for generating emails to send to the end-user (applies to Invoice or Confirm items only). |
| EmailAttachments | Will have an attachments array for generating emails to send to end-user (applies to Invoice or Confirm items only). |
IMPORTANT: Card Payments will return a single array with the total value for the card payment. The TransactionID and other details returned, including the ItemTotal, can then be passed to the card payment provider for authorisation.
By default, booking confirmation emails are sent following the success of this API call. This applies to the Payment Types of Invoice and Confirm. If you would prefer emails not to be sent from RubiCRM, please contact us.
10.2. api/StripeResult
This API call allows the response string result of the payment from Stripe to be submitted.
Parameters To Submit
All parameters are required and cannot be empty.
| Parameter | Parameter Help | Parameter Data Type |
| TransactionID | The transaction ID that was returned from api/UserPayment. | String |
| StripeResponse | You can pass the response from Stripe into this field. We only use the “id”, “status” and “amount” passed from Stripe, so your array can just contain these pieces of information. | String |
Return Response
This API call will return in the ResponseMessage an array of the following fields.
| Field | Field Help |
| EmailAddress | The value will match the value provided as part of api/UserPayment and be the email address used to send a booking confirmation email. |
| EmailSubject | Will have an email subject for generating emails to send to the end-user. |
| EmailBody | Will have an email body for generating emails to send to the end-user. |
| EmailBCC | Will have an email bcc array for generating emails to send to the end-user. |
| EmailAttachments | Will have an attachments array for generating emails to send to the end-user. |
| FirstName | The first name of the user who processed the transaction. |
| LastName | The last name of the user who processed the transaction. |
11. Miscellaneous API Calls
11.1. api/UserBasket
This API call returns any items currently waiting for payment/action in the user’s basket.
Parameters To Submit
All parameters are required and cannot be empty.
| Parameter | Parameter Help |
| uid | Contact’s uid. |
| Item | Options available for this item are Bookings, Subscriptions or an empty string (to return "All" items) |
Return Response
This API call will return an array of any items requiring action by the user. ItemGUIDs returned in this array should be used when making a payment. Subscriptions in the user’s basket may include "Join" or "Renew" subscriptions.
ResponseMessage will return the following fields of data.
Item Type “Booking”
| Field | Field Help |
| ItemGUID | bid. |
| Item | Returns that the item is a “Booking”. |
| ItemDetails | The event name. |
| ItemContact | The contact attending the event the booking is associated with. |
| ItemValue | The booking price, excluding tax. |
| ItemTax | The booking tax. |
| ItemTaxRate | The booking tax rate. |
| ItemTotal | The booking price includes tax. |
| ItemSaving | The actual saving made on the booking. |
| ItemPotentialSaving | The savings set for the price type. |
| ItemRateType | Price type used for booking. |
| ItemInfo1 | Special requests made. |
| ItemInfo2 | Booking notes made. Normally, for internal purposes for the client. |
| eid | The event’s eid the booking was made for. |
| NamedGuestOrg | Named guest organisation (if a named guest was set). |
| NamedGuestName | Named guest name (if a named guest was set). |
| NamedGuestEmail | Named guest email (if a named guest was set). |
Item Type “Subscription”
| Field | Field Help |
| ItemGUID | Sale GUID. |
| Item | Returns that the item is a “Subscription”. |
| ItemDetails | The sale service. |
| ItemContact | The contact the sale pipeline item is associated with. |
| ItemValue | The sale pipeline price excluding tax. |
| ItemTax | The sale pipeline tax. |
| ItemTaxRate | The sale pipeline tax rate. |
| ItemTotal | The sale pipeline price including tax. |
| ItemSaving | N/A |
| ItemPotentialSaving | N/A |
| ItemRateType | N/A |
| ItemInfo1 | N/A |
| ItemInfo2 | N/A |
| eid | N/A |
11.2. api/UserItemCount
This API call will return a count of any items currently waiting for payment/action in the user’s basket.
Parameters To Submit
All parameters are required and cannot be empty.
| Parameter | Parameter Help |
| uid | Contact’s uid. |
| Item | Options available for this item are "Basket". |
Return Response
This API call will return an array of item counts, e.g. for displaying the count next to the user’s "basket".
11.3. api/PortalList
This API call is used to return various options available for dropdown selections.
Available List Options
• County – Returns all County options that are within the client’s CRM.
• Country – Returns all Country options that are within the client’s CRM.
• WhereHear – Returns all sources of lead options that are within the client’s CRM.
• BusinessCategory – Returns all the different business category types that are within the client’s CRM.
• Classification – Returns all classification options that are within the client’s CRM (if applicable).
• Subscriptions – Returns all available membership/customer subscription packages available if users wish to "Join".
• Postcode|yourpostcodevalue - (e.g. Postcode|LS12) used as part of the registration process to return records matching the supplied postcode. Results will include a "My Organisation Is Not Listed" option (See Registration method).
• OfferCategory – Returns all Offer categories that are within the client’s CRM.
• EventCategory – Returns all Event categories that are within the client’s CRM.
• NewsCategory – Returns all News categories that are within the client’s CRM.
• VacancyCategory – Returns all Vacancy categories that are within the client’s CRM.
Parameters To Submit
All parameters are required and cannot be empty.
| Parameter | Parameter Help |
| List | A list of available options is shown above under “Available List Options”. |
Return Response
This API call will return an array of all items relating to the list option submitted.
12. Custom API Calls
12.1. api/NewUsers
This API call will return all contact records created within the last 24-hour period.
Parameters To Submit
You are only required to supply your API Key to this API call.
Return Response
The API call will return the following fields of data.
| Field | Field Help |
| uid | The new contact's GUID. |
| cid | The Primary Record the contact is associated with. |
| FirstName | The new contact’s first name. |
| LastName | The new contact’s last name. |
| EmailAddress | The new contact’s email address. |
| CreatedFrom | Whether the contact was created on the website or by a staff member within the CRM. |
| DateCreated | When the new contact was created. |
