Oenomaus - An Unofficial API for Airbnb
Overview
This Library wraps calls to Airbnb's API endpoints using v2 where possible (HostAPI
mainly uses v2 for CRUD).
There are three main API classes:
PublicAPI
- All calls can be made with authenticationUserAPI
- Calls that an Airbnb user would do (requires auth)HostAPI
- Create, update and delete listings (requires auth)
All methods return a Promise<Object>
.
Install
npm i oenomaus -S
Usage
; const publicApi = ;const userApi = access_token;const hostApi = access_token;
Authorization
; const api = ; // <-- No access_token requiredapi ;
access_token
Using the ; const api = access_token; // <-- access_token required// all calls will be authenticatedapi;
UserAPI
and HostAPI
both require the access_token
to be passed to the constructor.
NOTE: API will return an APIError
if you request authorization too often (as it's throttled by Airbnb); best to cache the access_token
;
Methods
Please see the Source Code and the tests for details. The source uses Flow Type Checker where possible which should help you understand the method options.
Enums
To aid development, some of the Airbnb types have been declared using an Enum:
; console;// trueconsole;// trueconsole;// REAL_BEDconsole;// Entire home/aptconsole;// entire_homeconsole;// 40
Why Oenomaus?
We built this API as part of a fully featured Short Term Rental Management System; this system was code named: Spartacus. Oenomaus became one of the leaders of rebellious slaves during the Third Servile War (alongside Spartacus).
Thanks
Thanks to @nrahnemoon who created the original documentation that this API is based.