Skip to content

Getting Started with the RESTful API

Daniel Carroll edited this page Apr 26, 2017 · 14 revisions

The RESTful API provides a way to retrieve data from GoExpo for use in external applications.

Available Operations

All of the examples in the list of available operations use the sandbox demo site here: https://n1a.goexposoftware.com/events/sbd. Additional documentation for the operations, parameters, etc. can be found in the Swagger documentation here: https://swagger.goexposoftware.com/?url=https://n1a.goexposoftware.com/events/sbd/goExpo/api/public/v1/swagger.json.

Create API Token - POST:/api/public/v1/token

This operation can be used to create an API token that will grant you read/write access to restricted sections of the API based on the user permissions set in GoExpo. Certain operations such as creating, updating, and deleting an upgrade package through the RESTful API will require an API token generated with a user account that has write access. Similarly, some operations such as getting a full list of exhibitors including those with the status of archived, disabled, etc. that are hidden from the public will require an API token generated with a user account that has read access. Calls that may require an API token will be noted in the swagger documentation with the inclusion of the token parameter.

Note: API tokens will expire if not used during a 15 minute timeout period. Each time the API token is used to make a call, the timer for the token will refresh and the 15 minute period will restart. After the expiration period, a new token will need to be generated.

Example

In this example, creating an API token is required to then create/update an upgrade package. If an API token isn't supplied in subsequent calls, you will not be able to proceed.

https://github.com/Core-Apps/goexpo-api/blob/gh-pages/examples/upgrade.html#L27-L36

Delete API Token - DELETE:/api/public/v1/token/{token}

This operation can be used to delete an existing API token. Once deleted, no new API calls can be made with the specified API token and a new one must be created.

Example

https://github.com/Core-Apps/goexpo-api/blob/gh-pages/examples/upgrade.html#L137-L144

Get All Exhibitors - /api/public/v1/exhibitor

This operation can be used to retrieve a list of exhibitors from GoExpo. Searching/filtering is supported by adding variables to the search URL (e.g. /api/public/v1/exhibitor?id=2). The list of available search parameters can be found by using the "Get Exhibitor Parameters" API call.

Example

In this example, you are shown how to get all of the exhibitors in the system and formulate a table based on the data that was received.

https://github.com/Core-Apps/goexpo-api/blob/gh-pages/examples/getExhibitors.html

Live Demo

http://core-apps.github.io/goexpo-api/examples/getExhibitors.html
(Note: it may take a few seconds to load)

Get One Exhibitor - /api/public/v1/exhibitor/{id}

This operation can be used to retrieve data about one single exhibitor from GoExpo by adding the exhibitor's ID to the end of the URL.

Example

In this example, you are shown how to get data on a single exhibitor from the API and display it in the DOM. You could also achieve the same functionality by filtering on the "Get All Exhibitors" API call (e.g. /api/public/v1/exhibitor?id=2).

https://github.com/Core-Apps/goexpo-api/blob/gh-pages/examples/getExhibitor.html

Live Demo

http://core-apps.github.io/goexpo-api/examples/getExhibitor.html

Get Exhibitor Parameters - /api/public/v1/exhibitor/parameters

This operation can be used to determine the available search parameters for a "Get All Exhibitors" API call. The result will contain the list of parameters along with the type of field that should be used and any constraints that exist on the field (e.g. minimum length, maximum length, etc.).

Example

In this example, we're shown how to get the available search fields by using the "Get Exhibitor Parameters" API call. Those search fields are then used to populate a list of exhibitors based on ID, name, email address, keyword, and a custom field using the "Get All Exhibitors" API call. One of the benefits of building your own search functionality using the API is having the freedom to search on many fields using a single search box. In the example shown, we combine "Company Name", "Keyword", and a custom field into a single search box and then use the value to search on all three attributes using the "Get All Exhibitors" API call.

https://github.com/Core-Apps/goexpo-api/blob/gh-pages/examples/searchExhibitors.html

Live Demo

http://core-apps.github.io/goexpo-api/examples/searchExhibitors.html

Get All Seminars - /api/public/v1/seminar

This operation can be used to retrieve a list of seminars from GoExpo. Searching/filtering is supported by adding variables to the search URL (e.g. /api/public/v1/seminar?id=38). The list of available search parameters can be found by using the "Get Seminar Parameters" API call.

Example

In this example, you are shown how to get all of the seminars in the system and formulate a table based on the data that was received.

https://github.com/Core-Apps/goexpo-api/blob/gh-pages/examples/getSeminars.html

Live Demo

http://core-apps.github.io/goexpo-api/examples/getSeminars.html
(Note: it may take a few seconds to load)

Get One Seminar - /api/public/v1/seminar/{id}

This operation can be used to retrieve data about one single seminar from GoExpo by adding the seminar's ID to the end of the URL.

Example

In this example, you are shown how to get data on a single seminar from the API and display it in the DOM. You could also achieve the same functionality by filtering on the "Get All Seminars" API call (e.g. /api/public/v1/seminar?id=38).

https://github.com/Core-Apps/goexpo-api/blob/gh-pages/examples/getSeminar.html

Live Demo

http://core-apps.github.io/goexpo-api/examples/getSeminar.html

Get Seminar Parameters - /api/public/v1/seminar/parameters

This operation can be used to determine the available search parameters for a "Get All Seminars" API call. The result will contain the list of parameters along with the type of field that should be used and any constraints that exist on the field (e.g. minimum length, maximum length, etc.).

Example

In this example, we're shown how to get the available search fields by using the "Get Seminar Parameters" API call. Those search fields are then used to populate a list of seminars based on ID, name, and track using the "Get All Seminars" API call.

https://github.com/Core-Apps/goexpo-api/blob/gh-pages/examples/searchSeminars.html

Live Demo

http://core-apps.github.io/goexpo-api/examples/searchSeminars.html

Get All Speakers - /api/public/v1/speaker

This operation can be used to retrieve a list of speakers from GoExpo. Searching/filtering is supported by adding variables to the search URL (e.g. /api/public/v1/speaker?id=26). The list of available search parameters can be found by using the "Get Speaker Parameters" API call.

Example

In this example, you are shown how to get all of the speakers in the system and formulate a table based on the data that was received.

https://github.com/Core-Apps/goexpo-api/blob/gh-pages/examples/getSpeakers.html

Live Demo

http://core-apps.github.io/goexpo-api/examples/getSpeakers.html

Get One Speaker - /api/public/v1/speaker/{id}

This operation can be used to retrieve data about one single speaker from GoExpo by adding the speaker's ID to the end of the URL.

Example

In this example, you are shown how to get data on a single speaker from the API and display it in the DOM. You could also achieve the same functionality by filtering on the "Get All Speakers" API call (e.g. /api/public/v1/speaker?id=26).

https://github.com/Core-Apps/goexpo-api/blob/gh-pages/examples/getSpeaker.html

Live Demo

http://core-apps.github.io/goexpo-api/examples/getSpeaker.html

Get Speaker Parameters - /api/public/v1/speaker/parameters

This operation can be used to determine the available search parameters for a "Get All Speakers" API call. The result will contain the list of parameters along with the type of field that should be used and any constraints that exist on the field (e.g. minimum length, maximum length, etc.).

Example

In this example, we're shown how to get the available search fields by using the "Get Speaker Parameters" API call. Those search fields are then used to populate a list of speakers based on ID, name, and company name using the "Get All Speakers" API call.

https://github.com/Core-Apps/goexpo-api/blob/gh-pages/examples/searchSpeakers.html

Live Demo

http://core-apps.github.io/goexpo-api/examples/searchSpeakers.html

Other Examples

List, Create, Get and Update Upgrade Packages

https://github.com/Core-Apps/goexpo-api/blob/gh-pages/examples/upgrade.html