Today’s blog post will be a somewhat nerdy diversion from the usual topics, touching on a very powerful feature available to outfitters that want to do something unique or powerful using the information stored in Arctic Reservations. This is achieved through the Arctic API (which stands for application programming interface). The Arctic API allows another computer program, or a website, to connect to Arctic Reservations in order to share information between the two programs. Although this might seem like a simple idea, it provides a phenomenal range of possible uses.
Originally, the API was designed to allow extracting live trip availability information. This allowed building custom trip listing or calendar pages that reflected trip availability. But since launching version 2, the API has been expanded substantially to allow a number of additional powerful features.
We even use the API internally for a number of newly deployed features. For example, the new calendar booking interface is built completely off the API. All the code associated with the calendar booking interface is included in our Github repository as an example for those outfitters that want to build their own custom booking interfaces.
Other uses of the API that we have seen include:
- Our billing system uses the API to create and issue invoices, and record automatic payments details.
- The API allows extracting accounting information, and has been used to automatically update a separate accounting system.
- Contact forms on the main outfitter website can be tightly integrated with Arctic to automatically generate customer records and inquiries based on the provided information. (The Github repository includes a complete example of how this works.)
- User authentication can be built around the API, as it supports OAuth 2. This allows staff to use their Arctic credentials to login to other services, simplifying login management.
The API is not for everyone, and often requires having a knowledgable developer. But for the ambitious outfitters who want to achieve truly custom features or very powerful automation beyond the built in features of Arctic. We are happy to help suggest ways the API can be used to achieve certain features as well (although we can not provide support debugging code).
For those interested in learning more about the API, we recommend checking our Github repository, which includes a comprehensive PHP framework for interacting with the Arctic API. In addition, it includes a number of examples, both trivial demonstrations as well as more real-world use cases.