listo-delivery 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +21 -0
  3. data/README.md +152 -0
  4. data/lib/listo_delivery/client.rb +170 -0
  5. data/lib/listo_delivery/errors.rb +53 -0
  6. data/lib/listo_delivery/generated/api_version.rb +12 -0
  7. data/lib/listo_delivery/generated/client_operations.rb +82 -0
  8. data/lib/listo_delivery/generated/loader.rb +69 -0
  9. data/lib/listo_delivery/generated/models/balance.rb +48 -0
  10. data/lib/listo_delivery/generated/models/cancel_delivery_request.rb +29 -0
  11. data/lib/listo_delivery/generated/models/card_onboarding_link.rb +21 -0
  12. data/lib/listo_delivery/generated/models/card_status.rb +22 -0
  13. data/lib/listo_delivery/generated/models/connect_request.rb +28 -0
  14. data/lib/listo_delivery/generated/models/courier_ping.rb +58 -0
  15. data/lib/listo_delivery/generated/models/create_connect_request_request.rb +35 -0
  16. data/lib/listo_delivery/generated/models/create_connection_request.rb +21 -0
  17. data/lib/listo_delivery/generated/models/create_delivery_request.rb +189 -0
  18. data/lib/listo_delivery/generated/models/create_quote_request.rb +111 -0
  19. data/lib/listo_delivery/generated/models/create_store_owner_request.rb +26 -0
  20. data/lib/listo_delivery/generated/models/create_store_request.rb +104 -0
  21. data/lib/listo_delivery/generated/models/create_withdrawal_request.rb +29 -0
  22. data/lib/listo_delivery/generated/models/delivery.rb +879 -0
  23. data/lib/listo_delivery/generated/models/delivery_courier_location_event.rb +23 -0
  24. data/lib/listo_delivery/generated/models/delivery_list.rb +34 -0
  25. data/lib/listo_delivery/generated/models/delivery_message_skipped.rb +37 -0
  26. data/lib/listo_delivery/generated/models/delivery_message_skipped_event.rb +23 -0
  27. data/lib/listo_delivery/generated/models/delivery_status_changed_event.rb +23 -0
  28. data/lib/listo_delivery/generated/models/delivery_updated_event.rb +23 -0
  29. data/lib/listo_delivery/generated/models/error.rb +56 -0
  30. data/lib/listo_delivery/generated/models/error_response.rb +20 -0
  31. data/lib/listo_delivery/generated/models/event_list.rb +34 -0
  32. data/lib/listo_delivery/generated/models/ledger_entry.rb +62 -0
  33. data/lib/listo_delivery/generated/models/ledger_entry_list.rb +34 -0
  34. data/lib/listo_delivery/generated/models/manifest.rb +20 -0
  35. data/lib/listo_delivery/generated/models/manifest_item.rb +36 -0
  36. data/lib/listo_delivery/generated/models/owner_invitation.rb +27 -0
  37. data/lib/listo_delivery/generated/models/ping.rb +56 -0
  38. data/lib/listo_delivery/generated/models/quote.rb +99 -0
  39. data/lib/listo_delivery/generated/models/refund_delivery_request.rb +28 -0
  40. data/lib/listo_delivery/generated/models/request_log.rb +91 -0
  41. data/lib/listo_delivery/generated/models/request_log_detail.rb +105 -0
  42. data/lib/listo_delivery/generated/models/request_log_list.rb +34 -0
  43. data/lib/listo_delivery/generated/models/reschedule_delivery_request.rb +41 -0
  44. data/lib/listo_delivery/generated/models/same_day_terms.rb +106 -0
  45. data/lib/listo_delivery/generated/models/send_test_webhook_request.rb +22 -0
  46. data/lib/listo_delivery/generated/models/store.rb +235 -0
  47. data/lib/listo_delivery/generated/models/store_balance.rb +48 -0
  48. data/lib/listo_delivery/generated/models/store_connected_event.rb +23 -0
  49. data/lib/listo_delivery/generated/models/store_list.rb +34 -0
  50. data/lib/listo_delivery/generated/models/store_updated_event.rb +23 -0
  51. data/lib/listo_delivery/generated/models/update_store_request.rb +94 -0
  52. data/lib/listo_delivery/generated/models/webhook_delivery.rb +99 -0
  53. data/lib/listo_delivery/generated/models/webhook_delivery_list.rb +34 -0
  54. data/lib/listo_delivery/generated/models/webhook_event.rb +69 -0
  55. data/lib/listo_delivery/generated/models/webhook_event_envelope.rb +35 -0
  56. data/lib/listo_delivery/generated/models/withdrawal.rb +91 -0
  57. data/lib/listo_delivery/generated/models/withdrawal_list.rb +34 -0
  58. data/lib/listo_delivery/generated/models/withdrawal_updated_event.rb +23 -0
  59. data/lib/listo_delivery/generated/resources/balance.rb +43 -0
  60. data/lib/listo_delivery/generated/resources/card_onboarding.rb +70 -0
  61. data/lib/listo_delivery/generated/resources/connect_requests.rb +31 -0
  62. data/lib/listo_delivery/generated/resources/connections.rb +31 -0
  63. data/lib/listo_delivery/generated/resources/deliveries.rb +128 -0
  64. data/lib/listo_delivery/generated/resources/events.rb +59 -0
  65. data/lib/listo_delivery/generated/resources/ledger.rb +47 -0
  66. data/lib/listo_delivery/generated/resources/quotes.rb +31 -0
  67. data/lib/listo_delivery/generated/resources/request_logs.rb +45 -0
  68. data/lib/listo_delivery/generated/resources/stores.rb +143 -0
  69. data/lib/listo_delivery/generated/resources/webhooks.rb +46 -0
  70. data/lib/listo_delivery/generated/resources/withdrawals.rb +60 -0
  71. data/lib/listo_delivery/model.rb +69 -0
  72. data/lib/listo_delivery/util.rb +76 -0
  73. data/lib/listo_delivery/version.rb +7 -0
  74. data/lib/listo_delivery/webhooks.rb +98 -0
  75. data/lib/listo_delivery.rb +16 -0
  76. data/listo_delivery.gemspec +27 -0
  77. metadata +120 -0
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ class DeliveryCourierLocationEvent < WebhookEvent
9
+ TYPES = {
10
+ "id" => nil,
11
+ "created_at" => nil,
12
+ "test" => nil,
13
+ "type" => nil,
14
+ "data" => ["model", "CourierPing"]
15
+ }.freeze
16
+
17
+ # @return [Models::CourierPing]
18
+ def data
19
+ read("data")
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,34 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ # One page of deliveries, newest first.
9
+ class DeliveryList < Model
10
+ TYPES = {
11
+ "data" => ["array", ["model", "Delivery"]],
12
+ "has_more" => nil,
13
+ "cursor" => nil
14
+ }.freeze
15
+
16
+ # @return [Array<Models::Delivery>]
17
+ def data
18
+ read("data")
19
+ end
20
+
21
+ # True when a further page exists.
22
+ # @return [Boolean]
23
+ def has_more
24
+ read("has_more")
25
+ end
26
+
27
+ # Pass as `cursor` to read the next page.
28
+ # @return [String, nil]
29
+ def cursor
30
+ read("cursor")
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ # The body of a `delivery.message_skipped` event.
9
+ class DeliveryMessageSkipped < Model
10
+ TYPES = {
11
+ "delivery_id" => nil,
12
+ "moment" => nil,
13
+ "reason" => nil
14
+ }.freeze
15
+
16
+ # The `dlv_` id of the delivery whose message was not sent.
17
+ # @return [String]
18
+ def delivery_id
19
+ read("delivery_id")
20
+ end
21
+
22
+ # Which message was skipped.
23
+ # One of: "courier_assigned", "en_route", "arriving", "delivered", "not_delivered", "pickup_time_changed", "location_request", "payment_request", "dropoff_code".
24
+ # @return [String]
25
+ def moment
26
+ read("moment")
27
+ end
28
+
29
+ # Why it was skipped.
30
+ # One of: "not_a_team_phone", "daily_test_limit".
31
+ # @return [String]
32
+ def reason
33
+ read("reason")
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ class DeliveryMessageSkippedEvent < WebhookEvent
9
+ TYPES = {
10
+ "id" => nil,
11
+ "created_at" => nil,
12
+ "test" => nil,
13
+ "type" => nil,
14
+ "data" => ["model", "DeliveryMessageSkipped"]
15
+ }.freeze
16
+
17
+ # @return [Models::DeliveryMessageSkipped]
18
+ def data
19
+ read("data")
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ class DeliveryStatusChangedEvent < WebhookEvent
9
+ TYPES = {
10
+ "id" => nil,
11
+ "created_at" => nil,
12
+ "test" => nil,
13
+ "type" => nil,
14
+ "data" => ["model", "Delivery"]
15
+ }.freeze
16
+
17
+ # @return [Models::Delivery]
18
+ def data
19
+ read("data")
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ class DeliveryUpdatedEvent < WebhookEvent
9
+ TYPES = {
10
+ "id" => nil,
11
+ "created_at" => nil,
12
+ "test" => nil,
13
+ "type" => nil,
14
+ "data" => ["model", "Delivery"]
15
+ }.freeze
16
+
17
+ # @return [Models::Delivery]
18
+ def data
19
+ read("data")
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,56 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ # What every refusal and every failure looks like.
9
+ class Error < Model
10
+ TYPES = {
11
+ "code" => nil,
12
+ "message" => nil,
13
+ "param" => nil,
14
+ "retryable" => nil,
15
+ "doc_url" => nil,
16
+ "request_id" => nil
17
+ }.freeze
18
+
19
+ # A stable, machine-readable name for what went wrong, such as `validation_failed`, `not_found` or `insufficient_balance`.
20
+ # @return [String]
21
+ def code
22
+ read("code")
23
+ end
24
+
25
+ # A sentence for the person debugging.
26
+ # @return [String]
27
+ def message
28
+ read("message")
29
+ end
30
+
31
+ # The request field the refusal is about, when one applies, spelled as you sent it (`dropoff.street`, `manifest.items`).
32
+ # @return [String, nil]
33
+ def param
34
+ read("param")
35
+ end
36
+
37
+ # Whether sending the identical request again could succeed.
38
+ # @return [Boolean]
39
+ def retryable
40
+ read("retryable")
41
+ end
42
+
43
+ # The documentation page for this `code`.
44
+ # @return [String]
45
+ def doc_url
46
+ read("doc_url")
47
+ end
48
+
49
+ # Our id for this request, the same value as the `X-Request-Id` response header.
50
+ # @return [String]
51
+ def request_id
52
+ read("request_id")
53
+ end
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ # The body of every 4xx and 5xx answer on this API.
9
+ class ErrorResponse < Model
10
+ TYPES = {
11
+ "error" => ["model", "Error"]
12
+ }.freeze
13
+
14
+ # @return [Models::Error]
15
+ def error
16
+ read("error")
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,34 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ # One page of events, newest first.
9
+ class EventList < Model
10
+ TYPES = {
11
+ "data" => ["array", ["model", "WebhookEvent"]],
12
+ "has_more" => nil,
13
+ "cursor" => nil
14
+ }.freeze
15
+
16
+ # @return [Array<Models::WebhookEvent>]
17
+ def data
18
+ read("data")
19
+ end
20
+
21
+ # True when a further page exists.
22
+ # @return [Boolean]
23
+ def has_more
24
+ read("has_more")
25
+ end
26
+
27
+ # Pass as `cursor` to read the next page.
28
+ # @return [String, nil]
29
+ def cursor
30
+ read("cursor")
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,62 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ # One movement on a balance.
9
+ class LedgerEntry < Model
10
+ TYPES = {
11
+ "id" => nil,
12
+ "type" => nil,
13
+ "amount_cents" => nil,
14
+ "delivery_id" => nil,
15
+ "store_id" => nil,
16
+ "test" => nil,
17
+ "occurred_at" => nil
18
+ }.freeze
19
+
20
+ # The entry id, `le_` prefixed.
21
+ # @return [String]
22
+ def id
23
+ read("id")
24
+ end
25
+
26
+ # Where the movement came from, such as `provider_charge`, `provider_charge_reversal`, `plan_charge` or `requote_adjustment`.
27
+ # @return [String]
28
+ def type
29
+ read("type")
30
+ end
31
+
32
+ # Signed centavos.
33
+ # @return [Integer]
34
+ def amount_cents
35
+ read("amount_cents")
36
+ end
37
+
38
+ # The `dlv_` id the movement stems from.
39
+ # @return [String, nil]
40
+ def delivery_id
41
+ read("delivery_id")
42
+ end
43
+
44
+ # The `st_` id of the store the movement belongs to.
45
+ # @return [String, nil]
46
+ def store_id
47
+ read("store_id")
48
+ end
49
+
50
+ # @return [Boolean]
51
+ def test
52
+ read("test")
53
+ end
54
+
55
+ # When the money moved.
56
+ # @return [String]
57
+ def occurred_at
58
+ read("occurred_at")
59
+ end
60
+ end
61
+ end
62
+ end
@@ -0,0 +1,34 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ # One page of ledger entries, newest first.
9
+ class LedgerEntryList < Model
10
+ TYPES = {
11
+ "data" => ["array", ["model", "LedgerEntry"]],
12
+ "has_more" => nil,
13
+ "cursor" => nil
14
+ }.freeze
15
+
16
+ # @return [Array<Models::LedgerEntry>]
17
+ def data
18
+ read("data")
19
+ end
20
+
21
+ # True when a further page exists.
22
+ # @return [Boolean]
23
+ def has_more
24
+ read("has_more")
25
+ end
26
+
27
+ # Pass as `cursor` to read the next page.
28
+ # @return [String, nil]
29
+ def cursor
30
+ read("cursor")
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ # The descriptive item list for the courier.
9
+ class Manifest < Model
10
+ TYPES = {
11
+ "items" => ["array", ["model", "ManifestItem"]]
12
+ }.freeze
13
+
14
+ # @return [Array<Models::ManifestItem>, nil]
15
+ def items
16
+ read("items")
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ # One line of the descriptive item list sent to the courier.
9
+ class ManifestItem < Model
10
+ TYPES = {
11
+ "name" => nil,
12
+ "quantity" => nil,
13
+ "size" => nil
14
+ }.freeze
15
+
16
+ # What the item is.
17
+ # @return [String]
18
+ def name
19
+ read("name")
20
+ end
21
+
22
+ # How many of it.
23
+ # @return [Integer]
24
+ def quantity
25
+ read("quantity")
26
+ end
27
+
28
+ # How big the item is.
29
+ # One of: "small", "medium", "large", "xlarge", nil.
30
+ # @return [String, nil]
31
+ def size
32
+ read("size")
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ # The invitation sent to a store's owner.
9
+ class OwnerInvitation < Model
10
+ TYPES = {
11
+ "email" => nil,
12
+ "invited_at" => nil
13
+ }.freeze
14
+
15
+ # The address the invitation went to.
16
+ # @return [String]
17
+ def email
18
+ read("email")
19
+ end
20
+
21
+ # @return [String]
22
+ def invited_at
23
+ read("invited_at")
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,56 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ # Proof that your key works, and which world it acts in.
9
+ class Ping < Model
10
+ TYPES = {
11
+ "partner" => ["model", "Ping::Partner"],
12
+ "mode" => nil,
13
+ "test" => nil
14
+ }.freeze
15
+
16
+ # The company the key belongs to.
17
+ # @return [Models::Ping::Partner]
18
+ def partner
19
+ read("partner")
20
+ end
21
+
22
+ # The world the key acts in.
23
+ # One of: "live", "test".
24
+ # @return [String]
25
+ def mode
26
+ read("mode")
27
+ end
28
+
29
+ # True when `mode` is `test`.
30
+ # @return [Boolean]
31
+ def test
32
+ read("test")
33
+ end
34
+
35
+ # The company the key belongs to.
36
+ class Partner < Model
37
+ TYPES = {
38
+ "slug" => nil,
39
+ "name" => nil
40
+ }.freeze
41
+
42
+ # Your company's short handle.
43
+ # @return [String]
44
+ def slug
45
+ read("slug")
46
+ end
47
+
48
+ # Your company's name.
49
+ # @return [String]
50
+ def name
51
+ read("name")
52
+ end
53
+ end
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,99 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ # A delivery priced and held for a short while.
9
+ class Quote < Model
10
+ TYPES = {
11
+ "id" => nil,
12
+ "fee_cents" => nil,
13
+ "business_fee_cents" => nil,
14
+ "customer_fee_cents" => nil,
15
+ "cash_to_collect_cents" => nil,
16
+ "currency" => nil,
17
+ "pickup_duration_min" => nil,
18
+ "dropoff_eta_at" => nil,
19
+ "expires_at" => nil,
20
+ "test" => nil,
21
+ "created_at" => nil,
22
+ "vehicle" => nil
23
+ }.freeze
24
+
25
+ # The quote id, `qt_` prefixed.
26
+ # @return [String]
27
+ def id
28
+ read("id")
29
+ end
30
+
31
+ # The total delivery fee, in centavos, and the number a booking against this quote is held to.
32
+ # @return [Integer]
33
+ def fee_cents
34
+ read("fee_cents")
35
+ end
36
+
37
+ # The part of the fee the store pays.
38
+ # @return [Integer]
39
+ def business_fee_cents
40
+ read("business_fee_cents")
41
+ end
42
+
43
+ # The part of the fee the customer pays.
44
+ # @return [Integer]
45
+ def customer_fee_cents
46
+ read("customer_fee_cents")
47
+ end
48
+
49
+ # What the courier collects at the door on a cash order: the order value plus the customer's share of the fee.
50
+ # @return [Integer, nil]
51
+ def cash_to_collect_cents
52
+ read("cash_to_collect_cents")
53
+ end
54
+
55
+ # Always `MXN`; money is integer centavos.
56
+ # One of: "MXN".
57
+ # @return [String]
58
+ def currency
59
+ read("currency")
60
+ end
61
+
62
+ # Minutes until a courier is expected at the store, when the quote came back with an estimate.
63
+ # @return [Integer, nil]
64
+ def pickup_duration_min
65
+ read("pickup_duration_min")
66
+ end
67
+
68
+ # When the order is expected at the door, when the quote came back with an estimate.
69
+ # @return [String, nil]
70
+ def dropoff_eta_at
71
+ read("dropoff_eta_at")
72
+ end
73
+
74
+ # The deadline for booking this price.
75
+ # @return [String]
76
+ def expires_at
77
+ read("expires_at")
78
+ end
79
+
80
+ # Whether the quote belongs to the sandbox world.
81
+ # @return [Boolean]
82
+ def test
83
+ read("test")
84
+ end
85
+
86
+ # @return [String]
87
+ def created_at
88
+ read("created_at")
89
+ end
90
+
91
+ # What this price was built for: `car` when you asked for one or an item was sized `xlarge`, `moto` otherwise.
92
+ # One of: "moto", "car".
93
+ # @return [String]
94
+ def vehicle
95
+ read("vehicle")
96
+ end
97
+ end
98
+ end
99
+ end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ # How much of the order to refund.
9
+ class RefundDeliveryRequest < Model
10
+ TYPES = {
11
+ "amount_cents" => nil,
12
+ "reason" => nil
13
+ }.freeze
14
+
15
+ # A smaller amount than the whole, in centavos.
16
+ # @return [Integer, nil]
17
+ def amount_cents
18
+ read("amount_cents")
19
+ end
20
+
21
+ # Why the refund is being made, up to 500 characters.
22
+ # @return [String, nil]
23
+ def reason
24
+ read("reason")
25
+ end
26
+ end
27
+ end
28
+ end