def make_reservation(price_type_list: {}, affiliate: '', first_name: '', last_name: '', email: '')
      # step 1: make the reservation
      path = "event/#{performance.event.key}/performance/#{performance.key}/section/#{performance_section_key}/reservation/#{performance.event.client.language_code}"
      body = { 
        PriceTypeList: price_type_list
      }
      result = performance.event.client.call(path, http_method: :post, body: body.to_json)
      reservation = ShakeTheCounter::Reservation.new(result)

      # step 2: create a contact
      path = "contact/#{performance.event.client.language_code}"
      body = { 
        FirstName: first_name,
        LastName: last_name,
        MailAddress: email,
        LanguageCode: performance.event.client.language_code
      }
      result = performance.event.client.call(path, http_method: :post, body: body.to_json)
      contact = ShakeTheCounter::Contact.new(result)      

      # step 3: link contact to the reservation
      path = "reservation/#{reservation.key}/contact"
      body = {
        ContactKey: contact.key
      }
      result = performance.event.client.call(path, http_method: :post, body: body.to_json)

      return reservation
    end
def make_reservation(price_type_list: {}, affiliate: '', first_name: '', last_name: '', email: '')
      # step 1: make the reservation
      path = "event/#{performance.event.key}/performance/#{performance.key}/section/#{performance_section_key}/reservation/#{performance.event.client.language_code}"
      body = { 
        PriceTypeList: price_type_list
      }
      result = performance.event.client.call(path, http_method: :post, body: body.to_json)
      reservation = ShakeTheCounter::Reservation.new(result)

      # step 2: create a contact
      path = "contact/#{performance.event.client.language_code}"
      body = { 
        FirstName: first_name,
        LastName: last_name,
        MailAddress: email,
        LanguageCode: performance.event.client.language_code
      }
      result = performance.event.client.call(path, http_method: :post, body: body.to_json)
      contact = ShakeTheCounter::Contact.new(result)      

      # step 3: link contact to the reservation
      path = "reservation/#{reservation.key}/contact"
      body = {
        ContactKey: contact.key
      }
      result = performance.event.client.call(path, http_method: :post, body: body.to_json)

      return reservation
    end
Sets up a new section


 Makes a reservation for this section
 POST /api/v1/event/{eventKey}/performance/{performanceKey}/section/{performanceSectionKey}/reservation/{languageCode}
 @param email: '' [type] [description]

 @return Reservation