e-invoice-api 0.1.3 → 0.2.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 97cf9266ef511ea8793fef1083f86c57456fdea1d6f6cf4308a4aafda12179ee
4
- data.tar.gz: 54d81218c99d17691c4bb58ff84bca5c8f1c26953028b11d68aa6b45f176aa8f
3
+ metadata.gz: 7abd4e9f882f09d5deaf9badc11b80bf1f72aaf0ddbeca15f40ec9a09f86c63a
4
+ data.tar.gz: 8f887eb64cc01afba738f5c4aa8e07c354b9d2be27d9a915289780642a7bbebf
5
5
  SHA512:
6
- metadata.gz: 7f13c0d02d9ff969e9aa812960acbda310e00158e9a92fbf40da917be452fd016dd4570770bfb28b7f400b86e82ec2e8b4757eafe3015dac0d7a1d73b0d2ae45
7
- data.tar.gz: 865534bbf7483032aa8beff0d1f194d68748fe8950216d0b6f9db5c7aa71d3aeccf3a03823e4cc7b73c4273ff226a5d2978d812099a5e14736402dfaea366070
6
+ metadata.gz: 422476590fa4a603fd348bb917e7904ad11dce1854f752041283b51b65c9532b55147b4f63c2a0357957ea521b61e6f6635b328736a256978e269778d9f57689
7
+ data.tar.gz: 45ad05d2208b99a1ef74c8685fd44c05d67ecfff5af222a21918b49b94e70407bc0c83cb39a73a50b771d0cbc84483b6145af552a49dad3333046b70a516cf75
data/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.2.0 (2025-07-14)
4
+
5
+ Full Changelog: [v0.1.3...v0.2.0](https://github.com/e-invoice-be/e-invoice-rb/compare/v0.1.3...v0.2.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** manual updates ([54948dd](https://github.com/e-invoice-be/e-invoice-rb/commit/54948dddae65c22153c2543e9ce60736cec1fb3f))
10
+
11
+
12
+ ### Chores
13
+
14
+ * **internal:** version bump ([65b76f9](https://github.com/e-invoice-be/e-invoice-rb/commit/65b76f9bc4d9f337b9ee3ae8e12c93ed876fdbf0))
15
+
3
16
  ## 0.1.3 (2025-07-01)
4
17
 
5
18
  Full Changelog: [v0.1.2...v0.1.3](https://github.com/e-invoice-be/e-invoice-rb/compare/v0.1.2...v0.1.3)
data/README.md CHANGED
@@ -17,7 +17,7 @@ To use this gem, install via Bundler by adding the following to your application
17
17
  <!-- x-release-please-start-version -->
18
18
 
19
19
  ```ruby
20
- gem "e-invoice-api", "~> 0.1.3"
20
+ gem "e-invoice-api", "~> 0.2.0"
21
21
  ```
22
22
 
23
23
  <!-- x-release-please-end -->
@@ -0,0 +1,34 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EInvoiceAPI
4
+ module Models
5
+ # @see EInvoiceAPI::Resources::Lookup#retrieve_participants
6
+ class LookupRetrieveParticipantsParams < EInvoiceAPI::Internal::Type::BaseModel
7
+ extend EInvoiceAPI::Internal::Type::RequestParameters::Converter
8
+ include EInvoiceAPI::Internal::Type::RequestParameters
9
+
10
+ # @!attribute query
11
+ # Query to lookup
12
+ #
13
+ # @return [String]
14
+ required :query, String
15
+
16
+ # @!attribute country_code
17
+ # Country code of the company to lookup. If not provided, the search will be
18
+ # global.
19
+ #
20
+ # @return [String, nil]
21
+ optional :country_code, String, nil?: true
22
+
23
+ # @!method initialize(query:, country_code: nil, request_options: {})
24
+ # Some parameter documentations has been truncated, see
25
+ # {EInvoiceAPI::Models::LookupRetrieveParticipantsParams} for more details.
26
+ #
27
+ # @param query [String] Query to lookup
28
+ #
29
+ # @param country_code [String, nil] Country code of the company to lookup. If not provided, the search will be globa
30
+ #
31
+ # @param request_options [EInvoiceAPI::RequestOptions, Hash{Symbol=>Object}]
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,195 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EInvoiceAPI
4
+ module Models
5
+ # @see EInvoiceAPI::Resources::Lookup#retrieve_participants
6
+ class LookupRetrieveParticipantsResponse < EInvoiceAPI::Internal::Type::BaseModel
7
+ # @!attribute query_terms
8
+ # Query terms used for search
9
+ #
10
+ # @return [String]
11
+ required :query_terms, String
12
+
13
+ # @!attribute search_date
14
+ # Search date of the result
15
+ #
16
+ # @return [String]
17
+ required :search_date, String
18
+
19
+ # @!attribute total_count
20
+ # Total number of results
21
+ #
22
+ # @return [Integer]
23
+ required :total_count, Integer
24
+
25
+ # @!attribute used_count
26
+ # Number of results returned by the API
27
+ #
28
+ # @return [Integer]
29
+ required :used_count, Integer
30
+
31
+ # @!attribute participants
32
+ # List of participants
33
+ #
34
+ # @return [Array<EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant>, nil]
35
+ optional :participants,
36
+ -> { EInvoiceAPI::Internal::Type::ArrayOf[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant] }
37
+
38
+ # @!method initialize(query_terms:, search_date:, total_count:, used_count:, participants: nil)
39
+ # Represents the result of a Peppol directory search
40
+ #
41
+ # @param query_terms [String] Query terms used for search
42
+ #
43
+ # @param search_date [String] Search date of the result
44
+ #
45
+ # @param total_count [Integer] Total number of results
46
+ #
47
+ # @param used_count [Integer] Number of results returned by the API
48
+ #
49
+ # @param participants [Array<EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant>] List of participants
50
+
51
+ class Participant < EInvoiceAPI::Internal::Type::BaseModel
52
+ # @!attribute peppol_id
53
+ # Peppol ID of the participant
54
+ #
55
+ # @return [String]
56
+ required :peppol_id, String
57
+
58
+ # @!attribute peppol_scheme
59
+ # Peppol scheme of the participant
60
+ #
61
+ # @return [String]
62
+ required :peppol_scheme, String
63
+
64
+ # @!attribute document_types
65
+ # List of supported document types
66
+ #
67
+ # @return [Array<EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::DocumentType>, nil]
68
+ optional :document_types,
69
+ -> { EInvoiceAPI::Internal::Type::ArrayOf[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::DocumentType] }
70
+
71
+ # @!attribute entities
72
+ # List of business entities
73
+ #
74
+ # @return [Array<EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity>, nil]
75
+ optional :entities,
76
+ -> { EInvoiceAPI::Internal::Type::ArrayOf[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity] }
77
+
78
+ # @!method initialize(peppol_id:, peppol_scheme:, document_types: nil, entities: nil)
79
+ # Represents a Peppol participant with their details
80
+ #
81
+ # @param peppol_id [String] Peppol ID of the participant
82
+ #
83
+ # @param peppol_scheme [String] Peppol scheme of the participant
84
+ #
85
+ # @param document_types [Array<EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::DocumentType>] List of supported document types
86
+ #
87
+ # @param entities [Array<EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity>] List of business entities
88
+
89
+ class DocumentType < EInvoiceAPI::Internal::Type::BaseModel
90
+ # @!attribute scheme
91
+ # Document type scheme
92
+ #
93
+ # @return [String]
94
+ required :scheme, String
95
+
96
+ # @!attribute value
97
+ # Document type value
98
+ #
99
+ # @return [String]
100
+ required :value, String
101
+
102
+ # @!method initialize(scheme:, value:)
103
+ # Represents a supported document type
104
+ #
105
+ # @param scheme [String] Document type scheme
106
+ #
107
+ # @param value [String] Document type value
108
+ end
109
+
110
+ class Entity < EInvoiceAPI::Internal::Type::BaseModel
111
+ # @!attribute additional_info
112
+ # Additional information
113
+ #
114
+ # @return [String, nil]
115
+ optional :additional_info, String, nil?: true
116
+
117
+ # @!attribute country_code
118
+ # Country code
119
+ #
120
+ # @return [String, nil]
121
+ optional :country_code, String, nil?: true
122
+
123
+ # @!attribute geo_info
124
+ # Geographic information
125
+ #
126
+ # @return [String, nil]
127
+ optional :geo_info, String, nil?: true
128
+
129
+ # @!attribute identifiers
130
+ # List of business identifiers
131
+ #
132
+ # @return [Array<EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity::Identifier>, nil]
133
+ optional :identifiers,
134
+ -> { EInvoiceAPI::Internal::Type::ArrayOf[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity::Identifier] }
135
+
136
+ # @!attribute name
137
+ # Business entity name
138
+ #
139
+ # @return [String, nil]
140
+ optional :name, String, nil?: true
141
+
142
+ # @!attribute registration_date
143
+ # Registration date
144
+ #
145
+ # @return [String, nil]
146
+ optional :registration_date, String, nil?: true
147
+
148
+ # @!attribute website
149
+ # Website URL
150
+ #
151
+ # @return [String, nil]
152
+ optional :website, String, nil?: true
153
+
154
+ # @!method initialize(additional_info: nil, country_code: nil, geo_info: nil, identifiers: nil, name: nil, registration_date: nil, website: nil)
155
+ # Represents a business entity
156
+ #
157
+ # @param additional_info [String, nil] Additional information
158
+ #
159
+ # @param country_code [String, nil] Country code
160
+ #
161
+ # @param geo_info [String, nil] Geographic information
162
+ #
163
+ # @param identifiers [Array<EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity::Identifier>] List of business identifiers
164
+ #
165
+ # @param name [String, nil] Business entity name
166
+ #
167
+ # @param registration_date [String, nil] Registration date
168
+ #
169
+ # @param website [String, nil] Website URL
170
+
171
+ class Identifier < EInvoiceAPI::Internal::Type::BaseModel
172
+ # @!attribute scheme
173
+ # Identifier scheme
174
+ #
175
+ # @return [String]
176
+ required :scheme, String
177
+
178
+ # @!attribute value
179
+ # Identifier value
180
+ #
181
+ # @return [String]
182
+ required :value, String
183
+
184
+ # @!method initialize(scheme:, value:)
185
+ # Represents a business identifier
186
+ #
187
+ # @param scheme [String] Identifier scheme
188
+ #
189
+ # @param value [String] Identifier value
190
+ end
191
+ end
192
+ end
193
+ end
194
+ end
195
+ end
@@ -73,6 +73,8 @@ module EInvoiceAPI
73
73
 
74
74
  LookupRetrieveParams = EInvoiceAPI::Models::LookupRetrieveParams
75
75
 
76
+ LookupRetrieveParticipantsParams = EInvoiceAPI::Models::LookupRetrieveParticipantsParams
77
+
76
78
  OutboxListDraftDocumentsParams = EInvoiceAPI::Models::OutboxListDraftDocumentsParams
77
79
 
78
80
  OutboxListReceivedDocumentsParams = EInvoiceAPI::Models::OutboxListReceivedDocumentsParams
@@ -32,6 +32,34 @@ module EInvoiceAPI
32
32
  )
33
33
  end
34
34
 
35
+ # Some parameter documentations has been truncated, see
36
+ # {EInvoiceAPI::Models::LookupRetrieveParticipantsParams} for more details.
37
+ #
38
+ # Lookup Peppol participants by name or other identifiers. You can limit the
39
+ # search to a specific country by providing the country code.
40
+ #
41
+ # @overload retrieve_participants(query:, country_code: nil, request_options: {})
42
+ #
43
+ # @param query [String] Query to lookup
44
+ #
45
+ # @param country_code [String, nil] Country code of the company to lookup. If not provided, the search will be globa
46
+ #
47
+ # @param request_options [EInvoiceAPI::RequestOptions, Hash{Symbol=>Object}, nil]
48
+ #
49
+ # @return [EInvoiceAPI::Models::LookupRetrieveParticipantsResponse]
50
+ #
51
+ # @see EInvoiceAPI::Models::LookupRetrieveParticipantsParams
52
+ def retrieve_participants(params)
53
+ parsed, options = EInvoiceAPI::LookupRetrieveParticipantsParams.dump_request(params)
54
+ @client.request(
55
+ method: :get,
56
+ path: "api/lookup/participants",
57
+ query: parsed,
58
+ model: EInvoiceAPI::Models::LookupRetrieveParticipantsResponse,
59
+ options: options
60
+ )
61
+ end
62
+
35
63
  # @api private
36
64
  #
37
65
  # @param client [EInvoiceAPI::Client]
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EInvoiceAPI
4
- VERSION = "0.1.3"
4
+ VERSION = "0.2.0"
5
5
  end
data/lib/e_invoice_api.rb CHANGED
@@ -77,6 +77,8 @@ require_relative "e_invoice_api/models/inbox_list_credit_notes_params"
77
77
  require_relative "e_invoice_api/models/inbox_list_invoices_params"
78
78
  require_relative "e_invoice_api/models/inbox_list_params"
79
79
  require_relative "e_invoice_api/models/lookup_retrieve_params"
80
+ require_relative "e_invoice_api/models/lookup_retrieve_participants_params"
81
+ require_relative "e_invoice_api/models/lookup_retrieve_participants_response"
80
82
  require_relative "e_invoice_api/models/lookup_retrieve_response"
81
83
  require_relative "e_invoice_api/models/outbox_list_draft_documents_params"
82
84
  require_relative "e_invoice_api/models/outbox_list_received_documents_params"
@@ -0,0 +1,56 @@
1
+ # typed: strong
2
+
3
+ module EInvoiceAPI
4
+ module Models
5
+ class LookupRetrieveParticipantsParams < 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::LookupRetrieveParticipantsParams,
13
+ EInvoiceAPI::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ # Query to lookup
18
+ sig { returns(String) }
19
+ attr_accessor :query
20
+
21
+ # Country code of the company to lookup. If not provided, the search will be
22
+ # global.
23
+ sig { returns(T.nilable(String)) }
24
+ attr_accessor :country_code
25
+
26
+ sig do
27
+ params(
28
+ query: String,
29
+ country_code: T.nilable(String),
30
+ request_options: EInvoiceAPI::RequestOptions::OrHash
31
+ ).returns(T.attached_class)
32
+ end
33
+ def self.new(
34
+ # Query to lookup
35
+ query:,
36
+ # Country code of the company to lookup. If not provided, the search will be
37
+ # global.
38
+ country_code: nil,
39
+ request_options: {}
40
+ )
41
+ end
42
+
43
+ sig do
44
+ override.returns(
45
+ {
46
+ query: String,
47
+ country_code: T.nilable(String),
48
+ request_options: EInvoiceAPI::RequestOptions
49
+ }
50
+ )
51
+ end
52
+ def to_hash
53
+ end
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,381 @@
1
+ # typed: strong
2
+
3
+ module EInvoiceAPI
4
+ module Models
5
+ class LookupRetrieveParticipantsResponse < EInvoiceAPI::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ EInvoiceAPI::Models::LookupRetrieveParticipantsResponse,
10
+ EInvoiceAPI::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # Query terms used for search
15
+ sig { returns(String) }
16
+ attr_accessor :query_terms
17
+
18
+ # Search date of the result
19
+ sig { returns(String) }
20
+ attr_accessor :search_date
21
+
22
+ # Total number of results
23
+ sig { returns(Integer) }
24
+ attr_accessor :total_count
25
+
26
+ # Number of results returned by the API
27
+ sig { returns(Integer) }
28
+ attr_accessor :used_count
29
+
30
+ # List of participants
31
+ sig do
32
+ returns(
33
+ T.nilable(
34
+ T::Array[
35
+ EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant
36
+ ]
37
+ )
38
+ )
39
+ end
40
+ attr_reader :participants
41
+
42
+ sig do
43
+ params(
44
+ participants:
45
+ T::Array[
46
+ EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::OrHash
47
+ ]
48
+ ).void
49
+ end
50
+ attr_writer :participants
51
+
52
+ # Represents the result of a Peppol directory search
53
+ sig do
54
+ params(
55
+ query_terms: String,
56
+ search_date: String,
57
+ total_count: Integer,
58
+ used_count: Integer,
59
+ participants:
60
+ T::Array[
61
+ EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::OrHash
62
+ ]
63
+ ).returns(T.attached_class)
64
+ end
65
+ def self.new(
66
+ # Query terms used for search
67
+ query_terms:,
68
+ # Search date of the result
69
+ search_date:,
70
+ # Total number of results
71
+ total_count:,
72
+ # Number of results returned by the API
73
+ used_count:,
74
+ # List of participants
75
+ participants: nil
76
+ )
77
+ end
78
+
79
+ sig do
80
+ override.returns(
81
+ {
82
+ query_terms: String,
83
+ search_date: String,
84
+ total_count: Integer,
85
+ used_count: Integer,
86
+ participants:
87
+ T::Array[
88
+ EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant
89
+ ]
90
+ }
91
+ )
92
+ end
93
+ def to_hash
94
+ end
95
+
96
+ class Participant < EInvoiceAPI::Internal::Type::BaseModel
97
+ OrHash =
98
+ T.type_alias do
99
+ T.any(
100
+ EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant,
101
+ EInvoiceAPI::Internal::AnyHash
102
+ )
103
+ end
104
+
105
+ # Peppol ID of the participant
106
+ sig { returns(String) }
107
+ attr_accessor :peppol_id
108
+
109
+ # Peppol scheme of the participant
110
+ sig { returns(String) }
111
+ attr_accessor :peppol_scheme
112
+
113
+ # List of supported document types
114
+ sig do
115
+ returns(
116
+ T.nilable(
117
+ T::Array[
118
+ EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::DocumentType
119
+ ]
120
+ )
121
+ )
122
+ end
123
+ attr_reader :document_types
124
+
125
+ sig do
126
+ params(
127
+ document_types:
128
+ T::Array[
129
+ EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::DocumentType::OrHash
130
+ ]
131
+ ).void
132
+ end
133
+ attr_writer :document_types
134
+
135
+ # List of business entities
136
+ sig do
137
+ returns(
138
+ T.nilable(
139
+ T::Array[
140
+ EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity
141
+ ]
142
+ )
143
+ )
144
+ end
145
+ attr_reader :entities
146
+
147
+ sig do
148
+ params(
149
+ entities:
150
+ T::Array[
151
+ EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity::OrHash
152
+ ]
153
+ ).void
154
+ end
155
+ attr_writer :entities
156
+
157
+ # Represents a Peppol participant with their details
158
+ sig do
159
+ params(
160
+ peppol_id: String,
161
+ peppol_scheme: String,
162
+ document_types:
163
+ T::Array[
164
+ EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::DocumentType::OrHash
165
+ ],
166
+ entities:
167
+ T::Array[
168
+ EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity::OrHash
169
+ ]
170
+ ).returns(T.attached_class)
171
+ end
172
+ def self.new(
173
+ # Peppol ID of the participant
174
+ peppol_id:,
175
+ # Peppol scheme of the participant
176
+ peppol_scheme:,
177
+ # List of supported document types
178
+ document_types: nil,
179
+ # List of business entities
180
+ entities: nil
181
+ )
182
+ end
183
+
184
+ sig do
185
+ override.returns(
186
+ {
187
+ peppol_id: String,
188
+ peppol_scheme: String,
189
+ document_types:
190
+ T::Array[
191
+ EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::DocumentType
192
+ ],
193
+ entities:
194
+ T::Array[
195
+ EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity
196
+ ]
197
+ }
198
+ )
199
+ end
200
+ def to_hash
201
+ end
202
+
203
+ class DocumentType < EInvoiceAPI::Internal::Type::BaseModel
204
+ OrHash =
205
+ T.type_alias do
206
+ T.any(
207
+ EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::DocumentType,
208
+ EInvoiceAPI::Internal::AnyHash
209
+ )
210
+ end
211
+
212
+ # Document type scheme
213
+ sig { returns(String) }
214
+ attr_accessor :scheme
215
+
216
+ # Document type value
217
+ sig { returns(String) }
218
+ attr_accessor :value
219
+
220
+ # Represents a supported document type
221
+ sig do
222
+ params(scheme: String, value: String).returns(T.attached_class)
223
+ end
224
+ def self.new(
225
+ # Document type scheme
226
+ scheme:,
227
+ # Document type value
228
+ value:
229
+ )
230
+ end
231
+
232
+ sig { override.returns({ scheme: String, value: String }) }
233
+ def to_hash
234
+ end
235
+ end
236
+
237
+ class Entity < EInvoiceAPI::Internal::Type::BaseModel
238
+ OrHash =
239
+ T.type_alias do
240
+ T.any(
241
+ EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity,
242
+ EInvoiceAPI::Internal::AnyHash
243
+ )
244
+ end
245
+
246
+ # Additional information
247
+ sig { returns(T.nilable(String)) }
248
+ attr_accessor :additional_info
249
+
250
+ # Country code
251
+ sig { returns(T.nilable(String)) }
252
+ attr_accessor :country_code
253
+
254
+ # Geographic information
255
+ sig { returns(T.nilable(String)) }
256
+ attr_accessor :geo_info
257
+
258
+ # List of business identifiers
259
+ sig do
260
+ returns(
261
+ T.nilable(
262
+ T::Array[
263
+ EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity::Identifier
264
+ ]
265
+ )
266
+ )
267
+ end
268
+ attr_reader :identifiers
269
+
270
+ sig do
271
+ params(
272
+ identifiers:
273
+ T::Array[
274
+ EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity::Identifier::OrHash
275
+ ]
276
+ ).void
277
+ end
278
+ attr_writer :identifiers
279
+
280
+ # Business entity name
281
+ sig { returns(T.nilable(String)) }
282
+ attr_accessor :name
283
+
284
+ # Registration date
285
+ sig { returns(T.nilable(String)) }
286
+ attr_accessor :registration_date
287
+
288
+ # Website URL
289
+ sig { returns(T.nilable(String)) }
290
+ attr_accessor :website
291
+
292
+ # Represents a business entity
293
+ sig do
294
+ params(
295
+ additional_info: T.nilable(String),
296
+ country_code: T.nilable(String),
297
+ geo_info: T.nilable(String),
298
+ identifiers:
299
+ T::Array[
300
+ EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity::Identifier::OrHash
301
+ ],
302
+ name: T.nilable(String),
303
+ registration_date: T.nilable(String),
304
+ website: T.nilable(String)
305
+ ).returns(T.attached_class)
306
+ end
307
+ def self.new(
308
+ # Additional information
309
+ additional_info: nil,
310
+ # Country code
311
+ country_code: nil,
312
+ # Geographic information
313
+ geo_info: nil,
314
+ # List of business identifiers
315
+ identifiers: nil,
316
+ # Business entity name
317
+ name: nil,
318
+ # Registration date
319
+ registration_date: nil,
320
+ # Website URL
321
+ website: nil
322
+ )
323
+ end
324
+
325
+ sig do
326
+ override.returns(
327
+ {
328
+ additional_info: T.nilable(String),
329
+ country_code: T.nilable(String),
330
+ geo_info: T.nilable(String),
331
+ identifiers:
332
+ T::Array[
333
+ EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity::Identifier
334
+ ],
335
+ name: T.nilable(String),
336
+ registration_date: T.nilable(String),
337
+ website: T.nilable(String)
338
+ }
339
+ )
340
+ end
341
+ def to_hash
342
+ end
343
+
344
+ class Identifier < EInvoiceAPI::Internal::Type::BaseModel
345
+ OrHash =
346
+ T.type_alias do
347
+ T.any(
348
+ EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity::Identifier,
349
+ EInvoiceAPI::Internal::AnyHash
350
+ )
351
+ end
352
+
353
+ # Identifier scheme
354
+ sig { returns(String) }
355
+ attr_accessor :scheme
356
+
357
+ # Identifier value
358
+ sig { returns(String) }
359
+ attr_accessor :value
360
+
361
+ # Represents a business identifier
362
+ sig do
363
+ params(scheme: String, value: String).returns(T.attached_class)
364
+ end
365
+ def self.new(
366
+ # Identifier scheme
367
+ scheme:,
368
+ # Identifier value
369
+ value:
370
+ )
371
+ end
372
+
373
+ sig { override.returns({ scheme: String, value: String }) }
374
+ def to_hash
375
+ end
376
+ end
377
+ end
378
+ end
379
+ end
380
+ end
381
+ end
@@ -35,6 +35,9 @@ module EInvoiceAPI
35
35
 
36
36
  LookupRetrieveParams = EInvoiceAPI::Models::LookupRetrieveParams
37
37
 
38
+ LookupRetrieveParticipantsParams =
39
+ EInvoiceAPI::Models::LookupRetrieveParticipantsParams
40
+
38
41
  OutboxListDraftDocumentsParams =
39
42
  EInvoiceAPI::Models::OutboxListDraftDocumentsParams
40
43
 
@@ -22,6 +22,25 @@ module EInvoiceAPI
22
22
  )
23
23
  end
24
24
 
25
+ # Lookup Peppol participants by name or other identifiers. You can limit the
26
+ # search to a specific country by providing the country code.
27
+ sig do
28
+ params(
29
+ query: String,
30
+ country_code: T.nilable(String),
31
+ request_options: EInvoiceAPI::RequestOptions::OrHash
32
+ ).returns(EInvoiceAPI::Models::LookupRetrieveParticipantsResponse)
33
+ end
34
+ def retrieve_participants(
35
+ # Query to lookup
36
+ query:,
37
+ # Country code of the company to lookup. If not provided, the search will be
38
+ # global.
39
+ country_code: nil,
40
+ request_options: {}
41
+ )
42
+ end
43
+
25
44
  # @api private
26
45
  sig { params(client: EInvoiceAPI::Client).returns(T.attached_class) }
27
46
  def self.new(client:)
@@ -0,0 +1,28 @@
1
+ module EInvoiceAPI
2
+ module Models
3
+ type lookup_retrieve_participants_params =
4
+ { query: String, country_code: String? }
5
+ & EInvoiceAPI::Internal::Type::request_parameters
6
+
7
+ class LookupRetrieveParticipantsParams < EInvoiceAPI::Internal::Type::BaseModel
8
+ extend EInvoiceAPI::Internal::Type::RequestParameters::Converter
9
+ include EInvoiceAPI::Internal::Type::RequestParameters
10
+
11
+ attr_accessor query: String
12
+
13
+ attr_accessor country_code: String?
14
+
15
+ def initialize: (
16
+ query: String,
17
+ ?country_code: String?,
18
+ ?request_options: EInvoiceAPI::request_opts
19
+ ) -> void
20
+
21
+ def to_hash: -> {
22
+ query: String,
23
+ country_code: String?,
24
+ request_options: EInvoiceAPI::RequestOptions
25
+ }
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,159 @@
1
+ module EInvoiceAPI
2
+ module Models
3
+ type lookup_retrieve_participants_response =
4
+ {
5
+ query_terms: String,
6
+ search_date: String,
7
+ total_count: Integer,
8
+ used_count: Integer,
9
+ participants: ::Array[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant]
10
+ }
11
+
12
+ class LookupRetrieveParticipantsResponse < EInvoiceAPI::Internal::Type::BaseModel
13
+ attr_accessor query_terms: String
14
+
15
+ attr_accessor search_date: String
16
+
17
+ attr_accessor total_count: Integer
18
+
19
+ attr_accessor used_count: Integer
20
+
21
+ attr_reader participants: ::Array[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant]?
22
+
23
+ def participants=: (
24
+ ::Array[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant]
25
+ ) -> ::Array[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant]
26
+
27
+ def initialize: (
28
+ query_terms: String,
29
+ search_date: String,
30
+ total_count: Integer,
31
+ used_count: Integer,
32
+ ?participants: ::Array[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant]
33
+ ) -> void
34
+
35
+ def to_hash: -> {
36
+ query_terms: String,
37
+ search_date: String,
38
+ total_count: Integer,
39
+ used_count: Integer,
40
+ participants: ::Array[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant]
41
+ }
42
+
43
+ type participant =
44
+ {
45
+ peppol_id: String,
46
+ peppol_scheme: String,
47
+ document_types: ::Array[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::DocumentType],
48
+ entities: ::Array[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity]
49
+ }
50
+
51
+ class Participant < EInvoiceAPI::Internal::Type::BaseModel
52
+ attr_accessor peppol_id: String
53
+
54
+ attr_accessor peppol_scheme: String
55
+
56
+ attr_reader document_types: ::Array[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::DocumentType]?
57
+
58
+ def document_types=: (
59
+ ::Array[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::DocumentType]
60
+ ) -> ::Array[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::DocumentType]
61
+
62
+ attr_reader entities: ::Array[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity]?
63
+
64
+ def entities=: (
65
+ ::Array[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity]
66
+ ) -> ::Array[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity]
67
+
68
+ def initialize: (
69
+ peppol_id: String,
70
+ peppol_scheme: String,
71
+ ?document_types: ::Array[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::DocumentType],
72
+ ?entities: ::Array[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity]
73
+ ) -> void
74
+
75
+ def to_hash: -> {
76
+ peppol_id: String,
77
+ peppol_scheme: String,
78
+ document_types: ::Array[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::DocumentType],
79
+ entities: ::Array[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity]
80
+ }
81
+
82
+ type document_type = { scheme: String, value: String }
83
+
84
+ class DocumentType < EInvoiceAPI::Internal::Type::BaseModel
85
+ attr_accessor scheme: String
86
+
87
+ attr_accessor value: String
88
+
89
+ def initialize: (scheme: String, value: String) -> void
90
+
91
+ def to_hash: -> { scheme: String, value: String }
92
+ end
93
+
94
+ type entity =
95
+ {
96
+ additional_info: String?,
97
+ country_code: String?,
98
+ geo_info: String?,
99
+ identifiers: ::Array[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity::Identifier],
100
+ name: String?,
101
+ registration_date: String?,
102
+ website: String?
103
+ }
104
+
105
+ class Entity < EInvoiceAPI::Internal::Type::BaseModel
106
+ attr_accessor additional_info: String?
107
+
108
+ attr_accessor country_code: String?
109
+
110
+ attr_accessor geo_info: String?
111
+
112
+ attr_reader identifiers: ::Array[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity::Identifier]?
113
+
114
+ def identifiers=: (
115
+ ::Array[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity::Identifier]
116
+ ) -> ::Array[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity::Identifier]
117
+
118
+ attr_accessor name: String?
119
+
120
+ attr_accessor registration_date: String?
121
+
122
+ attr_accessor website: String?
123
+
124
+ def initialize: (
125
+ ?additional_info: String?,
126
+ ?country_code: String?,
127
+ ?geo_info: String?,
128
+ ?identifiers: ::Array[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity::Identifier],
129
+ ?name: String?,
130
+ ?registration_date: String?,
131
+ ?website: String?
132
+ ) -> void
133
+
134
+ def to_hash: -> {
135
+ additional_info: String?,
136
+ country_code: String?,
137
+ geo_info: String?,
138
+ identifiers: ::Array[EInvoiceAPI::Models::LookupRetrieveParticipantsResponse::Participant::Entity::Identifier],
139
+ name: String?,
140
+ registration_date: String?,
141
+ website: String?
142
+ }
143
+
144
+ type identifier = { scheme: String, value: String }
145
+
146
+ class Identifier < EInvoiceAPI::Internal::Type::BaseModel
147
+ attr_accessor scheme: String
148
+
149
+ attr_accessor value: String
150
+
151
+ def initialize: (scheme: String, value: String) -> void
152
+
153
+ def to_hash: -> { scheme: String, value: String }
154
+ end
155
+ end
156
+ end
157
+ end
158
+ end
159
+ end
@@ -33,6 +33,8 @@ module EInvoiceAPI
33
33
 
34
34
  class LookupRetrieveParams = EInvoiceAPI::Models::LookupRetrieveParams
35
35
 
36
+ class LookupRetrieveParticipantsParams = EInvoiceAPI::Models::LookupRetrieveParticipantsParams
37
+
36
38
  class OutboxListDraftDocumentsParams = EInvoiceAPI::Models::OutboxListDraftDocumentsParams
37
39
 
38
40
  class OutboxListReceivedDocumentsParams = EInvoiceAPI::Models::OutboxListReceivedDocumentsParams
@@ -6,6 +6,12 @@ module EInvoiceAPI
6
6
  ?request_options: EInvoiceAPI::request_opts
7
7
  ) -> EInvoiceAPI::Models::LookupRetrieveResponse
8
8
 
9
+ def retrieve_participants: (
10
+ query: String,
11
+ ?country_code: String?,
12
+ ?request_options: EInvoiceAPI::request_opts
13
+ ) -> EInvoiceAPI::Models::LookupRetrieveParticipantsResponse
14
+
9
15
  def initialize: (client: EInvoiceAPI::Client) -> void
10
16
  end
11
17
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: e-invoice-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - e-invoice
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-07-03 00:00:00.000000000 Z
11
+ date: 2025-07-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: connection_pool
@@ -82,6 +82,8 @@ files:
82
82
  - lib/e_invoice_api/models/inbox_list_invoices_params.rb
83
83
  - lib/e_invoice_api/models/inbox_list_params.rb
84
84
  - lib/e_invoice_api/models/lookup_retrieve_params.rb
85
+ - lib/e_invoice_api/models/lookup_retrieve_participants_params.rb
86
+ - lib/e_invoice_api/models/lookup_retrieve_participants_response.rb
85
87
  - lib/e_invoice_api/models/lookup_retrieve_response.rb
86
88
  - lib/e_invoice_api/models/outbox_list_draft_documents_params.rb
87
89
  - lib/e_invoice_api/models/outbox_list_received_documents_params.rb
@@ -158,6 +160,8 @@ files:
158
160
  - rbi/e_invoice_api/models/inbox_list_invoices_params.rbi
159
161
  - rbi/e_invoice_api/models/inbox_list_params.rbi
160
162
  - rbi/e_invoice_api/models/lookup_retrieve_params.rbi
163
+ - rbi/e_invoice_api/models/lookup_retrieve_participants_params.rbi
164
+ - rbi/e_invoice_api/models/lookup_retrieve_participants_response.rbi
161
165
  - rbi/e_invoice_api/models/lookup_retrieve_response.rbi
162
166
  - rbi/e_invoice_api/models/outbox_list_draft_documents_params.rbi
163
167
  - rbi/e_invoice_api/models/outbox_list_received_documents_params.rbi
@@ -233,6 +237,8 @@ files:
233
237
  - sig/e_invoice_api/models/inbox_list_invoices_params.rbs
234
238
  - sig/e_invoice_api/models/inbox_list_params.rbs
235
239
  - sig/e_invoice_api/models/lookup_retrieve_params.rbs
240
+ - sig/e_invoice_api/models/lookup_retrieve_participants_params.rbs
241
+ - sig/e_invoice_api/models/lookup_retrieve_participants_response.rbs
236
242
  - sig/e_invoice_api/models/lookup_retrieve_response.rbs
237
243
  - sig/e_invoice_api/models/outbox_list_draft_documents_params.rbs
238
244
  - sig/e_invoice_api/models/outbox_list_received_documents_params.rbs