Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "0.8.1"
".": "0.9.0"
}
4 changes: 2 additions & 2 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
configured_endpoints: 19
configured_endpoints: 24
openapi_spec_hash: 68055a774f3305fb11efa5b5b5881446
config_hash: 00442fdab71911b02ab1e10f9ec05b79
config_hash: f0743196c68fb84cbd06a95f134702b3
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# Changelog

## 0.9.0 (2026-01-08)

Full Changelog: [v0.8.1...v0.9.0](https://github.com/openlayer-ai/openlayer-ruby/compare/v0.8.1...v0.9.0)

### Features

* **api:** add missing endpoints ([57f7ad7](https://github.com/openlayer-ai/openlayer-ruby/commit/57f7ad72db4fe4a7b3802a5cabbe0c425e3740f4))

## 0.8.1 (2026-01-06)

Full Changelog: [v0.8.0...v0.8.1](https://github.com/openlayer-ai/openlayer-ruby/compare/v0.8.0...v0.8.1)
Expand Down
2 changes: 1 addition & 1 deletion Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ GIT
PATH
remote: .
specs:
openlayer (0.8.1)
openlayer (0.9.0)
connection_pool

GEM
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ To use this gem, install via Bundler by adding the following to your application
<!-- x-release-please-start-version -->

```ruby
gem "openlayer", "~> 0.8.1"
gem "openlayer", "~> 0.9.0"
```

<!-- x-release-please-end -->
Expand Down
13 changes: 13 additions & 0 deletions lib/openlayer.rb
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,16 @@
require_relative "openlayer/models/storage/presigned_url_create_response"
require_relative "openlayer/models/test_evaluate_params"
require_relative "openlayer/models/test_evaluate_response"
require_relative "openlayer/models/workspace_retrieve_params"
require_relative "openlayer/models/workspace_retrieve_response"
require_relative "openlayer/models/workspaces/api_key_create_params"
require_relative "openlayer/models/workspaces/api_key_create_response"
require_relative "openlayer/models/workspaces/invite_create_params"
require_relative "openlayer/models/workspaces/invite_create_response"
require_relative "openlayer/models/workspaces/invite_list_params"
require_relative "openlayer/models/workspaces/invite_list_response"
require_relative "openlayer/models/workspace_update_params"
require_relative "openlayer/models/workspace_update_response"
require_relative "openlayer/models"
require_relative "openlayer/resources/commits"
require_relative "openlayer/resources/commits/test_results"
Expand All @@ -103,3 +113,6 @@
require_relative "openlayer/resources/storage"
require_relative "openlayer/resources/storage/presigned_url"
require_relative "openlayer/resources/tests"
require_relative "openlayer/resources/workspaces"
require_relative "openlayer/resources/workspaces/api_keys"
require_relative "openlayer/resources/workspaces/invites"
4 changes: 4 additions & 0 deletions lib/openlayer/client.rb
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,9 @@ class Client < Openlayer::Internal::Transport::BaseClient
# @return [Openlayer::Resources::Projects]
attr_reader :projects

# @return [Openlayer::Resources::Workspaces]
attr_reader :workspaces

# @return [Openlayer::Resources::Commits]
attr_reader :commits

Expand Down Expand Up @@ -77,6 +80,7 @@ def initialize(
)

@projects = Openlayer::Resources::Projects.new(client: self)
@workspaces = Openlayer::Resources::Workspaces.new(client: self)
@commits = Openlayer::Resources::Commits.new(client: self)
@inference_pipelines = Openlayer::Resources::InferencePipelines.new(client: self)
@storage = Openlayer::Resources::Storage.new(client: self)
Expand Down
6 changes: 6 additions & 0 deletions lib/openlayer/models.rb
Original file line number Diff line number Diff line change
Expand Up @@ -60,4 +60,10 @@ module Openlayer
Storage = Openlayer::Models::Storage

TestEvaluateParams = Openlayer::Models::TestEvaluateParams

WorkspaceRetrieveParams = Openlayer::Models::WorkspaceRetrieveParams

Workspaces = Openlayer::Models::Workspaces

WorkspaceUpdateParams = Openlayer::Models::WorkspaceUpdateParams
end
14 changes: 14 additions & 0 deletions lib/openlayer/models/workspace_retrieve_params.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# frozen_string_literal: true

module Openlayer
module Models
# @see Openlayer::Resources::Workspaces#retrieve
class WorkspaceRetrieveParams < Openlayer::Internal::Type::BaseModel
extend Openlayer::Internal::Type::RequestParameters::Converter
include Openlayer::Internal::Type::RequestParameters

# @!method initialize(request_options: {})
# @param request_options [Openlayer::RequestOptions, Hash{Symbol=>Object}]
end
end
end
169 changes: 169 additions & 0 deletions lib/openlayer/models/workspace_retrieve_response.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,169 @@
# frozen_string_literal: true

module Openlayer
module Models
# @see Openlayer::Resources::Workspaces#retrieve
class WorkspaceRetrieveResponse < Openlayer::Internal::Type::BaseModel
# @!attribute name
# The workspace name.
#
# @return [String]
required :name, String

# @!attribute slug
# The workspace slug.
#
# @return [String]
required :slug, String

# @!attribute saml_only_access
# Whether the workspace only allows SAML authentication.
#
# @return [Boolean, nil]
optional :saml_only_access, Openlayer::Internal::Type::Boolean, api_name: :samlOnlyAccess

# @!attribute wildcard_domains
#
# @return [Array<String>, nil]
optional :wildcard_domains, Openlayer::Internal::Type::ArrayOf[String], api_name: :wildcardDomains

response_only do
# @!attribute id
# The workspace id.
#
# @return [String]
required :id, String

# @!attribute creator_id
# The workspace creator id.
#
# @return [String, nil]
required :creator_id, String, api_name: :creatorId, nil?: true

# @!attribute date_created
# The workspace creation date.
#
# @return [Time]
required :date_created, Time, api_name: :dateCreated

# @!attribute date_updated
# The workspace last updated date.
#
# @return [Time]
required :date_updated, Time, api_name: :dateUpdated

# @!attribute invite_count
# The number of invites in the workspace.
#
# @return [Integer]
required :invite_count, Integer, api_name: :inviteCount

# @!attribute member_count
# The number of members in the workspace.
#
# @return [Integer]
required :member_count, Integer, api_name: :memberCount

# @!attribute period_end_date
# The end date of the current billing period.
#
# @return [Time, nil]
required :period_end_date, Time, api_name: :periodEndDate, nil?: true

# @!attribute period_start_date
# The start date of the current billing period.
#
# @return [Time, nil]
required :period_start_date, Time, api_name: :periodStartDate, nil?: true

# @!attribute project_count
# The number of projects in the workspace.
#
# @return [Integer]
required :project_count, Integer, api_name: :projectCount

# @!attribute status
#
# @return [Symbol, Openlayer::Models::WorkspaceRetrieveResponse::Status]
required :status, enum: -> { Openlayer::Models::WorkspaceRetrieveResponse::Status }

# @!attribute monthly_usage
#
# @return [Array<Openlayer::Models::WorkspaceRetrieveResponse::MonthlyUsage>, nil]
optional :monthly_usage,
-> { Openlayer::Internal::Type::ArrayOf[Openlayer::Models::WorkspaceRetrieveResponse::MonthlyUsage] },
api_name: :monthlyUsage
end

# @!method initialize(id:, creator_id:, date_created:, date_updated:, invite_count:, member_count:, name:, period_end_date:, period_start_date:, project_count:, slug:, status:, monthly_usage: nil, saml_only_access: nil, wildcard_domains: nil)
# @param id [String] The workspace id.
#
# @param creator_id [String, nil] The workspace creator id.
#
# @param date_created [Time] The workspace creation date.
#
# @param date_updated [Time] The workspace last updated date.
#
# @param invite_count [Integer] The number of invites in the workspace.
#
# @param member_count [Integer] The number of members in the workspace.
#
# @param name [String] The workspace name.
#
# @param period_end_date [Time, nil] The end date of the current billing period.
#
# @param period_start_date [Time, nil] The start date of the current billing period.
#
# @param project_count [Integer] The number of projects in the workspace.
#
# @param slug [String] The workspace slug.
#
# @param status [Symbol, Openlayer::Models::WorkspaceRetrieveResponse::Status]
#
# @param monthly_usage [Array<Openlayer::Models::WorkspaceRetrieveResponse::MonthlyUsage>]
#
# @param saml_only_access [Boolean] Whether the workspace only allows SAML authentication.
#
# @param wildcard_domains [Array<String>]

# @see Openlayer::Models::WorkspaceRetrieveResponse#status
module Status
extend Openlayer::Internal::Type::Enum

ACTIVE = :active
PAST_DUE = :past_due
UNPAID = :unpaid
CANCELED = :canceled
INCOMPLETE = :incomplete
INCOMPLETE_EXPIRED = :incomplete_expired
TRIALING = :trialing
PAUSED = :paused

# @!method self.values
# @return [Array<Symbol>]
end

class MonthlyUsage < Openlayer::Internal::Type::BaseModel
# @!attribute execution_time_ms
#
# @return [Integer, nil]
optional :execution_time_ms, Integer, api_name: :executionTimeMs, nil?: true

# @!attribute month_year
#
# @return [Date, nil]
optional :month_year, Date, api_name: :monthYear

# @!attribute prediction_count
#
# @return [Integer, nil]
optional :prediction_count, Integer, api_name: :predictionCount

# @!method initialize(execution_time_ms: nil, month_year: nil, prediction_count: nil)
# @param execution_time_ms [Integer, nil]
# @param month_year [Date]
# @param prediction_count [Integer]
end
end
end
end
38 changes: 38 additions & 0 deletions lib/openlayer/models/workspace_update_params.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# frozen_string_literal: true

module Openlayer
module Models
# @see Openlayer::Resources::Workspaces#update
class WorkspaceUpdateParams < Openlayer::Internal::Type::BaseModel
extend Openlayer::Internal::Type::RequestParameters::Converter
include Openlayer::Internal::Type::RequestParameters

# @!attribute invite_code
# The workspace invite code.
#
# @return [String, nil]
optional :invite_code, String, api_name: :inviteCode

# @!attribute name
# The workspace name.
#
# @return [String, nil]
optional :name, String

# @!attribute slug
# The workspace slug.
#
# @return [String, nil]
optional :slug, String

# @!method initialize(invite_code: nil, name: nil, slug: nil, request_options: {})
# @param invite_code [String] The workspace invite code.
#
# @param name [String] The workspace name.
#
# @param slug [String] The workspace slug.
#
# @param request_options [Openlayer::RequestOptions, Hash{Symbol=>Object}]
end
end
end
Loading