Download the PHP package seatsio/seatsio-php without Composer

On this page you can find all versions of the php package seatsio/seatsio-php. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?
seatsio/seatsio-php
Rate from 1 - 5
Rated 5.00 based on 2 reviews

Informations about the package seatsio-php

seatsio-php, the official Seats.io PHP SDK

Build Latest Stable Version

This is the official PHP client library for the Seats.io V2 REST API.

Installing seatsio-php

The recommended way to install seatsio-php is through Composer.

The minimum required PHP version is 8.1.

Versioning

seatsio-php follows semver since v62.3.0.

Usage

General instructions

To use this library, you'll need to create a SeatsioClient:

You can find your workspace secret key in the settings section of the workspace.

The region should correspond to the region of your account:

If you're unsure about your region, have a look at your company settings page.

Creating a chart and an event

Booking objects

Changes the object status to ‘booked’. Booked seats are not selectable on a rendered chart.

https://docs.seats.io/docs/api-book-objects

Booking objects that have been held

Booking general admission areas

Either

Or

Releasing objects

Changes the object status to ‘free’. Free seats are selectable on a rendered chart.

https://docs.seats.io/docs/api-release-objects

Changing object status

Changes the object status to a custom status of your choice. If you need more statuses than just booked and free, you can use this to change the status of a seat, table or booth to your own custom status.

https://docs.seats.io/docs/api-custom-object-status

Retrieving object category and status (and other information)

Event reports

Want to know which seats of an event are booked, and which ones are free? That’s where reporting comes in handy.

The report types you can choose from are:

https://docs.seats.io/docs/api-event-reports

Listing all charts

Note: listAll() returns an iterator, which under the hood calls the seats.io API to fetch charts page by page. So multiple API calls may be done underneath to fetch all charts.

Listing charts page by page

E.g. to show charts in a paginated list on a dashboard.

Each page contains an items array of charts, and nextPageStartsAfter and previousPageEndsBefore properties. Those properties are the chart IDs after which the next page starts or the previous page ends.

Creating a workspace

Creating a chart and an event with the company admin key

Error handling

When an API call results in a 4xx or 5xx error (e.g. when a chart could not be found), a SeatsioException is thrown.

This exception contains a message string describing what went wrong, and also two other properties:

Rate limiting - exponential backoff

This library supports exponential backoff.

When you send too many concurrent requests, the server returns an error 429 - Too Many Requests. The client reacts to this by waiting for a while, and then retrying the request. If the request still fails with an error 429, it waits a little longer, and try again. By default this happens 5 times, before giving up (after approximately 15 seconds).

We throw a RateLimitExceededException (which is a subclass of SeatsioException) when exponential backoff eventually fails.

To change the maximum number of retries, create the SeatsioClient as follows:

Passing in 0 disables exponential backoff completely. In that case, the client will never retry a failed request.

Upgrading

v89 -> v90

v88 -> v89

v87 -> v88

v86 -> v87

v85 -> v86

v84 -> v85

v83 -> v84

v82 -> v83

v81 -> v82

v80 -> v81

v79 -> v80

v76 -> v77

v72 -> v73

The SeatsioClient now takes a region as first parameter. This is the region of your account.

v69 -> v70

Switched to builder pattern for creating social distancing rulesets. Removed constructor of SocialDistancingRuleset class.

Rule-based rulesets:

Fixed rulesets:

v68 -> v69

Replaced SeatsioException->$messages by SeatsioException->$errors. An error contains both a $code and a $message.

To implement logic based on the exception type, use the techincal $code instead of the human-readable $message.

v67 -> v68

Retrieving an event

The Event class does not have $bookWholeTables and $tableBookingModes properties anymore. Those are replaced by a single $tableBookingConfig property:

Creating an event

When creating an event, you now pass in an (optional) $tableBookingConfig instead of $bookWholeTablesOrTableBookingModes:

Creating multiple events

When creating multiple events, you now pass in an (optional) $tableBookingConfig instead of $bookWholeTables and $tableBookingModes:

v66 -> v67

No migration needed

v65 -> v66

You now need to be on PHP 7.1 or newer to use this library.

v64 -> v65

Added boolean parameter $oneGroupPerTable to the constructor of SocialDistancingRuleset. Pass in false to not force only one group to sit at a table.

Also added this parameter to SocialDistancingRuleset::ruleBased()

v63 -> v64

Added $maxOccupancyAbsolute, $maxOccupancyPercentage and $fixedGroupLayout to the constructor of SocialDistancingRuleset.

To keep the default behaviour, pass in the following:

v62 -> v63

events->bookBestAvailable(), events->holdBestAvailable() and events->changeBestAvailableObjectStatus() take optional $extraData and $ticketTypes parameters. Pass in null to keep the default behaviour.


All versions of seatsio-php with dependencies

PHP Build Version
Package Version
Requires php Version >=8.1.0
guzzlehttp/guzzle Version 7.9.2
guzzlehttp/uri-template Version v1.0.3
netresearch/jsonmapper Version 5.0.0
lstrojny/functional-php Version 1.17.0
halaxa/json-machine Version 1.1.4
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package seatsio/seatsio-php contains the following files

Loading the files please wait ....