Amadeus Traveler Media Hotel Ratings API

Sentiments about Hotels.

OpenAPI Specification

amadeus-traveler-media-hotel-ratings-api-openapi.yml Raw ↑
swagger: '2.0'
info:
  description: "Before using this API, we recommend you read our **[Authorization Guide](https://developers.amadeus.com/self-service/apis-docs/guides/authorization-262)** for more information on how to generate an access token. \n\nPlease also be aware that our test environment is based on a subset of the production, this API in test only offers 24 hotels; 10 in London and 14 in New-York. You can find the list in our **[data collection](https://github.com/amadeus4dev/data-collection)**.\n"
  version: 1.0.2
  title: category-rated-areas Hotel Ratings API
host: test.api.amadeus.com
basePath: /v2
schemes:
- https
produces:
- application/vnd.amadeus+json
tags:
- name: Hotel Ratings
  description: Sentiments about Hotels.
paths:
  /e-reputation/hotel-sentiments:
    get:
      tags:
      - Hotel Ratings
      summary: Amadeus Get Sentiments by Amadeus Hotel Ids
      description: ''
      operationId: getSentimentsByHotelIds
      parameters:
      - name: hotelIds
        in: query
        description: Comma-separated list of Amadeus Hotel Ids (max. 3) . Amadeus Hotel Ids are found in the Hotel Search response (parameter name is 'hotelId').
        required: true
        x-example:
        - TELONMFS
        type: array
        maxItems: 100
        minItems: 1
        items:
          type: string
      responses:
        '200':
          $ref: '#/responses/sentiments'
        '400':
          $ref: '#/responses/400'
        '401':
          $ref: '#/responses/401'
        default:
          $ref: '#/responses/500'
definitions:
  WarningNotFound:
    allOf:
    - $ref: '#/definitions/Warning'
    example:
      code: 913
      title: PROPERTIES NOT FOUND
      detail: Some of the requested properties were not found in our database.
      source:
        parameter: hotelIds
        pointer: ABCDEFGH,LPCDEFGQ
  CollectionLinks:
    title: CollectionLinks
    properties:
      self:
        type: string
        format: uri
        example: https://test.api.amadeus.com/v1/area/resources?...
      next:
        type: string
        format: uri
        example: https://test.api.amadeus.com/v1/area/resources?...
      previous:
        type: string
        format: uri
        example: https://test.api.amadeus.com/v1/area/resources?...
      last:
        type: string
        format: uri
        example: https://test.api.amadeus.com/v1/area/resources?...
      first:
        type: string
        format: uri
        example: https://test.api.amadeus.com/v1/area/resources?...
      up:
        type: string
        format: uri
        example: https://test.api.amadeus.com/v1/area/resources?...
    example:
      self: https://test.api.amadeus.com/v1/area/resources?param=value
  Error500:
    properties:
      errors:
        type: array
        items:
          $ref: '#/definitions/Error'
    required:
    - errors
    example:
      errors:
      - status: 500
        code: 141
        title: SYSTEM ERROR HAS OCCURRED
  Warning:
    required:
    - code
    - title
    properties:
      code:
        type: integer
        description: A machine-readable error code from the Canned Messages table, that will enable the API Consumers code to handle this type of error
      title:
        type: string
        description: An error title from the Canned Messages table with a 1:1 correspondence to the error code. This may be localized
      detail:
        type: string
        description: An easy-to-read explanation specific to this occurrence of the problem. It should give the API consumer an idea of what went wrong and how to recover from it. Like the title, this field’s value can be localized.
      source:
        $ref: '#/definitions/ErrorSource'
      documentation:
        type: string
        format: url
        description: A link to a web page or file with further documentation to help the API consumer resolve this error
  ErrorSource:
    properties:
      parameter:
        type: string
        description: The key of the URI path or query parameter that caused the error
      pointer:
        type: string
        description: A JSON Pointer [RFC6901] to the associated entity in the request body that caused this error
      example:
        type: string
        description: A sample input to guide the user when resolving this issue
  Error401:
    properties:
      errors:
        type: array
        items:
          $ref: '#/definitions/Error'
    required:
    - errors
    example:
      errors:
      - status: 401
        code: 20
        title: RESTRICTED
        detail: Query unauthorized
  Error400:
    properties:
      errors:
        type: array
        items:
          $ref: '#/definitions/Error'
    required:
    - errors
  CollectionMeta:
    title: CollectionMeta
    properties:
      count:
        type: integer
        example: 1
      links:
        $ref: '#/definitions/CollectionLinks'
  Error:
    required:
    - status
    - code
    - title
    properties:
      status:
        type: integer
        description: The [HTTP status code](https://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml) of this response. This is present only in terminal errors which cause an unsuccessful response. In the case of multiple errors, they must all have the same status.
      code:
        type: integer
        description: A machine-readable error code from the Amadeus Canned Messages table, that will enable the API Consumers code to handle this type of error
      title:
        type: string
        description: An error title from the Canned Messages table with a 1:1 correspondence to the error code. This may be localized
      detail:
        type: string
        description: An easy-to-read explanation specific to this occurrence of the problem. It should give the API consumer an idea of what went wrong and how to recover from it. Like the title, this field’s value can be localized.
      source:
        $ref: '#/definitions/ErrorSource'
      documentation:
        type: string
        format: url
        description: A link to a web page or file with further documentation to help the API consumer resolve this error
  HotelSentiment:
    type: object
    properties:
      hotelId:
        type: string
        example: BBLONBTL
        description: Amadeus Hotel Ids are found in the Hotel Search response (parameter name is 'hotelId')
      type:
        type: string
        example: hotelSentiment
      overallRating:
        $ref: '#/definitions/Score'
      numberOfRatings:
        type: integer
        example: 350
      numberOfReviews:
        type: integer
        example: 200
      sentiments:
        type: object
        description: Dictionary containing scores for all the available categories.  If a property does not have any category this object will not be present in the response.
        properties:
          sleepQuality:
            $ref: '#/definitions/Score'
          service:
            $ref: '#/definitions/Score'
          facilities:
            $ref: '#/definitions/Score'
          roomComforts:
            $ref: '#/definitions/Score'
          valueForMoney:
            $ref: '#/definitions/Score'
          catering:
            $ref: '#/definitions/Score'
          swimmingPool:
            $ref: '#/definitions/Score'
          location:
            $ref: '#/definitions/Score'
          internet:
            $ref: '#/definitions/Score'
          pointsOfInterest:
            $ref: '#/definitions/Score'
          staff:
            $ref: '#/definitions/Score'
    required:
    - hotelId
    - overallRating
    - avgHotelAvailabilityResponseTime
    - numberOfRatings
    - numberOfReviews
  Score:
    type: integer
    description: Integer between 0 and 100. It represents the score for a specific category or the overall rating for a given Hotel.
    example: 82
responses:
  '500':
    description: Unexpected Error
    schema:
      $ref: '#/definitions/Error500'
  sentiments:
    description: Successful operation
    schema:
      title: SuccessSentiments
      required:
      - data
      properties:
        meta:
          $ref: '#/definitions/CollectionMeta'
        warnings:
          type: array
          items:
            $ref: '#/definitions/WarningNotFound'
        data:
          type: array
          items:
            $ref: '#/definitions/HotelSentiment'
      example:
        data:
        - type: hotelSentiment
          numberOfReviews: 218
          numberOfRatings: 278
          hotelId: ADNYCCTB
          overallRating: 93
          sentiments:
            sleepQuality: 87
            service: 98
            facilities: 90
            roomComforts: 92
            valueForMoney: 87
            catering: 89
            location: 98
            pointsOfInterest: 91
            staff: 100
        - type: hotelSentiment
          numberOfReviews: 2667
          numberOfRatings: 2666
          hotelId: TELONMFS
          overallRating: 81
          sentiments:
            sleepQuality: 78
            service: 80
            facilities: 75
            roomComforts: 87
            valueForMoney: 75
            catering: 81
            location: 89
            internet: 72
            pointsOfInterest: 81
            staff: 89
        meta:
          count: 1
          links:
            self: https://test.api.amadeus.com/v2/e-reputation/hotel-sentiments?hotelIds=ADNYCCTB,TELONMFS,XXXYYY01
        warnings:
        - code: 913
          title: PROPERTIES NOT FOUND
          detail: Some of the requested properties were not found in our database.
          source:
            parameter: hotelIds
            pointer: XXXYYY01
  '401':
    description: Unauthorized
    schema:
      $ref: '#/definitions/Error401'
  '400':
    description: Not Found
    schema:
      $ref: '#/definitions/Error400'