openapi: 3.2.0 info: title: RentalReady Rental Amenities API version: 1.0.0 (api) description: 'This API enables you to access and update resources from RentalReady (GuestReady PMS) ### Throttling Our API supports up to 400 requests per minute ' servers: - url: https://pms.rentalready.io/api/v3/ description: Base URL declared by the provider in apis.yml (roadmap#122). tags: - name: rental_amenities paths: /api/v3/rental_amenities/: get: operationId: rental_amenities_list parameters: - in: query name: amenity_key schema: type: string - in: query name: created_after schema: type: string format: date-time - in: query name: created_before schema: type: string format: date-time - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - in: query name: modified_after schema: type: string format: date-time - in: query name: modified_before schema: type: string format: date-time - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer - in: query name: rental_id schema: type: string title: Contract number description: "This field is not editable after creation.\n ALWAYS fill it with the correct value" tags: - rental_amenities security: - oauth2: - amenities:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedBookingsyncRentalAmenityList' description: '' post: operationId: rental_amenities_create description: 'Create a rental amenity. Optionally include `metadata_values` as a `{key: value}` dict. Available keys and their types are defined per amenity and can be discovered via GET /api/v3/amenities/.' tags: - rental_amenities requestBody: content: application/json: schema: $ref: '#/components/schemas/BookingsyncRentalAmenity' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/BookingsyncRentalAmenity' multipart/form-data: schema: $ref: '#/components/schemas/BookingsyncRentalAmenity' required: true security: - oauth2: - amenities:write responses: '201': content: application/json: schema: $ref: '#/components/schemas/BookingsyncRentalAmenity' description: '' /api/v3/rental_amenities/{id}/: get: operationId: rental_amenities_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this BookingSync rental amenity. required: true tags: - rental_amenities security: - oauth2: - amenities:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/BookingsyncRentalAmenity' description: '' put: operationId: rental_amenities_update description: 'Update a rental amenity. If `metadata_values` is present, all valid keys for this amenity are replaced (full replace): keys omitted from the dict are deleted. If `metadata_values` is absent, existing values are untouched. Available keys can be discovered via GET /api/v3/amenities/.' parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this BookingSync rental amenity. required: true tags: - rental_amenities requestBody: content: application/json: schema: $ref: '#/components/schemas/BookingsyncRentalAmenity' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/BookingsyncRentalAmenity' multipart/form-data: schema: $ref: '#/components/schemas/BookingsyncRentalAmenity' required: true security: - oauth2: - amenities:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/BookingsyncRentalAmenity' description: '' patch: operationId: rental_amenities_partial_update description: 'Partially update a rental amenity. If `metadata_values` is present, all valid keys for this amenity are replaced (full replace): keys omitted from the dict are deleted. If `metadata_values` is absent, existing values are untouched. Available keys can be discovered via GET /api/v3/amenities/.' parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this BookingSync rental amenity. required: true tags: - rental_amenities requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedBookingsyncRentalAmenity' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedBookingsyncRentalAmenity' multipart/form-data: schema: $ref: '#/components/schemas/PatchedBookingsyncRentalAmenity' security: - oauth2: - amenities:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/BookingsyncRentalAmenity' description: '' delete: operationId: rental_amenities_destroy parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this BookingSync rental amenity. required: true tags: - rental_amenities security: - oauth2: - amenities:write responses: '204': description: No response body components: schemas: PaginatedBookingsyncRentalAmenityList: type: object required: - count - results properties: count: type: integer example: 123 next: type: - string - 'null' format: uri example: http://api.example.org/accounts/?offset=400&limit=100 previous: type: - string - 'null' format: uri example: http://api.example.org/accounts/?offset=200&limit=100 results: type: array items: $ref: '#/components/schemas/BookingsyncRentalAmenity' limit: type: integer example: 50 BookingsyncRentalAmenity: type: object properties: id: type: integer readOnly: true rental_id: type: string title: Contract number description: "This field is not editable after creation.\n ALWAYS fill it with the correct value" amenity_key: type: string type_name: type: string readOnly: true details: type: - string - 'null' description: Describe how to use the amenity location: type: - string - 'null' model: type: - string - 'null' brand: type: - string - 'null' extra_information: {} serial_number: type: - string - 'null' metadata_values: type: object additionalProperties: true example: wifi_speed: 100 parking_type: garage readOnly: true description: Key-value map of metadata for this rental amenity. Keys correspond to the `key` field on the amenity's metadata schema, available via GET /api/v3/amenities/. On write (POST/PUT/PATCH), send the full dict — omitted keys are deleted (full replace semantics). Unknown keys are silently ignored. required: - amenity_key - id - metadata_values - rental_id - type_name PatchedBookingsyncRentalAmenity: type: object properties: id: type: integer readOnly: true rental_id: type: string title: Contract number description: "This field is not editable after creation.\n ALWAYS fill it with the correct value" amenity_key: type: string type_name: type: string readOnly: true details: type: - string - 'null' description: Describe how to use the amenity location: type: - string - 'null' model: type: - string - 'null' brand: type: - string - 'null' extra_information: {} serial_number: type: - string - 'null' metadata_values: type: object additionalProperties: true example: wifi_speed: 100 parking_type: garage readOnly: true description: Key-value map of metadata for this rental amenity. Keys correspond to the `key` field on the amenity's metadata schema, available via GET /api/v3/amenities/. On write (POST/PUT/PATCH), send the full dict — omitted keys are deleted (full replace semantics). Unknown keys are silently ignored. securitySchemes: basicAuth: type: http scheme: basic cookieAuth: type: apiKey in: cookie name: sessionid oauth2: type: oauth2 flows: authorizationCode: authorizationUrl: /o/authorize/ tokenUrl: /o/token/ refreshUrl: /o/token/ scopes: read: Read scope write: Write scope amenities:read: Read amenities amenities:write: Create, update and delete amenities photos:write: Create, update and delete photos reservations:read: Read reservations reservations:write: Create, update and cancel reservations reservation_platform:read: Read reservation platform reviews:read: Read reviews reviews:write: Write reviews owners:read: Read owners owners:write: Write owners hosts:read: Read hosts (deprecated) hosts:write: Write hosts (deprecated) offices:read: Read offices property_managers:read: Read property managers onboarding_requests:read: Read onboarding requests listing_requests:read: Read listing requests pricing:read: Read pricing pricing:write: Create, update and delete pricing users:read: Read user data calendar:read: Read calendar calendar:write: Write calendar rentals:read: Read rentals rentals:write: Create, update and delete rentals issues:read: Read issues issues:write: Write issues incidents:read: Read incidents incidents:write: Write incidents missions:read: Read missions missions:write: Write missions agents:read: Read agents smart_schedulers:read: Read smart schedulers smart_schedulers:write: Write smart schedulers neighbourhoods:read: Read neighbourhoods payment_links:read: Read payment links swikly_deposits:read: Read swikly deposits payout_adjustments:read: Read payout adjustments payout_adjustments:write: Write payout adjustments payment_acceptance_transactions:read: Read payment acceptance transactions payment_acceptance_transactions:write: Write payment acceptance transactions accounting_invoice:read: Read accounting invoices accounting_invoice:write: Write accounting invoices guest_registration:read: Read guest registration data conversations:read: Read conversations conversations:write: Write conversations messages:read: Read messages messages:write: Write messages inquiries:read: Read inquiries city_tax_rules:read: Read city tax rules custom_fields:read: Read custom fields custom_fields:write: Write custom fields tokenAuth: type: apiKey in: header name: Authorization description: Token-based authentication with required prefix "Token"