Ticketmaster 
Javascript SDK for the Ticketmaster Open Platform.
Aims to wrap the Ticketmaster API with coverage for all Open Platform endpoints, featuring:
- API key authentication support
- Ticketmaster OAuth2 access key support
- Promises on all requests via Bluebird
System Requirements
- NodeJS (v0.12 or greater)
Installation:
npm install --save ticketmaster@<version>
NOTE: We heavily use semantic versioning, and actively introduce breaking changes across MAJOR version changes. To avoid any breaking changes being introduced inadvertently, you should lock this package at a specific version using the npm command above, and upgrade explicitly.
Client:
For use in the browser-based client-side JS applications, a dist/ folder exists for each release. Releases can be found @ https://github.com/ticketmaster-api/sdk-javascript/releases.
git clone --branch <version> git@github.com:ticketmaster-api/sdk-javascript.git
For browser usage there are two files in dist/ folder
./dist/ticketmaster-[version].js ./dist/ticketmaster-[version].min.js
Include one of them in to your project:
......
Use global variable ticketmaster to make an API call (name can be changed in webpack settings during rebuild):
discoveryv2eventall;
Server:
Require the package and make an API call:
var ticketmaster = ;discoveryv2eventall;
Alternative syntax if you are only interested in a subset of the API:
var EventAPI = discoveryv2event;all
Rebuild source:
In case you want to build your own bundle for client
1
. Clone this repository
git clone git@github.com:ticketmaster-api/sdk-javascript.git
2
. install dependencies
npm install
3
. Run npm script:
- for raw (with source-maps) version of client lib use:
npm run-script dev
- for minified version of client lib use:
npm run-script prod
- or (for Windows users):
npm run-script win-prod
Error handling:
Be aware: no .catch() method provided! You should write it by your own.
Result object API:
(provided only for sets which are result of .all() type methods)
properties:
-result.items
- Array of Ticketmaster event information.
-result.page
- Additional general information object.
methods:
-result.getPage(index)
- Promise which returns a new Result object.
-result.nextPage()
- Promise which returns a new Result object. Can take additional param - step (1 by default).
-result.previousPage()
- Promise which returns a new Result object. Can take additional param - step (1 by default).
-result.records()
- returns an Array of this page's records
-result.count()
- returns the total count of items
-result.isLastPage()
- returns a Boolean if current Result is the last page
Running Tests
npm test
Status
Currently supports the following endpoints:
- Discovery API
- v1
- Attraction
- Find
- Category
- Find
- Event
- All
- Find
- Venue
- Find
- Attraction
- v2
- Attraction
- Find
- Event
- All
- Find
- Venue
- Find
- Attraction
- v1
The goal is to implement all endpoints available @ http://developer.ticketmaster.com/. Pull Requests gladly accepted!
Deployment
Maintainers can cut a new release:
npm version <new_version>
This will build, tag, push to git, and push the build folder to npm.
Contact Us
[internal only] Find us in #open-platform on Ticketmaster Slack!