e-invoice-api 0.1.0.pre.alpha.5

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 (233) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +57 -0
  4. data/README.md +285 -0
  5. data/SECURITY.md +27 -0
  6. data/lib/e_invoice_api/client.rb +94 -0
  7. data/lib/e_invoice_api/errors.rb +192 -0
  8. data/lib/e_invoice_api/file_part.rb +55 -0
  9. data/lib/e_invoice_api/internal/documents_number_page.rb +96 -0
  10. data/lib/e_invoice_api/internal/transport/base_client.rb +555 -0
  11. data/lib/e_invoice_api/internal/transport/pooled_net_requester.rb +209 -0
  12. data/lib/e_invoice_api/internal/type/array_of.rb +162 -0
  13. data/lib/e_invoice_api/internal/type/base_model.rb +482 -0
  14. data/lib/e_invoice_api/internal/type/base_page.rb +55 -0
  15. data/lib/e_invoice_api/internal/type/boolean.rb +71 -0
  16. data/lib/e_invoice_api/internal/type/converter.rb +292 -0
  17. data/lib/e_invoice_api/internal/type/enum.rb +148 -0
  18. data/lib/e_invoice_api/internal/type/file_input.rb +103 -0
  19. data/lib/e_invoice_api/internal/type/hash_of.rb +182 -0
  20. data/lib/e_invoice_api/internal/type/request_parameters.rb +42 -0
  21. data/lib/e_invoice_api/internal/type/union.rb +236 -0
  22. data/lib/e_invoice_api/internal/type/unknown.rb +75 -0
  23. data/lib/e_invoice_api/internal/util.rb +914 -0
  24. data/lib/e_invoice_api/internal.rb +20 -0
  25. data/lib/e_invoice_api/models/certificate.rb +34 -0
  26. data/lib/e_invoice_api/models/currency_code.rb +28 -0
  27. data/lib/e_invoice_api/models/document_attachment_create.rb +33 -0
  28. data/lib/e_invoice_api/models/document_create.rb +521 -0
  29. data/lib/e_invoice_api/models/document_create_params.rb +14 -0
  30. data/lib/e_invoice_api/models/document_delete_params.rb +14 -0
  31. data/lib/e_invoice_api/models/document_delete_response.rb +16 -0
  32. data/lib/e_invoice_api/models/document_direction.rb +15 -0
  33. data/lib/e_invoice_api/models/document_response.rb +418 -0
  34. data/lib/e_invoice_api/models/document_retrieve_params.rb +14 -0
  35. data/lib/e_invoice_api/models/document_send_params.rb +44 -0
  36. data/lib/e_invoice_api/models/document_state.rb +18 -0
  37. data/lib/e_invoice_api/models/document_type.rb +15 -0
  38. data/lib/e_invoice_api/models/documents/attachment_add_params.rb +22 -0
  39. data/lib/e_invoice_api/models/documents/attachment_delete_params.rb +22 -0
  40. data/lib/e_invoice_api/models/documents/attachment_delete_response.rb +18 -0
  41. data/lib/e_invoice_api/models/documents/attachment_list_params.rb +16 -0
  42. data/lib/e_invoice_api/models/documents/attachment_list_response.rb +11 -0
  43. data/lib/e_invoice_api/models/documents/attachment_retrieve_params.rb +22 -0
  44. data/lib/e_invoice_api/models/documents/document_attachment.rb +44 -0
  45. data/lib/e_invoice_api/models/documents/ubl_get_params.rb +16 -0
  46. data/lib/e_invoice_api/models/documents/ubl_get_response.rb +72 -0
  47. data/lib/e_invoice_api/models/inbox_list_credit_notes_params.rb +30 -0
  48. data/lib/e_invoice_api/models/inbox_list_invoices_params.rb +30 -0
  49. data/lib/e_invoice_api/models/inbox_list_params.rb +78 -0
  50. data/lib/e_invoice_api/models/lookup_retrieve_params.rb +26 -0
  51. data/lib/e_invoice_api/models/lookup_retrieve_response.rb +491 -0
  52. data/lib/e_invoice_api/models/outbox_list_draft_documents_params.rb +30 -0
  53. data/lib/e_invoice_api/models/outbox_list_received_documents_params.rb +78 -0
  54. data/lib/e_invoice_api/models/paginated_document_response.rb +39 -0
  55. data/lib/e_invoice_api/models/payment_detail_create.rb +33 -0
  56. data/lib/e_invoice_api/models/ubl_document_validation.rb +97 -0
  57. data/lib/e_invoice_api/models/unit_of_measure_code.rb +104 -0
  58. data/lib/e_invoice_api/models/validate_validate_json_params.rb +14 -0
  59. data/lib/e_invoice_api/models/validate_validate_peppol_id_params.rb +26 -0
  60. data/lib/e_invoice_api/models/validate_validate_peppol_id_response.rb +80 -0
  61. data/lib/e_invoice_api/models/validate_validate_ubl_params.rb +20 -0
  62. data/lib/e_invoice_api/models/webhook_create_params.rb +32 -0
  63. data/lib/e_invoice_api/models/webhook_delete_params.rb +14 -0
  64. data/lib/e_invoice_api/models/webhook_delete_response.rb +18 -0
  65. data/lib/e_invoice_api/models/webhook_list_params.rb +14 -0
  66. data/lib/e_invoice_api/models/webhook_list_response.rb +8 -0
  67. data/lib/e_invoice_api/models/webhook_response.rb +42 -0
  68. data/lib/e_invoice_api/models/webhook_retrieve_params.rb +14 -0
  69. data/lib/e_invoice_api/models/webhook_update_params.rb +32 -0
  70. data/lib/e_invoice_api/models.rb +105 -0
  71. data/lib/e_invoice_api/request_options.rb +77 -0
  72. data/lib/e_invoice_api/resources/documents/attachments.rb +109 -0
  73. data/lib/e_invoice_api/resources/documents/ubl.rb +35 -0
  74. data/lib/e_invoice_api/resources/documents.rb +188 -0
  75. data/lib/e_invoice_api/resources/inbox.rb +101 -0
  76. data/lib/e_invoice_api/resources/lookup.rb +43 -0
  77. data/lib/e_invoice_api/resources/outbox.rb +76 -0
  78. data/lib/e_invoice_api/resources/validate.rb +168 -0
  79. data/lib/e_invoice_api/resources/webhooks.rb +117 -0
  80. data/lib/e_invoice_api/version.rb +5 -0
  81. data/lib/e_invoice_api.rb +107 -0
  82. data/manifest.yaml +15 -0
  83. data/rbi/e_invoice_api/client.rbi +64 -0
  84. data/rbi/e_invoice_api/errors.rbi +162 -0
  85. data/rbi/e_invoice_api/file_part.rbi +37 -0
  86. data/rbi/e_invoice_api/internal/documents_number_page.rbi +28 -0
  87. data/rbi/e_invoice_api/internal/transport/base_client.rbi +298 -0
  88. data/rbi/e_invoice_api/internal/transport/pooled_net_requester.rbi +80 -0
  89. data/rbi/e_invoice_api/internal/type/array_of.rbi +104 -0
  90. data/rbi/e_invoice_api/internal/type/base_model.rbi +304 -0
  91. data/rbi/e_invoice_api/internal/type/base_page.rbi +43 -0
  92. data/rbi/e_invoice_api/internal/type/boolean.rbi +56 -0
  93. data/rbi/e_invoice_api/internal/type/converter.rbi +162 -0
  94. data/rbi/e_invoice_api/internal/type/enum.rbi +82 -0
  95. data/rbi/e_invoice_api/internal/type/file_input.rbi +59 -0
  96. data/rbi/e_invoice_api/internal/type/hash_of.rbi +104 -0
  97. data/rbi/e_invoice_api/internal/type/request_parameters.rbi +31 -0
  98. data/rbi/e_invoice_api/internal/type/union.rbi +116 -0
  99. data/rbi/e_invoice_api/internal/type/unknown.rbi +56 -0
  100. data/rbi/e_invoice_api/internal/util.rbi +487 -0
  101. data/rbi/e_invoice_api/internal.rbi +18 -0
  102. data/rbi/e_invoice_api/models/certificate.rbi +54 -0
  103. data/rbi/e_invoice_api/models/currency_code.rbi +34 -0
  104. data/rbi/e_invoice_api/models/document_attachment_create.rbi +57 -0
  105. data/rbi/e_invoice_api/models/document_create.rbi +638 -0
  106. data/rbi/e_invoice_api/models/document_create_params.rbi +30 -0
  107. data/rbi/e_invoice_api/models/document_delete_params.rbi +30 -0
  108. data/rbi/e_invoice_api/models/document_delete_response.rbi +26 -0
  109. data/rbi/e_invoice_api/models/document_direction.rbi +22 -0
  110. data/rbi/e_invoice_api/models/document_response.rbi +504 -0
  111. data/rbi/e_invoice_api/models/document_retrieve_params.rbi +30 -0
  112. data/rbi/e_invoice_api/models/document_send_params.rbi +65 -0
  113. data/rbi/e_invoice_api/models/document_state.rbi +24 -0
  114. data/rbi/e_invoice_api/models/document_type.rbi +21 -0
  115. data/rbi/e_invoice_api/models/documents/attachment_add_params.rbi +43 -0
  116. data/rbi/e_invoice_api/models/documents/attachment_delete_params.rbi +43 -0
  117. data/rbi/e_invoice_api/models/documents/attachment_delete_response.rbi +28 -0
  118. data/rbi/e_invoice_api/models/documents/attachment_list_params.rbi +34 -0
  119. data/rbi/e_invoice_api/models/documents/attachment_list_response.rbi +15 -0
  120. data/rbi/e_invoice_api/models/documents/attachment_retrieve_params.rbi +43 -0
  121. data/rbi/e_invoice_api/models/documents/document_attachment.rbi +72 -0
  122. data/rbi/e_invoice_api/models/documents/ubl_get_params.rbi +34 -0
  123. data/rbi/e_invoice_api/models/documents/ubl_get_response.rbi +97 -0
  124. data/rbi/e_invoice_api/models/inbox_list_credit_notes_params.rbi +60 -0
  125. data/rbi/e_invoice_api/models/inbox_list_invoices_params.rbi +60 -0
  126. data/rbi/e_invoice_api/models/inbox_list_params.rbi +105 -0
  127. data/rbi/e_invoice_api/models/lookup_retrieve_params.rbi +45 -0
  128. data/rbi/e_invoice_api/models/lookup_retrieve_response.rbi +852 -0
  129. data/rbi/e_invoice_api/models/outbox_list_draft_documents_params.rbi +60 -0
  130. data/rbi/e_invoice_api/models/outbox_list_received_documents_params.rbi +108 -0
  131. data/rbi/e_invoice_api/models/paginated_document_response.rbi +56 -0
  132. data/rbi/e_invoice_api/models/payment_detail_create.rbi +56 -0
  133. data/rbi/e_invoice_api/models/ubl_document_validation.rbi +159 -0
  134. data/rbi/e_invoice_api/models/unit_of_measure_code.rbi +149 -0
  135. data/rbi/e_invoice_api/models/validate_validate_json_params.rbi +30 -0
  136. data/rbi/e_invoice_api/models/validate_validate_peppol_id_params.rbi +45 -0
  137. data/rbi/e_invoice_api/models/validate_validate_peppol_id_response.rbi +141 -0
  138. data/rbi/e_invoice_api/models/validate_validate_ubl_params.rbi +41 -0
  139. data/rbi/e_invoice_api/models/webhook_create_params.rbi +54 -0
  140. data/rbi/e_invoice_api/models/webhook_delete_params.rbi +30 -0
  141. data/rbi/e_invoice_api/models/webhook_delete_response.rbi +27 -0
  142. data/rbi/e_invoice_api/models/webhook_list_params.rbi +27 -0
  143. data/rbi/e_invoice_api/models/webhook_list_response.rbi +11 -0
  144. data/rbi/e_invoice_api/models/webhook_response.rbi +57 -0
  145. data/rbi/e_invoice_api/models/webhook_retrieve_params.rbi +30 -0
  146. data/rbi/e_invoice_api/models/webhook_update_params.rbi +51 -0
  147. data/rbi/e_invoice_api/models.rbi +70 -0
  148. data/rbi/e_invoice_api/request_options.rbi +59 -0
  149. data/rbi/e_invoice_api/resources/documents/attachments.rbi +58 -0
  150. data/rbi/e_invoice_api/resources/documents/ubl.rbi +24 -0
  151. data/rbi/e_invoice_api/resources/documents.rbi +164 -0
  152. data/rbi/e_invoice_api/resources/inbox.rbi +93 -0
  153. data/rbi/e_invoice_api/resources/lookup.rbi +31 -0
  154. data/rbi/e_invoice_api/resources/outbox.rbi +72 -0
  155. data/rbi/e_invoice_api/resources/validate.rbi +145 -0
  156. data/rbi/e_invoice_api/resources/webhooks.rbi +72 -0
  157. data/rbi/e_invoice_api/version.rbi +5 -0
  158. data/sig/e_invoice_api/client.rbs +36 -0
  159. data/sig/e_invoice_api/errors.rbs +101 -0
  160. data/sig/e_invoice_api/file_part.rbs +21 -0
  161. data/sig/e_invoice_api/internal/documents_number_page.rbs +17 -0
  162. data/sig/e_invoice_api/internal/transport/base_client.rbs +131 -0
  163. data/sig/e_invoice_api/internal/transport/pooled_net_requester.rbs +45 -0
  164. data/sig/e_invoice_api/internal/type/array_of.rbs +48 -0
  165. data/sig/e_invoice_api/internal/type/base_model.rbs +102 -0
  166. data/sig/e_invoice_api/internal/type/base_page.rbs +24 -0
  167. data/sig/e_invoice_api/internal/type/boolean.rbs +26 -0
  168. data/sig/e_invoice_api/internal/type/converter.rbs +56 -0
  169. data/sig/e_invoice_api/internal/type/enum.rbs +32 -0
  170. data/sig/e_invoice_api/internal/type/file_input.rbs +25 -0
  171. data/sig/e_invoice_api/internal/type/hash_of.rbs +48 -0
  172. data/sig/e_invoice_api/internal/type/request_parameters.rbs +19 -0
  173. data/sig/e_invoice_api/internal/type/union.rbs +52 -0
  174. data/sig/e_invoice_api/internal/type/unknown.rbs +26 -0
  175. data/sig/e_invoice_api/internal/util.rbs +185 -0
  176. data/sig/e_invoice_api/internal.rbs +9 -0
  177. data/sig/e_invoice_api/models/certificate.rbs +26 -0
  178. data/sig/e_invoice_api/models/currency_code.rbs +42 -0
  179. data/sig/e_invoice_api/models/document_attachment_create.rbs +39 -0
  180. data/sig/e_invoice_api/models/document_create.rbs +403 -0
  181. data/sig/e_invoice_api/models/document_create_params.rbs +15 -0
  182. data/sig/e_invoice_api/models/document_delete_params.rbs +15 -0
  183. data/sig/e_invoice_api/models/document_delete_response.rbs +13 -0
  184. data/sig/e_invoice_api/models/document_direction.rbs +14 -0
  185. data/sig/e_invoice_api/models/document_response.rbs +358 -0
  186. data/sig/e_invoice_api/models/document_retrieve_params.rbs +15 -0
  187. data/sig/e_invoice_api/models/document_send_params.rbs +46 -0
  188. data/sig/e_invoice_api/models/document_state.rbs +17 -0
  189. data/sig/e_invoice_api/models/document_type.rbs +14 -0
  190. data/sig/e_invoice_api/models/documents/attachment_add_params.rbs +26 -0
  191. data/sig/e_invoice_api/models/documents/attachment_delete_params.rbs +26 -0
  192. data/sig/e_invoice_api/models/documents/attachment_delete_response.rbs +15 -0
  193. data/sig/e_invoice_api/models/documents/attachment_list_params.rbs +17 -0
  194. data/sig/e_invoice_api/models/documents/attachment_list_response.rbs +10 -0
  195. data/sig/e_invoice_api/models/documents/attachment_retrieve_params.rbs +26 -0
  196. data/sig/e_invoice_api/models/documents/document_attachment.rbs +48 -0
  197. data/sig/e_invoice_api/models/documents/ubl_get_params.rbs +17 -0
  198. data/sig/e_invoice_api/models/documents/ubl_get_response.rbs +69 -0
  199. data/sig/e_invoice_api/models/inbox_list_credit_notes_params.rbs +32 -0
  200. data/sig/e_invoice_api/models/inbox_list_invoices_params.rbs +32 -0
  201. data/sig/e_invoice_api/models/inbox_list_params.rbs +65 -0
  202. data/sig/e_invoice_api/models/lookup_retrieve_params.rbs +23 -0
  203. data/sig/e_invoice_api/models/lookup_retrieve_response.rbs +365 -0
  204. data/sig/e_invoice_api/models/outbox_list_draft_documents_params.rbs +32 -0
  205. data/sig/e_invoice_api/models/outbox_list_received_documents_params.rbs +65 -0
  206. data/sig/e_invoice_api/models/paginated_document_response.rbs +40 -0
  207. data/sig/e_invoice_api/models/payment_detail_create.rbs +35 -0
  208. data/sig/e_invoice_api/models/ubl_document_validation.rbs +98 -0
  209. data/sig/e_invoice_api/models/unit_of_measure_code.rbs +192 -0
  210. data/sig/e_invoice_api/models/validate_validate_json_params.rbs +15 -0
  211. data/sig/e_invoice_api/models/validate_validate_peppol_id_params.rbs +23 -0
  212. data/sig/e_invoice_api/models/validate_validate_peppol_id_response.rbs +65 -0
  213. data/sig/e_invoice_api/models/validate_validate_ubl_params.rbs +24 -0
  214. data/sig/e_invoice_api/models/webhook_create_params.rbs +34 -0
  215. data/sig/e_invoice_api/models/webhook_delete_params.rbs +15 -0
  216. data/sig/e_invoice_api/models/webhook_delete_response.rbs +13 -0
  217. data/sig/e_invoice_api/models/webhook_list_params.rbs +15 -0
  218. data/sig/e_invoice_api/models/webhook_list_response.rbs +7 -0
  219. data/sig/e_invoice_api/models/webhook_response.rbs +42 -0
  220. data/sig/e_invoice_api/models/webhook_retrieve_params.rbs +15 -0
  221. data/sig/e_invoice_api/models/webhook_update_params.rbs +32 -0
  222. data/sig/e_invoice_api/models.rbs +65 -0
  223. data/sig/e_invoice_api/request_options.rbs +36 -0
  224. data/sig/e_invoice_api/resources/documents/attachments.rbs +32 -0
  225. data/sig/e_invoice_api/resources/documents/ubl.rbs +14 -0
  226. data/sig/e_invoice_api/resources/documents.rbs +76 -0
  227. data/sig/e_invoice_api/resources/inbox.rbs +31 -0
  228. data/sig/e_invoice_api/resources/lookup.rbs +12 -0
  229. data/sig/e_invoice_api/resources/outbox.rbs +25 -0
  230. data/sig/e_invoice_api/resources/validate.rbs +62 -0
  231. data/sig/e_invoice_api/resources/webhooks.rbs +36 -0
  232. data/sig/e_invoice_api/version.rbs +3 -0
  233. metadata +290 -0
@@ -0,0 +1,141 @@
1
+ # typed: strong
2
+
3
+ module EInvoiceAPI
4
+ module Models
5
+ class ValidateValidatePeppolIDResponse < EInvoiceAPI::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ EInvoiceAPI::Models::ValidateValidatePeppolIDResponse,
10
+ EInvoiceAPI::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # Business card information for the Peppol ID
15
+ sig do
16
+ returns(
17
+ T.nilable(
18
+ EInvoiceAPI::Models::ValidateValidatePeppolIDResponse::BusinessCard
19
+ )
20
+ )
21
+ end
22
+ attr_reader :business_card
23
+
24
+ sig do
25
+ params(
26
+ business_card:
27
+ T.nilable(
28
+ EInvoiceAPI::Models::ValidateValidatePeppolIDResponse::BusinessCard::OrHash
29
+ )
30
+ ).void
31
+ end
32
+ attr_writer :business_card
33
+
34
+ # Whether a business card is set at the SMP
35
+ sig { returns(T::Boolean) }
36
+ attr_accessor :business_card_valid
37
+
38
+ # Whether the DNS resolves to a valid SMP
39
+ sig { returns(T::Boolean) }
40
+ attr_accessor :dns_valid
41
+
42
+ # Whether the Peppol ID is valid and registered in the Peppol network
43
+ sig { returns(T::Boolean) }
44
+ attr_accessor :is_valid
45
+
46
+ sig { returns(T.nilable(T::Array[String])) }
47
+ attr_reader :supported_document_types
48
+
49
+ sig { params(supported_document_types: T::Array[String]).void }
50
+ attr_writer :supported_document_types
51
+
52
+ # Response for a Peppol ID validation request.
53
+ #
54
+ # This model represents the validation result of a Peppol ID in the Peppol
55
+ # network, including whether the ID is valid and what document types it supports.
56
+ sig do
57
+ params(
58
+ business_card:
59
+ T.nilable(
60
+ EInvoiceAPI::Models::ValidateValidatePeppolIDResponse::BusinessCard::OrHash
61
+ ),
62
+ business_card_valid: T::Boolean,
63
+ dns_valid: T::Boolean,
64
+ is_valid: T::Boolean,
65
+ supported_document_types: T::Array[String]
66
+ ).returns(T.attached_class)
67
+ end
68
+ def self.new(
69
+ # Business card information for the Peppol ID
70
+ business_card:,
71
+ # Whether a business card is set at the SMP
72
+ business_card_valid:,
73
+ # Whether the DNS resolves to a valid SMP
74
+ dns_valid:,
75
+ # Whether the Peppol ID is valid and registered in the Peppol network
76
+ is_valid:,
77
+ supported_document_types: nil
78
+ )
79
+ end
80
+
81
+ sig do
82
+ override.returns(
83
+ {
84
+ business_card:
85
+ T.nilable(
86
+ EInvoiceAPI::Models::ValidateValidatePeppolIDResponse::BusinessCard
87
+ ),
88
+ business_card_valid: T::Boolean,
89
+ dns_valid: T::Boolean,
90
+ is_valid: T::Boolean,
91
+ supported_document_types: T::Array[String]
92
+ }
93
+ )
94
+ end
95
+ def to_hash
96
+ end
97
+
98
+ class BusinessCard < EInvoiceAPI::Internal::Type::BaseModel
99
+ OrHash =
100
+ T.type_alias do
101
+ T.any(
102
+ EInvoiceAPI::Models::ValidateValidatePeppolIDResponse::BusinessCard,
103
+ EInvoiceAPI::Internal::AnyHash
104
+ )
105
+ end
106
+
107
+ sig { returns(T.nilable(String)) }
108
+ attr_accessor :country_code
109
+
110
+ sig { returns(T.nilable(String)) }
111
+ attr_accessor :name
112
+
113
+ sig { returns(T.nilable(Date)) }
114
+ attr_accessor :registration_date
115
+
116
+ # Business card information for the Peppol ID
117
+ sig do
118
+ params(
119
+ country_code: T.nilable(String),
120
+ name: T.nilable(String),
121
+ registration_date: T.nilable(Date)
122
+ ).returns(T.attached_class)
123
+ end
124
+ def self.new(country_code: nil, name: nil, registration_date: nil)
125
+ end
126
+
127
+ sig do
128
+ override.returns(
129
+ {
130
+ country_code: T.nilable(String),
131
+ name: T.nilable(String),
132
+ registration_date: T.nilable(Date)
133
+ }
134
+ )
135
+ end
136
+ def to_hash
137
+ end
138
+ end
139
+ end
140
+ end
141
+ end
@@ -0,0 +1,41 @@
1
+ # typed: strong
2
+
3
+ module EInvoiceAPI
4
+ module Models
5
+ class ValidateValidateUblParams < EInvoiceAPI::Internal::Type::BaseModel
6
+ extend EInvoiceAPI::Internal::Type::RequestParameters::Converter
7
+ include EInvoiceAPI::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ EInvoiceAPI::ValidateValidateUblParams,
13
+ EInvoiceAPI::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ sig { returns(EInvoiceAPI::Internal::FileInput) }
18
+ attr_accessor :file
19
+
20
+ sig do
21
+ params(
22
+ file: EInvoiceAPI::Internal::FileInput,
23
+ request_options: EInvoiceAPI::RequestOptions::OrHash
24
+ ).returns(T.attached_class)
25
+ end
26
+ def self.new(file:, request_options: {})
27
+ end
28
+
29
+ sig do
30
+ override.returns(
31
+ {
32
+ file: EInvoiceAPI::Internal::FileInput,
33
+ request_options: EInvoiceAPI::RequestOptions
34
+ }
35
+ )
36
+ end
37
+ def to_hash
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,54 @@
1
+ # typed: strong
2
+
3
+ module EInvoiceAPI
4
+ module Models
5
+ class WebhookCreateParams < EInvoiceAPI::Internal::Type::BaseModel
6
+ extend EInvoiceAPI::Internal::Type::RequestParameters::Converter
7
+ include EInvoiceAPI::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ EInvoiceAPI::WebhookCreateParams,
13
+ EInvoiceAPI::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ sig { returns(T::Array[String]) }
18
+ attr_accessor :events
19
+
20
+ sig { returns(String) }
21
+ attr_accessor :url
22
+
23
+ sig { returns(T.nilable(T::Boolean)) }
24
+ attr_reader :enabled
25
+
26
+ sig { params(enabled: T::Boolean).void }
27
+ attr_writer :enabled
28
+
29
+ sig do
30
+ params(
31
+ events: T::Array[String],
32
+ url: String,
33
+ enabled: T::Boolean,
34
+ request_options: EInvoiceAPI::RequestOptions::OrHash
35
+ ).returns(T.attached_class)
36
+ end
37
+ def self.new(events:, url:, enabled: nil, request_options: {})
38
+ end
39
+
40
+ sig do
41
+ override.returns(
42
+ {
43
+ events: T::Array[String],
44
+ url: String,
45
+ enabled: T::Boolean,
46
+ request_options: EInvoiceAPI::RequestOptions
47
+ }
48
+ )
49
+ end
50
+ def to_hash
51
+ end
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,30 @@
1
+ # typed: strong
2
+
3
+ module EInvoiceAPI
4
+ module Models
5
+ class WebhookDeleteParams < EInvoiceAPI::Internal::Type::BaseModel
6
+ extend EInvoiceAPI::Internal::Type::RequestParameters::Converter
7
+ include EInvoiceAPI::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ EInvoiceAPI::WebhookDeleteParams,
13
+ EInvoiceAPI::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ sig do
18
+ params(request_options: EInvoiceAPI::RequestOptions::OrHash).returns(
19
+ T.attached_class
20
+ )
21
+ end
22
+ def self.new(request_options: {})
23
+ end
24
+
25
+ sig { override.returns({ request_options: EInvoiceAPI::RequestOptions }) }
26
+ def to_hash
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,27 @@
1
+ # typed: strong
2
+
3
+ module EInvoiceAPI
4
+ module Models
5
+ class WebhookDeleteResponse < EInvoiceAPI::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ EInvoiceAPI::Models::WebhookDeleteResponse,
10
+ EInvoiceAPI::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ sig { returns(T::Boolean) }
15
+ attr_accessor :is_deleted
16
+
17
+ # Model for webhook deletion.
18
+ sig { params(is_deleted: T::Boolean).returns(T.attached_class) }
19
+ def self.new(is_deleted:)
20
+ end
21
+
22
+ sig { override.returns({ is_deleted: T::Boolean }) }
23
+ def to_hash
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,27 @@
1
+ # typed: strong
2
+
3
+ module EInvoiceAPI
4
+ module Models
5
+ class WebhookListParams < EInvoiceAPI::Internal::Type::BaseModel
6
+ extend EInvoiceAPI::Internal::Type::RequestParameters::Converter
7
+ include EInvoiceAPI::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(EInvoiceAPI::WebhookListParams, EInvoiceAPI::Internal::AnyHash)
12
+ end
13
+
14
+ sig do
15
+ params(request_options: EInvoiceAPI::RequestOptions::OrHash).returns(
16
+ T.attached_class
17
+ )
18
+ end
19
+ def self.new(request_options: {})
20
+ end
21
+
22
+ sig { override.returns({ request_options: EInvoiceAPI::RequestOptions }) }
23
+ def to_hash
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,11 @@
1
+ # typed: strong
2
+
3
+ module EInvoiceAPI
4
+ module Models
5
+ WebhookListResponse =
6
+ T.let(
7
+ EInvoiceAPI::Internal::Type::ArrayOf[EInvoiceAPI::WebhookResponse],
8
+ EInvoiceAPI::Internal::Type::Converter
9
+ )
10
+ end
11
+ end
@@ -0,0 +1,57 @@
1
+ # typed: strong
2
+
3
+ module EInvoiceAPI
4
+ module Models
5
+ class WebhookResponse < EInvoiceAPI::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(EInvoiceAPI::WebhookResponse, EInvoiceAPI::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(String) }
12
+ attr_accessor :id
13
+
14
+ sig { returns(T::Array[String]) }
15
+ attr_accessor :events
16
+
17
+ sig { returns(String) }
18
+ attr_accessor :secret
19
+
20
+ sig { returns(String) }
21
+ attr_accessor :url
22
+
23
+ sig { returns(T.nilable(T::Boolean)) }
24
+ attr_reader :enabled
25
+
26
+ sig { params(enabled: T::Boolean).void }
27
+ attr_writer :enabled
28
+
29
+ # Response model for webhook API endpoints.
30
+ sig do
31
+ params(
32
+ id: String,
33
+ events: T::Array[String],
34
+ secret: String,
35
+ url: String,
36
+ enabled: T::Boolean
37
+ ).returns(T.attached_class)
38
+ end
39
+ def self.new(id:, events:, secret:, url:, enabled: nil)
40
+ end
41
+
42
+ sig do
43
+ override.returns(
44
+ {
45
+ id: String,
46
+ events: T::Array[String],
47
+ secret: String,
48
+ url: String,
49
+ enabled: T::Boolean
50
+ }
51
+ )
52
+ end
53
+ def to_hash
54
+ end
55
+ end
56
+ end
57
+ end
@@ -0,0 +1,30 @@
1
+ # typed: strong
2
+
3
+ module EInvoiceAPI
4
+ module Models
5
+ class WebhookRetrieveParams < EInvoiceAPI::Internal::Type::BaseModel
6
+ extend EInvoiceAPI::Internal::Type::RequestParameters::Converter
7
+ include EInvoiceAPI::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ EInvoiceAPI::WebhookRetrieveParams,
13
+ EInvoiceAPI::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ sig do
18
+ params(request_options: EInvoiceAPI::RequestOptions::OrHash).returns(
19
+ T.attached_class
20
+ )
21
+ end
22
+ def self.new(request_options: {})
23
+ end
24
+
25
+ sig { override.returns({ request_options: EInvoiceAPI::RequestOptions }) }
26
+ def to_hash
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,51 @@
1
+ # typed: strong
2
+
3
+ module EInvoiceAPI
4
+ module Models
5
+ class WebhookUpdateParams < EInvoiceAPI::Internal::Type::BaseModel
6
+ extend EInvoiceAPI::Internal::Type::RequestParameters::Converter
7
+ include EInvoiceAPI::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ EInvoiceAPI::WebhookUpdateParams,
13
+ EInvoiceAPI::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ sig { returns(T.nilable(T::Boolean)) }
18
+ attr_accessor :enabled
19
+
20
+ sig { returns(T.nilable(T::Array[String])) }
21
+ attr_accessor :events
22
+
23
+ sig { returns(T.nilable(String)) }
24
+ attr_accessor :url
25
+
26
+ sig do
27
+ params(
28
+ enabled: T.nilable(T::Boolean),
29
+ events: T.nilable(T::Array[String]),
30
+ url: T.nilable(String),
31
+ request_options: EInvoiceAPI::RequestOptions::OrHash
32
+ ).returns(T.attached_class)
33
+ end
34
+ def self.new(enabled: nil, events: nil, url: nil, request_options: {})
35
+ end
36
+
37
+ sig do
38
+ override.returns(
39
+ {
40
+ enabled: T.nilable(T::Boolean),
41
+ events: T.nilable(T::Array[String]),
42
+ url: T.nilable(String),
43
+ request_options: EInvoiceAPI::RequestOptions
44
+ }
45
+ )
46
+ end
47
+ def to_hash
48
+ end
49
+ end
50
+ end
51
+ end
@@ -0,0 +1,70 @@
1
+ # typed: strong
2
+
3
+ module EInvoiceAPI
4
+ Certificate = EInvoiceAPI::Models::Certificate
5
+
6
+ CurrencyCode = EInvoiceAPI::Models::CurrencyCode
7
+
8
+ DocumentAttachmentCreate = EInvoiceAPI::Models::DocumentAttachmentCreate
9
+
10
+ DocumentCreate = EInvoiceAPI::Models::DocumentCreate
11
+
12
+ DocumentCreateParams = EInvoiceAPI::Models::DocumentCreateParams
13
+
14
+ DocumentDeleteParams = EInvoiceAPI::Models::DocumentDeleteParams
15
+
16
+ DocumentDirection = EInvoiceAPI::Models::DocumentDirection
17
+
18
+ DocumentResponse = EInvoiceAPI::Models::DocumentResponse
19
+
20
+ DocumentRetrieveParams = EInvoiceAPI::Models::DocumentRetrieveParams
21
+
22
+ Documents = EInvoiceAPI::Models::Documents
23
+
24
+ DocumentSendParams = EInvoiceAPI::Models::DocumentSendParams
25
+
26
+ DocumentState = EInvoiceAPI::Models::DocumentState
27
+
28
+ DocumentType = EInvoiceAPI::Models::DocumentType
29
+
30
+ InboxListCreditNotesParams = EInvoiceAPI::Models::InboxListCreditNotesParams
31
+
32
+ InboxListInvoicesParams = EInvoiceAPI::Models::InboxListInvoicesParams
33
+
34
+ InboxListParams = EInvoiceAPI::Models::InboxListParams
35
+
36
+ LookupRetrieveParams = EInvoiceAPI::Models::LookupRetrieveParams
37
+
38
+ OutboxListDraftDocumentsParams =
39
+ EInvoiceAPI::Models::OutboxListDraftDocumentsParams
40
+
41
+ OutboxListReceivedDocumentsParams =
42
+ EInvoiceAPI::Models::OutboxListReceivedDocumentsParams
43
+
44
+ PaginatedDocumentResponse = EInvoiceAPI::Models::PaginatedDocumentResponse
45
+
46
+ PaymentDetailCreate = EInvoiceAPI::Models::PaymentDetailCreate
47
+
48
+ UblDocumentValidation = EInvoiceAPI::Models::UblDocumentValidation
49
+
50
+ UnitOfMeasureCode = EInvoiceAPI::Models::UnitOfMeasureCode
51
+
52
+ ValidateValidateJsonParams = EInvoiceAPI::Models::ValidateValidateJsonParams
53
+
54
+ ValidateValidatePeppolIDParams =
55
+ EInvoiceAPI::Models::ValidateValidatePeppolIDParams
56
+
57
+ ValidateValidateUblParams = EInvoiceAPI::Models::ValidateValidateUblParams
58
+
59
+ WebhookCreateParams = EInvoiceAPI::Models::WebhookCreateParams
60
+
61
+ WebhookDeleteParams = EInvoiceAPI::Models::WebhookDeleteParams
62
+
63
+ WebhookListParams = EInvoiceAPI::Models::WebhookListParams
64
+
65
+ WebhookResponse = EInvoiceAPI::Models::WebhookResponse
66
+
67
+ WebhookRetrieveParams = EInvoiceAPI::Models::WebhookRetrieveParams
68
+
69
+ WebhookUpdateParams = EInvoiceAPI::Models::WebhookUpdateParams
70
+ end
@@ -0,0 +1,59 @@
1
+ # typed: strong
2
+
3
+ module EInvoiceAPI
4
+ # Specify HTTP behaviour to use for a specific request. These options supplement
5
+ # or override those provided at the client level.
6
+ #
7
+ # When making a request, you can pass an actual {RequestOptions} instance, or
8
+ # simply pass a Hash with symbol keys matching the attributes on this class.
9
+ class RequestOptions < EInvoiceAPI::Internal::Type::BaseModel
10
+ OrHash =
11
+ T.type_alias do
12
+ T.any(EInvoiceAPI::RequestOptions, EInvoiceAPI::Internal::AnyHash)
13
+ end
14
+
15
+ # @api private
16
+ sig { params(opts: EInvoiceAPI::RequestOptions::OrHash).void }
17
+ def self.validate!(opts)
18
+ end
19
+
20
+ # Idempotency key to send with request and all associated retries. Will only be
21
+ # sent for write requests.
22
+ sig { returns(T.nilable(String)) }
23
+ attr_accessor :idempotency_key
24
+
25
+ # Extra query params to send with the request. These are `.merge`’d into any
26
+ # `query` given at the client level.
27
+ sig do
28
+ returns(
29
+ T.nilable(T::Hash[String, T.nilable(T.any(T::Array[String], String))])
30
+ )
31
+ end
32
+ attr_accessor :extra_query
33
+
34
+ # Extra headers to send with the request. These are `.merged`’d into any
35
+ # `extra_headers` given at the client level.
36
+ sig { returns(T.nilable(T::Hash[String, T.nilable(String)])) }
37
+ attr_accessor :extra_headers
38
+
39
+ # Extra data to send with the request. These are deep merged into any data
40
+ # generated as part of the normal request.
41
+ sig { returns(T.nilable(T.anything)) }
42
+ attr_accessor :extra_body
43
+
44
+ # Maximum number of retries to attempt after a failed initial request.
45
+ sig { returns(T.nilable(Integer)) }
46
+ attr_accessor :max_retries
47
+
48
+ # Request timeout in seconds.
49
+ sig { returns(T.nilable(Float)) }
50
+ attr_accessor :timeout
51
+
52
+ # Returns a new instance of RequestOptions.
53
+ sig do
54
+ params(values: EInvoiceAPI::Internal::AnyHash).returns(T.attached_class)
55
+ end
56
+ def self.new(values = {})
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,58 @@
1
+ # typed: strong
2
+
3
+ module EInvoiceAPI
4
+ module Resources
5
+ class Documents
6
+ class Attachments
7
+ # Get attachment details with for an invoice or credit note with link to download
8
+ # file (signed URL, valid for 1 hour)
9
+ sig do
10
+ params(
11
+ attachment_id: String,
12
+ document_id: String,
13
+ request_options: EInvoiceAPI::RequestOptions::OrHash
14
+ ).returns(EInvoiceAPI::Documents::DocumentAttachment)
15
+ end
16
+ def retrieve(attachment_id, document_id:, request_options: {})
17
+ end
18
+
19
+ # Get all attachments for an invoice or credit note
20
+ sig do
21
+ params(
22
+ document_id: String,
23
+ request_options: EInvoiceAPI::RequestOptions::OrHash
24
+ ).returns(T::Array[EInvoiceAPI::Documents::DocumentAttachment])
25
+ end
26
+ def list(document_id, request_options: {})
27
+ end
28
+
29
+ # Delete an attachment from an invoice or credit note
30
+ sig do
31
+ params(
32
+ attachment_id: String,
33
+ document_id: String,
34
+ request_options: EInvoiceAPI::RequestOptions::OrHash
35
+ ).returns(EInvoiceAPI::Models::Documents::AttachmentDeleteResponse)
36
+ end
37
+ def delete(attachment_id, document_id:, request_options: {})
38
+ end
39
+
40
+ # Add a new attachment to an invoice or credit note
41
+ sig do
42
+ params(
43
+ document_id: String,
44
+ file: EInvoiceAPI::Internal::FileInput,
45
+ request_options: EInvoiceAPI::RequestOptions::OrHash
46
+ ).returns(EInvoiceAPI::Documents::DocumentAttachment)
47
+ end
48
+ def add(document_id, file:, request_options: {})
49
+ end
50
+
51
+ # @api private
52
+ sig { params(client: EInvoiceAPI::Client).returns(T.attached_class) }
53
+ def self.new(client:)
54
+ end
55
+ end
56
+ end
57
+ end
58
+ end
@@ -0,0 +1,24 @@
1
+ # typed: strong
2
+
3
+ module EInvoiceAPI
4
+ module Resources
5
+ class Documents
6
+ class Ubl
7
+ # Get the UBL for an invoice or credit note
8
+ sig do
9
+ params(
10
+ document_id: String,
11
+ request_options: EInvoiceAPI::RequestOptions::OrHash
12
+ ).returns(EInvoiceAPI::Models::Documents::UblGetResponse)
13
+ end
14
+ def get(document_id, request_options: {})
15
+ end
16
+
17
+ # @api private
18
+ sig { params(client: EInvoiceAPI::Client).returns(T.attached_class) }
19
+ def self.new(client:)
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end