openlayer 0.8.0 → 0.9.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.
Files changed (52) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +17 -0
  3. data/README.md +1 -1
  4. data/lib/openlayer/client.rb +4 -0
  5. data/lib/openlayer/integrations/google_conversational_search_tracer.rb +319 -25
  6. data/lib/openlayer/models/workspace_retrieve_params.rb +14 -0
  7. data/lib/openlayer/models/workspace_retrieve_response.rb +169 -0
  8. data/lib/openlayer/models/workspace_update_params.rb +38 -0
  9. data/lib/openlayer/models/workspace_update_response.rb +169 -0
  10. data/lib/openlayer/models/workspaces/api_key_create_params.rb +24 -0
  11. data/lib/openlayer/models/workspaces/api_key_create_response.rb +61 -0
  12. data/lib/openlayer/models/workspaces/invite_create_params.rb +43 -0
  13. data/lib/openlayer/models/workspaces/invite_create_response.rb +172 -0
  14. data/lib/openlayer/models/workspaces/invite_list_params.rb +32 -0
  15. data/lib/openlayer/models/workspaces/invite_list_response.rb +214 -0
  16. data/lib/openlayer/models.rb +6 -0
  17. data/lib/openlayer/resources/workspaces/api_keys.rb +40 -0
  18. data/lib/openlayer/resources/workspaces/invites.rb +68 -0
  19. data/lib/openlayer/resources/workspaces.rb +70 -0
  20. data/lib/openlayer/version.rb +1 -1
  21. data/lib/openlayer.rb +13 -0
  22. data/rbi/openlayer/client.rbi +3 -0
  23. data/rbi/openlayer/models/workspace_retrieve_params.rbi +30 -0
  24. data/rbi/openlayer/models/workspace_retrieve_response.rbi +293 -0
  25. data/rbi/openlayer/models/workspace_update_params.rbi +68 -0
  26. data/rbi/openlayer/models/workspace_update_response.rbi +292 -0
  27. data/rbi/openlayer/models/workspaces/api_key_create_params.rbi +48 -0
  28. data/rbi/openlayer/models/workspaces/api_key_create_response.rbi +82 -0
  29. data/rbi/openlayer/models/workspaces/invite_create_params.rbi +105 -0
  30. data/rbi/openlayer/models/workspaces/invite_create_response.rbi +347 -0
  31. data/rbi/openlayer/models/workspaces/invite_list_params.rbi +62 -0
  32. data/rbi/openlayer/models/workspaces/invite_list_response.rbi +420 -0
  33. data/rbi/openlayer/models.rbi +6 -0
  34. data/rbi/openlayer/resources/workspaces/api_keys.rbi +31 -0
  35. data/rbi/openlayer/resources/workspaces/invites.rbi +53 -0
  36. data/rbi/openlayer/resources/workspaces.rbi +55 -0
  37. data/sig/openlayer/client.rbs +2 -0
  38. data/sig/openlayer/models/workspace_retrieve_params.rbs +15 -0
  39. data/sig/openlayer/models/workspace_retrieve_response.rbs +156 -0
  40. data/sig/openlayer/models/workspace_update_params.rbs +38 -0
  41. data/sig/openlayer/models/workspace_update_response.rbs +156 -0
  42. data/sig/openlayer/models/workspaces/api_key_create_params.rbs +25 -0
  43. data/sig/openlayer/models/workspaces/api_key_create_response.rbs +47 -0
  44. data/sig/openlayer/models/workspaces/invite_create_params.rbs +51 -0
  45. data/sig/openlayer/models/workspaces/invite_create_response.rbs +149 -0
  46. data/sig/openlayer/models/workspaces/invite_list_params.rbs +34 -0
  47. data/sig/openlayer/models/workspaces/invite_list_response.rbs +186 -0
  48. data/sig/openlayer/models.rbs +6 -0
  49. data/sig/openlayer/resources/workspaces/api_keys.rbs +15 -0
  50. data/sig/openlayer/resources/workspaces/invites.rbs +23 -0
  51. data/sig/openlayer/resources/workspaces.rbs +24 -0
  52. metadata +41 -2
@@ -0,0 +1,420 @@
1
+ # typed: strong
2
+
3
+ module Openlayer
4
+ module Models
5
+ module Workspaces
6
+ class InviteListResponse < Openlayer::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ Openlayer::Models::Workspaces::InviteListResponse,
11
+ Openlayer::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ sig { returns(Openlayer::Models::Workspaces::InviteListResponse::Meta) }
16
+ attr_reader :_meta
17
+
18
+ sig do
19
+ params(
20
+ _meta:
21
+ Openlayer::Models::Workspaces::InviteListResponse::Meta::OrHash
22
+ ).void
23
+ end
24
+ attr_writer :_meta
25
+
26
+ sig do
27
+ returns(
28
+ T::Array[Openlayer::Models::Workspaces::InviteListResponse::Item]
29
+ )
30
+ end
31
+ attr_accessor :items
32
+
33
+ sig do
34
+ params(
35
+ _meta:
36
+ Openlayer::Models::Workspaces::InviteListResponse::Meta::OrHash,
37
+ items:
38
+ T::Array[
39
+ Openlayer::Models::Workspaces::InviteListResponse::Item::OrHash
40
+ ]
41
+ ).returns(T.attached_class)
42
+ end
43
+ def self.new(_meta:, items:)
44
+ end
45
+
46
+ sig do
47
+ override.returns(
48
+ {
49
+ _meta: Openlayer::Models::Workspaces::InviteListResponse::Meta,
50
+ items:
51
+ T::Array[
52
+ Openlayer::Models::Workspaces::InviteListResponse::Item
53
+ ]
54
+ }
55
+ )
56
+ end
57
+ def to_hash
58
+ end
59
+
60
+ class Meta < Openlayer::Internal::Type::BaseModel
61
+ OrHash =
62
+ T.type_alias do
63
+ T.any(
64
+ Openlayer::Models::Workspaces::InviteListResponse::Meta,
65
+ Openlayer::Internal::AnyHash
66
+ )
67
+ end
68
+
69
+ # The current page.
70
+ sig { returns(Integer) }
71
+ attr_accessor :page
72
+
73
+ # The number of items per page.
74
+ sig { returns(Integer) }
75
+ attr_accessor :per_page
76
+
77
+ # The total number of items.
78
+ sig { returns(Integer) }
79
+ attr_accessor :total_items
80
+
81
+ # The total number of pages.
82
+ sig { returns(Integer) }
83
+ attr_accessor :total_pages
84
+
85
+ sig do
86
+ params(
87
+ page: Integer,
88
+ per_page: Integer,
89
+ total_items: Integer,
90
+ total_pages: Integer
91
+ ).returns(T.attached_class)
92
+ end
93
+ def self.new(
94
+ # The current page.
95
+ page:,
96
+ # The number of items per page.
97
+ per_page:,
98
+ # The total number of items.
99
+ total_items:,
100
+ # The total number of pages.
101
+ total_pages:
102
+ )
103
+ end
104
+
105
+ sig do
106
+ override.returns(
107
+ {
108
+ page: Integer,
109
+ per_page: Integer,
110
+ total_items: Integer,
111
+ total_pages: Integer
112
+ }
113
+ )
114
+ end
115
+ def to_hash
116
+ end
117
+ end
118
+
119
+ class Item < Openlayer::Internal::Type::BaseModel
120
+ OrHash =
121
+ T.type_alias do
122
+ T.any(
123
+ Openlayer::Models::Workspaces::InviteListResponse::Item,
124
+ Openlayer::Internal::AnyHash
125
+ )
126
+ end
127
+
128
+ sig do
129
+ returns(
130
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Creator
131
+ )
132
+ end
133
+ attr_reader :creator
134
+
135
+ sig do
136
+ params(
137
+ creator:
138
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Creator::OrHash
139
+ ).void
140
+ end
141
+ attr_writer :creator
142
+
143
+ # The invite email.
144
+ sig { returns(String) }
145
+ attr_accessor :email
146
+
147
+ # The invite role.
148
+ sig do
149
+ returns(
150
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Role::TaggedSymbol
151
+ )
152
+ end
153
+ attr_accessor :role
154
+
155
+ # The invite status.
156
+ sig do
157
+ returns(
158
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Status::TaggedSymbol
159
+ )
160
+ end
161
+ attr_accessor :status
162
+
163
+ # The invite id.
164
+ sig { returns(String) }
165
+ attr_accessor :id
166
+
167
+ # The invite creation date.
168
+ sig { returns(Time) }
169
+ attr_accessor :date_created
170
+
171
+ sig do
172
+ returns(
173
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Workspace
174
+ )
175
+ end
176
+ attr_reader :workspace
177
+
178
+ sig do
179
+ params(
180
+ workspace:
181
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Workspace::OrHash
182
+ ).void
183
+ end
184
+ attr_writer :workspace
185
+
186
+ sig do
187
+ params(
188
+ id: String,
189
+ creator:
190
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Creator::OrHash,
191
+ date_created: Time,
192
+ email: String,
193
+ role:
194
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Role::OrSymbol,
195
+ status:
196
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Status::OrSymbol,
197
+ workspace:
198
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Workspace::OrHash
199
+ ).returns(T.attached_class)
200
+ end
201
+ def self.new(
202
+ # The invite id.
203
+ id:,
204
+ creator:,
205
+ # The invite creation date.
206
+ date_created:,
207
+ # The invite email.
208
+ email:,
209
+ # The invite role.
210
+ role:,
211
+ # The invite status.
212
+ status:,
213
+ workspace:
214
+ )
215
+ end
216
+
217
+ sig do
218
+ override.returns(
219
+ {
220
+ id: String,
221
+ creator:
222
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Creator,
223
+ date_created: Time,
224
+ email: String,
225
+ role:
226
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Role::TaggedSymbol,
227
+ status:
228
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Status::TaggedSymbol,
229
+ workspace:
230
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Workspace
231
+ }
232
+ )
233
+ end
234
+ def to_hash
235
+ end
236
+
237
+ class Creator < Openlayer::Internal::Type::BaseModel
238
+ OrHash =
239
+ T.type_alias do
240
+ T.any(
241
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Creator,
242
+ Openlayer::Internal::AnyHash
243
+ )
244
+ end
245
+
246
+ # The invite creator name.
247
+ sig { returns(T.nilable(String)) }
248
+ attr_accessor :name
249
+
250
+ # The invite creator username.
251
+ sig { returns(T.nilable(String)) }
252
+ attr_accessor :username
253
+
254
+ # The invite creator id.
255
+ sig { returns(T.nilable(String)) }
256
+ attr_reader :id
257
+
258
+ sig { params(id: String).void }
259
+ attr_writer :id
260
+
261
+ sig do
262
+ params(
263
+ id: String,
264
+ name: T.nilable(String),
265
+ username: T.nilable(String)
266
+ ).returns(T.attached_class)
267
+ end
268
+ def self.new(
269
+ # The invite creator id.
270
+ id: nil,
271
+ # The invite creator name.
272
+ name: nil,
273
+ # The invite creator username.
274
+ username: nil
275
+ )
276
+ end
277
+
278
+ sig do
279
+ override.returns(
280
+ {
281
+ id: String,
282
+ name: T.nilable(String),
283
+ username: T.nilable(String)
284
+ }
285
+ )
286
+ end
287
+ def to_hash
288
+ end
289
+ end
290
+
291
+ # The invite role.
292
+ module Role
293
+ extend Openlayer::Internal::Type::Enum
294
+
295
+ TaggedSymbol =
296
+ T.type_alias do
297
+ T.all(
298
+ Symbol,
299
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Role
300
+ )
301
+ end
302
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
303
+
304
+ ADMIN =
305
+ T.let(
306
+ :ADMIN,
307
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Role::TaggedSymbol
308
+ )
309
+ MEMBER =
310
+ T.let(
311
+ :MEMBER,
312
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Role::TaggedSymbol
313
+ )
314
+ VIEWER =
315
+ T.let(
316
+ :VIEWER,
317
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Role::TaggedSymbol
318
+ )
319
+
320
+ sig do
321
+ override.returns(
322
+ T::Array[
323
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Role::TaggedSymbol
324
+ ]
325
+ )
326
+ end
327
+ def self.values
328
+ end
329
+ end
330
+
331
+ # The invite status.
332
+ module Status
333
+ extend Openlayer::Internal::Type::Enum
334
+
335
+ TaggedSymbol =
336
+ T.type_alias do
337
+ T.all(
338
+ Symbol,
339
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Status
340
+ )
341
+ end
342
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
343
+
344
+ ACCEPTED =
345
+ T.let(
346
+ :accepted,
347
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Status::TaggedSymbol
348
+ )
349
+ PENDING =
350
+ T.let(
351
+ :pending,
352
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Status::TaggedSymbol
353
+ )
354
+
355
+ sig do
356
+ override.returns(
357
+ T::Array[
358
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Status::TaggedSymbol
359
+ ]
360
+ )
361
+ end
362
+ def self.values
363
+ end
364
+ end
365
+
366
+ class Workspace < Openlayer::Internal::Type::BaseModel
367
+ OrHash =
368
+ T.type_alias do
369
+ T.any(
370
+ Openlayer::Models::Workspaces::InviteListResponse::Item::Workspace,
371
+ Openlayer::Internal::AnyHash
372
+ )
373
+ end
374
+
375
+ sig { returns(String) }
376
+ attr_accessor :name
377
+
378
+ sig { returns(String) }
379
+ attr_accessor :slug
380
+
381
+ sig { returns(String) }
382
+ attr_accessor :id
383
+
384
+ sig { returns(Time) }
385
+ attr_accessor :date_created
386
+
387
+ sig { returns(Integer) }
388
+ attr_accessor :member_count
389
+
390
+ sig do
391
+ params(
392
+ id: String,
393
+ date_created: Time,
394
+ member_count: Integer,
395
+ name: String,
396
+ slug: String
397
+ ).returns(T.attached_class)
398
+ end
399
+ def self.new(id:, date_created:, member_count:, name:, slug:)
400
+ end
401
+
402
+ sig do
403
+ override.returns(
404
+ {
405
+ id: String,
406
+ date_created: Time,
407
+ member_count: Integer,
408
+ name: String,
409
+ slug: String
410
+ }
411
+ )
412
+ end
413
+ def to_hash
414
+ end
415
+ end
416
+ end
417
+ end
418
+ end
419
+ end
420
+ end
@@ -25,4 +25,10 @@ module Openlayer
25
25
  Storage = Openlayer::Models::Storage
26
26
 
27
27
  TestEvaluateParams = Openlayer::Models::TestEvaluateParams
28
+
29
+ WorkspaceRetrieveParams = Openlayer::Models::WorkspaceRetrieveParams
30
+
31
+ Workspaces = Openlayer::Models::Workspaces
32
+
33
+ WorkspaceUpdateParams = Openlayer::Models::WorkspaceUpdateParams
28
34
  end
@@ -0,0 +1,31 @@
1
+ # typed: strong
2
+
3
+ module Openlayer
4
+ module Resources
5
+ class Workspaces
6
+ class APIKeys
7
+ # Create a new API key in a workspace.
8
+ sig do
9
+ params(
10
+ workspace_id: String,
11
+ name: T.nilable(String),
12
+ request_options: Openlayer::RequestOptions::OrHash
13
+ ).returns(Openlayer::Models::Workspaces::APIKeyCreateResponse)
14
+ end
15
+ def create(
16
+ # The workspace id.
17
+ workspace_id,
18
+ # The API key name.
19
+ name: nil,
20
+ request_options: {}
21
+ )
22
+ end
23
+
24
+ # @api private
25
+ sig { params(client: Openlayer::Client).returns(T.attached_class) }
26
+ def self.new(client:)
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,53 @@
1
+ # typed: strong
2
+
3
+ module Openlayer
4
+ module Resources
5
+ class Workspaces
6
+ class Invites
7
+ # Invite users to a workspace.
8
+ sig do
9
+ params(
10
+ workspace_id: String,
11
+ emails: T::Array[String],
12
+ role: Openlayer::Workspaces::InviteCreateParams::Role::OrSymbol,
13
+ request_options: Openlayer::RequestOptions::OrHash
14
+ ).returns(Openlayer::Models::Workspaces::InviteCreateResponse)
15
+ end
16
+ def create(
17
+ # The workspace id.
18
+ workspace_id,
19
+ emails: nil,
20
+ # The member role.
21
+ role: nil,
22
+ request_options: {}
23
+ )
24
+ end
25
+
26
+ # Retrieve a list of invites in a workspace.
27
+ sig do
28
+ params(
29
+ workspace_id: String,
30
+ page: Integer,
31
+ per_page: Integer,
32
+ request_options: Openlayer::RequestOptions::OrHash
33
+ ).returns(Openlayer::Models::Workspaces::InviteListResponse)
34
+ end
35
+ def list(
36
+ # The workspace id.
37
+ workspace_id,
38
+ # The page to return in a paginated query.
39
+ page: nil,
40
+ # Maximum number of items to return per page.
41
+ per_page: nil,
42
+ request_options: {}
43
+ )
44
+ end
45
+
46
+ # @api private
47
+ sig { params(client: Openlayer::Client).returns(T.attached_class) }
48
+ def self.new(client:)
49
+ end
50
+ end
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,55 @@
1
+ # typed: strong
2
+
3
+ module Openlayer
4
+ module Resources
5
+ class Workspaces
6
+ sig { returns(Openlayer::Resources::Workspaces::Invites) }
7
+ attr_reader :invites
8
+
9
+ sig { returns(Openlayer::Resources::Workspaces::APIKeys) }
10
+ attr_reader :api_keys
11
+
12
+ # Retrieve a workspace by its ID.
13
+ sig do
14
+ params(
15
+ workspace_id: String,
16
+ request_options: Openlayer::RequestOptions::OrHash
17
+ ).returns(Openlayer::Models::WorkspaceRetrieveResponse)
18
+ end
19
+ def retrieve(
20
+ # The workspace id.
21
+ workspace_id,
22
+ request_options: {}
23
+ )
24
+ end
25
+
26
+ # Update a workspace.
27
+ sig do
28
+ params(
29
+ workspace_id: String,
30
+ invite_code: String,
31
+ name: String,
32
+ slug: String,
33
+ request_options: Openlayer::RequestOptions::OrHash
34
+ ).returns(Openlayer::Models::WorkspaceUpdateResponse)
35
+ end
36
+ def update(
37
+ # The workspace id.
38
+ workspace_id,
39
+ # The workspace invite code.
40
+ invite_code: nil,
41
+ # The workspace name.
42
+ name: nil,
43
+ # The workspace slug.
44
+ slug: nil,
45
+ request_options: {}
46
+ )
47
+ end
48
+
49
+ # @api private
50
+ sig { params(client: Openlayer::Client).returns(T.attached_class) }
51
+ def self.new(client:)
52
+ end
53
+ end
54
+ end
55
+ end
@@ -12,6 +12,8 @@ module Openlayer
12
12
 
13
13
  attr_reader projects: Openlayer::Resources::Projects
14
14
 
15
+ attr_reader workspaces: Openlayer::Resources::Workspaces
16
+
15
17
  attr_reader commits: Openlayer::Resources::Commits
16
18
 
17
19
  attr_reader inference_pipelines: Openlayer::Resources::InferencePipelines
@@ -0,0 +1,15 @@
1
+ module Openlayer
2
+ module Models
3
+ type workspace_retrieve_params =
4
+ { } & Openlayer::Internal::Type::request_parameters
5
+
6
+ class WorkspaceRetrieveParams < Openlayer::Internal::Type::BaseModel
7
+ extend Openlayer::Internal::Type::RequestParameters::Converter
8
+ include Openlayer::Internal::Type::RequestParameters
9
+
10
+ def initialize: (?request_options: Openlayer::request_opts) -> void
11
+
12
+ def to_hash: -> { request_options: Openlayer::RequestOptions }
13
+ end
14
+ end
15
+ end