cadenya 0.3.0 → 0.5.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 (46) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +16 -0
  3. data/README.md +6 -6
  4. data/lib/cadenya/client.rb +4 -0
  5. data/lib/cadenya/internal/cursor_pagination.rb +2 -2
  6. data/lib/cadenya/models/ai_provider_key.rb +66 -0
  7. data/lib/cadenya/models/ai_provider_key_create_params.rb +41 -0
  8. data/lib/cadenya/models/ai_provider_key_delete_params.rb +26 -0
  9. data/lib/cadenya/models/ai_provider_key_list_params.rb +73 -0
  10. data/lib/cadenya/models/ai_provider_key_retrieve_params.rb +26 -0
  11. data/lib/cadenya/models/ai_provider_key_spec.rb +51 -0
  12. data/lib/cadenya/models/ai_provider_key_update_params.rb +56 -0
  13. data/lib/cadenya/models/model.rb +56 -1
  14. data/lib/cadenya/models/model_list_params.rb +22 -1
  15. data/lib/cadenya/models.rb +14 -0
  16. data/lib/cadenya/resources/ai_provider_keys.rb +173 -0
  17. data/lib/cadenya/resources/models.rb +14 -2
  18. data/lib/cadenya/version.rb +1 -1
  19. data/lib/cadenya.rb +8 -0
  20. data/rbi/cadenya/client.rbi +3 -0
  21. data/rbi/cadenya/models/ai_provider_key.rbi +109 -0
  22. data/rbi/cadenya/models/ai_provider_key_create_params.rbi +65 -0
  23. data/rbi/cadenya/models/ai_provider_key_delete_params.rbi +43 -0
  24. data/rbi/cadenya/models/ai_provider_key_list_params.rbi +109 -0
  25. data/rbi/cadenya/models/ai_provider_key_retrieve_params.rbi +46 -0
  26. data/rbi/cadenya/models/ai_provider_key_spec.rbi +98 -0
  27. data/rbi/cadenya/models/ai_provider_key_update_params.rbi +82 -0
  28. data/rbi/cadenya/models/model.rbi +102 -3
  29. data/rbi/cadenya/models/model_list_params.rbi +26 -0
  30. data/rbi/cadenya/models.rbi +14 -0
  31. data/rbi/cadenya/resources/ai_provider_keys.rbi +129 -0
  32. data/rbi/cadenya/resources/models.rbi +8 -0
  33. data/sig/cadenya/client.rbs +2 -0
  34. data/sig/cadenya/models/ai_provider_key.rbs +55 -0
  35. data/sig/cadenya/models/ai_provider_key_create_params.rbs +36 -0
  36. data/sig/cadenya/models/ai_provider_key_delete_params.rbs +28 -0
  37. data/sig/cadenya/models/ai_provider_key_list_params.rbs +68 -0
  38. data/sig/cadenya/models/ai_provider_key_retrieve_params.rbs +28 -0
  39. data/sig/cadenya/models/ai_provider_key_spec.rbs +49 -0
  40. data/sig/cadenya/models/ai_provider_key_update_params.rbs +54 -0
  41. data/sig/cadenya/models/model.rbs +52 -3
  42. data/sig/cadenya/models/model_list_params.rbs +14 -0
  43. data/sig/cadenya/models.rbs +14 -0
  44. data/sig/cadenya/resources/ai_provider_keys.rbs +46 -0
  45. data/sig/cadenya/resources/models.rbs +2 -0
  46. metadata +26 -2
@@ -0,0 +1,68 @@
1
+ module Cadenya
2
+ module Models
3
+ type ai_provider_key_list_params =
4
+ {
5
+ workspace_id: String,
6
+ cursor: String,
7
+ include_info: bool,
8
+ limit: Integer,
9
+ prefix: String,
10
+ query: String,
11
+ sort_order: String
12
+ }
13
+ & Cadenya::Internal::Type::request_parameters
14
+
15
+ class AIProviderKeyListParams < Cadenya::Internal::Type::BaseModel
16
+ extend Cadenya::Internal::Type::RequestParameters::Converter
17
+ include Cadenya::Internal::Type::RequestParameters
18
+
19
+ attr_accessor workspace_id: String
20
+
21
+ attr_reader cursor: String?
22
+
23
+ def cursor=: (String) -> String
24
+
25
+ attr_reader include_info: bool?
26
+
27
+ def include_info=: (bool) -> bool
28
+
29
+ attr_reader limit: Integer?
30
+
31
+ def limit=: (Integer) -> Integer
32
+
33
+ attr_reader prefix: String?
34
+
35
+ def prefix=: (String) -> String
36
+
37
+ attr_reader query: String?
38
+
39
+ def query=: (String) -> String
40
+
41
+ attr_reader sort_order: String?
42
+
43
+ def sort_order=: (String) -> String
44
+
45
+ def initialize: (
46
+ workspace_id: String,
47
+ ?cursor: String,
48
+ ?include_info: bool,
49
+ ?limit: Integer,
50
+ ?prefix: String,
51
+ ?query: String,
52
+ ?sort_order: String,
53
+ ?request_options: Cadenya::request_opts
54
+ ) -> void
55
+
56
+ def to_hash: -> {
57
+ workspace_id: String,
58
+ cursor: String,
59
+ include_info: bool,
60
+ limit: Integer,
61
+ prefix: String,
62
+ query: String,
63
+ sort_order: String,
64
+ request_options: Cadenya::RequestOptions
65
+ }
66
+ end
67
+ end
68
+ end
@@ -0,0 +1,28 @@
1
+ module Cadenya
2
+ module Models
3
+ type ai_provider_key_retrieve_params =
4
+ { workspace_id: String, id: String }
5
+ & Cadenya::Internal::Type::request_parameters
6
+
7
+ class AIProviderKeyRetrieveParams < Cadenya::Internal::Type::BaseModel
8
+ extend Cadenya::Internal::Type::RequestParameters::Converter
9
+ include Cadenya::Internal::Type::RequestParameters
10
+
11
+ attr_accessor workspace_id: String
12
+
13
+ attr_accessor id: String
14
+
15
+ def initialize: (
16
+ workspace_id: String,
17
+ id: String,
18
+ ?request_options: Cadenya::request_opts
19
+ ) -> void
20
+
21
+ def to_hash: -> {
22
+ workspace_id: String,
23
+ id: String,
24
+ request_options: Cadenya::RequestOptions
25
+ }
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,49 @@
1
+ module Cadenya
2
+ module Models
3
+ type ai_provider_key_spec =
4
+ {
5
+ api_key: String,
6
+ openrouter: top,
7
+ provider: Cadenya::Models::AIProviderKeySpec::provider
8
+ }
9
+
10
+ class AIProviderKeySpec < Cadenya::Internal::Type::BaseModel
11
+ attr_reader api_key: String?
12
+
13
+ def api_key=: (String) -> String
14
+
15
+ attr_reader openrouter: top?
16
+
17
+ def openrouter=: (top) -> top
18
+
19
+ attr_reader provider: Cadenya::Models::AIProviderKeySpec::provider?
20
+
21
+ def provider=: (
22
+ Cadenya::Models::AIProviderKeySpec::provider
23
+ ) -> Cadenya::Models::AIProviderKeySpec::provider
24
+
25
+ def initialize: (
26
+ ?api_key: String,
27
+ ?openrouter: top,
28
+ ?provider: Cadenya::Models::AIProviderKeySpec::provider
29
+ ) -> void
30
+
31
+ def to_hash: -> {
32
+ api_key: String,
33
+ openrouter: top,
34
+ provider: Cadenya::Models::AIProviderKeySpec::provider
35
+ }
36
+
37
+ type provider = :AI_PROVIDER_UNSPECIFIED | :AI_PROVIDER_OPENROUTER
38
+
39
+ module Provider
40
+ extend Cadenya::Internal::Type::Enum
41
+
42
+ AI_PROVIDER_UNSPECIFIED: :AI_PROVIDER_UNSPECIFIED
43
+ AI_PROVIDER_OPENROUTER: :AI_PROVIDER_OPENROUTER
44
+
45
+ def self?.values: -> ::Array[Cadenya::Models::AIProviderKeySpec::provider]
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,54 @@
1
+ module Cadenya
2
+ module Models
3
+ type ai_provider_key_update_params =
4
+ {
5
+ workspace_id: String,
6
+ id: String,
7
+ metadata: Cadenya::UpdateResourceMetadata,
8
+ spec: Cadenya::AIProviderKeySpec,
9
+ update_mask: String
10
+ }
11
+ & Cadenya::Internal::Type::request_parameters
12
+
13
+ class AIProviderKeyUpdateParams < Cadenya::Internal::Type::BaseModel
14
+ extend Cadenya::Internal::Type::RequestParameters::Converter
15
+ include Cadenya::Internal::Type::RequestParameters
16
+
17
+ attr_accessor workspace_id: String
18
+
19
+ attr_accessor id: String
20
+
21
+ attr_reader metadata: Cadenya::UpdateResourceMetadata?
22
+
23
+ def metadata=: (
24
+ Cadenya::UpdateResourceMetadata
25
+ ) -> Cadenya::UpdateResourceMetadata
26
+
27
+ attr_reader spec: Cadenya::AIProviderKeySpec?
28
+
29
+ def spec=: (Cadenya::AIProviderKeySpec) -> Cadenya::AIProviderKeySpec
30
+
31
+ attr_reader update_mask: String?
32
+
33
+ def update_mask=: (String) -> String
34
+
35
+ def initialize: (
36
+ workspace_id: String,
37
+ id: String,
38
+ ?metadata: Cadenya::UpdateResourceMetadata,
39
+ ?spec: Cadenya::AIProviderKeySpec,
40
+ ?update_mask: String,
41
+ ?request_options: Cadenya::request_opts
42
+ ) -> void
43
+
44
+ def to_hash: -> {
45
+ workspace_id: String,
46
+ id: String,
47
+ metadata: Cadenya::UpdateResourceMetadata,
48
+ spec: Cadenya::AIProviderKeySpec,
49
+ update_mask: String,
50
+ request_options: Cadenya::RequestOptions
51
+ }
52
+ end
53
+ end
54
+ end
@@ -1,22 +1,71 @@
1
1
  module Cadenya
2
2
  module Models
3
3
  type model =
4
- { metadata: Cadenya::ResourceMetadata, spec: Cadenya::ModelSpec }
4
+ {
5
+ metadata: Cadenya::ResourceMetadata,
6
+ spec: Cadenya::ModelSpec,
7
+ info: Cadenya::Model::Info
8
+ }
5
9
 
6
10
  class Model < Cadenya::Internal::Type::BaseModel
7
11
  attr_accessor metadata: Cadenya::ResourceMetadata
8
12
 
9
13
  attr_accessor spec: Cadenya::ModelSpec
10
14
 
15
+ attr_reader info: Cadenya::Model::Info?
16
+
17
+ def info=: (Cadenya::Model::Info) -> Cadenya::Model::Info
18
+
11
19
  def initialize: (
12
20
  metadata: Cadenya::ResourceMetadata,
13
- spec: Cadenya::ModelSpec
21
+ spec: Cadenya::ModelSpec,
22
+ ?info: Cadenya::Model::Info
14
23
  ) -> void
15
24
 
16
25
  def to_hash: -> {
17
26
  metadata: Cadenya::ResourceMetadata,
18
- spec: Cadenya::ModelSpec
27
+ spec: Cadenya::ModelSpec,
28
+ info: Cadenya::Model::Info
19
29
  }
30
+
31
+ type info =
32
+ {
33
+ ai_provider_key: Cadenya::BareMetadata,
34
+ provider: Cadenya::Models::Model::Info::provider
35
+ }
36
+
37
+ class Info < Cadenya::Internal::Type::BaseModel
38
+ attr_reader ai_provider_key: Cadenya::BareMetadata?
39
+
40
+ def ai_provider_key=: (Cadenya::BareMetadata) -> Cadenya::BareMetadata
41
+
42
+ attr_reader provider: Cadenya::Models::Model::Info::provider?
43
+
44
+ def provider=: (
45
+ Cadenya::Models::Model::Info::provider
46
+ ) -> Cadenya::Models::Model::Info::provider
47
+
48
+ def initialize: (
49
+ ?ai_provider_key: Cadenya::BareMetadata,
50
+ ?provider: Cadenya::Models::Model::Info::provider
51
+ ) -> void
52
+
53
+ def to_hash: -> {
54
+ ai_provider_key: Cadenya::BareMetadata,
55
+ provider: Cadenya::Models::Model::Info::provider
56
+ }
57
+
58
+ type provider = :AI_PROVIDER_UNSPECIFIED | :AI_PROVIDER_OPENROUTER
59
+
60
+ module Provider
61
+ extend Cadenya::Internal::Type::Enum
62
+
63
+ AI_PROVIDER_UNSPECIFIED: :AI_PROVIDER_UNSPECIFIED
64
+ AI_PROVIDER_OPENROUTER: :AI_PROVIDER_OPENROUTER
65
+
66
+ def self?.values: -> ::Array[Cadenya::Models::Model::Info::provider]
67
+ end
68
+ end
20
69
  end
21
70
  end
22
71
  end
@@ -3,8 +3,10 @@ module Cadenya
3
3
  type model_list_params =
4
4
  {
5
5
  workspace_id: String,
6
+ ai_provider_key_id: String,
6
7
  bundle_key: String,
7
8
  cursor: String,
9
+ include_info: bool,
8
10
  limit: Integer,
9
11
  prefix: String,
10
12
  query: String,
@@ -19,6 +21,10 @@ module Cadenya
19
21
 
20
22
  attr_accessor workspace_id: String
21
23
 
24
+ attr_reader ai_provider_key_id: String?
25
+
26
+ def ai_provider_key_id=: (String) -> String
27
+
22
28
  attr_reader bundle_key: String?
23
29
 
24
30
  def bundle_key=: (String) -> String
@@ -27,6 +33,10 @@ module Cadenya
27
33
 
28
34
  def cursor=: (String) -> String
29
35
 
36
+ attr_reader include_info: bool?
37
+
38
+ def include_info=: (bool) -> bool
39
+
30
40
  attr_reader limit: Integer?
31
41
 
32
42
  def limit=: (Integer) -> Integer
@@ -51,8 +61,10 @@ module Cadenya
51
61
 
52
62
  def initialize: (
53
63
  workspace_id: String,
64
+ ?ai_provider_key_id: String,
54
65
  ?bundle_key: String,
55
66
  ?cursor: String,
67
+ ?include_info: bool,
56
68
  ?limit: Integer,
57
69
  ?prefix: String,
58
70
  ?query: String,
@@ -63,8 +75,10 @@ module Cadenya
63
75
 
64
76
  def to_hash: -> {
65
77
  workspace_id: String,
78
+ ai_provider_key_id: String,
66
79
  bundle_key: String,
67
80
  cursor: String,
81
+ include_info: bool,
68
82
  limit: Integer,
69
83
  prefix: String,
70
84
  query: String,
@@ -35,6 +35,20 @@ module Cadenya
35
35
 
36
36
  class AgentVariationEntry = Cadenya::Models::AgentVariationEntry
37
37
 
38
+ class AIProviderKey = Cadenya::Models::AIProviderKey
39
+
40
+ class AIProviderKeyCreateParams = Cadenya::Models::AIProviderKeyCreateParams
41
+
42
+ class AIProviderKeyDeleteParams = Cadenya::Models::AIProviderKeyDeleteParams
43
+
44
+ class AIProviderKeyListParams = Cadenya::Models::AIProviderKeyListParams
45
+
46
+ class AIProviderKeyRetrieveParams = Cadenya::Models::AIProviderKeyRetrieveParams
47
+
48
+ class AIProviderKeySpec = Cadenya::Models::AIProviderKeySpec
49
+
50
+ class AIProviderKeyUpdateParams = Cadenya::Models::AIProviderKeyUpdateParams
51
+
38
52
  class APIKey = Cadenya::Models::APIKey
39
53
 
40
54
  class APIKeyCreateParams = Cadenya::Models::APIKeyCreateParams
@@ -0,0 +1,46 @@
1
+ module Cadenya
2
+ module Resources
3
+ class AIProviderKeys
4
+ def create: (
5
+ String workspace_id,
6
+ metadata: Cadenya::CreateResourceMetadata,
7
+ spec: Cadenya::AIProviderKeySpec,
8
+ ?request_options: Cadenya::request_opts
9
+ ) -> Cadenya::AIProviderKey
10
+
11
+ def retrieve: (
12
+ String id,
13
+ workspace_id: String,
14
+ ?request_options: Cadenya::request_opts
15
+ ) -> Cadenya::AIProviderKey
16
+
17
+ def update: (
18
+ String id,
19
+ workspace_id: String,
20
+ ?metadata: Cadenya::UpdateResourceMetadata,
21
+ ?spec: Cadenya::AIProviderKeySpec,
22
+ ?update_mask: String,
23
+ ?request_options: Cadenya::request_opts
24
+ ) -> Cadenya::AIProviderKey
25
+
26
+ def list: (
27
+ String workspace_id,
28
+ ?cursor: String,
29
+ ?include_info: bool,
30
+ ?limit: Integer,
31
+ ?prefix: String,
32
+ ?query: String,
33
+ ?sort_order: String,
34
+ ?request_options: Cadenya::request_opts
35
+ ) -> Cadenya::Internal::CursorPagination[Cadenya::AIProviderKey]
36
+
37
+ def delete: (
38
+ String id,
39
+ workspace_id: String,
40
+ ?request_options: Cadenya::request_opts
41
+ ) -> nil
42
+
43
+ def initialize: (client: Cadenya::Client) -> void
44
+ end
45
+ end
46
+ end
@@ -9,8 +9,10 @@ module Cadenya
9
9
 
10
10
  def list: (
11
11
  String workspace_id,
12
+ ?ai_provider_key_id: String,
12
13
  ?bundle_key: String,
13
14
  ?cursor: String,
15
+ ?include_info: bool,
14
16
  ?limit: Integer,
15
17
  ?prefix: String,
16
18
  ?query: String,
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cadenya
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Cadenya
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-06-05 00:00:00.000000000 Z
11
+ date: 2026-06-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cgi
@@ -138,6 +138,13 @@ files:
138
138
  - lib/cadenya/models/agents/webhook_delivery.rb
139
139
  - lib/cadenya/models/agents/webhook_delivery_data.rb
140
140
  - lib/cadenya/models/agents/webhook_delivery_list_params.rb
141
+ - lib/cadenya/models/ai_provider_key.rb
142
+ - lib/cadenya/models/ai_provider_key_create_params.rb
143
+ - lib/cadenya/models/ai_provider_key_delete_params.rb
144
+ - lib/cadenya/models/ai_provider_key_list_params.rb
145
+ - lib/cadenya/models/ai_provider_key_retrieve_params.rb
146
+ - lib/cadenya/models/ai_provider_key_spec.rb
147
+ - lib/cadenya/models/ai_provider_key_update_params.rb
141
148
  - lib/cadenya/models/api_key.rb
142
149
  - lib/cadenya/models/api_key_create_params.rb
143
150
  - lib/cadenya/models/api_key_delete_params.rb
@@ -339,6 +346,7 @@ files:
339
346
  - lib/cadenya/resources/agents/schedules.rb
340
347
  - lib/cadenya/resources/agents/variations.rb
341
348
  - lib/cadenya/resources/agents/webhook_deliveries.rb
349
+ - lib/cadenya/resources/ai_provider_keys.rb
342
350
  - lib/cadenya/resources/api_keys.rb
343
351
  - lib/cadenya/resources/api_keys/access.rb
344
352
  - lib/cadenya/resources/bulk_workspace_resources.rb
@@ -437,6 +445,13 @@ files:
437
445
  - rbi/cadenya/models/agents/webhook_delivery.rbi
438
446
  - rbi/cadenya/models/agents/webhook_delivery_data.rbi
439
447
  - rbi/cadenya/models/agents/webhook_delivery_list_params.rbi
448
+ - rbi/cadenya/models/ai_provider_key.rbi
449
+ - rbi/cadenya/models/ai_provider_key_create_params.rbi
450
+ - rbi/cadenya/models/ai_provider_key_delete_params.rbi
451
+ - rbi/cadenya/models/ai_provider_key_list_params.rbi
452
+ - rbi/cadenya/models/ai_provider_key_retrieve_params.rbi
453
+ - rbi/cadenya/models/ai_provider_key_spec.rbi
454
+ - rbi/cadenya/models/ai_provider_key_update_params.rbi
440
455
  - rbi/cadenya/models/api_key.rbi
441
456
  - rbi/cadenya/models/api_key_create_params.rbi
442
457
  - rbi/cadenya/models/api_key_delete_params.rbi
@@ -638,6 +653,7 @@ files:
638
653
  - rbi/cadenya/resources/agents/schedules.rbi
639
654
  - rbi/cadenya/resources/agents/variations.rbi
640
655
  - rbi/cadenya/resources/agents/webhook_deliveries.rbi
656
+ - rbi/cadenya/resources/ai_provider_keys.rbi
641
657
  - rbi/cadenya/resources/api_keys.rbi
642
658
  - rbi/cadenya/resources/api_keys/access.rbi
643
659
  - rbi/cadenya/resources/bulk_workspace_resources.rbi
@@ -735,6 +751,13 @@ files:
735
751
  - sig/cadenya/models/agents/webhook_delivery.rbs
736
752
  - sig/cadenya/models/agents/webhook_delivery_data.rbs
737
753
  - sig/cadenya/models/agents/webhook_delivery_list_params.rbs
754
+ - sig/cadenya/models/ai_provider_key.rbs
755
+ - sig/cadenya/models/ai_provider_key_create_params.rbs
756
+ - sig/cadenya/models/ai_provider_key_delete_params.rbs
757
+ - sig/cadenya/models/ai_provider_key_list_params.rbs
758
+ - sig/cadenya/models/ai_provider_key_retrieve_params.rbs
759
+ - sig/cadenya/models/ai_provider_key_spec.rbs
760
+ - sig/cadenya/models/ai_provider_key_update_params.rbs
738
761
  - sig/cadenya/models/api_key.rbs
739
762
  - sig/cadenya/models/api_key_create_params.rbs
740
763
  - sig/cadenya/models/api_key_delete_params.rbs
@@ -936,6 +959,7 @@ files:
936
959
  - sig/cadenya/resources/agents/schedules.rbs
937
960
  - sig/cadenya/resources/agents/variations.rbs
938
961
  - sig/cadenya/resources/agents/webhook_deliveries.rbs
962
+ - sig/cadenya/resources/ai_provider_keys.rbs
939
963
  - sig/cadenya/resources/api_keys.rbs
940
964
  - sig/cadenya/resources/api_keys/access.rbs
941
965
  - sig/cadenya/resources/bulk_workspace_resources.rbs