elevenlabs_client 0.8.1 โ†’ 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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e5d07e9e3fe474540a23a42b42a96747e9e3dd3e17a6153df716f940aff72d37
4
- data.tar.gz: 22ac0f66c064c51bc5ae145cde35dc22fde3fd96fbe3999cf74aa29b43f970ec
3
+ metadata.gz: ef86592d4776f802ff08ce6fa1d749204f42beb6045c1a0921c488b85a923fb4
4
+ data.tar.gz: 4f8a9e5aa4f15754165e088438669d381acedd0a67cc8306fe48383948175289
5
5
  SHA512:
6
- metadata.gz: 922bcdfbc466fe0feb260ab103e15a6047b2e9af9e281c978561c7e17fca10cff9420a70a117eb32513a30b51c072ea2bf7b133b8efface1b7c15cb31630f583
7
- data.tar.gz: bfbe4871e45a213e08e7b46f2799418e43b1e26c1b5b585565a27a7bf6c5b1bfef8b5b505c3226d9e9f59299b333b59488e84ad380ff9b70bbd044fb3b8a6f9e
6
+ metadata.gz: 0b5e7ed0a5ec39b3aa9fd06a061a7a6d09f0306d57f59f774a992ae220bce8e689ee31035ef62b6eff53c1bc3b7e4aa894115d93fdd1fc838ce6edcbd7b9554b
7
+ data.tar.gz: 330d3d43b159392b6f4cef475229be2bb69cd8e717d9f1f2aa0fc89db5f949b81411bf4ad6b391371b4934ab4dd34099f84a42d0f6bd067a489decce9faac96e
data/CHANGELOG.md CHANGED
@@ -7,6 +7,33 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.9.0] - 2025-12-25
11
+
12
+ ### Added
13
+ - **๐Ÿ” Agents Platform: Secrets Management** - Complete secrets management for ElevenLabs agents
14
+ - **Secrets API** (`client.secrets.*`)
15
+ - List secrets: `client.secrets.list` - Retrieve all secrets from ElevenLabs workspace
16
+ - Create secret: `client.secrets.create(name:, value:, type: "new")` - Create new secrets with optional type
17
+ - Delete secret: `client.secrets.delete(secret_id)` - Remove secrets by ID
18
+ - Comprehensive error handling for authentication, validation, and not found scenarios
19
+ - Support for different secret types (new, update)
20
+ - Full test coverage with 18 test examples covering all CRUD operations, error handling, and edge cases
21
+
22
+ ### Enhanced
23
+ - **๐Ÿ”ง Backend Integration** - Updated secrets controller to use ElevenLabs client library
24
+ - Replaced direct `Net::HTTP` calls with `ElevenlabsClient` library
25
+ - Improved error handling and consistency with other endpoints
26
+ - Better maintainability and reduced code duplication
27
+ - Seamless integration with existing authentication and API key management
28
+
29
+ ### Technical Improvements
30
+ - **๐Ÿงช Test Coverage** - Comprehensive testing for secrets endpoint
31
+ - Added 18 new endpoint tests covering list, create, and delete operations
32
+ - Error handling tests for NotFoundError, BadRequestError, UnprocessableEntityError, AuthenticationError, and ForbiddenError
33
+ - Parameter handling tests for special characters, long values, and different ID formats
34
+ - Workflow scenario tests for full CRUD operations
35
+ - All tests passing with 0 failures
36
+
10
37
  ## [0.8.1] - 2025-12-03
11
38
 
12
39
  ### Fixed
@@ -79,6 +79,7 @@ module ElevenlabsClient
79
79
  @workspace = Endpoints::AgentsPlatform::Workspace.new(self)
80
80
  @llm_usage = Endpoints::AgentsPlatform::LlmUsage.new(self)
81
81
  @mcp_servers = Endpoints::AgentsPlatform::McpServers.new(self)
82
+ @secrets = Endpoints::AgentsPlatform::Secrets.new(self)
82
83
  end
83
84
 
84
85
  public
@@ -93,7 +94,7 @@ module ElevenlabsClient
93
94
  :workspace_webhooks, :service_account_api_keys,
94
95
  :agents, :conversations, :tools, :knowledge_base, :tests, :test_invocations,
95
96
  :phone_numbers, :widgets, :outbound_calling, :batch_calling, :workspace,
96
- :llm_usage, :mcp_servers
97
+ :llm_usage, :mcp_servers, :secrets
97
98
 
98
99
  # Delegate HTTP methods to http_client for backward compatibility
99
100
  def get(path, params = {})
@@ -0,0 +1,52 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ElevenlabsClient
4
+ module Endpoints
5
+ module AgentsPlatform
6
+ class Secrets
7
+ def initialize(client)
8
+ @client = client
9
+ end
10
+
11
+ # GET /v1/convai/secrets
12
+ # List all secrets from ElevenLabs
13
+ # Documentation: https://elevenlabs.io/docs/api-reference/convai/secrets/list
14
+ #
15
+ # @return [Hash] List of secrets with their metadata
16
+ def list
17
+ endpoint = "/v1/convai/secrets"
18
+ @client.get(endpoint)
19
+ end
20
+
21
+ # POST /v1/convai/secrets
22
+ # Create a new secret in ElevenLabs
23
+ # Documentation: https://elevenlabs.io/docs/api-reference/convai/secrets/create
24
+ #
25
+ # @param name [String] Name of the secret
26
+ # @param value [String] Value of the secret
27
+ # @param type [String] Type of secret (default: "new")
28
+ # @return [Hash] Created secret with ID and metadata
29
+ def create(name:, value:, type: "new")
30
+ endpoint = "/v1/convai/secrets"
31
+ request_body = {
32
+ type: type,
33
+ name: name,
34
+ value: value
35
+ }
36
+ @client.post(endpoint, request_body)
37
+ end
38
+
39
+ # DELETE /v1/convai/secrets/{secret_id}
40
+ # Delete a secret from ElevenLabs
41
+ # Documentation: https://elevenlabs.io/docs/api-reference/convai/secrets/delete
42
+ #
43
+ # @param secret_id [String] ID of the secret to delete
44
+ # @return [Hash] Empty response on success
45
+ def delete(secret_id)
46
+ endpoint = "/v1/convai/secrets/#{secret_id}"
47
+ @client.delete(endpoint)
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ElevenlabsClient
4
- VERSION = "0.8.1"
4
+ VERSION = "0.9.0"
5
5
  end
@@ -31,6 +31,7 @@ require_relative "elevenlabs_client/endpoints/agents_platform/mcp_servers"
31
31
  require_relative "elevenlabs_client/endpoints/agents_platform/llm_usage"
32
32
  require_relative "elevenlabs_client/endpoints/agents_platform/phone_numbers"
33
33
  require_relative "elevenlabs_client/endpoints/agents_platform/outbound_calling"
34
+ require_relative "elevenlabs_client/endpoints/agents_platform/secrets"
34
35
  require_relative "elevenlabs_client/endpoints/agents_platform/tools"
35
36
  require_relative "elevenlabs_client/endpoints/agents_platform/tests"
36
37
  require_relative "elevenlabs_client/endpoints/agents_platform/test_invocations"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: elevenlabs_client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.1
4
+ version: 0.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vitor Oliveira
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2025-12-03 00:00:00.000000000 Z
11
+ date: 2025-12-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -173,6 +173,7 @@ files:
173
173
  - lib/elevenlabs_client/endpoints/agents_platform/mcp_servers.rb
174
174
  - lib/elevenlabs_client/endpoints/agents_platform/outbound_calling.rb
175
175
  - lib/elevenlabs_client/endpoints/agents_platform/phone_numbers.rb
176
+ - lib/elevenlabs_client/endpoints/agents_platform/secrets.rb
176
177
  - lib/elevenlabs_client/endpoints/agents_platform/test_invocations.rb
177
178
  - lib/elevenlabs_client/endpoints/agents_platform/tests.rb
178
179
  - lib/elevenlabs_client/endpoints/agents_platform/tools.rb
@@ -210,7 +211,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
210
211
  requirements:
211
212
  - - ">="
212
213
  - !ruby/object:Gem::Version
213
- version: 3.0.0
214
+ version: 3.2.0
214
215
  required_rubygems_version: !ruby/object:Gem::Requirement
215
216
  requirements:
216
217
  - - ">="