quicktravel_client 3.7.0 → 4.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.ruby-version +1 -1
- data/.travis.yml +5 -4
- data/CHANGELOG.md +30 -0
- data/gemfiles/rails6.gemfile +8 -0
- data/lib/quick_travel.rb +2 -0
- data/lib/quick_travel/adapter.rb +13 -25
- data/lib/quick_travel/booking.rb +6 -5
- data/lib/quick_travel/cache.rb +24 -5
- data/lib/quick_travel/checkout.rb +1 -1
- data/lib/quick_travel/client.rb +9 -1
- data/lib/quick_travel/init_from_hash.rb +4 -0
- data/lib/quick_travel/package.rb +13 -0
- data/lib/quick_travel/passenger_type.rb +1 -1
- data/lib/quick_travel/product_configuration.rb +1 -1
- data/lib/quick_travel/products/base.rb +4 -4
- data/lib/quick_travel/reservation.rb +1 -1
- data/lib/quick_travel/resource.rb +1 -1
- data/lib/quick_travel/route.rb +1 -1
- data/lib/quick_travel/route_stop.rb +8 -1
- data/lib/quick_travel/vehicle_type.rb +1 -1
- data/lib/quick_travel/version.rb +1 -1
- data/quicktravel_client.gemspec +5 -5
- data/spec/adapter_spec.rb +34 -3
- data/spec/booking_spec.rb +10 -0
- data/spec/checkout_spec.rb +0 -182
- data/spec/clients_spec.rb +42 -0
- data/spec/discounts_spec.rb +21 -21
- data/spec/package_spec.rb +24 -0
- data/spec/passenger_type_spec.rb +1 -1
- data/spec/product_configuration_spec.rb +11 -0
- data/spec/reservation_spec.rb +20 -0
- data/spec/spec_helper.rb +6 -3
- data/spec/support/cassettes/accommodation_reserve.yml +12 -4
- data/spec/support/cassettes/basic_product_scheduled_trips.yml +3 -1
- data/spec/support/cassettes/basic_product_scheduled_trips_multi_sector.yml +3 -1
- data/spec/support/cassettes/basic_product_scheduled_trips_unbookable.yml +3 -1
- data/spec/support/cassettes/booking_activate.yml +6 -2
- data/spec/support/cassettes/booking_cancel.yml +6 -2
- data/spec/support/cassettes/booking_create.yml +3 -1
- data/spec/support/cassettes/booking_create_accommodation.yml +3 -1
- data/spec/support/cassettes/booking_documents.yml +3 -1
- data/spec/support/cassettes/booking_non_existant.yml +3 -1
- data/spec/support/cassettes/booking_price_changes.yml +3 -1
- data/spec/support/cassettes/booking_show.yml +3 -1
- data/spec/support/cassettes/booking_update.yml +6 -2
- data/spec/support/cassettes/booking_with_comments.yml +119 -0
- data/spec/support/cassettes/booking_with_documents.yml +6 -2
- data/spec/support/cassettes/booking_with_nested_attributes.yml +9 -3
- data/spec/support/cassettes/booking_with_price_changes.yml +3 -1
- data/spec/support/cassettes/checkout_client_token.yml +3 -1
- data/spec/support/cassettes/client_templates.yml +120 -0
- data/spec/support/cassettes/countries.yml +3 -1
- data/spec/support/cassettes/country_all.yml +3 -1
- data/spec/support/cassettes/create_reservation_fail.yml +3 -1
- data/spec/support/cassettes/create_reservation_with_booking.yml +3 -1
- data/spec/support/cassettes/locations.yml +3 -1
- data/spec/support/cassettes/opal_modern_pay_failed_booking.yml +3 -1
- data/spec/support/cassettes/opal_modern_pay_failed_create.yml +3 -1
- data/spec/support/cassettes/opal_modern_pay_failed_update.yml +3 -1
- data/spec/support/cassettes/opal_modern_pay_successful_booking.yml +3 -1
- data/spec/support/cassettes/opal_modern_pay_successful_response.yml +3 -1
- data/spec/support/cassettes/opal_modern_pay_successful_update_response.yml +3 -1
- data/spec/support/cassettes/opal_pay.yml +3 -1
- data/spec/support/cassettes/opal_pay_booking.yml +3 -1
- data/spec/support/cassettes/package_show.yml +83 -0
- data/spec/support/cassettes/package_show_product_type.yml +80 -0
- data/spec/support/cassettes/passenger_all.yml +3 -1
- data/spec/support/cassettes/payment_info.yml +3 -1
- data/spec/support/cassettes/price_quote.yml +6 -2
- data/spec/support/cassettes/product_date_range_bookability.yml +3 -1
- data/spec/support/cassettes/product_show.yml +3 -1
- data/spec/support/cassettes/product_show_as_agent.yml +3 -1
- data/spec/support/cassettes/product_type_all.yml +3 -1
- data/spec/support/cassettes/product_type_resource_categories.yml +3 -1
- data/spec/support/cassettes/product_type_resource_categories_tickets.yml +3 -1
- data/spec/support/cassettes/product_type_routes.yml +3 -1
- data/spec/support/cassettes/property.yml +3 -1
- data/spec/support/cassettes/property_types.yml +3 -1
- data/spec/support/cassettes/region_show.yml +3 -1
- data/spec/support/cassettes/reservation_resource.yml +3 -1
- data/spec/support/cassettes/reservation_with_extra_picks.yml +9 -3
- data/spec/support/cassettes/resource_category_all.yml +3 -1
- data/spec/support/cassettes/resource_category_all_for_product_type_8.yml +3 -1
- data/spec/support/cassettes/resource_fare_bases.yml +3 -1
- data/spec/support/cassettes/resource_show.yml +3 -1
- data/spec/support/cassettes/resource_with_price.yml +3 -1
- data/spec/support/cassettes/settings_basic.yml +3 -1
- data/spec/support/cassettes/tenant_switcher.yml +6 -2
- data/spec/support/cassettes/wrong_url.yml +3 -1
- data/spec/support/coverage_loader.rb +1 -1
- metadata +35 -29
- data/gemfiles/rails4.gemfile +0 -9
@@ -5,10 +5,12 @@ http_interactions:
|
|
5
5
|
uri: http://test.qt.sealink.com.au:8080/api/bookings/reference/222223.json
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
|
-
string:
|
8
|
+
string: ''
|
9
9
|
headers:
|
10
10
|
Content-Length:
|
11
11
|
- '0'
|
12
|
+
X-API-KEY:
|
13
|
+
- <QT_KEY>
|
12
14
|
response:
|
13
15
|
status:
|
14
16
|
code: 200
|
@@ -5,10 +5,12 @@ http_interactions:
|
|
5
5
|
uri: http://test.qt.sealink.com.au:8080/api/checkouts/client_token.json?gateway=braintree
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
|
-
string:
|
8
|
+
string: ''
|
9
9
|
headers:
|
10
10
|
Content-Length:
|
11
11
|
- '0'
|
12
|
+
X-API-KEY:
|
13
|
+
- <QT_KEY>
|
12
14
|
response:
|
13
15
|
status:
|
14
16
|
code: 200
|
@@ -0,0 +1,120 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: http://test.qt.sealink.com.au:8080/api/clients/2.json
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
Content-Length:
|
11
|
+
- '0'
|
12
|
+
X-API-KEY:
|
13
|
+
- <QT_KEY>
|
14
|
+
response:
|
15
|
+
status:
|
16
|
+
code: 200
|
17
|
+
message: 'OK '
|
18
|
+
headers:
|
19
|
+
P3p:
|
20
|
+
- CP="IDC DSP CAO COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"
|
21
|
+
Content-Type:
|
22
|
+
- application/json; charset=utf-8
|
23
|
+
Etag:
|
24
|
+
- W/"651918ea3a399afbf3a755713a8511dd"
|
25
|
+
Cache-Control:
|
26
|
+
- max-age=0, private, must-revalidate
|
27
|
+
X-Request-Id:
|
28
|
+
- 0c6843e0-e8ae-47a1-b924-a10de907d9a8
|
29
|
+
X-Runtime:
|
30
|
+
- '0.188579'
|
31
|
+
Date:
|
32
|
+
- Fri, 01 Jan 2016 02:59:22 GMT
|
33
|
+
X-Rack-Cache:
|
34
|
+
- miss
|
35
|
+
Vary:
|
36
|
+
- Origin
|
37
|
+
X-Content-Type-Options:
|
38
|
+
- nosniff
|
39
|
+
X-Download-Options:
|
40
|
+
- noopen
|
41
|
+
X-Frame-Options:
|
42
|
+
- sameorigin
|
43
|
+
X-Permitted-Cross-Domain-Policies:
|
44
|
+
- none
|
45
|
+
X-Xss-Protection:
|
46
|
+
- 1; mode=block
|
47
|
+
Server:
|
48
|
+
- WEBrick/1.3.1 (Ruby/2.4.4/2018-03-28)
|
49
|
+
Content-Length:
|
50
|
+
- '130'
|
51
|
+
Connection:
|
52
|
+
- Keep-Alive
|
53
|
+
Set-Cookie:
|
54
|
+
- _session_id=YXoxbGRNb3k4UTFlb2RXM01UdUJLR25CY2Njb0szaXBYRkUyMnh3V3Y5OTcvQm1WS2tiYmhqSkc5dzdNWk5mc2p6aWt1NFhMOGJ6bnNGUlhIY2VvcnltSEg0ZHJyMldvaUw2Z1hTYkZvakk9LS1LWGUvQm0rQWlIMHVjcTJ5TmZFVXVBPT0%3D--891c529278599f4be47ecbcd76995319f87b95cc;
|
55
|
+
path=/; HttpOnly
|
56
|
+
body:
|
57
|
+
encoding: UTF-8
|
58
|
+
string: '{"id":2,"client_type_id":3,"party_id":9,"commission_level_id":null,"created_at":null,"external_identifier":null,"updated_at":null}'
|
59
|
+
http_version:
|
60
|
+
recorded_at: Tue, 20 Nov 2018 03:00:05 GMT
|
61
|
+
- request:
|
62
|
+
method: get
|
63
|
+
uri: http://test.qt.sealink.com.au:8080/api/clients/2/templates
|
64
|
+
body:
|
65
|
+
encoding: UTF-8
|
66
|
+
string: ''
|
67
|
+
headers:
|
68
|
+
Content-Length:
|
69
|
+
- '0'
|
70
|
+
X-API-KEY:
|
71
|
+
- <QT_KEY>
|
72
|
+
response:
|
73
|
+
status:
|
74
|
+
code: 200
|
75
|
+
message: 'OK '
|
76
|
+
headers:
|
77
|
+
P3p:
|
78
|
+
- CP="IDC DSP CAO COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"
|
79
|
+
Content-Type:
|
80
|
+
- application/json; charset=utf-8
|
81
|
+
Etag:
|
82
|
+
- W/"b6be9931bd0aa8a85b01110a597d8bb7"
|
83
|
+
Cache-Control:
|
84
|
+
- max-age=0, private, must-revalidate
|
85
|
+
X-Request-Id:
|
86
|
+
- 8ea40255-40e0-41f6-bffa-85c54ab8ff86
|
87
|
+
X-Runtime:
|
88
|
+
- '0.168409'
|
89
|
+
Date:
|
90
|
+
- Fri, 01 Jan 2016 02:59:22 GMT
|
91
|
+
X-Rack-Cache:
|
92
|
+
- miss
|
93
|
+
Vary:
|
94
|
+
- Origin
|
95
|
+
X-Content-Type-Options:
|
96
|
+
- nosniff
|
97
|
+
X-Download-Options:
|
98
|
+
- noopen
|
99
|
+
X-Frame-Options:
|
100
|
+
- sameorigin
|
101
|
+
X-Permitted-Cross-Domain-Policies:
|
102
|
+
- none
|
103
|
+
X-Xss-Protection:
|
104
|
+
- 1; mode=block
|
105
|
+
Server:
|
106
|
+
- WEBrick/1.3.1 (Ruby/2.4.4/2018-03-28)
|
107
|
+
Content-Length:
|
108
|
+
- '336'
|
109
|
+
Connection:
|
110
|
+
- Keep-Alive
|
111
|
+
Set-Cookie:
|
112
|
+
- _session_id=RmhvbVl3dlhyL2lqdzZCM2FGb3ZKa2x6cC9hWEtvUHMxZE8vcTluSXd6MTZUMVNDY0xxYnphUklrTVk1OXNVdmJBbFFjSndtVVlLRFFtN0pkbVFyejZGcVhSN251a0VtdnRULzZ5YmpkcWM9LS1QSVFmSmFTWnZqOWlOK280QU9Cem1nPT0%3D--ffb6e33b92be7dfc7b7efce9ccd06c5f691a4d83;
|
113
|
+
path=/; HttpOnly
|
114
|
+
body:
|
115
|
+
encoding: UTF-8
|
116
|
+
string: '{"vehicle_templates":[{"id":1,"length":5.0,"height":1.5,"width":1.8,"weight":1000.0,"details":"Holden
|
117
|
+
Commodore","registration":"ABC123","cargo":"None","vehicle_type_id":1,"party_id":9}],"passenger_templates":[{"id":1,"age":30,"title":"Mr","first_name":"Homer","last_name":"Simpson","gender":"Male","passenger_type_id":1,"party_id":9}]}'
|
118
|
+
http_version:
|
119
|
+
recorded_at: Tue, 20 Nov 2018 03:00:05 GMT
|
120
|
+
recorded_with: VCR 4.0.0
|
@@ -5,10 +5,12 @@ http_interactions:
|
|
5
5
|
uri: http://test.qt.sealink.com.au:8080/api/countries.json
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
|
-
string:
|
8
|
+
string: ''
|
9
9
|
headers:
|
10
10
|
Content-Length:
|
11
11
|
- '0'
|
12
|
+
X-API-KEY:
|
13
|
+
- <QT_KEY>
|
12
14
|
response:
|
13
15
|
status:
|
14
16
|
code: 200
|
@@ -5,10 +5,12 @@ http_interactions:
|
|
5
5
|
uri: http://test.qt.sealink.com.au:8080/api/countries.json
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
|
-
string:
|
8
|
+
string: ''
|
9
9
|
headers:
|
10
10
|
Content-Length:
|
11
11
|
- '0'
|
12
|
+
X-API-KEY:
|
13
|
+
- <QT_KEY>
|
12
14
|
response:
|
13
15
|
status:
|
14
16
|
code: 200
|
@@ -5,10 +5,12 @@ http_interactions:
|
|
5
5
|
uri: http://test.qt.sealink.com.au:8080/api/reservations.json
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
|
-
string: resource_id=4&first_travel_date=2099-09-10
|
8
|
+
string: resource_id=4&first_travel_date=2099-09-10
|
9
9
|
headers:
|
10
10
|
Content-Length:
|
11
11
|
- '0'
|
12
|
+
X-API-KEY:
|
13
|
+
- <QT_KEY>
|
12
14
|
response:
|
13
15
|
status:
|
14
16
|
code: 404
|
@@ -5,10 +5,12 @@ http_interactions:
|
|
5
5
|
uri: http://test.qt.sealink.com.au:8080/api/reservations.json
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
|
-
string: resource_id=4&first_travel_date=2016-03-01&passenger_types_numbers[1]=2&passenger_types_numbers[2]=1
|
8
|
+
string: resource_id=4&first_travel_date=2016-03-01&passenger_types_numbers[1]=2&passenger_types_numbers[2]=1
|
9
9
|
headers:
|
10
10
|
Content-Length:
|
11
11
|
- '0'
|
12
|
+
X-API-KEY:
|
13
|
+
- <QT_KEY>
|
12
14
|
response:
|
13
15
|
status:
|
14
16
|
code: 200
|
@@ -5,10 +5,12 @@ http_interactions:
|
|
5
5
|
uri: http://test.qt.sealink.com.au:8080/api/bookings.json
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
|
-
string:
|
8
|
+
string: ''
|
9
9
|
headers:
|
10
10
|
Content-Length:
|
11
11
|
- '0'
|
12
|
+
X-API-KEY:
|
13
|
+
- <QT_KEY>
|
12
14
|
response:
|
13
15
|
status:
|
14
16
|
code: 200
|
@@ -5,10 +5,12 @@ http_interactions:
|
|
5
5
|
uri: http://test.qt.sealink.com.au:8080/api/checkouts.json
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
|
-
string: booking_id=5&payment[payment_type_id]=10&payment[amount_in_cents]=10&payment[uid]=modern-opal-failed-uid&payment[comment]=Test%20Opal%20Payment
|
8
|
+
string: booking_id=5&payment[payment_type_id]=10&payment[amount_in_cents]=10&payment[uid]=modern-opal-failed-uid&payment[comment]=Test%20Opal%20Payment
|
9
9
|
headers:
|
10
10
|
Content-Length:
|
11
11
|
- '0'
|
12
|
+
X-API-KEY:
|
13
|
+
- <QT_KEY>
|
12
14
|
response:
|
13
15
|
status:
|
14
16
|
code: 200
|
@@ -5,10 +5,12 @@ http_interactions:
|
|
5
5
|
uri: http://test.qt.sealink.com.au:8080/api/checkouts/modern-opal-failed-uid.json
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
|
-
string: gateway_response[raw_response]=%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CardNumber%22%3A%203085227007682330%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CardBalance%22%3A%206546%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CardSequenceNumber%22%3A%2055%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CILAmount%22%3A%200%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22AuthorizedAmount%22%3A%20890%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22SalesReferenceNumber%22%3A%2053183943%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22TransactionDTM%22%3A%20%222018-01-04T09%3A00%3A43.106%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22VoidTransactionReferenceNumber%22%3A%201271099697%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CardBlockState%22%3A%20false%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22AutoloadAmount%22%3A%200%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D&gateway_response[success]=false&gateway_response[meta_data][applicationInstanceId]=101166&gateway_response[meta_data][operatorId]=an_operator
|
8
|
+
string: gateway_response[raw_response]=%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CardNumber%22%3A%203085227007682330%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CardBalance%22%3A%206546%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CardSequenceNumber%22%3A%2055%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CILAmount%22%3A%200%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22AuthorizedAmount%22%3A%20890%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22SalesReferenceNumber%22%3A%2053183943%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22TransactionDTM%22%3A%20%222018-01-04T09%3A00%3A43.106%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22VoidTransactionReferenceNumber%22%3A%201271099697%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CardBlockState%22%3A%20false%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22AutoloadAmount%22%3A%200%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D&gateway_response[success]=false&gateway_response[meta_data][applicationInstanceId]=101166&gateway_response[meta_data][operatorId]=an_operator
|
9
9
|
headers:
|
10
10
|
Content-Length:
|
11
11
|
- '0'
|
12
|
+
X-API-KEY:
|
13
|
+
- <QT_KEY>
|
12
14
|
response:
|
13
15
|
status:
|
14
16
|
code: 422
|
@@ -5,10 +5,12 @@ http_interactions:
|
|
5
5
|
uri: http://test.qt.sealink.com.au:8080/api/bookings.json
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
|
-
string:
|
8
|
+
string: ''
|
9
9
|
headers:
|
10
10
|
Content-Length:
|
11
11
|
- '0'
|
12
|
+
X-API-KEY:
|
13
|
+
- <QT_KEY>
|
12
14
|
response:
|
13
15
|
status:
|
14
16
|
code: 200
|
@@ -5,10 +5,12 @@ http_interactions:
|
|
5
5
|
uri: http://test.qt.sealink.com.au:8080/api/checkouts.json
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
|
-
string: booking_id=6&payment[payment_type_id]=10&payment[amount_in_cents]=10&payment[uid]=modern-opal-uid&payment[comment]=Test%20Opal%20Payment
|
8
|
+
string: booking_id=6&payment[payment_type_id]=10&payment[amount_in_cents]=10&payment[uid]=modern-opal-uid&payment[comment]=Test%20Opal%20Payment
|
9
9
|
headers:
|
10
10
|
Content-Length:
|
11
11
|
- '0'
|
12
|
+
X-API-KEY:
|
13
|
+
- <QT_KEY>
|
12
14
|
response:
|
13
15
|
status:
|
14
16
|
code: 200
|
@@ -5,10 +5,12 @@ http_interactions:
|
|
5
5
|
uri: http://test.qt.sealink.com.au:8080/api/checkouts/modern-opal-uid.json
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
|
-
string: gateway_response[raw_response]=%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CardNumber%22%3A%203085227007682330%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CardBalance%22%3A%206546%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CardSequenceNumber%22%3A%2055%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CILAmount%22%3A%200%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22AuthorizedAmount%22%3A%20890%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22SalesReferenceNumber%22%3A%2053183943%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22TransactionDTM%22%3A%20%222018-01-04T09%3A00%3A43.106%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22TransactionReferenceNumber%22%3A%201271099697%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CardBlockState%22%3A%20false%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22AutoloadAmount%22%3A%200%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D&gateway_response[success]=true&gateway_response[meta_data][applicationInstanceId]=101166&gateway_response[meta_data][operatorId]=an_operator
|
8
|
+
string: gateway_response[raw_response]=%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CardNumber%22%3A%203085227007682330%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CardBalance%22%3A%206546%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CardSequenceNumber%22%3A%2055%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CILAmount%22%3A%200%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22AuthorizedAmount%22%3A%20890%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22SalesReferenceNumber%22%3A%2053183943%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22TransactionDTM%22%3A%20%222018-01-04T09%3A00%3A43.106%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22TransactionReferenceNumber%22%3A%201271099697%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CardBlockState%22%3A%20false%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22AutoloadAmount%22%3A%200%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D&gateway_response[success]=true&gateway_response[meta_data][applicationInstanceId]=101166&gateway_response[meta_data][operatorId]=an_operator
|
9
9
|
headers:
|
10
10
|
Content-Length:
|
11
11
|
- '0'
|
12
|
+
X-API-KEY:
|
13
|
+
- <QT_KEY>
|
12
14
|
response:
|
13
15
|
status:
|
14
16
|
code: 200
|
@@ -5,10 +5,12 @@ http_interactions:
|
|
5
5
|
uri: http://test.qt.sealink.com.au:8080/api/checkouts.json
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
|
-
string: booking_id=7&payment[gateway_response]=%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%22CardNumber%22%3A%203085227007682330%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22CardBalance%22%3A%206546%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22CardSequenceNumber%22%3A%2055%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22CILAmount%22%3A%200%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22AuthorizedAmount%22%3A%20890%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22SalesReferenceNumber%22%3A%2053183943%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22TransactionDTM%22%3A%20%222018-01-04T09%3A00%3A43.106%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22TransactionReferenceNumber%22%3A%201271099697%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22CardBlockState%22%3A%20false%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22AutoloadAmount%22%3A%200%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D&payment[payment_type_id]=10&payment[amount_in_cents]=10&payment[uid]=opal-uid&payment[comment]=Test%20Opal%20Payment&payment[meta_data][applicationInstanceId]=101166&payment[meta_data][operatorId]=an_operator
|
8
|
+
string: booking_id=7&payment[gateway_response]=%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%22CardNumber%22%3A%203085227007682330%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22CardBalance%22%3A%206546%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22CardSequenceNumber%22%3A%2055%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22CILAmount%22%3A%200%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22AuthorizedAmount%22%3A%20890%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22SalesReferenceNumber%22%3A%2053183943%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22TransactionDTM%22%3A%20%222018-01-04T09%3A00%3A43.106%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22TransactionReferenceNumber%22%3A%201271099697%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22CardBlockState%22%3A%20false%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22AutoloadAmount%22%3A%200%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D&payment[payment_type_id]=10&payment[amount_in_cents]=10&payment[uid]=opal-uid&payment[comment]=Test%20Opal%20Payment&payment[meta_data][applicationInstanceId]=101166&payment[meta_data][operatorId]=an_operator
|
9
9
|
headers:
|
10
10
|
Content-Length:
|
11
11
|
- '0'
|
12
|
+
X-API-KEY:
|
13
|
+
- <QT_KEY>
|
12
14
|
response:
|
13
15
|
status:
|
14
16
|
code: 200
|
@@ -5,10 +5,12 @@ http_interactions:
|
|
5
5
|
uri: http://test.qt.sealink.com.au:8080/api/bookings.json
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
|
-
string:
|
8
|
+
string: ''
|
9
9
|
headers:
|
10
10
|
Content-Length:
|
11
11
|
- '0'
|
12
|
+
X-API-KEY:
|
13
|
+
- <QT_KEY>
|
12
14
|
response:
|
13
15
|
status:
|
14
16
|
code: 200
|
@@ -0,0 +1,83 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: http://test.qt.sealink.com.au:8080/api/packages/464.json
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
Content-Length:
|
11
|
+
- '0'
|
12
|
+
X-Api-Key:
|
13
|
+
- <QT_KEY>
|
14
|
+
response:
|
15
|
+
status:
|
16
|
+
code: 200
|
17
|
+
message: OK
|
18
|
+
headers:
|
19
|
+
Date:
|
20
|
+
- Thu, 20 Feb 2020 01:00:56 GMT
|
21
|
+
Content-Type:
|
22
|
+
- application/json; charset=utf-8
|
23
|
+
Transfer-Encoding:
|
24
|
+
- chunked
|
25
|
+
Connection:
|
26
|
+
- keep-alive
|
27
|
+
Set-Cookie:
|
28
|
+
- __cfduid=d4476d9cd867237ab1e7ddfe8cab9bb7f1582160456; expires=Sat, 21-Mar-20
|
29
|
+
01:00:56 GMT; path=/; domain=.quicktravel.com.au; HttpOnly; SameSite=Lax
|
30
|
+
- _session_id=HNhfu80YF9UuLdm9%2Fvd4OrAKDAwGgM7yyyxm5Hre5J6SCh1rK7pOCUrasl0eqcCxjItMZCX6GWErtUMjSUS%2BfLOfX8kg%2BEoaKm1O41EPp0aohkzYQ78%3D--ylH6XcOdnh0BcLnE--SKcJAqb%2B%2BAdJmnzJZ0i1%2Bg%3D%3D;
|
31
|
+
path=/; HttpOnly
|
32
|
+
Cache-Control:
|
33
|
+
- max-age=0, private, must-revalidate
|
34
|
+
Etag:
|
35
|
+
- W/"da1758ef2426563776eaed931d5175b9"
|
36
|
+
P3p:
|
37
|
+
- CP="IDC DSP CAO COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"
|
38
|
+
Strict-Transport-Security:
|
39
|
+
- max-age=631138519
|
40
|
+
Vary:
|
41
|
+
- Origin
|
42
|
+
X-Content-Type-Options:
|
43
|
+
- nosniff
|
44
|
+
X-Download-Options:
|
45
|
+
- noopen
|
46
|
+
X-Frame-Options:
|
47
|
+
- sameorigin
|
48
|
+
X-Rack-Cache:
|
49
|
+
- miss
|
50
|
+
X-Request-Id:
|
51
|
+
- 03c5ebc4-eb1d-4647-9d59-4f33e7417a76
|
52
|
+
X-Runtime:
|
53
|
+
- '0.141355'
|
54
|
+
X-Xss-Protection:
|
55
|
+
- 1; mode=block
|
56
|
+
Cf-Cache-Status:
|
57
|
+
- DYNAMIC
|
58
|
+
Expect-Ct:
|
59
|
+
- max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
|
60
|
+
Server:
|
61
|
+
- cloudflare
|
62
|
+
Cf-Ray:
|
63
|
+
- 567c8be46bd9f2e9-ADL
|
64
|
+
body:
|
65
|
+
encoding: UTF-8
|
66
|
+
string: '{"name":"Swan Valley Gourmet Wine Cruise (SVGWC-0945)","id":464,"type":"Package","product_type_id":11,"resource_groups":[{"title":"Perth
|
67
|
+
to Sandalford ","id":664,"pick":1,"minimum_required":false,"maximum_restriction":false,"minimum":null,"maximum":null,"product_type_id":21,"package_options":[],"type":"ResourceGroup","package_items":[{"id":2058,"default_selection":false,"type":"PackageItem","resource":{"id":486,"name":"Perth
|
68
|
+
to Mandoon/Sandalford","type":"Ship","package_item_id":2058,"product_type_id":21,"from_route_stop_id":351,"to_route_stop_id":353}}]},{"title":"Tour
|
69
|
+
Description \u0026 Vendor Items","id":665,"pick":1,"minimum_required":false,"maximum_restriction":false,"minimum":null,"maximum":null,"product_type_id":11,"package_options":[],"type":"ResourceGroup","package_items":[{"id":1828,"default_selection":false,"type":"PackageItem","resource":{"name":"Swan
|
70
|
+
Valley Gourmet Wine Cruise - Vendor Items \u0026 Tour Description","id":465,"type":"Package","product_type_id":11,"resource_groups":[{"title":"Tour
|
71
|
+
Description \u0026 Vendor Items","id":667,"pick":1,"minimum_required":false,"maximum_restriction":false,"minimum":null,"maximum":null,"product_type_id":20,"package_options":[],"type":"ResourceGroup","package_items":[{"id":1830,"default_selection":false,"type":"PackageItem","resource":{"id":397,"name":"SVGWC-0945
|
72
|
+
- Swan Valley Gourmet Wine Cruise","type":"GenericResource","package_item_id":1830,"product_type_id":20,"from_route_stop_id":null,"to_route_stop_id":null}},{"id":1831,"default_selection":false,"type":"PackageItem","resource":{"id":329,"name":"BELLS:
|
73
|
+
Morning Tea Package","type":"GenericResource","package_item_id":1831,"product_type_id":20,"from_route_stop_id":null,"to_route_stop_id":null}},{"id":1832,"default_selection":false,"type":"PackageItem","resource":{"id":330,"name":"BELLS:
|
74
|
+
Afternoon Tea Package","type":"GenericResource","package_item_id":1832,"product_type_id":20,"from_route_stop_id":null,"to_route_stop_id":null}},{"id":1833,"default_selection":false,"type":"PackageItem","resource":{"id":335,"name":"SANDALFORD
|
75
|
+
ESTATE: 2 Course Lunch \u0026 Wine Tasting","type":"GenericResource","package_item_id":1833,"product_type_id":20,"from_route_stop_id":null,"to_route_stop_id":null}}]}],"default_options":[]}}]},{"title":"Sandalford
|
76
|
+
to Perth","id":666,"pick":1,"minimum_required":false,"maximum_restriction":false,"minimum":null,"maximum":null,"product_type_id":21,"package_options":[],"type":"ResourceGroup","package_items":[{"id":2059,"default_selection":false,"type":"PackageItem","resource":{"id":487,"name":"Sandalford/Mandoon
|
77
|
+
to Perth","type":"Ship","package_item_id":2059,"product_type_id":21,"from_route_stop_id":354,"to_route_stop_id":356}}]},{"title":"Optional
|
78
|
+
Extra","id":713,"pick":0,"minimum_required":false,"maximum_restriction":false,"minimum":null,"maximum":null,"product_type_id":22,"package_options":[],"type":"ResourceGroup","package_items":[{"id":2087,"default_selection":false,"type":"PackageItem","resource":{"id":502,"name":"Premium
|
79
|
+
Beverage Upgrade (18+)","type":"Item","package_item_id":2087,"product_type_id":22,"from_route_stop_id":null,"to_route_stop_id":null}},{"id":2088,"default_selection":false,"type":"PackageItem","resource":{"id":503,"name":"Last
|
80
|
+
Minute Premium Beverage Upgrade (18+) ","type":"Item","package_item_id":2088,"product_type_id":22,"from_route_stop_id":null,"to_route_stop_id":null}}]}],"default_options":[]}'
|
81
|
+
http_version:
|
82
|
+
recorded_at: Thu, 20 Feb 2020 01:00:56 GMT
|
83
|
+
recorded_with: VCR 2.9.3
|
@@ -0,0 +1,80 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: http://test.qt.sealink.com.au:8080/api/product_types.json
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
Content-Length:
|
11
|
+
- '0'
|
12
|
+
X-Api-Key:
|
13
|
+
- <QT_KEY>
|
14
|
+
response:
|
15
|
+
status:
|
16
|
+
code: 200
|
17
|
+
message: OK
|
18
|
+
headers:
|
19
|
+
Date:
|
20
|
+
- Thu, 20 Feb 2020 01:01:30 GMT
|
21
|
+
Content-Type:
|
22
|
+
- application/json; charset=utf-8
|
23
|
+
Transfer-Encoding:
|
24
|
+
- chunked
|
25
|
+
Connection:
|
26
|
+
- keep-alive
|
27
|
+
Set-Cookie:
|
28
|
+
- __cfduid=df7c89a7945a63958553e70497ede639a1582160490; expires=Sat, 21-Mar-20
|
29
|
+
01:01:30 GMT; path=/; domain=.quicktravel.com.au; HttpOnly; SameSite=Lax
|
30
|
+
- _session_id=ohFEAurOFA0k3Dkfurpzg7yWDoevpE1we3n1pGout1j%2BCbEjjT9xDpMiVvY8FKGzDX8YDbEV2KYzlGqKmub84stiPt9YtKFD3o69iDPkSfqNbw9Xsng%3D--DBpWmmvc92dX5tYa--yXGiS4InGDOsWVI5ll1G7Q%3D%3D;
|
31
|
+
path=/; HttpOnly
|
32
|
+
Cache-Control:
|
33
|
+
- max-age=0, private, must-revalidate
|
34
|
+
Etag:
|
35
|
+
- W/"9e86e28ddbc8b9438ee44e55c192b7eb"
|
36
|
+
P3p:
|
37
|
+
- CP="IDC DSP CAO COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"
|
38
|
+
Strict-Transport-Security:
|
39
|
+
- max-age=631138519
|
40
|
+
Vary:
|
41
|
+
- Origin
|
42
|
+
X-Content-Type-Options:
|
43
|
+
- nosniff
|
44
|
+
X-Download-Options:
|
45
|
+
- noopen
|
46
|
+
X-Frame-Options:
|
47
|
+
- sameorigin
|
48
|
+
X-Rack-Cache:
|
49
|
+
- miss
|
50
|
+
X-Request-Id:
|
51
|
+
- 95f9f85d-fe5d-4d5f-b52b-6a63c2613249
|
52
|
+
X-Runtime:
|
53
|
+
- '0.057441'
|
54
|
+
X-Xss-Protection:
|
55
|
+
- 1; mode=block
|
56
|
+
Cf-Cache-Status:
|
57
|
+
- DYNAMIC
|
58
|
+
Expect-Ct:
|
59
|
+
- max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
|
60
|
+
Server:
|
61
|
+
- cloudflare
|
62
|
+
Cf-Ray:
|
63
|
+
- 567c8cbae911f2e9-ADL
|
64
|
+
body:
|
65
|
+
encoding: UTF-8
|
66
|
+
string: '[{"id":6,"name":"Ferry","resource_class_name":"Ship","disclaimer_id":1,"durational":false,"can_find_by_location":false,"measure_units_by_pax_count":true,"multi_leg":true,"prompt_for_pick_up_drop_off":false,"book_before_level":90,"book_before_units":"minutes","maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2017-07-31T13:58:21.000+08:00","updated_at":"2019-10-14T08:37:06.000+08:00","code":"","needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":9,"name":"Miscellaneous
|
67
|
+
Item","resource_class_name":"Item","disclaimer_id":null,"durational":false,"can_find_by_location":false,"measure_units_by_pax_count":false,"multi_leg":false,"prompt_for_pick_up_drop_off":false,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2017-08-28T13:38:17.000+08:00","updated_at":"2017-08-28T13:38:17.000+08:00","code":"","needs_services":false,"can_have_quantity":true,"can_have_dates":false,"needs_passengers":false},{"id":10,"name":"Gift
|
68
|
+
Vouchers/Donations","resource_class_name":"GenericResource","disclaimer_id":2,"durational":false,"can_find_by_location":false,"measure_units_by_pax_count":false,"multi_leg":false,"prompt_for_pick_up_drop_off":false,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2017-09-27T08:47:40.000+08:00","updated_at":"2017-12-07T12:12:53.000+08:00","code":"GIFT","needs_services":false,"can_have_quantity":false,"can_have_dates":false,"needs_passengers":false},{"id":11,"name":"Rottnest
|
69
|
+
Packages","resource_class_name":"Package","disclaimer_id":2,"durational":false,"can_find_by_location":false,"measure_units_by_pax_count":true,"multi_leg":false,"prompt_for_pick_up_drop_off":true,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":["pick_up_information","drop_off_information","vendor_pnr","notes_for_vendor","vendor_staff","note_for_inventory_type_change"],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2017-12-11T09:02:10.000+08:00","updated_at":"2018-08-17T08:38:42.000+08:00","code":"","needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":12,"name":"OLD
|
70
|
+
Rottnest Island Bike Hire","resource_class_name":"GenericResource","disclaimer_id":2,"durational":false,"can_find_by_location":false,"measure_units_by_pax_count":true,"multi_leg":false,"prompt_for_pick_up_drop_off":true,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":["pick_up_information","drop_off_information","vendor_pnr","notes_for_vendor","vendor_staff"],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2017-12-21T11:02:46.000+08:00","updated_at":"2018-10-29T11:33:29.000+08:00","code":"","needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":13,"name":"Rottnest
|
71
|
+
Island Tours","resource_class_name":"GenericResource","disclaimer_id":2,"durational":false,"can_find_by_location":false,"measure_units_by_pax_count":true,"multi_leg":false,"prompt_for_pick_up_drop_off":true,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":["pick_up_information","drop_off_information","vendor_pnr","notes_for_vendor","vendor_staff"],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2018-07-10T06:53:42.000+08:00","updated_at":"2018-07-10T06:53:42.000+08:00","code":"","needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":15,"name":"Rottnest
|
72
|
+
Island Bike Hire","resource_class_name":"Item","disclaimer_id":2,"durational":true,"can_find_by_location":false,"measure_units_by_pax_count":false,"multi_leg":false,"prompt_for_pick_up_drop_off":false,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":["vendor_pnr","notes_for_vendor","vendor_staff"],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2018-10-29T11:35:34.000+08:00","updated_at":"2020-02-06T06:29:50.000+08:00","code":"","needs_services":true,"can_have_quantity":true,"can_have_dates":true,"needs_passengers":false},{"id":16,"name":"Accommodation","resource_class_name":"Accommodation","disclaimer_id":2,"durational":true,"can_find_by_location":true,"measure_units_by_pax_count":false,"multi_leg":false,"prompt_for_pick_up_drop_off":false,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":["vendor_pnr","notes_for_vendor","vendor_staff","note_for_inventory_type_change"],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2018-12-28T05:53:59.000+08:00","updated_at":"2019-03-14T05:08:22.000+08:00","code":"","needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":17,"name":"Coach
|
73
|
+
Transfers","resource_class_name":"ScheduledTripResource","disclaimer_id":2,"durational":false,"can_find_by_location":false,"measure_units_by_pax_count":true,"multi_leg":true,"prompt_for_pick_up_drop_off":false,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":["pick_up_information","drop_off_information","vendor_pnr","notes_for_vendor","vendor_staff","note_for_inventory_type_change"],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2019-03-19T10:45:01.000+08:00","updated_at":"2019-03-19T10:45:01.000+08:00","code":"","needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":18,"name":"Flights","resource_class_name":"ScheduledTripResource","disclaimer_id":2,"durational":false,"can_find_by_location":false,"measure_units_by_pax_count":true,"multi_leg":false,"prompt_for_pick_up_drop_off":false,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":["trip_name","departure_time","pick_up_information","drop_off_information","vendor_pnr","notes_for_vendor","vendor_staff","note_for_inventory_type_change"],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2019-09-23T14:17:51.000+08:00","updated_at":"2019-09-24T07:37:17.000+08:00","code":"","needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":19,"name":"Extra
|
74
|
+
Picks","resource_class_name":"ExtraPick","disclaimer_id":null,"durational":true,"can_find_by_location":false,"measure_units_by_pax_count":false,"multi_leg":false,"prompt_for_pick_up_drop_off":false,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":["vendor_pnr","notes_for_vendor","vendor_staff","note_for_inventory_type_change"],"only_bookable_with_accommodation":true,"footer_itinerary_item":false,"created_at":"2019-09-30T08:07:18.000+08:00","updated_at":"2019-09-30T08:07:18.000+08:00","code":"","needs_services":true,"can_have_quantity":true,"can_have_dates":true,"needs_passengers":false},{"id":20,"name":"Captain
|
75
|
+
Cook Cruises - Tour \u0026 Vendor Resources","resource_class_name":"GenericResource","disclaimer_id":1,"durational":false,"can_find_by_location":false,"measure_units_by_pax_count":true,"multi_leg":false,"prompt_for_pick_up_drop_off":false,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":["reservation_group_id","vendor_pnr","notes_for_vendor"],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2019-11-28T09:10:55.000+08:00","updated_at":"2020-02-06T06:07:31.000+08:00","code":"","needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":21,"name":"Captain
|
76
|
+
Cook Cruises - Ferry","resource_class_name":"Ship","disclaimer_id":1,"durational":false,"can_find_by_location":false,"measure_units_by_pax_count":true,"multi_leg":true,"prompt_for_pick_up_drop_off":false,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2020-02-03T05:24:36.000+08:00","updated_at":"2020-02-03T05:24:36.000+08:00","code":"","needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":22,"name":"Captain
|
77
|
+
Cook Cruises - Optional Upgrades","resource_class_name":"Item","disclaimer_id":1,"durational":false,"can_find_by_location":false,"measure_units_by_pax_count":false,"multi_leg":false,"prompt_for_pick_up_drop_off":false,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2020-02-06T06:08:10.000+08:00","updated_at":"2020-02-06T06:08:10.000+08:00","code":"","needs_services":true,"can_have_quantity":true,"can_have_dates":true,"needs_passengers":false}]'
|
78
|
+
http_version:
|
79
|
+
recorded_at: Thu, 20 Feb 2020 01:01:30 GMT
|
80
|
+
recorded_with: VCR 2.9.3
|