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,852 @@
1
+ # typed: strong
2
+
3
+ module EInvoiceAPI
4
+ module Models
5
+ class LookupRetrieveResponse < EInvoiceAPI::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ EInvoiceAPI::Models::LookupRetrieveResponse,
10
+ EInvoiceAPI::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # Business card information for the Peppol participant
15
+ sig { returns(EInvoiceAPI::Models::LookupRetrieveResponse::BusinessCard) }
16
+ attr_reader :business_card
17
+
18
+ sig do
19
+ params(
20
+ business_card:
21
+ EInvoiceAPI::Models::LookupRetrieveResponse::BusinessCard::OrHash
22
+ ).void
23
+ end
24
+ attr_writer :business_card
25
+
26
+ # List of certificates found for the Peppol participant
27
+ sig { returns(T::Array[EInvoiceAPI::Certificate]) }
28
+ attr_accessor :certificates
29
+
30
+ # Information about the DNS lookup performed
31
+ sig { returns(EInvoiceAPI::Models::LookupRetrieveResponse::DNSInfo) }
32
+ attr_reader :dns_info
33
+
34
+ sig do
35
+ params(
36
+ dns_info: EInvoiceAPI::Models::LookupRetrieveResponse::DNSInfo::OrHash
37
+ ).void
38
+ end
39
+ attr_writer :dns_info
40
+
41
+ # List of error messages if any errors occurred during the lookup
42
+ sig { returns(T::Array[String]) }
43
+ attr_accessor :errors
44
+
45
+ # Total execution time of the lookup operation in milliseconds
46
+ sig { returns(Float) }
47
+ attr_accessor :execution_time_ms
48
+
49
+ # Metadata about the query that was performed
50
+ sig do
51
+ returns(EInvoiceAPI::Models::LookupRetrieveResponse::QueryMetadata)
52
+ end
53
+ attr_reader :query_metadata
54
+
55
+ sig do
56
+ params(
57
+ query_metadata:
58
+ EInvoiceAPI::Models::LookupRetrieveResponse::QueryMetadata::OrHash
59
+ ).void
60
+ end
61
+ attr_writer :query_metadata
62
+
63
+ # Service metadata information for the Peppol participant
64
+ sig do
65
+ returns(EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata)
66
+ end
67
+ attr_reader :service_metadata
68
+
69
+ sig do
70
+ params(
71
+ service_metadata:
72
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata::OrHash
73
+ ).void
74
+ end
75
+ attr_writer :service_metadata
76
+
77
+ # Overall status of the lookup: 'success' or 'error'
78
+ sig { returns(String) }
79
+ attr_accessor :status
80
+
81
+ # Response from a Peppol ID lookup operation.
82
+ #
83
+ # This model represents the complete result of validating and looking up a Peppol
84
+ # ID in the Peppol network, including DNS information, service metadata, business
85
+ # card details, and certificate information.
86
+ #
87
+ # Example: A successful lookup for a Peppol ID "0192:991825827" would return DNS
88
+ # information, service metadata with supported document types and processes,
89
+ # business card information with organization details, and certificate data.
90
+ sig do
91
+ params(
92
+ business_card:
93
+ EInvoiceAPI::Models::LookupRetrieveResponse::BusinessCard::OrHash,
94
+ certificates: T::Array[EInvoiceAPI::Certificate::OrHash],
95
+ dns_info:
96
+ EInvoiceAPI::Models::LookupRetrieveResponse::DNSInfo::OrHash,
97
+ errors: T::Array[String],
98
+ execution_time_ms: Float,
99
+ query_metadata:
100
+ EInvoiceAPI::Models::LookupRetrieveResponse::QueryMetadata::OrHash,
101
+ service_metadata:
102
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata::OrHash,
103
+ status: String
104
+ ).returns(T.attached_class)
105
+ end
106
+ def self.new(
107
+ # Business card information for the Peppol participant
108
+ business_card:,
109
+ # List of certificates found for the Peppol participant
110
+ certificates:,
111
+ # Information about the DNS lookup performed
112
+ dns_info:,
113
+ # List of error messages if any errors occurred during the lookup
114
+ errors:,
115
+ # Total execution time of the lookup operation in milliseconds
116
+ execution_time_ms:,
117
+ # Metadata about the query that was performed
118
+ query_metadata:,
119
+ # Service metadata information for the Peppol participant
120
+ service_metadata:,
121
+ # Overall status of the lookup: 'success' or 'error'
122
+ status:
123
+ )
124
+ end
125
+
126
+ sig do
127
+ override.returns(
128
+ {
129
+ business_card:
130
+ EInvoiceAPI::Models::LookupRetrieveResponse::BusinessCard,
131
+ certificates: T::Array[EInvoiceAPI::Certificate],
132
+ dns_info: EInvoiceAPI::Models::LookupRetrieveResponse::DNSInfo,
133
+ errors: T::Array[String],
134
+ execution_time_ms: Float,
135
+ query_metadata:
136
+ EInvoiceAPI::Models::LookupRetrieveResponse::QueryMetadata,
137
+ service_metadata:
138
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata,
139
+ status: String
140
+ }
141
+ )
142
+ end
143
+ def to_hash
144
+ end
145
+
146
+ class BusinessCard < EInvoiceAPI::Internal::Type::BaseModel
147
+ OrHash =
148
+ T.type_alias do
149
+ T.any(
150
+ EInvoiceAPI::Models::LookupRetrieveResponse::BusinessCard,
151
+ EInvoiceAPI::Internal::AnyHash
152
+ )
153
+ end
154
+
155
+ # List of business entities associated with the Peppol ID
156
+ sig do
157
+ returns(
158
+ T::Array[
159
+ EInvoiceAPI::Models::LookupRetrieveResponse::BusinessCard::Entity
160
+ ]
161
+ )
162
+ end
163
+ attr_accessor :entities
164
+
165
+ # Time taken to query the business card in milliseconds
166
+ sig { returns(Float) }
167
+ attr_accessor :query_time_ms
168
+
169
+ # Status of the business card lookup: 'success', 'error', or 'pending'
170
+ sig { returns(String) }
171
+ attr_accessor :status
172
+
173
+ # Error message if business card lookup failed
174
+ sig { returns(T.nilable(String)) }
175
+ attr_accessor :error
176
+
177
+ # Business card information for the Peppol participant
178
+ sig do
179
+ params(
180
+ entities:
181
+ T::Array[
182
+ EInvoiceAPI::Models::LookupRetrieveResponse::BusinessCard::Entity::OrHash
183
+ ],
184
+ query_time_ms: Float,
185
+ status: String,
186
+ error: T.nilable(String)
187
+ ).returns(T.attached_class)
188
+ end
189
+ def self.new(
190
+ # List of business entities associated with the Peppol ID
191
+ entities:,
192
+ # Time taken to query the business card in milliseconds
193
+ query_time_ms:,
194
+ # Status of the business card lookup: 'success', 'error', or 'pending'
195
+ status:,
196
+ # Error message if business card lookup failed
197
+ error: nil
198
+ )
199
+ end
200
+
201
+ sig do
202
+ override.returns(
203
+ {
204
+ entities:
205
+ T::Array[
206
+ EInvoiceAPI::Models::LookupRetrieveResponse::BusinessCard::Entity
207
+ ],
208
+ query_time_ms: Float,
209
+ status: String,
210
+ error: T.nilable(String)
211
+ }
212
+ )
213
+ end
214
+ def to_hash
215
+ end
216
+
217
+ class Entity < EInvoiceAPI::Internal::Type::BaseModel
218
+ OrHash =
219
+ T.type_alias do
220
+ T.any(
221
+ EInvoiceAPI::Models::LookupRetrieveResponse::BusinessCard::Entity,
222
+ EInvoiceAPI::Internal::AnyHash
223
+ )
224
+ end
225
+
226
+ # Additional information about the business entity
227
+ sig { returns(T.nilable(T::Array[String])) }
228
+ attr_accessor :additional_information
229
+
230
+ # ISO 3166-1 alpha-2 country code of the business entity
231
+ sig { returns(T.nilable(String)) }
232
+ attr_accessor :country_code
233
+
234
+ # Name of the business entity
235
+ sig { returns(T.nilable(String)) }
236
+ attr_accessor :name
237
+
238
+ # ISO 8601 date of when the entity was registered in Peppol
239
+ sig { returns(T.nilable(String)) }
240
+ attr_accessor :registration_date
241
+
242
+ # Business entity information in the Peppol network.
243
+ sig do
244
+ params(
245
+ additional_information: T.nilable(T::Array[String]),
246
+ country_code: T.nilable(String),
247
+ name: T.nilable(String),
248
+ registration_date: T.nilable(String)
249
+ ).returns(T.attached_class)
250
+ end
251
+ def self.new(
252
+ # Additional information about the business entity
253
+ additional_information: nil,
254
+ # ISO 3166-1 alpha-2 country code of the business entity
255
+ country_code: nil,
256
+ # Name of the business entity
257
+ name: nil,
258
+ # ISO 8601 date of when the entity was registered in Peppol
259
+ registration_date: nil
260
+ )
261
+ end
262
+
263
+ sig do
264
+ override.returns(
265
+ {
266
+ additional_information: T.nilable(T::Array[String]),
267
+ country_code: T.nilable(String),
268
+ name: T.nilable(String),
269
+ registration_date: T.nilable(String)
270
+ }
271
+ )
272
+ end
273
+ def to_hash
274
+ end
275
+ end
276
+ end
277
+
278
+ class DNSInfo < EInvoiceAPI::Internal::Type::BaseModel
279
+ OrHash =
280
+ T.type_alias do
281
+ T.any(
282
+ EInvoiceAPI::Models::LookupRetrieveResponse::DNSInfo,
283
+ EInvoiceAPI::Internal::AnyHash
284
+ )
285
+ end
286
+
287
+ # List of DNS records found for the Peppol participant
288
+ sig do
289
+ returns(
290
+ T::Array[
291
+ EInvoiceAPI::Models::LookupRetrieveResponse::DNSInfo::DNSRecord
292
+ ]
293
+ )
294
+ end
295
+ attr_accessor :dns_records
296
+
297
+ # Hostname of the SML used for the query
298
+ sig { returns(String) }
299
+ attr_accessor :sml_hostname
300
+
301
+ # Status of the DNS lookup: 'success', 'error', or 'pending'
302
+ sig { returns(String) }
303
+ attr_accessor :status
304
+
305
+ # Error message if the DNS lookup failed
306
+ sig { returns(T.nilable(String)) }
307
+ attr_accessor :error
308
+
309
+ # Information about the DNS lookup performed
310
+ sig do
311
+ params(
312
+ dns_records:
313
+ T::Array[
314
+ EInvoiceAPI::Models::LookupRetrieveResponse::DNSInfo::DNSRecord::OrHash
315
+ ],
316
+ sml_hostname: String,
317
+ status: String,
318
+ error: T.nilable(String)
319
+ ).returns(T.attached_class)
320
+ end
321
+ def self.new(
322
+ # List of DNS records found for the Peppol participant
323
+ dns_records:,
324
+ # Hostname of the SML used for the query
325
+ sml_hostname:,
326
+ # Status of the DNS lookup: 'success', 'error', or 'pending'
327
+ status:,
328
+ # Error message if the DNS lookup failed
329
+ error: nil
330
+ )
331
+ end
332
+
333
+ sig do
334
+ override.returns(
335
+ {
336
+ dns_records:
337
+ T::Array[
338
+ EInvoiceAPI::Models::LookupRetrieveResponse::DNSInfo::DNSRecord
339
+ ],
340
+ sml_hostname: String,
341
+ status: String,
342
+ error: T.nilable(String)
343
+ }
344
+ )
345
+ end
346
+ def to_hash
347
+ end
348
+
349
+ class DNSRecord < EInvoiceAPI::Internal::Type::BaseModel
350
+ OrHash =
351
+ T.type_alias do
352
+ T.any(
353
+ EInvoiceAPI::Models::LookupRetrieveResponse::DNSInfo::DNSRecord,
354
+ EInvoiceAPI::Internal::AnyHash
355
+ )
356
+ end
357
+
358
+ # IP address found in the DNS record
359
+ sig { returns(String) }
360
+ attr_accessor :ip
361
+
362
+ # DNS record information for a Peppol participant.
363
+ sig { params(ip: String).returns(T.attached_class) }
364
+ def self.new(
365
+ # IP address found in the DNS record
366
+ ip:
367
+ )
368
+ end
369
+
370
+ sig { override.returns({ ip: String }) }
371
+ def to_hash
372
+ end
373
+ end
374
+ end
375
+
376
+ class QueryMetadata < EInvoiceAPI::Internal::Type::BaseModel
377
+ OrHash =
378
+ T.type_alias do
379
+ T.any(
380
+ EInvoiceAPI::Models::LookupRetrieveResponse::QueryMetadata,
381
+ EInvoiceAPI::Internal::AnyHash
382
+ )
383
+ end
384
+
385
+ # Scheme of the identifier, typically 'iso6523-actorid-upis'
386
+ sig { returns(String) }
387
+ attr_accessor :identifier_scheme
388
+
389
+ # The actual Peppol ID value being queried
390
+ sig { returns(String) }
391
+ attr_accessor :identifier_value
392
+
393
+ # Domain of the SML (Service Metadata Locator) used for the lookup
394
+ sig { returns(String) }
395
+ attr_accessor :sml_domain
396
+
397
+ # ISO 8601 timestamp of when the query was executed
398
+ sig { returns(String) }
399
+ attr_accessor :timestamp
400
+
401
+ # Version of the API used for the lookup
402
+ sig { returns(String) }
403
+ attr_accessor :version
404
+
405
+ # Metadata about the query that was performed
406
+ sig do
407
+ params(
408
+ identifier_scheme: String,
409
+ identifier_value: String,
410
+ sml_domain: String,
411
+ timestamp: String,
412
+ version: String
413
+ ).returns(T.attached_class)
414
+ end
415
+ def self.new(
416
+ # Scheme of the identifier, typically 'iso6523-actorid-upis'
417
+ identifier_scheme:,
418
+ # The actual Peppol ID value being queried
419
+ identifier_value:,
420
+ # Domain of the SML (Service Metadata Locator) used for the lookup
421
+ sml_domain:,
422
+ # ISO 8601 timestamp of when the query was executed
423
+ timestamp:,
424
+ # Version of the API used for the lookup
425
+ version:
426
+ )
427
+ end
428
+
429
+ sig do
430
+ override.returns(
431
+ {
432
+ identifier_scheme: String,
433
+ identifier_value: String,
434
+ sml_domain: String,
435
+ timestamp: String,
436
+ version: String
437
+ }
438
+ )
439
+ end
440
+ def to_hash
441
+ end
442
+ end
443
+
444
+ class ServiceMetadata < EInvoiceAPI::Internal::Type::BaseModel
445
+ OrHash =
446
+ T.type_alias do
447
+ T.any(
448
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata,
449
+ EInvoiceAPI::Internal::AnyHash
450
+ )
451
+ end
452
+
453
+ # List of endpoints found for the Peppol participant
454
+ sig do
455
+ returns(
456
+ T::Array[
457
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata::Endpoint
458
+ ]
459
+ )
460
+ end
461
+ attr_accessor :endpoints
462
+
463
+ # Time taken to query the service metadata in milliseconds
464
+ sig { returns(Float) }
465
+ attr_accessor :query_time_ms
466
+
467
+ # Status of the service metadata lookup: 'success', 'error', or 'pending'
468
+ sig { returns(String) }
469
+ attr_accessor :status
470
+
471
+ # Error message if service metadata lookup failed
472
+ sig { returns(T.nilable(String)) }
473
+ attr_accessor :error
474
+
475
+ # Service metadata information for the Peppol participant
476
+ sig do
477
+ params(
478
+ endpoints:
479
+ T::Array[
480
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata::Endpoint::OrHash
481
+ ],
482
+ query_time_ms: Float,
483
+ status: String,
484
+ error: T.nilable(String)
485
+ ).returns(T.attached_class)
486
+ end
487
+ def self.new(
488
+ # List of endpoints found for the Peppol participant
489
+ endpoints:,
490
+ # Time taken to query the service metadata in milliseconds
491
+ query_time_ms:,
492
+ # Status of the service metadata lookup: 'success', 'error', or 'pending'
493
+ status:,
494
+ # Error message if service metadata lookup failed
495
+ error: nil
496
+ )
497
+ end
498
+
499
+ sig do
500
+ override.returns(
501
+ {
502
+ endpoints:
503
+ T::Array[
504
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata::Endpoint
505
+ ],
506
+ query_time_ms: Float,
507
+ status: String,
508
+ error: T.nilable(String)
509
+ }
510
+ )
511
+ end
512
+ def to_hash
513
+ end
514
+
515
+ class Endpoint < EInvoiceAPI::Internal::Type::BaseModel
516
+ OrHash =
517
+ T.type_alias do
518
+ T.any(
519
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata::Endpoint,
520
+ EInvoiceAPI::Internal::AnyHash
521
+ )
522
+ end
523
+
524
+ # List of document types supported by this endpoint
525
+ sig do
526
+ returns(
527
+ T::Array[
528
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata::Endpoint::DocumentType
529
+ ]
530
+ )
531
+ end
532
+ attr_accessor :document_types
533
+
534
+ # Status of the endpoint lookup: 'success', 'error', or 'pending'
535
+ sig { returns(String) }
536
+ attr_accessor :status
537
+
538
+ # URL of the endpoint
539
+ sig { returns(String) }
540
+ attr_accessor :url
541
+
542
+ # Error message if endpoint lookup failed
543
+ sig { returns(T.nilable(String)) }
544
+ attr_accessor :error
545
+
546
+ # List of processes supported by this endpoint
547
+ sig do
548
+ returns(
549
+ T.nilable(
550
+ T::Array[
551
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata::Endpoint::Process
552
+ ]
553
+ )
554
+ )
555
+ end
556
+ attr_accessor :processes
557
+
558
+ # Information about a Peppol participant's endpoint.
559
+ sig do
560
+ params(
561
+ document_types:
562
+ T::Array[
563
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata::Endpoint::DocumentType::OrHash
564
+ ],
565
+ status: String,
566
+ url: String,
567
+ error: T.nilable(String),
568
+ processes:
569
+ T.nilable(
570
+ T::Array[
571
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata::Endpoint::Process::OrHash
572
+ ]
573
+ )
574
+ ).returns(T.attached_class)
575
+ end
576
+ def self.new(
577
+ # List of document types supported by this endpoint
578
+ document_types:,
579
+ # Status of the endpoint lookup: 'success', 'error', or 'pending'
580
+ status:,
581
+ # URL of the endpoint
582
+ url:,
583
+ # Error message if endpoint lookup failed
584
+ error: nil,
585
+ # List of processes supported by this endpoint
586
+ processes: nil
587
+ )
588
+ end
589
+
590
+ sig do
591
+ override.returns(
592
+ {
593
+ document_types:
594
+ T::Array[
595
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata::Endpoint::DocumentType
596
+ ],
597
+ status: String,
598
+ url: String,
599
+ error: T.nilable(String),
600
+ processes:
601
+ T.nilable(
602
+ T::Array[
603
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata::Endpoint::Process
604
+ ]
605
+ )
606
+ }
607
+ )
608
+ end
609
+ def to_hash
610
+ end
611
+
612
+ class DocumentType < EInvoiceAPI::Internal::Type::BaseModel
613
+ OrHash =
614
+ T.type_alias do
615
+ T.any(
616
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata::Endpoint::DocumentType,
617
+ EInvoiceAPI::Internal::AnyHash
618
+ )
619
+ end
620
+
621
+ # Scheme of the document type identifier
622
+ sig { returns(String) }
623
+ attr_accessor :scheme
624
+
625
+ # Value of the document type identifier
626
+ sig { returns(String) }
627
+ attr_accessor :value
628
+
629
+ # Document type supported by a Peppol participant.
630
+ sig do
631
+ params(scheme: String, value: String).returns(T.attached_class)
632
+ end
633
+ def self.new(
634
+ # Scheme of the document type identifier
635
+ scheme:,
636
+ # Value of the document type identifier
637
+ value:
638
+ )
639
+ end
640
+
641
+ sig { override.returns({ scheme: String, value: String }) }
642
+ def to_hash
643
+ end
644
+ end
645
+
646
+ class Process < EInvoiceAPI::Internal::Type::BaseModel
647
+ OrHash =
648
+ T.type_alias do
649
+ T.any(
650
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata::Endpoint::Process,
651
+ EInvoiceAPI::Internal::AnyHash
652
+ )
653
+ end
654
+
655
+ # List of endpoints supporting this process
656
+ sig do
657
+ returns(
658
+ T::Array[
659
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata::Endpoint::Process::Endpoint
660
+ ]
661
+ )
662
+ end
663
+ attr_accessor :endpoints
664
+
665
+ # Identifier of the process
666
+ sig do
667
+ returns(
668
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata::Endpoint::Process::ProcessID
669
+ )
670
+ end
671
+ attr_reader :process_id
672
+
673
+ sig do
674
+ params(
675
+ process_id:
676
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata::Endpoint::Process::ProcessID::OrHash
677
+ ).void
678
+ end
679
+ attr_writer :process_id
680
+
681
+ # Process information in the Peppol network.
682
+ sig do
683
+ params(
684
+ endpoints:
685
+ T::Array[
686
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata::Endpoint::Process::Endpoint::OrHash
687
+ ],
688
+ process_id:
689
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata::Endpoint::Process::ProcessID::OrHash
690
+ ).returns(T.attached_class)
691
+ end
692
+ def self.new(
693
+ # List of endpoints supporting this process
694
+ endpoints:,
695
+ # Identifier of the process
696
+ process_id:
697
+ )
698
+ end
699
+
700
+ sig do
701
+ override.returns(
702
+ {
703
+ endpoints:
704
+ T::Array[
705
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata::Endpoint::Process::Endpoint
706
+ ],
707
+ process_id:
708
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata::Endpoint::Process::ProcessID
709
+ }
710
+ )
711
+ end
712
+ def to_hash
713
+ end
714
+
715
+ class Endpoint < EInvoiceAPI::Internal::Type::BaseModel
716
+ OrHash =
717
+ T.type_alias do
718
+ T.any(
719
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata::Endpoint::Process::Endpoint,
720
+ EInvoiceAPI::Internal::AnyHash
721
+ )
722
+ end
723
+
724
+ # URL or address of the endpoint
725
+ sig { returns(String) }
726
+ attr_accessor :address
727
+
728
+ # Transport profile used by this endpoint
729
+ sig { returns(String) }
730
+ attr_accessor :transport_profile
731
+
732
+ # Certificate information for a Peppol endpoint.
733
+ sig { returns(T.nilable(EInvoiceAPI::Certificate)) }
734
+ attr_reader :certificate
735
+
736
+ sig do
737
+ params(
738
+ certificate: T.nilable(EInvoiceAPI::Certificate::OrHash)
739
+ ).void
740
+ end
741
+ attr_writer :certificate
742
+
743
+ # ISO 8601 date when the service was activated
744
+ sig { returns(T.nilable(String)) }
745
+ attr_accessor :service_activation_date
746
+
747
+ # Human-readable description of the service
748
+ sig { returns(T.nilable(String)) }
749
+ attr_accessor :service_description
750
+
751
+ # ISO 8601 date when the service will expire
752
+ sig { returns(T.nilable(String)) }
753
+ attr_accessor :service_expiration_date
754
+
755
+ # URL for technical contact information
756
+ sig { returns(T.nilable(String)) }
757
+ attr_accessor :technical_contact_url
758
+
759
+ # URL for technical documentation
760
+ sig { returns(T.nilable(String)) }
761
+ attr_accessor :technical_information_url
762
+
763
+ # Endpoint information for a specific Peppol process.
764
+ sig do
765
+ params(
766
+ address: String,
767
+ transport_profile: String,
768
+ certificate: T.nilable(EInvoiceAPI::Certificate::OrHash),
769
+ service_activation_date: T.nilable(String),
770
+ service_description: T.nilable(String),
771
+ service_expiration_date: T.nilable(String),
772
+ technical_contact_url: T.nilable(String),
773
+ technical_information_url: T.nilable(String)
774
+ ).returns(T.attached_class)
775
+ end
776
+ def self.new(
777
+ # URL or address of the endpoint
778
+ address:,
779
+ # Transport profile used by this endpoint
780
+ transport_profile:,
781
+ # Certificate information for a Peppol endpoint.
782
+ certificate: nil,
783
+ # ISO 8601 date when the service was activated
784
+ service_activation_date: nil,
785
+ # Human-readable description of the service
786
+ service_description: nil,
787
+ # ISO 8601 date when the service will expire
788
+ service_expiration_date: nil,
789
+ # URL for technical contact information
790
+ technical_contact_url: nil,
791
+ # URL for technical documentation
792
+ technical_information_url: nil
793
+ )
794
+ end
795
+
796
+ sig do
797
+ override.returns(
798
+ {
799
+ address: String,
800
+ transport_profile: String,
801
+ certificate: T.nilable(EInvoiceAPI::Certificate),
802
+ service_activation_date: T.nilable(String),
803
+ service_description: T.nilable(String),
804
+ service_expiration_date: T.nilable(String),
805
+ technical_contact_url: T.nilable(String),
806
+ technical_information_url: T.nilable(String)
807
+ }
808
+ )
809
+ end
810
+ def to_hash
811
+ end
812
+ end
813
+
814
+ class ProcessID < EInvoiceAPI::Internal::Type::BaseModel
815
+ OrHash =
816
+ T.type_alias do
817
+ T.any(
818
+ EInvoiceAPI::Models::LookupRetrieveResponse::ServiceMetadata::Endpoint::Process::ProcessID,
819
+ EInvoiceAPI::Internal::AnyHash
820
+ )
821
+ end
822
+
823
+ # Scheme of the process identifier
824
+ sig { returns(String) }
825
+ attr_accessor :scheme
826
+
827
+ # Value of the process identifier
828
+ sig { returns(String) }
829
+ attr_accessor :value
830
+
831
+ # Identifier of the process
832
+ sig do
833
+ params(scheme: String, value: String).returns(T.attached_class)
834
+ end
835
+ def self.new(
836
+ # Scheme of the process identifier
837
+ scheme:,
838
+ # Value of the process identifier
839
+ value:
840
+ )
841
+ end
842
+
843
+ sig { override.returns({ scheme: String, value: String }) }
844
+ def to_hash
845
+ end
846
+ end
847
+ end
848
+ end
849
+ end
850
+ end
851
+ end
852
+ end