diff --git a/.claude/skills/scalar-ruby-sdk/SKILL.md b/.claude/skills/scalar-ruby-sdk/SKILL.md index f208ef2..9a4e14e 100644 --- a/.claude/skills/scalar-ruby-sdk/SKILL.md +++ b/.claude/skills/scalar-ruby-sdk/SKILL.md @@ -1,30 +1,30 @@ --- name: scalar-ruby-sdk -description: "Ruby SDK for Scalar API. Use when writing Ruby code that calls Scalar API with the scalar-api-ruby package: installing it, constructing and authenticating the client, and calling API operations." +description: "Ruby SDK for Scalar API. Use when writing Ruby code that calls Scalar API with the scalar_api_ruby package: installing it, constructing and authenticating the client, and calling API operations." --- # Scalar Ruby SDK -Generated Ruby client for Scalar API, published as `scalar-api-ruby`. Use the generated client instead of hand-writing HTTP requests. +Generated Ruby client for Scalar API, published as `scalar_api_ruby`. Use the generated client instead of hand-writing HTTP requests. ## Install Add the gem to your application's `Gemfile`: ```ruby -gem "scalar-api-ruby", "~> 0.1.1" # x-release-please-version +gem "scalar_api_ruby", "~> 0.2.0" # x-release-please-version ``` Or install it directly: ```sh -gem install scalar-api-ruby +gem install scalar_api_ruby ``` ## Client setup and authentication ```ruby -require "scalar-api-ruby" +require "scalar_api_ruby" client = Scalar::Client.new( bearer_auth: ENV["BEARER_AUTH"], # defaults to the BEARER_AUTH env var @@ -34,11 +34,12 @@ client = Scalar::Client.new( Provide credentials using the options below. Environment variables are read automatically when the target runtime supports them: - `bearer_auth` (env: `BEARER_AUTH`) — Credential for the BearerAuth authentication scheme. +- `o_auth2` (env: `SCALAR_OAUTH_TOKEN`) — Authorization code with PKCE (S256), for apps acting on behalf of a Scalar user. Each scope implies the weaker ones. ## Calling operations ```ruby -require "scalar-api-ruby" +require "scalar_api_ruby" client = Scalar::Client.new( bearer_auth: ENV["BEARER_AUTH"], # defaults to the BEARER_AUTH env var diff --git a/.release-please-manifest.json b/.release-please-manifest.json index a915e8c..2be9c43 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "0.1.1" + ".": "0.2.0" } diff --git a/CHANGELOG.md b/CHANGELOG.md index 849f575..ba76098 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,49 @@ # Changelog +## [0.2.0](https://github.com/scalar/scalar-ruby/compare/v0.1.1...v0.2.0) (2026-10-09) + + +### ⚠ BREAKING CHANGES + +* **api:** Schema `method` changed from `enum(delete | get | head | …)` to `string`. +* **api:** Configuration of `oauth2` auth scheme `OAuth2` changed. +* **api:** 10 breaking changes to the SDK surface. + - Removed operation `oAuth.oauthAuthorize` (`GET /v1/oauth/authorize`). + - Removed operation `oAuth.oauthToken` (`POST /v1/oauth/token`). + - Removed operation `oAuth.oauthRevoke` (`POST /v1/oauth/revoke`). + - Removed operation `oAuth.oauthAuthorizationServerMetadata` (`GET /.well-known/oauth-authorization-server`). + - Removed schema `oauth_token`. + - Removed schema `oauth_scope`. + - Removed schema `oauth_error`. + - Removed schema `oauth_token_request`. + - Removed schema `oauth_revoke_request`. + - Removed schema `oauth_authorization_server_metadata`. +* **api:** 4 breaking changes to the SDK surface. + - Property `api_document.tags` type changed from `unknown` to `string`. + - Property `managed_doc_version.tools` type changed from `Array` to `Array`. + - Property `github_project.accessGroups` type changed from `unknown` to `string`. + - Property `docs_project.accessGroups` type changed from `unknown` to `string`. +* **api:** 10 breaking changes to the SDK surface. + - Removed body field `lastKnownVersionSha` from `registry.updateApiDocumentVersion`. + - Removed body field `lastKnownVersionSha` from `registry.createApiDocumentVersion`. + - Response of `schemas.version.create` changed from `uid` to `none`. + - Schema `slug` shape changed. + - Schema `namespace` shape changed. + - Added required property `managed_doc_version.endpointCount`. + - Removed optional property `managed_doc_version.versionSha`. + - Schema `method` shape changed. + - Added required property `github_project.userInfoHookUrl`. + - Added required property `github_project.analyticsEnabled`. + +### Features + +* **api:** add operation accessGroups.create (+66 more changes) ([6808193](https://github.com/scalar/scalar-ruby/commit/68081934feaa706b74cfd4902e57ae856d8c0f45)) +* **api:** remove operation oAuth.oauthAuthorize (+9 more changes) ([04d9ebb](https://github.com/scalar/scalar-ruby/commit/04d9ebb2a30e0d09d3e236668e2d7c9d27d3a15b)) +* **api:** update auth scheme OAuth2 (+1 more change) ([b012cf9](https://github.com/scalar/scalar-ruby/commit/b012cf99690a404e82e60132f32288c7bdee0a81)) +* **api:** update property api_document.tags (+3 more changes) ([21db53f](https://github.com/scalar/scalar-ruby/commit/21db53f16e8ed92be07de3f544e780bb44373872)) +* **api:** update schema method ([a767517](https://github.com/scalar/scalar-ruby/commit/a767517d8290873f7946c6dc8ac5c1e926109625)) +* **api:** update SDK surface (15 changes) ([ec912cc](https://github.com/scalar/scalar-ruby/commit/ec912cc28d1b0a39bda9e8a398a9b59b928f031c)) + ## [0.1.1](https://github.com/scalar/scalar-ruby/compare/v0.1.0...v0.1.1) (2026-09-15) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 9873731..1480a20 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -26,7 +26,7 @@ Files under `examples/` are never modified by the generator. #!/usr/bin/env ruby # frozen_string_literal: true -require_relative "../lib/scalar-api-ruby" +require_relative "../lib/scalar_api_ruby" # ... ``` @@ -40,13 +40,13 @@ $ ruby ./examples/.rb To install from git in your `Gemfile`: ```ruby -gem "scalar-api-ruby", git: "" +gem "scalar_api_ruby", git: "" ``` Or reference a local checkout: ```ruby -gem "scalar-api-ruby", path: "/path/to/scalar-api-ruby" +gem "scalar_api_ruby", path: "/path/to/scalar_api_ruby" ``` ## Linting, formatting, and typechecking diff --git a/Gemfile.lock b/Gemfile.lock index dc459ed..84cc27c 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: . specs: - scalar-api-ruby (0.1.1) + scalar_api_ruby (0.2.0) cgi connection_pool @@ -149,7 +149,7 @@ DEPENDENCIES rbs redcarpet rubocop - scalar-api-ruby! + scalar_api_ruby! sorbet steep syntax_tree diff --git a/README.md b/README.md index cbd76b5..250a976 100644 --- a/README.md +++ b/README.md @@ -26,13 +26,13 @@ The full API of this library can be found in [api.md](./api.md). Add the gem to your application's `Gemfile`: ```ruby -gem "scalar-api-ruby", "~> 0.1.1" # x-release-please-version +gem "scalar_api_ruby", "~> 0.2.0" # x-release-please-version ``` Or install it directly: ```sh -gem install scalar-api-ruby +gem install scalar_api_ruby ```
@@ -40,7 +40,7 @@ gem install scalar-api-ruby ## Usage ```ruby -require "scalar-api-ruby" +require "scalar_api_ruby" client = Scalar::Client.new( bearer_auth: ENV["BEARER_AUTH"], # defaults to the BEARER_AUTH env var @@ -64,10 +64,12 @@ Pass credentials to the generated client constructor. Environment variables are | Option | Type | Default | Description | | --- | --- | --- | --- | | `bearer_auth` | `String \| nil` | - | Credential for the BearerAuth authentication scheme. Defaults to BEARER_AUTH. | +| `o_auth2` | `String \| nil` | - | Authorization code with PKCE (S256), for apps acting on behalf of a Scalar user. Each scope implies the weaker ones. Defaults to SCALAR_OAUTH_TOKEN. | Declared schemes: - `BearerAuth` bearer token +- `OAuth2` OAuth2/OpenID Connect
@@ -95,7 +97,7 @@ Documented error statuses: `400`, `401`, `403`, `404`, `422`, `500`. Configure the generated client by setting any of these options when you create it. ```ruby -require "scalar-api-ruby" +require "scalar_api_ruby" client = Scalar::Client.new( timeout: 60.0, @@ -106,6 +108,7 @@ client = Scalar::Client.new( | Option | Type | Default | Description | | --- | --- | --- | --- | | `bearer_auth` | `String \| nil` | `ENV["BEARER_AUTH"]` | Credential for the BearerAuth authentication scheme. | +| `o_auth2` | `String \| nil` | `ENV["SCALAR_OAUTH_TOKEN"]` | Authorization code with PKCE (S256), for apps acting on behalf of a Scalar user. Each scope implies the weaker ones. | | `base_url` | `String \| nil` | `ENV["SCALAR_BASE_URL"]` | Override the default API base URL. | | `max_retries` | `Integer` | `2` | Max number of retries to attempt after a failed retryable request. | | `timeout` | `Float` | `60.0` | Seconds to wait for a response before timing out. | diff --git a/SKILL.md b/SKILL.md index 6de24a8..2e108b9 100644 --- a/SKILL.md +++ b/SKILL.md @@ -1,30 +1,30 @@ --- name: scalar-ruby-sdk -description: "Ruby SDK for Scalar API. Use when writing Ruby code that calls Scalar API with the scalar-api-ruby package: installing it, constructing and authenticating the client, and calling API operations." +description: "Ruby SDK for Scalar API. Use when writing Ruby code that calls Scalar API with the scalar_api_ruby package: installing it, constructing and authenticating the client, and calling API operations." --- # Scalar Ruby SDK -Generated Ruby client for Scalar API, published as `scalar-api-ruby`. Use the generated client instead of hand-writing HTTP requests. +Generated Ruby client for Scalar API, published as `scalar_api_ruby`. Use the generated client instead of hand-writing HTTP requests. ## Install Add the gem to your application's `Gemfile`: ```ruby -gem "scalar-api-ruby", "~> 0.1.1" # x-release-please-version +gem "scalar_api_ruby", "~> 0.2.0" # x-release-please-version ``` Or install it directly: ```sh -gem install scalar-api-ruby +gem install scalar_api_ruby ``` ## Client setup and authentication ```ruby -require "scalar-api-ruby" +require "scalar_api_ruby" client = Scalar::Client.new( bearer_auth: ENV["BEARER_AUTH"], # defaults to the BEARER_AUTH env var @@ -34,11 +34,12 @@ client = Scalar::Client.new( Provide credentials using the options below. Environment variables are read automatically when the target runtime supports them: - `bearer_auth` (env: `BEARER_AUTH`) — Credential for the BearerAuth authentication scheme. +- `o_auth2` (env: `SCALAR_OAUTH_TOKEN`) — Authorization code with PKCE (S256), for apps acting on behalf of a Scalar user. Each scope implies the weaker ones. ## Calling operations ```ruby -require "scalar-api-ruby" +require "scalar_api_ruby" client = Scalar::Client.new( bearer_auth: ENV["BEARER_AUTH"], # defaults to the BEARER_AUTH env var diff --git a/VERSIONING.md b/VERSIONING.md index 662f2b6..f9cf7dd 100644 --- a/VERSIONING.md +++ b/VERSIONING.md @@ -73,6 +73,10 @@ different fixes: platform and the `github-actions` bot to push (or be left unprotected); the default branch only ever advances by merging release PRs, and `scalar-next` receives each released state back from the release workflow. +- **`scalar-next` must not enable "Require linear history."** The Scalar platform merges each + regeneration into it, and merges a resolved conflict back the same way; the release sync + adds another merge whenever a release PR is squash- or rebase-merged. That setting rejects + all of them. - No Actions settings changes are required: the generated workflows declare their own permissions and never create pull requests. - If this package publishes through OIDC trusted publishing (for example PyPI or npm), @@ -84,3 +88,13 @@ different fixes: manual re-publishes at an existing tag; register it as an additional trusted publisher only if you use it. If the publish job is configured with a deployment environment, include that environment in the registration too. + +### Recommended, not required + +Releases work without this; it closes a window where one can go out at the wrong version. + +- **If this repository uses auto-merge, make the `Release PR version` check a required status + check.** Auto-merge merges as soon as the checks that are *required* go green, with no + human present — so a check that is not required but still red at that moment stops + nothing, which is exactly the window between retitling a release PR and the platform + re-rendering it. diff --git a/api.md b/api.md index 665d0ae..802a96f 100644 --- a/api.md +++ b/api.md @@ -35,6 +35,14 @@ Complete reference of every operation, grouped by resource. See [the README](./R - [Delete a login portal](#delete-a-login-portal) - [Create a portal](#create-a-portal) - [List all portals](#list-all-portals) +- [`AccessGroups`](#accessgroups) + - [Create an access group](#create-an-access-group) + - [Get an access group](#get-an-access-group) + - [Update an access group](#update-an-access-group) + - [Delete an access group](#delete-an-access-group) + - [`AccessGroups Domains`](#accessgroups-domains) + - [Add an allowed email domain](#add-an-allowed-email-domain) + - [Remove an allowed email domain](#remove-an-allowed-email-domain) - [`Rules`](#rules) - [List all rules](#list-all-rules) - [Create a rule](#create-a-rule) @@ -52,20 +60,67 @@ Complete reference of every operation, grouped by resource. See [the README](./R - [Get a theme](#get-a-theme) - [`Teams`](#teams) - [List teams](#list-teams) + - [`Teams Members`](#teams-members) + - [List team members](#list-team-members) + - [Change a member role](#change-a-member-role) + - [Remove a member](#remove-a-member) + - [`Teams Invites`](#teams-invites) + - [Invite a member](#invite-a-member) + - [Resend an invite](#resend-an-invite) + - [Cancel an invite](#cancel-an-invite) - [`ScalarDocs`](#scalardocs) - [List all projects](#list-all-projects) - [Create a project](#create-a-project) - [Publish a project](#publish-a-project) + - [List all docs projects](#list-all-docs-projects) + - [Create a docs project](#create-a-docs-project) + - [Get a docs project](#get-a-docs-project) + - [Update a docs project](#update-a-docs-project) + - [Delete a docs project](#delete-a-docs-project) + - [Publish a docs project](#publish-a-docs-project) + - [Read the site config](#read-the-site-config) + - [Write the site config](#write-the-site-config) + - [Get the site domains](#get-the-site-domains) + - [Check domain DNS](#check-domain-dns) - [`Namespaces`](#namespaces) - [List namespaces](#list-namespaces) - [`Authentication`](#authentication) - [Exchange token](#exchange-token) - [Get current user](#get-current-user) +- [`Sdks`](#sdks) + - [List all SDKs](#list-all-sdks) + - [Create an SDK](#create-an-sdk) + - [Get an SDK](#get-an-sdk) + - [Update an SDK](#update-an-sdk) + - [Delete an SDK](#delete-an-sdk) + - [Build an SDK](#build-an-sdk) + - [`Sdks Versions`](#sdks-versions) + - [Create an SDK version](#create-an-sdk-version) + - [Delete an SDK version](#delete-an-sdk-version) + - [`Sdks Repositories`](#sdks-repositories) + - [Link a repository](#link-a-repository) + - [Unlink a repository](#unlink-a-repository) + - [Update publishing settings](#update-publishing-settings) +- [`Mcp`](#mcp) + - [`Mcp Servers`](#mcp-servers) + - [List all MCP servers](#list-all-mcp-servers) + - [Create an MCP server](#create-an-mcp-server) + - [Get an MCP server](#get-an-mcp-server) + - [Update an MCP server](#update-an-mcp-server) + - [Delete an MCP server](#delete-an-mcp-server) + - [`Mcp Servers Installations`](#mcp-servers-installations) + - [List installations](#list-installations) + - [Create an installation](#create-an-installation) + - [Get an installation](#get-an-installation) + - [Update an installation](#update-an-installation) + - [Delete an installation](#delete-an-installation) + - [Add an access group](#add-an-access-group) + - [Remove an access group](#remove-an-access-group) ## Setup ```ruby -require "scalar-api-ruby" +require "scalar_api_ruby" client = Scalar::Client.new( bearer_auth: ENV["BEARER_AUTH"], # defaults to the BEARER_AUTH env var @@ -82,8 +137,8 @@ List all API documents across every namespace the caller can access. | Direction | Type | | --- | --- | -| Request | [`RegistryListAllAPIDocumentsParams`](././lib/scalar-api-ruby/models/registry_list_all_api_documents_params.rb) | -| Response | [`RegistryListAllAPIDocumentsResponseItem`](././lib/scalar-api-ruby/models/registry_list_all_api_documents_response.rb) | +| Request | [`RegistryListAllAPIDocumentsParams`](././lib/scalar_api_ruby/models/registry_list_all_api_documents_params.rb) | +| Response | [`APIDocument`](././lib/scalar_api_ruby/models/api_document.rb) | ```ruby response = client.registry.list_all_api_documents @@ -97,11 +152,11 @@ List API documents in a namespace. | Direction | Type | | --- | --- | -| Request | [`RegistryListAPIDocumentsParams`](././lib/scalar-api-ruby/models/registry_list_api_documents_params.rb) | -| Response | [`RegistryListAPIDocumentsResponseItem`](././lib/scalar-api-ruby/models/registry_list_api_documents_response.rb) | +| Request | [`RegistryListAPIDocumentsParams`](././lib/scalar_api_ruby/models/registry_list_api_documents_params.rb) | +| Response | [`APIDocument`](././lib/scalar_api_ruby/models/api_document.rb) | ```ruby -response = client.registry.list_api_documents("namespace") +response = client.registry.list_api_documents("acme") puts response.inspect ``` @@ -112,11 +167,11 @@ Create an API document. | Direction | Type | | --- | --- | -| Request | [`RegistryCreateAPIDocumentParams`](././lib/scalar-api-ruby/models/registry_create_api_document_params.rb) | -| Response | [`RegistryCreateAPIDocumentResponse`](././lib/scalar-api-ruby/models/registry_create_api_document_response.rb) | +| Request | [`RegistryCreateAPIDocumentParams`](././lib/scalar_api_ruby/models/registry_create_api_document_params.rb) | +| Response | [`RegistryCreateAPIDocumentResponse`](././lib/scalar_api_ruby/models/registry_create_api_document_response.rb) | ```ruby -response = client.registry.create_api_document("namespace", { document: "", slug: "", title: "", version: "x", description: "", is_private: false, ruleset: "" }) +response = client.registry.create_api_document("acme", { document: "{\"openapi\":\"3.1.0\",\"info\":{\"title\":\"Acme API\",\"version\":\"1.2.0\"},\"paths\":{}}", slug: "acme-api", title: "Acme API", version: "1.2.0", description: "API for managing Acme products and orders.", is_private: false, ruleset: "extends: [\"spectral:oas\"]" }) puts response.inspect ``` @@ -127,10 +182,10 @@ Update metadata for an API document. | Direction | Type | | --- | --- | -| Request | [`RegistryUpdateAPIDocumentParams`](././lib/scalar-api-ruby/models/registry_update_api_document_params.rb) | +| Request | [`RegistryUpdateAPIDocumentParams`](././lib/scalar_api_ruby/models/registry_update_api_document_params.rb) | ```ruby -response = client.registry.update_api_document("slug", { namespace: "namespace", description: "", is_private: false, ruleset: "", title: "" }) +response = client.registry.update_api_document("acme-api", { namespace: "acme", description: "API for managing Acme products and orders.", is_private: false, ruleset: "extends: [\"spectral:oas\"]", title: "Acme API" }) puts response.inspect ``` @@ -141,10 +196,10 @@ Delete an API document and all versions. | Direction | Type | | --- | --- | -| Request | [`RegistryDeleteAPIDocumentParams`](././lib/scalar-api-ruby/models/registry_delete_api_document_params.rb) | +| Request | [`RegistryDeleteAPIDocumentParams`](././lib/scalar_api_ruby/models/registry_delete_api_document_params.rb) | ```ruby -response = client.registry.delete_api_document("slug", { namespace: "namespace" }) +response = client.registry.delete_api_document("acme-api", { namespace: "acme" }) puts response.inspect ``` @@ -155,10 +210,10 @@ Get a specific API document version. | Direction | Type | | --- | --- | -| Request | [`RegistryRetrieveAPIDocumentVersionParams`](././lib/scalar-api-ruby/models/registry_retrieve_api_document_version_params.rb) | +| Request | [`RegistryRetrieveAPIDocumentVersionParams`](././lib/scalar_api_ruby/models/registry_retrieve_api_document_version_params.rb) | ```ruby -response = client.registry.retrieve_api_document_version("semver", { namespace: "namespace", slug: "slug" }) +response = client.registry.retrieve_api_document_version("1.2.0", { namespace: "acme", slug: "acme-api" }) puts response.inspect ``` @@ -169,11 +224,11 @@ Update the registry file content for an API document version. | Direction | Type | | --- | --- | -| Request | [`RegistryUpdateAPIDocumentVersionParams`](././lib/scalar-api-ruby/models/registry_update_api_document_version_params.rb) | -| Response | [`RegistryUpdateAPIDocumentVersionResponse`](././lib/scalar-api-ruby/models/registry_update_api_document_version_response.rb) | +| Request | [`RegistryUpdateAPIDocumentVersionParams`](././lib/scalar_api_ruby/models/registry_update_api_document_version_params.rb) | +| Response | [`RegistryUpdateAPIDocumentVersionResponse`](././lib/scalar_api_ruby/models/registry_update_api_document_version_response.rb) | ```ruby -response = client.registry.update_api_document_version("semver", { namespace: "namespace", slug: "slug", document: "", last_known_version_sha: "" }) +response = client.registry.update_api_document_version("1.2.0", { namespace: "acme", slug: "acme-api", document: "{\"openapi\":\"3.1.0\",\"info\":{\"title\":\"Acme API\",\"version\":\"1.2.0\"},\"paths\":{}}" }) puts response.inspect ``` @@ -184,10 +239,10 @@ Delete a specific API document version. | Direction | Type | | --- | --- | -| Request | [`RegistryDeleteAPIDocumentVersionParams`](././lib/scalar-api-ruby/models/registry_delete_api_document_version_params.rb) | +| Request | [`RegistryDeleteAPIDocumentVersionParams`](././lib/scalar_api_ruby/models/registry_delete_api_document_version_params.rb) | ```ruby -response = client.registry.delete_api_document_version("semver", { namespace: "namespace", slug: "slug" }) +response = client.registry.delete_api_document_version("1.2.0", { namespace: "acme", slug: "acme-api" }) puts response.inspect ``` @@ -198,11 +253,11 @@ Get metadata (uid, content shas, version sha, tags) for a specific API document | Direction | Type | | --- | --- | -| Request | [`RegistryListAPIDocumentVersionMetadataParams`](././lib/scalar-api-ruby/models/registry_list_api_document_version_metadata_params.rb) | -| Response | [`ManagedDocVersion`](././lib/scalar-api-ruby/models/managed_doc_version.rb) | +| Request | [`RegistryListAPIDocumentVersionMetadataParams`](././lib/scalar_api_ruby/models/registry_list_api_document_version_metadata_params.rb) | +| Response | [`ManagedDocVersion`](././lib/scalar_api_ruby/models/managed_doc_version.rb) | ```ruby -response = client.registry.list_api_document_version_metadata("semver", { namespace: "namespace", slug: "slug" }) +response = client.registry.list_api_document_version_metadata("1.2.0", { namespace: "acme", slug: "acme-api" }) puts response.inspect ``` @@ -213,11 +268,11 @@ Create a new API document version. | Direction | Type | | --- | --- | -| Request | [`RegistryCreateAPIDocumentVersionParams`](././lib/scalar-api-ruby/models/registry_create_api_document_version_params.rb) | -| Response | [`ManagedDocVersion`](././lib/scalar-api-ruby/models/managed_doc_version.rb) | +| Request | [`RegistryCreateAPIDocumentVersionParams`](././lib/scalar_api_ruby/models/registry_create_api_document_version_params.rb) | +| Response | [`ManagedDocVersion`](././lib/scalar_api_ruby/models/managed_doc_version.rb) | ```ruby -response = client.registry.create_api_document_version("slug", { namespace: "namespace", document: "", version: "x", force: false, last_known_version_sha: "" }) +response = client.registry.create_api_document_version("acme-api", { namespace: "acme", document: "{\"openapi\":\"3.1.0\",\"info\":{\"title\":\"Acme API\",\"version\":\"1.2.0\"},\"paths\":{}}", version: "1.2.0", force: false }) puts response.inspect ``` @@ -228,10 +283,10 @@ Add an access group to an API document. | Direction | Type | | --- | --- | -| Request | [`RegistryCreateAPIDocumentAccessGroupParams`](././lib/scalar-api-ruby/models/registry_create_api_document_access_group_params.rb) | +| Request | [`RegistryCreateAPIDocumentAccessGroupParams`](././lib/scalar_api_ruby/models/registry_create_api_document_access_group_params.rb) | ```ruby -response = client.registry.create_api_document_access_group("slug", { access_group_slug: "xxx", namespace: "namespace" }) +response = client.registry.create_api_document_access_group("acme-api", { access_group_slug: "acme-api", namespace: "acme" }) puts response.inspect ``` @@ -242,10 +297,10 @@ Remove an access group from an API document. | Direction | Type | | --- | --- | -| Request | [`RegistryDeleteAPIDocumentAccessGroupParams`](././lib/scalar-api-ruby/models/registry_delete_api_document_access_group_params.rb) | +| Request | [`RegistryDeleteAPIDocumentAccessGroupParams`](././lib/scalar_api_ruby/models/registry_delete_api_document_access_group_params.rb) | ```ruby -response = client.registry.delete_api_document_access_group("slug", { access_group_slug: "xxx", namespace: "namespace" }) +response = client.registry.delete_api_document_access_group("acme-api", { access_group_slug: "acme-api", namespace: "acme" }) puts response.inspect ``` @@ -260,11 +315,11 @@ List schemas in a namespace. | Direction | Type | | --- | --- | -| Request | [`SchemaListParams`](././lib/scalar-api-ruby/models/schema_list_params.rb) | -| Response | [`SchemaListResponseItem`](././lib/scalar-api-ruby/models/schema_list_response.rb) | +| Request | [`SchemaListParams`](././lib/scalar_api_ruby/models/schema_list_params.rb) | +| Response | [`Schema`](././lib/scalar_api_ruby/models/schema.rb) | ```ruby -response = client.schemas.list("namespace") +response = client.schemas.list("acme") puts response.inspect ``` @@ -275,11 +330,11 @@ Create a schema in a namespace. | Direction | Type | | --- | --- | -| Request | [`SchemaCreateParams`](././lib/scalar-api-ruby/models/schema_create_params.rb) | -| Response | [`UID`](././lib/scalar-api-ruby/models/uid.rb) | +| Request | [`SchemaCreateParams`](././lib/scalar_api_ruby/models/schema_create_params.rb) | +| Response | [`UID`](././lib/scalar_api_ruby/models/uid.rb) | ```ruby -response = client.schemas.create("namespace", { document: "", slug: "", title: "", version: "x", description: "", is_private: false }) +response = client.schemas.create("acme", { document: "{\"type\":\"object\",\"properties\":{\"name\":{\"type\":\"string\",\"examples\":[\"Acme\"]}}}", slug: "customer", title: "Customer", version: "1.2.0", description: "API for managing Acme products and orders.", is_private: false }) puts response.inspect ``` @@ -290,10 +345,10 @@ Update schema metadata. | Direction | Type | | --- | --- | -| Request | [`SchemaUpdateParams`](././lib/scalar-api-ruby/models/schema_update_params.rb) | +| Request | [`SchemaUpdateParams`](././lib/scalar_api_ruby/models/schema_update_params.rb) | ```ruby -response = client.schemas.update("slug", { namespace: "namespace", description: "", is_private: false, title: "" }) +response = client.schemas.update("customer", { namespace: "acme", description: "API for managing Acme products and orders.", is_private: false, title: "Customer" }) puts response.inspect ``` @@ -304,10 +359,10 @@ Delete a schema and all related versions. | Direction | Type | | --- | --- | -| Request | [`SchemaDeleteParams`](././lib/scalar-api-ruby/models/schema_delete_params.rb) | +| Request | [`SchemaDeleteParams`](././lib/scalar_api_ruby/models/schema_delete_params.rb) | ```ruby -response = client.schemas.delete("slug", { namespace: "namespace" }) +response = client.schemas.delete("customer", { namespace: "acme" }) puts response.inspect ``` @@ -322,10 +377,10 @@ Get a specific schema version document. | Direction | Type | | --- | --- | -| Request | [`VersionRetrieveParams`](././lib/scalar-api-ruby/models/schemas/version_retrieve_params.rb) | +| Request | [`VersionRetrieveParams`](././lib/scalar_api_ruby/models/schemas/version_retrieve_params.rb) | ```ruby -response = client.schemas.version.retrieve("semver", { namespace: "namespace", slug: "slug" }) +response = client.schemas.version.retrieve("1.2.0", { namespace: "acme", slug: "customer" }) puts response.inspect ``` @@ -336,10 +391,10 @@ Delete a schema version. | Direction | Type | | --- | --- | -| Request | [`VersionDeleteParams`](././lib/scalar-api-ruby/models/schemas/version_delete_params.rb) | +| Request | [`VersionDeleteParams`](././lib/scalar_api_ruby/models/schemas/version_delete_params.rb) | ```ruby -response = client.schemas.version.delete("semver", { namespace: "namespace", slug: "slug" }) +response = client.schemas.version.delete("1.2.0", { namespace: "acme", slug: "customer" }) puts response.inspect ``` @@ -350,11 +405,11 @@ Create a schema version. | Direction | Type | | --- | --- | -| Request | [`VersionCreateParams`](././lib/scalar-api-ruby/models/schemas/version_create_params.rb) | -| Response | [`UID`](././lib/scalar-api-ruby/models/uid.rb) | +| Request | [`VersionCreateParams`](././lib/scalar_api_ruby/models/schemas/version_create_params.rb) | +| Response | [`Schemas::VersionCreateResponse`](././lib/scalar_api_ruby/models/schemas/version_create_response.rb) | ```ruby -response = client.schemas.version.create("slug", { namespace: "namespace", document: "", version: "x" }) +response = client.schemas.version.create("customer", { namespace: "acme", document: "{\"type\":\"object\",\"properties\":{\"name\":{\"type\":\"string\",\"examples\":[\"Acme\"]}}}", version: "1.2.0", force: false }) puts response.inspect ``` @@ -369,10 +424,10 @@ Add an access group to a schema. | Direction | Type | | --- | --- | -| Request | [`AccessGroupCreateParams`](././lib/scalar-api-ruby/models/schemas/access_group_create_params.rb) | +| Request | [`AccessGroupCreateParams`](././lib/scalar_api_ruby/models/schemas/access_group_create_params.rb) | ```ruby -response = client.schemas.access_group.create("slug", { access_group_slug: "xxx", namespace: "namespace" }) +response = client.schemas.access_group.create("customer", { access_group_slug: "acme-api", namespace: "acme" }) puts response.inspect ``` @@ -383,10 +438,10 @@ Remove an access group from a schema. | Direction | Type | | --- | --- | -| Request | [`AccessGroupDeleteParams`](././lib/scalar-api-ruby/models/schemas/access_group_delete_params.rb) | +| Request | [`AccessGroupDeleteParams`](././lib/scalar_api_ruby/models/schemas/access_group_delete_params.rb) | ```ruby -response = client.schemas.access_group.delete("slug", { access_group_slug: "xxx", namespace: "namespace" }) +response = client.schemas.access_group.delete("customer", { access_group_slug: "acme-api", namespace: "acme" }) puts response.inspect ``` @@ -401,11 +456,11 @@ Get a login portal by slug. | Direction | Type | | --- | --- | -| Request | [`LoginPortalRetrieveParams`](././lib/scalar-api-ruby/models/login_portal_retrieve_params.rb) | -| Response | [`LoginPortalRetrieveResponse`](././lib/scalar-api-ruby/models/login_portal_retrieve_response.rb) | +| Request | [`LoginPortalRetrieveParams`](././lib/scalar_api_ruby/models/login_portal_retrieve_params.rb) | +| Response | [`LoginPortalRetrieveResponse`](././lib/scalar_api_ruby/models/login_portal_retrieve_response.rb) | ```ruby -response = client.login_portals.retrieve("slug") +response = client.login_portals.retrieve("acme-login") puts response.inspect ``` @@ -416,10 +471,10 @@ Update metadata for a login portal. | Direction | Type | | --- | --- | -| Request | [`LoginPortalUpdateParams`](././lib/scalar-api-ruby/models/login_portal_update_params.rb) | +| Request | [`LoginPortalUpdateParams`](././lib/scalar_api_ruby/models/login_portal_update_params.rb) | ```ruby -response = client.login_portals.update("slug", { title: "" }) +response = client.login_portals.update("acme-login", { title: "Acme Private Documentation" }) puts response.inspect ``` @@ -430,10 +485,10 @@ Delete a login portal. | Direction | Type | | --- | --- | -| Request | [`LoginPortalDeleteParams`](././lib/scalar-api-ruby/models/login_portal_delete_params.rb) | +| Request | [`LoginPortalDeleteParams`](././lib/scalar_api_ruby/models/login_portal_delete_params.rb) | ```ruby -response = client.login_portals.delete("slug") +response = client.login_portals.delete("acme-login") puts response.inspect ``` @@ -444,11 +499,11 @@ Create a login portal for the current team. | Direction | Type | | --- | --- | -| Request | [`LoginPortalCreateParams`](././lib/scalar-api-ruby/models/login_portal_create_params.rb) | -| Response | [`UID`](././lib/scalar-api-ruby/models/uid.rb) | +| Request | [`LoginPortalCreateParams`](././lib/scalar_api_ruby/models/login_portal_create_params.rb) | +| Response | [`UID`](././lib/scalar_api_ruby/models/uid.rb) | ```ruby -response = client.login_portals.create({ email: { "logo" => "", "logoSize" => "100", "buttonText" => "Login", "message" => "Click to access private documentation hosted by scalar.com", "title" => "Private Docs", "mainColor" => "\#2a2f45", "mainBackground" => "\#f6f6f6", "cardColor" => "2a2f45", "cardBackground" => "\#fff", "buttonColor" => "\#fff", "buttonBackground" => "\#0f0f0f" }, page: { "title" => "Scalar Private Docs", "description" => "Login to access your documentation", "head" => "", "script" => "", "theme" => "", "companyName" => "", "logo" => "", "logoURL" => "", "favicon" => "", "termsLink" => "", "privacyLink" => "", "formTitle" => "Scalar Private Docs", "formDescription" => "Login to access your documentation", "formImage" => "" }, slug: "", title: "" }) +response = client.login_portals.create({ email: { "logo" => "", "logoSize" => "100", "buttonText" => "Login", "message" => "Click to access private documentation hosted by scalar.com", "title" => "Private Docs", "mainColor" => "\#2a2f45", "mainBackground" => "\#f6f6f6", "cardColor" => "\#2a2f45", "cardBackground" => "\#fff", "buttonColor" => "\#fff", "buttonBackground" => "\#0f0f0f" }, page: { "title" => "Scalar Private Docs", "description" => "Login to access your documentation", "head" => "", "script" => "", "theme" => "", "companyName" => "", "logo" => "", "logoURL" => "", "favicon" => "", "termsLink" => "", "privacyLink" => "", "formTitle" => "Scalar Private Docs", "formDescription" => "Login to access your documentation", "formImage" => "" }, slug: "acme-login", title: "Acme Private Documentation" }) puts response.inspect ``` @@ -459,8 +514,8 @@ List all login portals for the current team. | Direction | Type | | --- | --- | -| Request | [`LoginPortalListParams`](././lib/scalar-api-ruby/models/login_portal_list_params.rb) | -| Response | [`LoginPortalListResponseItem`](././lib/scalar-api-ruby/models/login_portal_list_response.rb) | +| Request | [`LoginPortalListParams`](././lib/scalar_api_ruby/models/login_portal_list_params.rb) | +| Response | [`LoginPortal`](././lib/scalar_api_ruby/models/login_portal.rb) | ```ruby response = client.login_portals.list @@ -468,6 +523,100 @@ response = client.login_portals.list puts response.inspect ``` +## `AccessGroups` + +Access Groups + +### Create an access group + +Create a group for the current team. Requires docs edit permission and the access groups billing feature. Domains are exact email domains, without wildcards or implicit subdomain matching. + +| Direction | Type | +| --- | --- | +| Request | [`AccessGroupCreateParams`](././lib/scalar_api_ruby/models/access_group_create_params.rb) | +| Response | [`AccessGroupCreateResponse`](././lib/scalar_api_ruby/models/access_group_create_response.rb) | + +```ruby +response = client.access_groups.create({ allowed_domains: "example.com", name: "Engineering", slug: "acme-api" }) + +puts response.inspect +``` + +### Get an access group + +Get a group and its email and domain allowlists by slug. + +| Direction | Type | +| --- | --- | +| Request | [`AccessGroupRetrieveParams`](././lib/scalar_api_ruby/models/access_group_retrieve_params.rb) | +| Response | [`AccessGroupRetrieveResponse`](././lib/scalar_api_ruby/models/access_group_retrieve_response.rb) | + +```ruby +response = client.access_groups.retrieve("acme-api") + +puts response.inspect +``` + +### Update an access group + +Update group metadata. Requires docs edit permission. After changing the slug, use the new slug in subsequent requests. + +| Direction | Type | +| --- | --- | +| Request | [`AccessGroupUpdateParams`](././lib/scalar_api_ruby/models/access_group_update_params.rb) | + +```ruby +response = client.access_groups.update("acme-api", { name: "Engineering", body_slug: "acme-api" }) + +puts response.inspect +``` + +### Delete an access group + +Delete a group and remove its project assignments. Requires docs edit permission. + +| Direction | Type | +| --- | --- | +| Request | [`AccessGroupDeleteParams`](././lib/scalar_api_ruby/models/access_group_delete_params.rb) | + +```ruby +response = client.access_groups.delete("acme-api") + +puts response.inspect +``` + +### `AccessGroups Domains` + +Access Groups + +#### Add an allowed email domain + +Allow an exact email domain in a group. Requires docs edit permission. A group supports up to 1000 domains. + +| Direction | Type | +| --- | --- | +| Request | [`DomainCreateParams`](././lib/scalar_api_ruby/models/access_groups/domain_create_params.rb) | + +```ruby +response = client.access_groups.domains.create("acme-api", { domain: "example.com" }) + +puts response.inspect +``` + +#### Remove an allowed email domain + +Remove an exact email domain from a group. Requires docs edit permission. Other allowed domains and emails are preserved. + +| Direction | Type | +| --- | --- | +| Request | [`DomainDeleteParams`](././lib/scalar_api_ruby/models/access_groups/domain_delete_params.rb) | + +```ruby +response = client.access_groups.domains.delete("acme-api", { domain: "example.com" }) + +puts response.inspect +``` + ## `Rules` Rules @@ -478,11 +627,11 @@ List all rulesets in a namespace. | Direction | Type | | --- | --- | -| Request | [`RuleListRulesetsParams`](././lib/scalar-api-ruby/models/rule_list_rulesets_params.rb) | -| Response | [`RuleListRulesetsResponseItem`](././lib/scalar-api-ruby/models/rule_list_rulesets_response.rb) | +| Request | [`RuleListRulesetsParams`](././lib/scalar_api_ruby/models/rule_list_rulesets_params.rb) | +| Response | [`Rule`](././lib/scalar_api_ruby/models/rule.rb) | ```ruby -response = client.rules.list_rulesets("namespace") +response = client.rules.list_rulesets("acme") puts response.inspect ``` @@ -493,11 +642,11 @@ Create a rule in a namespace. | Direction | Type | | --- | --- | -| Request | [`RuleCreateRulesetParams`](././lib/scalar-api-ruby/models/rule_create_ruleset_params.rb) | -| Response | [`UID`](././lib/scalar-api-ruby/models/uid.rb) | +| Request | [`RuleCreateRulesetParams`](././lib/scalar_api_ruby/models/rule_create_ruleset_params.rb) | +| Response | [`UID`](././lib/scalar_api_ruby/models/uid.rb) | ```ruby -response = client.rules.create_ruleset("namespace", { document: "", slug: "", title: "", description: "", is_private: false }) +response = client.rules.create_ruleset("acme", { document: "extends: [\"spectral:oas\"]\nrules:\n info-contact: warn\n", slug: "acme-rules", title: "Acme API Rules", description: "API for managing Acme products and orders.", is_private: false }) puts response.inspect ``` @@ -508,10 +657,10 @@ Update rule metadata by slug. | Direction | Type | | --- | --- | -| Request | [`RuleUpdateRulesetParams`](././lib/scalar-api-ruby/models/rule_update_ruleset_params.rb) | +| Request | [`RuleUpdateRulesetParams`](././lib/scalar_api_ruby/models/rule_update_ruleset_params.rb) | ```ruby -response = client.rules.update_ruleset("path_slug", { path_namespace: "path_namespace", description: "", is_private: false, body_namespace: "", body_slug: "", title: "" }) +response = client.rules.update_ruleset("acme-rules", { path_namespace: "acme", description: "API for managing Acme products and orders.", is_private: false, body_namespace: "acme", body_slug: "acme-rules", title: "Acme API Rules" }) puts response.inspect ``` @@ -522,10 +671,10 @@ Delete a rule by slug. | Direction | Type | | --- | --- | -| Request | [`RuleDeleteRulesetParams`](././lib/scalar-api-ruby/models/rule_delete_ruleset_params.rb) | +| Request | [`RuleDeleteRulesetParams`](././lib/scalar_api_ruby/models/rule_delete_ruleset_params.rb) | ```ruby -response = client.rules.delete_ruleset("slug", { namespace: "namespace" }) +response = client.rules.delete_ruleset("acme-rules", { namespace: "acme" }) puts response.inspect ``` @@ -536,10 +685,10 @@ Get a rule document by slug. | Direction | Type | | --- | --- | -| Request | [`RuleRetrieveRulesetDocumentParams`](././lib/scalar-api-ruby/models/rule_retrieve_ruleset_document_params.rb) | +| Request | [`RuleRetrieveRulesetDocumentParams`](././lib/scalar_api_ruby/models/rule_retrieve_ruleset_document_params.rb) | ```ruby -response = client.rules.retrieve_ruleset_document("slug", { namespace: "namespace" }) +response = client.rules.retrieve_ruleset_document("acme-rules", { namespace: "acme" }) puts response.inspect ``` @@ -550,10 +699,10 @@ Grant an access group to a rule. | Direction | Type | | --- | --- | -| Request | [`RuleCreateRulesetAccessGroupParams`](././lib/scalar-api-ruby/models/rule_create_ruleset_access_group_params.rb) | +| Request | [`RuleCreateRulesetAccessGroupParams`](././lib/scalar_api_ruby/models/rule_create_ruleset_access_group_params.rb) | ```ruby -response = client.rules.create_ruleset_access_group("slug", { access_group_slug: "xxx", namespace: "namespace" }) +response = client.rules.create_ruleset_access_group("acme-rules", { access_group_slug: "acme-api", namespace: "acme" }) puts response.inspect ``` @@ -564,10 +713,10 @@ Remove an access group from a rule. | Direction | Type | | --- | --- | -| Request | [`RuleDeleteRulesetAccessGroupParams`](././lib/scalar-api-ruby/models/rule_delete_ruleset_access_group_params.rb) | +| Request | [`RuleDeleteRulesetAccessGroupParams`](././lib/scalar_api_ruby/models/rule_delete_ruleset_access_group_params.rb) | ```ruby -response = client.rules.delete_ruleset_access_group("slug", { access_group_slug: "xxx", namespace: "namespace" }) +response = client.rules.delete_ruleset_access_group("acme-rules", { access_group_slug: "acme-api", namespace: "acme" }) puts response.inspect ``` @@ -582,8 +731,8 @@ List all team themes. | Direction | Type | | --- | --- | -| Request | [`ThemeListParams`](././lib/scalar-api-ruby/models/theme_list_params.rb) | -| Response | [`ThemeListResponseItem`](././lib/scalar-api-ruby/models/theme_list_response.rb) | +| Request | [`ThemeListParams`](././lib/scalar_api_ruby/models/theme_list_params.rb) | +| Response | [`Theme`](././lib/scalar_api_ruby/models/theme.rb) | ```ruby response = client.themes.list @@ -597,11 +746,11 @@ Create a team theme. | Direction | Type | | --- | --- | -| Request | [`ThemeCreateParams`](././lib/scalar-api-ruby/models/theme_create_params.rb) | -| Response | [`UID`](././lib/scalar-api-ruby/models/uid.rb) | +| Request | [`ThemeCreateParams`](././lib/scalar_api_ruby/models/theme_create_params.rb) | +| Response | [`UID`](././lib/scalar_api_ruby/models/uid.rb) | ```ruby -response = client.themes.create({ document: "", name: "", slug: "", description: "" }) +response = client.themes.create({ document: ":root { --scalar-color-1: \#1f2937; }", name: "Acme Theme", slug: "acme-theme", description: "API for managing Acme products and orders." }) puts response.inspect ``` @@ -612,10 +761,10 @@ Update theme metadata. | Direction | Type | | --- | --- | -| Request | [`ThemeUpdateParams`](././lib/scalar-api-ruby/models/theme_update_params.rb) | +| Request | [`ThemeUpdateParams`](././lib/scalar_api_ruby/models/theme_update_params.rb) | ```ruby -response = client.themes.update("slug", { description: "", name: "" }) +response = client.themes.update("acme-theme", { description: "API for managing Acme products and orders.", name: "Acme Theme" }) puts response.inspect ``` @@ -626,10 +775,10 @@ Replace the theme document. | Direction | Type | | --- | --- | -| Request | [`ThemeReplaceDocumentParams`](././lib/scalar-api-ruby/models/theme_replace_document_params.rb) | +| Request | [`ThemeReplaceDocumentParams`](././lib/scalar_api_ruby/models/theme_replace_document_params.rb) | ```ruby -response = client.themes.replace_document("slug", { document: "" }) +response = client.themes.replace_document("acme-theme", { document: ":root { --scalar-color-1: \#1f2937; }" }) puts response.inspect ``` @@ -640,10 +789,10 @@ Delete a theme by slug. | Direction | Type | | --- | --- | -| Request | [`ThemeDeleteParams`](././lib/scalar-api-ruby/models/theme_delete_params.rb) | +| Request | [`ThemeDeleteParams`](././lib/scalar_api_ruby/models/theme_delete_params.rb) | ```ruby -response = client.themes.delete("slug") +response = client.themes.delete("acme-theme") puts response.inspect ``` @@ -654,10 +803,10 @@ Get the theme document by slug. | Direction | Type | | --- | --- | -| Request | [`ThemeRetrieveParams`](././lib/scalar-api-ruby/models/theme_retrieve_params.rb) | +| Request | [`ThemeRetrieveParams`](././lib/scalar_api_ruby/models/theme_retrieve_params.rb) | ```ruby -response = client.themes.retrieve("slug") +response = client.themes.retrieve("acme-theme") puts response.inspect ``` @@ -672,8 +821,8 @@ List all available teams | Direction | Type | | --- | --- | -| Request | [`TeamListParams`](././lib/scalar-api-ruby/models/team_list_params.rb) | -| Response | [`TeamListResponseItem`](././lib/scalar-api-ruby/models/team_list_response.rb) | +| Request | [`TeamListParams`](././lib/scalar_api_ruby/models/team_list_params.rb) | +| Response | [`Team`](././lib/scalar_api_ruby/models/team.rb) | ```ruby response = client.teams.list @@ -681,6 +830,99 @@ response = client.teams.list puts response.inspect ``` +### `Teams Members` + +Teams + +#### List team members + +List the members of the current team, along with the invites still outstanding. + +| Direction | Type | +| --- | --- | +| Request | [`MemberListParams`](././lib/scalar_api_ruby/models/teams/member_list_params.rb) | +| Response | [`Teams::MemberListResponse`](././lib/scalar_api_ruby/models/teams/member_list_response.rb) | + +```ruby +response = client.teams.members.list + +puts response.inspect +``` + +#### Change a member role + +Change what a member of the current team is allowed to do. + +| Direction | Type | +| --- | --- | +| Request | [`MemberUpdateParams`](././lib/scalar_api_ruby/models/teams/member_update_params.rb) | + +```ruby +response = client.teams.members.update("UakgbKJ5m9gl0JDMbcJqL", { role: "owner" }) + +puts response.inspect +``` + +#### Remove a member + +Remove someone from the current team. + +| Direction | Type | +| --- | --- | +| Request | [`MemberDeleteParams`](././lib/scalar_api_ruby/models/teams/member_delete_params.rb) | + +```ruby +response = client.teams.members.delete("UakgbKJ5m9gl0JDMbcJqL") + +puts response.inspect +``` + +### `Teams Invites` + +Teams + +#### Invite a member + +Invite someone to the current team by email. + +| Direction | Type | +| --- | --- | +| Request | [`InviteMemberParams`](././lib/scalar_api_ruby/models/teams/invite_member_params.rb) | + +```ruby +response = client.teams.invites.member({ email: "alex@example.com", role: "owner" }) + +puts response.inspect +``` + +#### Resend an invite + +Send the invite email again. + +| Direction | Type | +| --- | --- | +| Request | [`InviteResendParams`](././lib/scalar_api_ruby/models/teams/invite_resend_params.rb) | + +```ruby +response = client.teams.invites.resend("UakgbKJ5m9gl0JDMbcJqL") + +puts response.inspect +``` + +#### Cancel an invite + +Withdraw an invite that has not been accepted. + +| Direction | Type | +| --- | --- | +| Request | [`InviteCancelParams`](././lib/scalar_api_ruby/models/teams/invite_cancel_params.rb) | + +```ruby +response = client.teams.invites.cancel("UakgbKJ5m9gl0JDMbcJqL") + +puts response.inspect +``` + ## `ScalarDocs` Scalar Docs @@ -691,8 +933,8 @@ List all guide projects. | Direction | Type | | --- | --- | -| Request | [`ScalarDocListGuidesParams`](././lib/scalar-api-ruby/models/scalar_doc_list_guides_params.rb) | -| Response | [`ScalarDocListGuidesResponseItem`](././lib/scalar-api-ruby/models/scalar_doc_list_guides_response.rb) | +| Request | [`ScalarDocListGuidesParams`](././lib/scalar_api_ruby/models/scalar_doc_list_guides_params.rb) | +| Response | [`GithubProject`](././lib/scalar_api_ruby/models/github_project.rb) | ```ruby response = client.scalar_docs.list_guides @@ -706,11 +948,11 @@ Create a guide project. | Direction | Type | | --- | --- | -| Request | [`ScalarDocCreateGuideParams`](././lib/scalar-api-ruby/models/scalar_doc_create_guide_params.rb) | -| Response | [`ScalarDocCreateGuideResponse`](././lib/scalar-api-ruby/models/scalar_doc_create_guide_response.rb) | +| Request | [`ScalarDocCreateGuideParams`](././lib/scalar_api_ruby/models/scalar_doc_create_guide_params.rb) | +| Response | [`ScalarDocCreateGuideResponse`](././lib/scalar_api_ruby/models/scalar_doc_create_guide_response.rb) | ```ruby -response = client.scalar_docs.create_guide({ allowed_domains: [], allowed_users: [], is_private: false, name: "", slug: "xxx" }) +response = client.scalar_docs.create_guide({ allowed_domains: [], allowed_users: [], is_private: false, name: "Acme Documentation", slug: "acme-api" }) puts response.inspect ``` @@ -721,11 +963,159 @@ Start a new publish process. | Direction | Type | | --- | --- | -| Request | [`ScalarDocPublishGuideParams`](././lib/scalar-api-ruby/models/scalar_doc_publish_guide_params.rb) | -| Response | [`ScalarDocPublishGuideResponse`](././lib/scalar-api-ruby/models/scalar_doc_publish_guide_response.rb) | +| Request | [`ScalarDocPublishGuideParams`](././lib/scalar_api_ruby/models/scalar_doc_publish_guide_params.rb) | +| Response | [`ScalarDocPublishGuideResponse`](././lib/scalar_api_ruby/models/scalar_doc_publish_guide_response.rb) | + +```ruby +response = client.scalar_docs.publish_guide("acme-docs") + +puts response.inspect +``` + +### List all docs projects + +List every docs project on the team. + +| Direction | Type | +| --- | --- | +| Request | [`ScalarDocListProjectsParams`](././lib/scalar_api_ruby/models/scalar_doc_list_projects_params.rb) | +| Response | [`ScalarDocListProjectsResponse`](././lib/scalar_api_ruby/models/scalar_doc_list_projects_response.rb) | + +```ruby +response = client.scalar_docs.list_projects + +puts response.inspect +``` + +### Create a docs project + +Create a docs project. Omit `provider` to have Scalar host the repository. + +| Direction | Type | +| --- | --- | +| Request | [`ScalarDocCreateProjectParams`](././lib/scalar_api_ruby/models/scalar_doc_create_project_params.rb) | +| Response | [`DocsProject`](././lib/scalar_api_ruby/models/docs_project.rb) | + +```ruby +response = client.scalar_docs.create_project({ name: "Acme Documentation", provider: "forgejo", bitbucket_repository: { "workspaceUuid" => "{12345678-1234-4234-8234-123456789abc}", "repoUuid" => "{abcdef01-1234-4234-8234-123456789abc}" }, blank: true, github_repository: { "installationId" => 84, "repoId" => 123456789 }, is_private: false, slug: "acme-api" }) + +puts response.inspect +``` + +### Get a docs project + +Get a single docs project by its slug. + +| Direction | Type | +| --- | --- | +| Request | [`ScalarDocRetrieveProjectParams`](././lib/scalar_api_ruby/models/scalar_doc_retrieve_project_params.rb) | +| Response | [`DocsProject`](././lib/scalar_api_ruby/models/docs_project.rb) | + +```ruby +response = client.scalar_docs.retrieve_project("acme-docs") + +puts response.inspect +``` + +### Update a docs project + +Update project settings. Set `isPrivate` with `accessGroups` to put the site behind a login. + +| Direction | Type | +| --- | --- | +| Request | [`ScalarDocUpdateProjectParams`](././lib/scalar_api_ruby/models/scalar_doc_update_project_params.rb) | + +```ruby +response = client.scalar_docs.update_project("acme-docs", { access_groups: ["xxxxx"], active_theme_id: "UakgbKJ5m9gl0JDMbcJqL", agent_enabled: true, analytics_enabled: true, is_private: false, login_portal_uid: "xxxxx", name: "Acme Documentation" }) + +puts response.inspect +``` + +### Delete a docs project + +Delete a docs project, its deploys, its publish records and its cached builds. + +| Direction | Type | +| --- | --- | +| Request | [`ScalarDocDeleteProjectParams`](././lib/scalar_api_ruby/models/scalar_doc_delete_project_params.rb) | + +```ruby +response = client.scalar_docs.delete_project("acme-docs") + +puts response.inspect +``` + +### Publish a docs project + +Start a build and deploy. The returned `publishUid` identifies the publish record. + +| Direction | Type | +| --- | --- | +| Request | [`ScalarDocPublishProjectParams`](././lib/scalar_api_ruby/models/scalar_doc_publish_project_params.rb) | +| Response | [`ScalarDocPublishProjectResponse`](././lib/scalar_api_ruby/models/scalar_doc_publish_project_response.rb) | + +```ruby +response = client.scalar_docs.publish_project("acme-docs", { commit_sha: "0123456789abcdef0123456789abcdef01234567", config_path: "scalar.config.json", preview: false }) + +puts response.inspect +``` + +### Read the site config + +Read `scalar.config.json` straight from the project repository, without cloning it. `baseToken` is the compare-and-swap handle for a later write. + +| Direction | Type | +| --- | --- | +| Request | [`ScalarDocListProjectConfigParams`](././lib/scalar_api_ruby/models/scalar_doc_list_project_config_params.rb) | +| Response | [`ScalarDocListProjectConfigResponse`](././lib/scalar_api_ruby/models/scalar_doc_list_project_config_response.rb) | ```ruby -response = client.scalar_docs.publish_guide("slug") +response = client.scalar_docs.list_project_config("acme-docs") + +puts response.inspect +``` + +### Write the site config + +Commit `scalar.config.json` straight to the project repository. Pass the `baseToken` from the read this edit was based on; a conflict means the file moved underneath it. + +| Direction | Type | +| --- | --- | +| Request | [`ScalarDocUpdateProjectConfigParams`](././lib/scalar_api_ruby/models/scalar_doc_update_project_config_params.rb) | +| Response | [`ScalarDocUpdateProjectConfigResponse`](././lib/scalar_api_ruby/models/scalar_doc_update_project_config_response.rb) | + +```ruby +response = client.scalar_docs.update_project_config("acme-docs", { content: "{\"name\":\"Acme Documentation\"}", base_token: "example-edit-token", message: "Update documentation configuration", path: "scalar.config.json", ref: "main" }) + +puts response.inspect +``` + +### Get the site domains + +The domains the project serves on — the Scalar-hosted one and the custom one, when set. + +| Direction | Type | +| --- | --- | +| Request | [`ScalarDocListProjectDomainParams`](././lib/scalar_api_ruby/models/scalar_doc_list_project_domain_params.rb) | +| Response | [`ScalarDocListProjectDomainResponse`](././lib/scalar_api_ruby/models/scalar_doc_list_project_domain_response.rb) | + +```ruby +response = client.scalar_docs.list_project_domain("acme-docs") + +puts response.inspect +``` + +### Check domain DNS + +Whether the project custom domain points at Scalar yet. `expected` is the CNAME record to create; `found` is what resolves today. A project with no custom domain reports `verified` with no expected record, because Scalar serves its own subdomain directly. + +| Direction | Type | +| --- | --- | +| Request | [`ScalarDocListProjectDomainStatusParams`](././lib/scalar_api_ruby/models/scalar_doc_list_project_domain_status_params.rb) | +| Response | [`ScalarDocListProjectDomainStatusResponse`](././lib/scalar_api_ruby/models/scalar_doc_list_project_domain_status_response.rb) | + +```ruby +response = client.scalar_docs.list_project_domain_status("acme-docs") puts response.inspect ``` @@ -740,7 +1130,7 @@ Get all namespaces for the current team | Direction | Type | | --- | --- | -| Request | [`NamespaceListParams`](././lib/scalar-api-ruby/models/namespace_list_params.rb) | +| Request | [`NamespaceListParams`](././lib/scalar_api_ruby/models/namespace_list_params.rb) | ```ruby response = client.namespaces.list @@ -758,11 +1148,11 @@ Exchange an API key for an access token. | Direction | Type | | --- | --- | -| Request | [`AuthenticationExchangePersonalTokenParams`](././lib/scalar-api-ruby/models/authentication_exchange_personal_token_params.rb) | -| Response | [`AuthenticationExchangePersonalTokenResponse`](././lib/scalar-api-ruby/models/authentication_exchange_personal_token_response.rb) | +| Request | [`AuthenticationExchangePersonalTokenParams`](././lib/scalar_api_ruby/models/authentication_exchange_personal_token_params.rb) | +| Response | [`AuthenticationExchangePersonalTokenResponse`](././lib/scalar_api_ruby/models/authentication_exchange_personal_token_response.rb) | ```ruby -response = client.authentication.exchange_personal_token({ personal_token: "" }) +response = client.authentication.exchange_personal_token({ personal_token: "scalar_example_personal_token" }) puts response.inspect ``` @@ -773,11 +1163,368 @@ Get the authenticated user, including their available teams and theme. | Direction | Type | | --- | --- | -| Request | [`AuthenticationListCurrentUserParams`](././lib/scalar-api-ruby/models/authentication_list_current_user_params.rb) | -| Response | [`AuthenticationListCurrentUserResponse`](././lib/scalar-api-ruby/models/authentication_list_current_user_response.rb) | +| Request | [`AuthenticationListCurrentUserParams`](././lib/scalar_api_ruby/models/authentication_list_current_user_params.rb) | +| Response | [`User`](././lib/scalar_api_ruby/models/user.rb) | ```ruby response = client.authentication.list_current_user puts response.inspect ``` + +## `Sdks` + +SDKs + +### List all SDKs + +List every SDK on the team. + +| Direction | Type | +| --- | --- | +| Request | [`SdkListParams`](././lib/scalar_api_ruby/models/sdk_list_params.rb) | +| Response | [`SdkListResponse`](././lib/scalar_api_ruby/models/sdk_list_response.rb) | + +```ruby +response = client.sdks.list + +puts response.inspect +``` + +### Create an SDK + +Create an SDK from an API document, targeting one or more languages. + +| Direction | Type | +| --- | --- | +| Request | [`SdkCreateParams`](././lib/scalar_api_ruby/models/sdk_create_params.rb) | +| Response | [`UID`](././lib/scalar_api_ruby/models/uid.rb) | + +```ruby +response = client.sdks.create({ api_uid: "UakgbKJ5m9gl0JDMbcJqL", languages: ["typescript"], class_name: "Acme", config: "{\"targets\":{\"typescript\":{\"packageName\":\"@acme/sdk\"}}}", slug: "acme-api", title: "Acme SDK" }) + +puts response.inspect +``` + +### Get an SDK + +Get a single SDK by its uid. + +| Direction | Type | +| --- | --- | +| Request | [`SdkRetrieveParams`](././lib/scalar_api_ruby/models/sdk_retrieve_params.rb) | +| Response | [`Sdk`](././lib/scalar_api_ruby/models/sdk.rb) | + +```ruby +response = client.sdks.retrieve("UakgbKJ5m9gl0JDMbcJqL") + +puts response.inspect +``` + +### Update an SDK + +Update SDK metadata, its linked API, or its config. + +| Direction | Type | +| --- | --- | +| Request | [`SdkUpdateParams`](././lib/scalar_api_ruby/models/sdk_update_params.rb) | + +```ruby +response = client.sdks.update("UakgbKJ5m9gl0JDMbcJqL", { api_uid: "UakgbKJ5m9gl0JDMbcJqL", api_version: "", config: "{\"targets\":{\"typescript\":{\"packageName\":\"@acme/sdk\"}}}", is_private: false, slug: "acme-api", title: "Acme SDK" }) + +puts response.inspect +``` + +### Delete an SDK + +Delete an SDK and every version it holds. + +| Direction | Type | +| --- | --- | +| Request | [`SdkDeleteParams`](././lib/scalar_api_ruby/models/sdk_delete_params.rb) | + +```ruby +response = client.sdks.delete("UakgbKJ5m9gl0JDMbcJqL") + +puts response.inspect +``` + +### Build an SDK + +Start a build. Omit `version` to build the current work — the open draft, else the latest version — and the resolved version comes back in the response. + +| Direction | Type | +| --- | --- | +| Request | [`SdkBuildParams`](././lib/scalar_api_ruby/models/sdk_build_params.rb) | +| Response | [`SdkBuildResponse`](././lib/scalar_api_ruby/models/sdk_build_response.rb) | + +```ruby +response = client.sdks.build("UakgbKJ5m9gl0JDMbcJqL", { languages: ["typescript"], version: "1.2.0" }) + +puts response.inspect +``` + +### `Sdks Versions` + +SDKs + +#### Create an SDK version + +Create a new SDK version against a specific API version. + +| Direction | Type | +| --- | --- | +| Request | [`VersionCreateParams`](././lib/scalar_api_ruby/models/sdks/version_create_params.rb) | + +```ruby +response = client.sdks.versions.create("UakgbKJ5m9gl0JDMbcJqL", { api_version: "1.2.0", version: "1.2.0" }) + +puts response.inspect +``` + +#### Delete an SDK version + +Permanently delete one version of an SDK. + +| Direction | Type | +| --- | --- | +| Request | [`VersionDeleteParams`](././lib/scalar_api_ruby/models/sdks/version_delete_params.rb) | + +```ruby +response = client.sdks.versions.delete("1.2.0", { uid: "UakgbKJ5m9gl0JDMbcJqL" }) + +puts response.inspect +``` + +### `Sdks Repositories` + +SDKs + +#### Link a repository + +Link one language target to a GitHub repository, so builds sync there. + +| Direction | Type | +| --- | --- | +| Request | [`RepositoryLinkParams`](././lib/scalar_api_ruby/models/sdks/repository_link_params.rb) | +| Response | [`Sdks::RepositoryLinkResponse`](././lib/scalar_api_ruby/models/sdks/repository_link_response.rb) | + +```ruby +response = client.sdks.repositories.link("UakgbKJ5m9gl0JDMbcJqL", { base_branch: "main", language: "typescript", repository_id: 123456789, prerelease_type: "beta" }) + +puts response.inspect +``` + +#### Unlink a repository + +Unlink one language target from its repository. + +| Direction | Type | +| --- | --- | +| Request | [`RepositoryUnlinkParams`](././lib/scalar_api_ruby/models/sdks/repository_unlink_params.rb) | + +```ruby +response = client.sdks.repositories.unlink("typescript", { uid: "UakgbKJ5m9gl0JDMbcJqL" }) + +puts response.inspect +``` + +#### Update publishing settings + +Toggle publish-on-merge and the release settings for a linked target. + +| Direction | Type | +| --- | --- | +| Request | [`RepositoryUpdatePublishingParams`](././lib/scalar_api_ruby/models/sdks/repository_update_publishing_params.rb) | + +```ruby +response = client.sdks.repositories.update_publishing("typescript", { uid: "UakgbKJ5m9gl0JDMbcJqL", publish_on_merge: true, access: "public", auth_method: "oidc", tag: "latest" }) + +puts response.inspect +``` + +## `Mcp` + +### `Mcp Servers` + +MCP + +#### List all MCP servers + +List every MCP server on the team. + +| Direction | Type | +| --- | --- | +| Request | [`ServerListParams`](././lib/scalar_api_ruby/models/mcp/server_list_params.rb) | +| Response | [`Mcp::McpServer`](././lib/scalar_api_ruby/models/mcp/mcp_server.rb) | + +```ruby +response = client.mcp.servers.list + +puts response.inspect +``` + +#### Create an MCP server + +Create an MCP server over one or more API document versions. The response carries the server and its first installation. + +| Direction | Type | +| --- | --- | +| Request | [`ServerCreateParams`](././lib/scalar_api_ruby/models/mcp/server_create_params.rb) | +| Response | [`Mcp::ServerCreateResponse`](././lib/scalar_api_ruby/models/mcp/server_create_response.rb) | + +```ruby +response = client.mcp.servers.create({ name: "Acme MCP", project_uids: [""], slug: "acme-api", version_uids: [""] }) + +puts response.inspect +``` + +#### Get an MCP server + +Get a single MCP server by its id. + +| Direction | Type | +| --- | --- | +| Request | [`ServerRetrieveParams`](././lib/scalar_api_ruby/models/mcp/server_retrieve_params.rb) | +| Response | [`Mcp::McpServer`](././lib/scalar_api_ruby/models/mcp/mcp_server.rb) | + +```ruby +response = client.mcp.servers.retrieve("42") + +puts response.inspect +``` + +#### Update an MCP server + +Update MCP server metadata and which tools it exposes. + +| Direction | Type | +| --- | --- | +| Request | [`ServerUpdateParams`](././lib/scalar_api_ruby/models/mcp/server_update_params.rb) | +| Response | [`Mcp::McpServer`](././lib/scalar_api_ruby/models/mcp/mcp_server.rb) | + +```ruby +response = client.mcp.servers.update("42", { auto_add_operations: true, docs_pages: [""], name: "Acme MCP", operations: [""], slug: "acme-api" }) + +puts response.inspect +``` + +#### Delete an MCP server + +Delete an MCP server and every installation it serves. + +| Direction | Type | +| --- | --- | +| Request | [`ServerDeleteParams`](././lib/scalar_api_ruby/models/mcp/server_delete_params.rb) | + +```ruby +response = client.mcp.servers.delete("42") + +puts response.inspect +``` + +#### `Mcp Servers Installations` + +MCP + +##### List installations + +List the installations of an MCP server. An installation is what an MCP client connects to. + +| Direction | Type | +| --- | --- | +| Request | [`InstallationListParams`](././lib/scalar_api_ruby/models/mcp/servers/installation_list_params.rb) | +| Response | [`Mcp::Servers::McpInstallationListItem`](././lib/scalar_api_ruby/models/mcp/servers/mcp_installation_list_item.rb) | + +```ruby +response = client.mcp.servers.installations.list("42") + +puts response.inspect +``` + +##### Create an installation + +Create an installation of an MCP server. `documentAuth` holds the credentials the server presents to the upstream API and is never returned. + +| Direction | Type | +| --- | --- | +| Request | [`InstallationCreateParams`](././lib/scalar_api_ruby/models/mcp/servers/installation_create_params.rb) | +| Response | [`Mcp::McpInstallation`](././lib/scalar_api_ruby/models/mcp/mcp_installation.rb) | + +```ruby +response = client.mcp.servers.installations.create("42", { document_auth: { }, name: "Acme MCP", slug: "acme-api" }) + +puts response.inspect +``` + +##### Get an installation + +Get a single installation of an MCP server. + +| Direction | Type | +| --- | --- | +| Request | [`InstallationRetrieveParams`](././lib/scalar_api_ruby/models/mcp/servers/installation_retrieve_params.rb) | +| Response | [`Mcp::McpInstallation`](././lib/scalar_api_ruby/models/mcp/mcp_installation.rb) | + +```ruby +response = client.mcp.servers.installations.retrieve("84", { id: "42" }) + +puts response.inspect +``` + +##### Update an installation + +Update an installation. Set `isPrivate` and add access groups to put it behind a login. + +| Direction | Type | +| --- | --- | +| Request | [`InstallationUpdateParams`](././lib/scalar_api_ruby/models/mcp/servers/installation_update_params.rb) | +| Response | [`Mcp::McpInstallation`](././lib/scalar_api_ruby/models/mcp/mcp_installation.rb) | + +```ruby +response = client.mcp.servers.installations.update("84", { id: "42", document_auth: { }, is_private: false, login_portal_uid: "", mcp_version: "", name: "Acme MCP", slug: "acme-api" }) + +puts response.inspect +``` + +##### Delete an installation + +Delete an installation of an MCP server. + +| Direction | Type | +| --- | --- | +| Request | [`InstallationDeleteParams`](././lib/scalar_api_ruby/models/mcp/servers/installation_delete_params.rb) | + +```ruby +response = client.mcp.servers.installations.delete("84", { id: "42" }) + +puts response.inspect +``` + +##### Add an access group + +Let an access group reach a private installation. + +| Direction | Type | +| --- | --- | +| Request | [`InstallationCreateAccessGroupParams`](././lib/scalar_api_ruby/models/mcp/servers/installation_create_access_group_params.rb) | + +```ruby +response = client.mcp.servers.installations.create_access_group("84", { id: "42", access_group_uid: "UakgbKJ5m9gl0JDMbcJqL" }) + +puts response.inspect +``` + +##### Remove an access group + +Stop an access group reaching a private installation. + +| Direction | Type | +| --- | --- | +| Request | [`InstallationDeleteAccessGroupParams`](././lib/scalar_api_ruby/models/mcp/servers/installation_delete_access_group_params.rb) | + +```ruby +response = client.mcp.servers.installations.delete_access_group("84", { id: "42", access_group_uid: "UakgbKJ5m9gl0JDMbcJqL" }) + +puts response.inspect +``` diff --git a/examples/usage.rb b/examples/usage.rb index 36a408d..f6f0569 100644 --- a/examples/usage.rb +++ b/examples/usage.rb @@ -1,6 +1,6 @@ # frozen_string_literal: true -require "scalar-api-ruby" +require "scalar_api_ruby" client = Scalar::Client.new # response = client.your_resource.your_method({ request_options: { timeout: 30 } }) diff --git a/lib/scalar-api-ruby.rb b/lib/scalar-api-ruby.rb deleted file mode 100644 index bc2fd96..0000000 --- a/lib/scalar-api-ruby.rb +++ /dev/null @@ -1,146 +0,0 @@ -# frozen_string_literal: true - -# Standard libraries. -# rubocop:disable Lint/RedundantRequireStatement -require "English" -require "cgi" -require "date" -require "erb" -require "etc" -require "json" -require "net/http" -require "openssl" -require "pathname" -require "rbconfig" -require "securerandom" -require "set" -require "stringio" -require "time" -require "uri" -# rubocop:enable Lint/RedundantRequireStatement - -# We already ship the preferred sorbet manifests in the package itself. -# `tapioca` currently does not offer us a way to opt out of unnecessary compilation. -if Object.const_defined?(:Tapioca) && caller.chain([$PROGRAM_NAME]).chain(ARGV).any?(/tapioca/) && - ARGV.none?(/dsl/) - return -end - -# Gems. -require "connection_pool" - -# Package files. -require_relative "scalar-api-ruby/version" -require_relative "scalar-api-ruby/internal/util" -require_relative "scalar-api-ruby/internal/type/converter" -require_relative "scalar-api-ruby/internal/type/unknown" -require_relative "scalar-api-ruby/internal/type/boolean" -require_relative "scalar-api-ruby/internal/type/file_input" -require_relative "scalar-api-ruby/internal/type/enum" -require_relative "scalar-api-ruby/internal/type/union" -require_relative "scalar-api-ruby/internal/type/array_of" -require_relative "scalar-api-ruby/internal/type/hash_of" -require_relative "scalar-api-ruby/internal/type/base_model" -require_relative "scalar-api-ruby/internal/type/base_page" -require_relative "scalar-api-ruby/internal/type/request_parameters" -require_relative "scalar-api-ruby/internal" -require_relative "scalar-api-ruby/request_options" -require_relative "scalar-api-ruby/file_part" -require_relative "scalar-api-ruby/errors" -require_relative "scalar-api-ruby/internal/transport/base_client" -require_relative "scalar-api-ruby/internal/transport/pooled_net_requester" -require_relative "scalar-api-ruby/client" -require_relative "scalar-api-ruby/models/access_group" -require_relative "scalar-api-ruby/models/400" -require_relative "scalar-api-ruby/models/401" -require_relative "scalar-api-ruby/models/403" -require_relative "scalar-api-ruby/models/404" -require_relative "scalar-api-ruby/models/422" -require_relative "scalar-api-ruby/models/500" -require_relative "scalar-api-ruby/models/authentication_exchange_personal_token_params" -require_relative "scalar-api-ruby/models/authentication_exchange_personal_token_response" -require_relative "scalar-api-ruby/models/authentication_list_current_user_params" -require_relative "scalar-api-ruby/models/authentication_list_current_user_response" -require_relative "scalar-api-ruby/models/login_portal_create_params" -require_relative "scalar-api-ruby/models/login_portal_delete_params" -require_relative "scalar-api-ruby/models/login_portal_email" -require_relative "scalar-api-ruby/models/login_portal_list_params" -require_relative "scalar-api-ruby/models/login_portal_list_response" -require_relative "scalar-api-ruby/models/login_portal_page" -require_relative "scalar-api-ruby/models/login_portal_retrieve_params" -require_relative "scalar-api-ruby/models/login_portal_retrieve_response" -require_relative "scalar-api-ruby/models/login_portal_update_params" -require_relative "scalar-api-ruby/models/managed_doc_version" -require_relative "scalar-api-ruby/models/namespace" -require_relative "scalar-api-ruby/models/namespace_list_params" -require_relative "scalar-api-ruby/models/namespace_list_response" -require_relative "scalar-api-ruby/models/nanoid" -require_relative "scalar-api-ruby/models/registry_create_api_document_access_group_params" -require_relative "scalar-api-ruby/models/registry_create_api_document_params" -require_relative "scalar-api-ruby/models/registry_create_api_document_response" -require_relative "scalar-api-ruby/models/registry_create_api_document_version_params" -require_relative "scalar-api-ruby/models/registry_delete_api_document_access_group_params" -require_relative "scalar-api-ruby/models/registry_delete_api_document_params" -require_relative "scalar-api-ruby/models/registry_delete_api_document_version_params" -require_relative "scalar-api-ruby/models/registry_list_all_api_documents_params" -require_relative "scalar-api-ruby/models/registry_list_all_api_documents_response" -require_relative "scalar-api-ruby/models/registry_list_api_documents_params" -require_relative "scalar-api-ruby/models/registry_list_api_documents_response" -require_relative "scalar-api-ruby/models/registry_list_api_document_version_metadata_params" -require_relative "scalar-api-ruby/models/registry_retrieve_api_document_version_params" -require_relative "scalar-api-ruby/models/registry_retrieve_api_document_version_response" -require_relative "scalar-api-ruby/models/registry_update_api_document_params" -require_relative "scalar-api-ruby/models/registry_update_api_document_version_params" -require_relative "scalar-api-ruby/models/registry_update_api_document_version_response" -require_relative "scalar-api-ruby/models/rule_create_ruleset_access_group_params" -require_relative "scalar-api-ruby/models/rule_create_ruleset_params" -require_relative "scalar-api-ruby/models/rule_delete_ruleset_access_group_params" -require_relative "scalar-api-ruby/models/rule_delete_ruleset_params" -require_relative "scalar-api-ruby/models/rule_list_rulesets_params" -require_relative "scalar-api-ruby/models/rule_list_rulesets_response" -require_relative "scalar-api-ruby/models/rule_retrieve_ruleset_document_params" -require_relative "scalar-api-ruby/models/rule_retrieve_ruleset_document_response" -require_relative "scalar-api-ruby/models/rule_update_ruleset_params" -require_relative "scalar-api-ruby/models/scalar_doc_create_guide_params" -require_relative "scalar-api-ruby/models/scalar_doc_create_guide_response" -require_relative "scalar-api-ruby/models/scalar_doc_list_guides_params" -require_relative "scalar-api-ruby/models/scalar_doc_list_guides_response" -require_relative "scalar-api-ruby/models/scalar_doc_publish_guide_params" -require_relative "scalar-api-ruby/models/scalar_doc_publish_guide_response" -require_relative "scalar-api-ruby/models/schema_create_params" -require_relative "scalar-api-ruby/models/schema_delete_params" -require_relative "scalar-api-ruby/models/schema_list_params" -require_relative "scalar-api-ruby/models/schema_list_response" -require_relative "scalar-api-ruby/models/schemas/access_group_create_params" -require_relative "scalar-api-ruby/models/schemas/access_group_delete_params" -require_relative "scalar-api-ruby/models/schemas/version_create_params" -require_relative "scalar-api-ruby/models/schemas/version_delete_params" -require_relative "scalar-api-ruby/models/schemas/version_retrieve_params" -require_relative "scalar-api-ruby/models/schemas/version_retrieve_response" -require_relative "scalar-api-ruby/models/schema_update_params" -require_relative "scalar-api-ruby/models/slug" -require_relative "scalar-api-ruby/models/team_list_params" -require_relative "scalar-api-ruby/models/team_list_response" -require_relative "scalar-api-ruby/models/theme_create_params" -require_relative "scalar-api-ruby/models/theme_delete_params" -require_relative "scalar-api-ruby/models/theme_list_params" -require_relative "scalar-api-ruby/models/theme_list_response" -require_relative "scalar-api-ruby/models/theme_replace_document_params" -require_relative "scalar-api-ruby/models/theme_retrieve_params" -require_relative "scalar-api-ruby/models/theme_retrieve_response" -require_relative "scalar-api-ruby/models/theme_update_params" -require_relative "scalar-api-ruby/models/timestamp" -require_relative "scalar-api-ruby/models/uid" -require_relative "scalar-api-ruby/models/version" -require_relative "scalar-api-ruby/models" -require_relative "scalar-api-ruby/resources/registry" -require_relative "scalar-api-ruby/resources/schemas" -require_relative "scalar-api-ruby/resources/schemas/version" -require_relative "scalar-api-ruby/resources/schemas/access_group" -require_relative "scalar-api-ruby/resources/login_portals" -require_relative "scalar-api-ruby/resources/rules" -require_relative "scalar-api-ruby/resources/themes" -require_relative "scalar-api-ruby/resources/teams" -require_relative "scalar-api-ruby/resources/scalar_docs" -require_relative "scalar-api-ruby/resources/namespaces" -require_relative "scalar-api-ruby/resources/authentication" diff --git a/lib/scalar-api-ruby/models/scalar_doc_list_guides_response.rb b/lib/scalar-api-ruby/models/scalar_doc_list_guides_response.rb deleted file mode 100644 index f695a6d..0000000 --- a/lib/scalar-api-ruby/models/scalar_doc_list_guides_response.rb +++ /dev/null @@ -1,200 +0,0 @@ -# frozen_string_literal: true - -module Scalar - module Models - class ScalarDocListGuidesResponseItem < Scalar::Internal::Type::BaseModel - # @!attribute access_groups - # - # @return [Object] - required :access_groups, Scalar::Internal::Type::Unknown, api_name: :accessGroups - - # @!attribute active_deployment - # - # @return [Scalar::Models::ScalarDocListGuidesResponseItem::ActiveDeployment, nil] - required :active_deployment, - -> { Scalar::Models::ScalarDocListGuidesResponseItem::ActiveDeployment }, - api_name: :activeDeployment, - nil?: true - - # @!attribute active_theme_id - # - # @return [String] - required :active_theme_id, String, api_name: :activeThemeId - - # @!attribute agent_enabled - # - # @return [Boolean] - required :agent_enabled, Scalar::Internal::Type::Boolean, api_name: :agentEnabled - - # @!attribute created_at - # - # @return [Integer] - required :created_at, Integer, api_name: :createdAt - - # @!attribute is_private - # - # @return [Boolean] - required :is_private, Scalar::Internal::Type::Boolean, api_name: :isPrivate - - # @!attribute last_published - # - # @return [Integer, nil] - required :last_published, Integer, api_name: :lastPublished, nil?: true - - # @!attribute last_published_uid - # - # @return [String, nil] - required :last_published_uid, String, api_name: :lastPublishedUid, nil?: true - - # @!attribute login_portal_uid - # - # @return [String] - required :login_portal_uid, String, api_name: :loginPortalUid - - # @!attribute name - # - # @return [String] - required :name, String - - # @!attribute publish_message - # - # @return [String] - required :publish_message, String, api_name: :publishMessage - - # @!attribute publish_status - # - # @return [String] - required :publish_status, String, api_name: :publishStatus - - # @!attribute slug - # - # @return [String] - required :slug, String - - # @!attribute uid - # - # @return [String] - required :uid, String - - # @!attribute updated_at - # - # @return [Integer] - required :updated_at, Integer, api_name: :updatedAt - - # @!attribute repository - # - # @return [Scalar::Models::ScalarDocListGuidesResponseItem::Repository, nil] - optional :repository, -> { Scalar::Models::ScalarDocListGuidesResponseItem::Repository }, nil?: true - - # @!attribute typesense_id - # - # @return [Float, nil] - optional :typesense_id, Float, api_name: :typesenseId - - # @!method initialize(access_groups:, active_deployment:, active_theme_id:, agent_enabled:, created_at:, is_private:, last_published:, last_published_uid:, login_portal_uid:, name:, publish_message:, publish_status:, slug:, uid:, updated_at:, repository: nil, typesense_id: nil) - # @param access_groups [Object] - # @param active_deployment [Scalar::Models::ScalarDocListGuidesResponseItem::ActiveDeployment, nil] - # @param active_theme_id [String] - # @param agent_enabled [Boolean] - # @param created_at [Integer] - # @param is_private [Boolean] - # @param last_published [Integer, nil] - # @param last_published_uid [String, nil] - # @param login_portal_uid [String] - # @param name [String] - # @param publish_message [String] - # @param publish_status [String] - # @param slug [String] - # @param uid [String] - # @param updated_at [Integer] - # @param repository [Scalar::Models::ScalarDocListGuidesResponseItem::Repository, nil] - # @param typesense_id [Float] - - # @see Scalar::Models::ScalarDocListGuidesResponseItem#active_deployment - class ActiveDeployment < Scalar::Internal::Type::BaseModel - # @!attribute domain - # - # @return [String] - required :domain, String - - # @!attribute published_at - # - # @return [Integer] - required :published_at, Integer, api_name: :publishedAt - - # @!attribute uid - # - # @return [String] - required :uid, String - - # @!method initialize(domain:, published_at:, uid:) - # @param domain [String] - # @param published_at [Integer] - # @param uid [String] - end - - # @see Scalar::Models::ScalarDocListGuidesResponseItem#repository - class Repository < Scalar::Internal::Type::BaseModel - # @!attribute id - # - # @return [Float] - required :id, Float - - # @!attribute branch - # - # @return [String] - required :branch, String - - # @!attribute config_path - # - # @return [String] - required :config_path, String, api_name: :configPath - - # @!attribute expired - # - # @return [Boolean] - required :expired, Scalar::Internal::Type::Boolean - - # @!attribute linked_by - # - # @return [String] - required :linked_by, String, api_name: :linkedBy - - # @!attribute name - # - # @return [String] - required :name, String - - # @!attribute pr_comments - # - # @return [Boolean] - required :pr_comments, Scalar::Internal::Type::Boolean, api_name: :prComments - - # @!attribute publish_on_merge - # - # @return [Boolean] - required :publish_on_merge, Scalar::Internal::Type::Boolean, api_name: :publishOnMerge - - # @!attribute publish_previews - # - # @return [Boolean] - required :publish_previews, Scalar::Internal::Type::Boolean, api_name: :publishPreviews - - # @!method initialize(id:, branch:, config_path:, expired:, linked_by:, name:, pr_comments:, publish_on_merge:, publish_previews:) - # @param id [Float] - # @param branch [String] - # @param config_path [String] - # @param expired [Boolean] - # @param linked_by [String] - # @param name [String] - # @param pr_comments [Boolean] - # @param publish_on_merge [Boolean] - # @param publish_previews [Boolean] - end - end - - # @type [Scalar::Internal::Type::Converter] - ScalarDocListGuidesResponse = - Scalar::Internal::Type::ArrayOf[-> { Scalar::Models::ScalarDocListGuidesResponseItem }] - end -end diff --git a/lib/scalar-api-ruby/models/schema_list_response.rb b/lib/scalar-api-ruby/models/schema_list_response.rb deleted file mode 100644 index fa4f1b2..0000000 --- a/lib/scalar-api-ruby/models/schema_list_response.rb +++ /dev/null @@ -1,83 +0,0 @@ -# frozen_string_literal: true - -module Scalar - module Models - class SchemaListResponseItem < Scalar::Internal::Type::BaseModel - # @!attribute description - # - # @return [String] - required :description, String - - # @!attribute is_private - # - # @return [Boolean] - required :is_private, Scalar::Internal::Type::Boolean, api_name: :isPrivate - - # @!attribute namespace - # - # @return [String] - required :namespace, String - - # @!attribute slug - # - # @return [String] - required :slug, String - - # @!attribute title - # - # @return [String] - required :title, String - - # @!attribute uid - # - # @return [String] - required :uid, String - - # @!attribute versions - # - # @return [Array] - required :versions, - -> { Scalar::Internal::Type::ArrayOf[Scalar::Models::SchemaListResponseItem::Version] } - - # @!method initialize(description:, is_private:, namespace:, slug:, title:, uid:, versions:) - # @param description [String] - # @param is_private [Boolean] - # @param namespace [String] - # @param slug [String] - # @param title [String] - # @param uid [String] - # @param versions [Array] - - class Version < Scalar::Internal::Type::BaseModel - # @!attribute created_at - # - # @return [Integer] - required :created_at, Integer, api_name: :createdAt - - # @!attribute uid - # - # @return [String] - required :uid, String - - # @!attribute updated_at - # - # @return [Integer] - required :updated_at, Integer, api_name: :updatedAt - - # @!attribute version - # - # @return [String] - required :version, String - - # @!method initialize(created_at:, uid:, updated_at:, version:) - # @param created_at [Integer] - # @param uid [String] - # @param updated_at [Integer] - # @param version [String] - end - end - - # @type [Scalar::Internal::Type::Converter] - SchemaListResponse = Scalar::Internal::Type::ArrayOf[-> { Scalar::Models::SchemaListResponseItem }] - end -end diff --git a/lib/scalar-api-ruby/resources/scalar_docs.rb b/lib/scalar-api-ruby/resources/scalar_docs.rb deleted file mode 100644 index da25d3e..0000000 --- a/lib/scalar-api-ruby/resources/scalar_docs.rb +++ /dev/null @@ -1,77 +0,0 @@ -# frozen_string_literal: true - -module Scalar - module Resources - # Scalar Docs - class ScalarDocs - # Create a guide project. - # - # @overload create_guide(allowed_domains:, allowed_users:, is_private:, name:, slug: nil, request_options: {}) - # - # @param allowed_domains [Array] - # @param allowed_users [Array] - # @param is_private [Boolean] - # @param name [String] - # @param slug [String] - # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] - # - # @return [Scalar::Models::ScalarDocCreateGuideResponse] - # - # @see Scalar::Models::ScalarDocCreateGuideParams - def create_guide(params) - parsed, options = Scalar::ScalarDocCreateGuideParams.dump_request(params) - @client.request( - method: :post, - path: "v1/guides", - body: parsed, - model: Scalar::Models::ScalarDocCreateGuideResponse, - options: options - ) - end - - # List all guide projects. - # - # @overload list_guides(request_options: {}) - # - # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] - # - # @return [Array] - # - # @see Scalar::Models::ScalarDocListGuidesParams - def list_guides(params = {}) - @client.request( - method: :get, - path: "v1/guides", - model: Scalar::Internal::Type::ArrayOf[Scalar::Models::ScalarDocListGuidesResponseItem], - options: params[:request_options] - ) - end - - # Start a new publish process. - # - # @overload publish_guide(slug, request_options: {}) - # - # @param slug [String] - # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] - # - # @return [Scalar::Models::ScalarDocPublishGuideResponse] - # - # @see Scalar::Models::ScalarDocPublishGuideParams - def publish_guide(slug, params = {}) - @client.request( - method: :post, - path: ["v1/guides/%1$s/publish", slug], - model: Scalar::Models::ScalarDocPublishGuideResponse, - options: params[:request_options] - ) - end - - # @api private - # - # @param client [Scalar::Client] - def initialize(client:) - @client = client - end - end - end -end diff --git a/lib/scalar_api_ruby.rb b/lib/scalar_api_ruby.rb new file mode 100644 index 0000000..fa15f24 --- /dev/null +++ b/lib/scalar_api_ruby.rb @@ -0,0 +1,244 @@ +# frozen_string_literal: true + +# Standard libraries. +# rubocop:disable Lint/RedundantRequireStatement +require "English" +require "cgi" +require "date" +require "erb" +require "etc" +require "json" +require "net/http" +require "openssl" +require "pathname" +require "rbconfig" +require "securerandom" +require "set" +require "stringio" +require "time" +require "uri" +# rubocop:enable Lint/RedundantRequireStatement + +# We already ship the preferred sorbet manifests in the package itself. +# `tapioca` currently does not offer us a way to opt out of unnecessary compilation. +if Object.const_defined?(:Tapioca) && caller.chain([$PROGRAM_NAME]).chain(ARGV).any?(/tapioca/) && + ARGV.none?(/dsl/) + return +end + +# Gems. +require "connection_pool" + +# Package files. +require_relative "scalar_api_ruby/version" +require_relative "scalar_api_ruby/internal/util" +require_relative "scalar_api_ruby/internal/type/converter" +require_relative "scalar_api_ruby/internal/type/unknown" +require_relative "scalar_api_ruby/internal/type/boolean" +require_relative "scalar_api_ruby/internal/type/file_input" +require_relative "scalar_api_ruby/internal/type/enum" +require_relative "scalar_api_ruby/internal/type/union" +require_relative "scalar_api_ruby/internal/type/array_of" +require_relative "scalar_api_ruby/internal/type/hash_of" +require_relative "scalar_api_ruby/internal/type/base_model" +require_relative "scalar_api_ruby/internal/type/base_page" +require_relative "scalar_api_ruby/internal/type/request_parameters" +require_relative "scalar_api_ruby/internal" +require_relative "scalar_api_ruby/request_options" +require_relative "scalar_api_ruby/file_part" +require_relative "scalar_api_ruby/errors" +require_relative "scalar_api_ruby/internal/transport/base_client" +require_relative "scalar_api_ruby/internal/transport/pooled_net_requester" +require_relative "scalar_api_ruby/client" +require_relative "scalar_api_ruby/models/access_group" +require_relative "scalar_api_ruby/models/400" +require_relative "scalar_api_ruby/models/401" +require_relative "scalar_api_ruby/models/403" +require_relative "scalar_api_ruby/models/404" +require_relative "scalar_api_ruby/models/422" +require_relative "scalar_api_ruby/models/500" +require_relative "scalar_api_ruby/models/access_group_create_params" +require_relative "scalar_api_ruby/models/access_group_create_response" +require_relative "scalar_api_ruby/models/access_group_delete_params" +require_relative "scalar_api_ruby/models/access_group_name" +require_relative "scalar_api_ruby/models/access_group_retrieve_params" +require_relative "scalar_api_ruby/models/access_group_retrieve_response" +require_relative "scalar_api_ruby/models/access_groups/domain_create_params" +require_relative "scalar_api_ruby/models/access_groups/domain_delete_params" +require_relative "scalar_api_ruby/models/access_groups/email_domain" +require_relative "scalar_api_ruby/models/access_group_update_params" +require_relative "scalar_api_ruby/models/active_deployment" +require_relative "scalar_api_ruby/models/api_document" +require_relative "scalar_api_ruby/models/authentication_exchange_personal_token_params" +require_relative "scalar_api_ruby/models/authentication_exchange_personal_token_response" +require_relative "scalar_api_ruby/models/authentication_list_current_user_params" +require_relative "scalar_api_ruby/models/docs_project" +require_relative "scalar_api_ruby/models/github_project" +require_relative "scalar_api_ruby/models/github_project_repository" +require_relative "scalar_api_ruby/models/login_portal" +require_relative "scalar_api_ruby/models/login_portal_create_params" +require_relative "scalar_api_ruby/models/login_portal_delete_params" +require_relative "scalar_api_ruby/models/login_portal_email" +require_relative "scalar_api_ruby/models/login_portal_list_params" +require_relative "scalar_api_ruby/models/login_portal_list_response" +require_relative "scalar_api_ruby/models/login_portal_page" +require_relative "scalar_api_ruby/models/login_portal_retrieve_params" +require_relative "scalar_api_ruby/models/login_portal_retrieve_response" +require_relative "scalar_api_ruby/models/login_portal_update_params" +require_relative "scalar_api_ruby/models/managed_doc_version" +require_relative "scalar_api_ruby/models/managed_schema_version" +require_relative "scalar_api_ruby/models/mcp/mcp_installation" +require_relative "scalar_api_ruby/models/mcp/mcp_server" +require_relative "scalar_api_ruby/models/mcp/server_create_params" +require_relative "scalar_api_ruby/models/mcp/server_create_response" +require_relative "scalar_api_ruby/models/mcp/server_delete_params" +require_relative "scalar_api_ruby/models/mcp/server_list_params" +require_relative "scalar_api_ruby/models/mcp/server_list_response" +require_relative "scalar_api_ruby/models/mcp/server_retrieve_params" +require_relative "scalar_api_ruby/models/mcp/servers/installation_create_access_group_params" +require_relative "scalar_api_ruby/models/mcp/servers/installation_create_params" +require_relative "scalar_api_ruby/models/mcp/servers/installation_delete_access_group_params" +require_relative "scalar_api_ruby/models/mcp/servers/installation_delete_params" +require_relative "scalar_api_ruby/models/mcp/servers/installation_list_params" +require_relative "scalar_api_ruby/models/mcp/servers/installation_list_response" +require_relative "scalar_api_ruby/models/mcp/servers/installation_retrieve_params" +require_relative "scalar_api_ruby/models/mcp/servers/installation_update_params" +require_relative "scalar_api_ruby/models/mcp/servers/mcp_installation_list_item" +require_relative "scalar_api_ruby/models/mcp/server_update_params" +require_relative "scalar_api_ruby/models/method" +require_relative "scalar_api_ruby/models/namespace" +require_relative "scalar_api_ruby/models/namespace_list_params" +require_relative "scalar_api_ruby/models/namespace_list_response" +require_relative "scalar_api_ruby/models/nanoid" +require_relative "scalar_api_ruby/models/registry_create_api_document_access_group_params" +require_relative "scalar_api_ruby/models/registry_create_api_document_params" +require_relative "scalar_api_ruby/models/registry_create_api_document_response" +require_relative "scalar_api_ruby/models/registry_create_api_document_version_params" +require_relative "scalar_api_ruby/models/registry_delete_api_document_access_group_params" +require_relative "scalar_api_ruby/models/registry_delete_api_document_params" +require_relative "scalar_api_ruby/models/registry_delete_api_document_version_params" +require_relative "scalar_api_ruby/models/registry_list_all_api_documents_params" +require_relative "scalar_api_ruby/models/registry_list_all_api_documents_response" +require_relative "scalar_api_ruby/models/registry_list_api_documents_params" +require_relative "scalar_api_ruby/models/registry_list_api_documents_response" +require_relative "scalar_api_ruby/models/registry_list_api_document_version_metadata_params" +require_relative "scalar_api_ruby/models/registry_retrieve_api_document_version_params" +require_relative "scalar_api_ruby/models/registry_retrieve_api_document_version_response" +require_relative "scalar_api_ruby/models/registry_update_api_document_params" +require_relative "scalar_api_ruby/models/registry_update_api_document_version_params" +require_relative "scalar_api_ruby/models/registry_update_api_document_version_response" +require_relative "scalar_api_ruby/models/rule" +require_relative "scalar_api_ruby/models/rule_create_ruleset_access_group_params" +require_relative "scalar_api_ruby/models/rule_create_ruleset_params" +require_relative "scalar_api_ruby/models/rule_delete_ruleset_access_group_params" +require_relative "scalar_api_ruby/models/rule_delete_ruleset_params" +require_relative "scalar_api_ruby/models/rule_list_rulesets_params" +require_relative "scalar_api_ruby/models/rule_list_rulesets_response" +require_relative "scalar_api_ruby/models/rule_retrieve_ruleset_document_params" +require_relative "scalar_api_ruby/models/rule_retrieve_ruleset_document_response" +require_relative "scalar_api_ruby/models/rule_update_ruleset_params" +require_relative "scalar_api_ruby/models/scalar_doc_create_guide_params" +require_relative "scalar_api_ruby/models/scalar_doc_create_guide_response" +require_relative "scalar_api_ruby/models/scalar_doc_create_project_params" +require_relative "scalar_api_ruby/models/scalar_doc_delete_project_params" +require_relative "scalar_api_ruby/models/scalar_doc_list_guides_params" +require_relative "scalar_api_ruby/models/scalar_doc_list_guides_response" +require_relative "scalar_api_ruby/models/scalar_doc_list_project_config_params" +require_relative "scalar_api_ruby/models/scalar_doc_list_project_config_response" +require_relative "scalar_api_ruby/models/scalar_doc_list_project_domain_params" +require_relative "scalar_api_ruby/models/scalar_doc_list_project_domain_response" +require_relative "scalar_api_ruby/models/scalar_doc_list_project_domain_status_params" +require_relative "scalar_api_ruby/models/scalar_doc_list_project_domain_status_response" +require_relative "scalar_api_ruby/models/scalar_doc_list_projects_params" +require_relative "scalar_api_ruby/models/scalar_doc_list_projects_response" +require_relative "scalar_api_ruby/models/scalar_doc_publish_guide_params" +require_relative "scalar_api_ruby/models/scalar_doc_publish_guide_response" +require_relative "scalar_api_ruby/models/scalar_doc_publish_project_params" +require_relative "scalar_api_ruby/models/scalar_doc_publish_project_response" +require_relative "scalar_api_ruby/models/scalar_doc_retrieve_project_params" +require_relative "scalar_api_ruby/models/scalar_doc_update_project_config_params" +require_relative "scalar_api_ruby/models/scalar_doc_update_project_config_response" +require_relative "scalar_api_ruby/models/scalar_doc_update_project_params" +require_relative "scalar_api_ruby/models/schema" +require_relative "scalar_api_ruby/models/schema_create_params" +require_relative "scalar_api_ruby/models/schema_delete_params" +require_relative "scalar_api_ruby/models/schema_list_params" +require_relative "scalar_api_ruby/models/schema_list_response" +require_relative "scalar_api_ruby/models/schemas/access_group_create_params" +require_relative "scalar_api_ruby/models/schemas/access_group_delete_params" +require_relative "scalar_api_ruby/models/schemas/version_create_params" +require_relative "scalar_api_ruby/models/schemas/version_create_response" +require_relative "scalar_api_ruby/models/schemas/version_delete_params" +require_relative "scalar_api_ruby/models/schemas/version_retrieve_params" +require_relative "scalar_api_ruby/models/schemas/version_retrieve_response" +require_relative "scalar_api_ruby/models/schema_update_params" +require_relative "scalar_api_ruby/models/sdk" +require_relative "scalar_api_ruby/models/sdk_build_params" +require_relative "scalar_api_ruby/models/sdk_build_response" +require_relative "scalar_api_ruby/models/sdk_create_params" +require_relative "scalar_api_ruby/models/sdk_delete_params" +require_relative "scalar_api_ruby/models/sdk_list_params" +require_relative "scalar_api_ruby/models/sdk_list_response" +require_relative "scalar_api_ruby/models/sdk_retrieve_params" +require_relative "scalar_api_ruby/models/sdks/repository_link_params" +require_relative "scalar_api_ruby/models/sdks/repository_link_response" +require_relative "scalar_api_ruby/models/sdks/repository_unlink_params" +require_relative "scalar_api_ruby/models/sdks/repository_update_publishing_params" +require_relative "scalar_api_ruby/models/sdks/version_create_params" +require_relative "scalar_api_ruby/models/sdks/version_delete_params" +require_relative "scalar_api_ruby/models/sdk_target_summary" +require_relative "scalar_api_ruby/models/sdk_update_params" +require_relative "scalar_api_ruby/models/sdk_version" +require_relative "scalar_api_ruby/models/slug" +require_relative "scalar_api_ruby/models/team" +require_relative "scalar_api_ruby/models/team_image" +require_relative "scalar_api_ruby/models/team_list_params" +require_relative "scalar_api_ruby/models/team_list_response" +require_relative "scalar_api_ruby/models/team_name" +require_relative "scalar_api_ruby/models/teams/email" +require_relative "scalar_api_ruby/models/teams/invite_cancel_params" +require_relative "scalar_api_ruby/models/teams/invite_member_params" +require_relative "scalar_api_ruby/models/teams/invite_resend_params" +require_relative "scalar_api_ruby/models/teams/member_delete_params" +require_relative "scalar_api_ruby/models/teams/member_list_params" +require_relative "scalar_api_ruby/models/teams/member_list_response" +require_relative "scalar_api_ruby/models/teams/member_update_params" +require_relative "scalar_api_ruby/models/teams/role" +require_relative "scalar_api_ruby/models/teams/team_invite" +require_relative "scalar_api_ruby/models/teams/team_member" +require_relative "scalar_api_ruby/models/team_summary" +require_relative "scalar_api_ruby/models/theme" +require_relative "scalar_api_ruby/models/theme_create_params" +require_relative "scalar_api_ruby/models/theme_delete_params" +require_relative "scalar_api_ruby/models/theme_list_params" +require_relative "scalar_api_ruby/models/theme_list_response" +require_relative "scalar_api_ruby/models/theme_replace_document_params" +require_relative "scalar_api_ruby/models/theme_retrieve_params" +require_relative "scalar_api_ruby/models/theme_retrieve_response" +require_relative "scalar_api_ruby/models/theme_update_params" +require_relative "scalar_api_ruby/models/timestamp" +require_relative "scalar_api_ruby/models/uid" +require_relative "scalar_api_ruby/models/user" +require_relative "scalar_api_ruby/models/version" +require_relative "scalar_api_ruby/models" +require_relative "scalar_api_ruby/resources/registry" +require_relative "scalar_api_ruby/resources/schemas" +require_relative "scalar_api_ruby/resources/schemas/version" +require_relative "scalar_api_ruby/resources/schemas/access_group" +require_relative "scalar_api_ruby/resources/login_portals" +require_relative "scalar_api_ruby/resources/access_groups" +require_relative "scalar_api_ruby/resources/access_groups/domains" +require_relative "scalar_api_ruby/resources/rules" +require_relative "scalar_api_ruby/resources/themes" +require_relative "scalar_api_ruby/resources/teams" +require_relative "scalar_api_ruby/resources/teams/members" +require_relative "scalar_api_ruby/resources/teams/invites" +require_relative "scalar_api_ruby/resources/scalar_docs" +require_relative "scalar_api_ruby/resources/namespaces" +require_relative "scalar_api_ruby/resources/authentication" +require_relative "scalar_api_ruby/resources/sdks" +require_relative "scalar_api_ruby/resources/sdks/versions" +require_relative "scalar_api_ruby/resources/sdks/repositories" +require_relative "scalar_api_ruby/resources/mcp" +require_relative "scalar_api_ruby/resources/mcp/servers" +require_relative "scalar_api_ruby/resources/mcp/servers/installations" diff --git a/lib/scalar-api-ruby/client.rb b/lib/scalar_api_ruby/client.rb similarity index 78% rename from lib/scalar-api-ruby/client.rb rename to lib/scalar_api_ruby/client.rb index aabc01b..678301a 100644 --- a/lib/scalar-api-ruby/client.rb +++ b/lib/scalar_api_ruby/client.rb @@ -15,9 +15,12 @@ class Client < Scalar::Internal::Transport::BaseClient # Default max retry delay in seconds. DEFAULT_MAX_RETRY_DELAY = 8.0 - # @return [String] + # @return [String, nil] attr_reader :bearer_auth + # @return [String, nil] + attr_reader :o_auth2 + # Registry # @return [Scalar::Resources::Registry] attr_reader :registry @@ -30,6 +33,10 @@ class Client < Scalar::Internal::Transport::BaseClient # @return [Scalar::Resources::LoginPortals] attr_reader :login_portals + # Access Groups + # @return [Scalar::Resources::AccessGroups] + attr_reader :access_groups + # Rules # @return [Scalar::Resources::Rules] attr_reader :rules @@ -54,17 +61,40 @@ class Client < Scalar::Internal::Transport::BaseClient # @return [Scalar::Resources::Authentication] attr_reader :authentication + # SDKs + # @return [Scalar::Resources::Sdks] + attr_reader :sdks + + # @return [Scalar::Resources::Mcp] + attr_reader :mcp + # @api private # # @return [Hash{String=>String}] private def auth_headers + {**auth_bearer_auth, **auth_o_auth2} + end + + # @api private + # + # @return [Hash{String=>String}] + private def auth_bearer_auth {"authorization" => "Bearer #{@bearer_auth}"} end + # @api private + # + # @return [Hash{String=>String}] + private def auth_o_auth2 + {"authorization" => "Bearer #{@o_auth2}"} + end + # Creates and returns a new client for interacting with the API. # # @param bearer_auth [String, nil] Defaults to `ENV["BEARER_AUTH"]` # + # @param o_auth2 [String, nil] Defaults to `ENV["SCALAR_OAUTH_TOKEN"]` + # # @param base_url [String, nil] Override the default base URL for the API, e.g., # `"https://api.example.com/v2/"`. Defaults to `ENV["SCALAR_BASE_URL"]` # @@ -77,6 +107,7 @@ class Client < Scalar::Internal::Transport::BaseClient # @param max_retry_delay [Float] def initialize( bearer_auth: ENV["BEARER_AUTH"], + o_auth2: ENV["SCALAR_OAUTH_TOKEN"], base_url: ENV["SCALAR_BASE_URL"], max_retries: self.class::DEFAULT_MAX_RETRIES, timeout: self.class::DEFAULT_TIMEOUT_IN_SECONDS, @@ -85,10 +116,6 @@ def initialize( ) base_url ||= "https://access.scalar.com" - if bearer_auth.nil? - raise ArgumentError.new("bearer_auth is required, and can be set via environ: \"BEARER_AUTH\"") - end - headers = {} custom_headers_env = ENV["SCALAR_CUSTOM_HEADERS"] unless custom_headers_env.nil? @@ -102,7 +129,8 @@ def initialize( headers = parsed.merge(headers) end - @bearer_auth = bearer_auth.to_s + @bearer_auth = bearer_auth&.to_s + @o_auth2 = o_auth2&.to_s super( base_url: base_url, @@ -116,12 +144,15 @@ def initialize( @registry = Scalar::Resources::Registry.new(client: self) @schemas = Scalar::Resources::Schemas.new(client: self) @login_portals = Scalar::Resources::LoginPortals.new(client: self) + @access_groups = Scalar::Resources::AccessGroups.new(client: self) @rules = Scalar::Resources::Rules.new(client: self) @themes = Scalar::Resources::Themes.new(client: self) @teams = Scalar::Resources::Teams.new(client: self) @scalar_docs = Scalar::Resources::ScalarDocs.new(client: self) @namespaces = Scalar::Resources::Namespaces.new(client: self) @authentication = Scalar::Resources::Authentication.new(client: self) + @sdks = Scalar::Resources::Sdks.new(client: self) + @mcp = Scalar::Resources::Mcp.new(client: self) end end end diff --git a/lib/scalar-api-ruby/errors.rb b/lib/scalar_api_ruby/errors.rb similarity index 100% rename from lib/scalar-api-ruby/errors.rb rename to lib/scalar_api_ruby/errors.rb diff --git a/lib/scalar-api-ruby/file_part.rb b/lib/scalar_api_ruby/file_part.rb similarity index 100% rename from lib/scalar-api-ruby/file_part.rb rename to lib/scalar_api_ruby/file_part.rb diff --git a/lib/scalar-api-ruby/internal.rb b/lib/scalar_api_ruby/internal.rb similarity index 100% rename from lib/scalar-api-ruby/internal.rb rename to lib/scalar_api_ruby/internal.rb diff --git a/lib/scalar-api-ruby/internal/transport/base_client.rb b/lib/scalar_api_ruby/internal/transport/base_client.rb similarity index 100% rename from lib/scalar-api-ruby/internal/transport/base_client.rb rename to lib/scalar_api_ruby/internal/transport/base_client.rb diff --git a/lib/scalar-api-ruby/internal/transport/pooled_net_requester.rb b/lib/scalar_api_ruby/internal/transport/pooled_net_requester.rb similarity index 100% rename from lib/scalar-api-ruby/internal/transport/pooled_net_requester.rb rename to lib/scalar_api_ruby/internal/transport/pooled_net_requester.rb diff --git a/lib/scalar-api-ruby/internal/type/array_of.rb b/lib/scalar_api_ruby/internal/type/array_of.rb similarity index 100% rename from lib/scalar-api-ruby/internal/type/array_of.rb rename to lib/scalar_api_ruby/internal/type/array_of.rb diff --git a/lib/scalar-api-ruby/internal/type/base_model.rb b/lib/scalar_api_ruby/internal/type/base_model.rb similarity index 100% rename from lib/scalar-api-ruby/internal/type/base_model.rb rename to lib/scalar_api_ruby/internal/type/base_model.rb diff --git a/lib/scalar-api-ruby/internal/type/base_page.rb b/lib/scalar_api_ruby/internal/type/base_page.rb similarity index 100% rename from lib/scalar-api-ruby/internal/type/base_page.rb rename to lib/scalar_api_ruby/internal/type/base_page.rb diff --git a/lib/scalar-api-ruby/internal/type/boolean.rb b/lib/scalar_api_ruby/internal/type/boolean.rb similarity index 100% rename from lib/scalar-api-ruby/internal/type/boolean.rb rename to lib/scalar_api_ruby/internal/type/boolean.rb diff --git a/lib/scalar-api-ruby/internal/type/converter.rb b/lib/scalar_api_ruby/internal/type/converter.rb similarity index 100% rename from lib/scalar-api-ruby/internal/type/converter.rb rename to lib/scalar_api_ruby/internal/type/converter.rb diff --git a/lib/scalar-api-ruby/internal/type/enum.rb b/lib/scalar_api_ruby/internal/type/enum.rb similarity index 100% rename from lib/scalar-api-ruby/internal/type/enum.rb rename to lib/scalar_api_ruby/internal/type/enum.rb diff --git a/lib/scalar-api-ruby/internal/type/file_input.rb b/lib/scalar_api_ruby/internal/type/file_input.rb similarity index 100% rename from lib/scalar-api-ruby/internal/type/file_input.rb rename to lib/scalar_api_ruby/internal/type/file_input.rb diff --git a/lib/scalar-api-ruby/internal/type/hash_of.rb b/lib/scalar_api_ruby/internal/type/hash_of.rb similarity index 100% rename from lib/scalar-api-ruby/internal/type/hash_of.rb rename to lib/scalar_api_ruby/internal/type/hash_of.rb diff --git a/lib/scalar-api-ruby/internal/type/request_parameters.rb b/lib/scalar_api_ruby/internal/type/request_parameters.rb similarity index 100% rename from lib/scalar-api-ruby/internal/type/request_parameters.rb rename to lib/scalar_api_ruby/internal/type/request_parameters.rb diff --git a/lib/scalar-api-ruby/internal/type/union.rb b/lib/scalar_api_ruby/internal/type/union.rb similarity index 100% rename from lib/scalar-api-ruby/internal/type/union.rb rename to lib/scalar_api_ruby/internal/type/union.rb diff --git a/lib/scalar-api-ruby/internal/type/unknown.rb b/lib/scalar_api_ruby/internal/type/unknown.rb similarity index 100% rename from lib/scalar-api-ruby/internal/type/unknown.rb rename to lib/scalar_api_ruby/internal/type/unknown.rb diff --git a/lib/scalar-api-ruby/internal/util.rb b/lib/scalar_api_ruby/internal/util.rb similarity index 100% rename from lib/scalar-api-ruby/internal/util.rb rename to lib/scalar_api_ruby/internal/util.rb diff --git a/lib/scalar-api-ruby/models.rb b/lib/scalar_api_ruby/models.rb similarity index 69% rename from lib/scalar-api-ruby/models.rb rename to lib/scalar_api_ruby/models.rb index 1c214fb..379f278 100644 --- a/lib/scalar-api-ruby/models.rb +++ b/lib/scalar_api_ruby/models.rb @@ -44,10 +44,34 @@ module Scalar AccessGroup = Scalar::Models::AccessGroup + AccessGroupCreateParams = Scalar::Models::AccessGroupCreateParams + + AccessGroupDeleteParams = Scalar::Models::AccessGroupDeleteParams + + AccessGroupName = Scalar::Models::AccessGroupName + + AccessGroupRetrieveParams = Scalar::Models::AccessGroupRetrieveParams + + AccessGroups = Scalar::Models::AccessGroups + + AccessGroupUpdateParams = Scalar::Models::AccessGroupUpdateParams + + ActiveDeployment = Scalar::Models::ActiveDeployment + + APIDocument = Scalar::Models::APIDocument + AuthenticationExchangePersonalTokenParams = Scalar::Models::AuthenticationExchangePersonalTokenParams AuthenticationListCurrentUserParams = Scalar::Models::AuthenticationListCurrentUserParams + DocsProject = Scalar::Models::DocsProject + + GithubProject = Scalar::Models::GithubProject + + GithubProjectRepository = Scalar::Models::GithubProjectRepository + + LoginPortal = Scalar::Models::LoginPortal + LoginPortalCreateParams = Scalar::Models::LoginPortalCreateParams LoginPortalDeleteParams = Scalar::Models::LoginPortalDeleteParams @@ -64,6 +88,12 @@ module Scalar ManagedDocVersion = Scalar::Models::ManagedDocVersion + ManagedSchemaVersion = Scalar::Models::ManagedSchemaVersion + + Mcp = Scalar::Models::Mcp + + Method = Scalar::Models::Method + Namespace = Scalar::Models::Namespace NamespaceListParams = Scalar::Models::NamespaceListParams @@ -94,6 +124,8 @@ module Scalar RegistryUpdateAPIDocumentVersionParams = Scalar::Models::RegistryUpdateAPIDocumentVersionParams + Rule = Scalar::Models::Rule + RuleCreateRulesetAccessGroupParams = Scalar::Models::RuleCreateRulesetAccessGroupParams RuleCreateRulesetParams = Scalar::Models::RuleCreateRulesetParams @@ -110,10 +142,32 @@ module Scalar ScalarDocCreateGuideParams = Scalar::Models::ScalarDocCreateGuideParams + ScalarDocCreateProjectParams = Scalar::Models::ScalarDocCreateProjectParams + + ScalarDocDeleteProjectParams = Scalar::Models::ScalarDocDeleteProjectParams + ScalarDocListGuidesParams = Scalar::Models::ScalarDocListGuidesParams + ScalarDocListProjectConfigParams = Scalar::Models::ScalarDocListProjectConfigParams + + ScalarDocListProjectDomainParams = Scalar::Models::ScalarDocListProjectDomainParams + + ScalarDocListProjectDomainStatusParams = Scalar::Models::ScalarDocListProjectDomainStatusParams + + ScalarDocListProjectsParams = Scalar::Models::ScalarDocListProjectsParams + ScalarDocPublishGuideParams = Scalar::Models::ScalarDocPublishGuideParams + ScalarDocPublishProjectParams = Scalar::Models::ScalarDocPublishProjectParams + + ScalarDocRetrieveProjectParams = Scalar::Models::ScalarDocRetrieveProjectParams + + ScalarDocUpdateProjectConfigParams = Scalar::Models::ScalarDocUpdateProjectConfigParams + + ScalarDocUpdateProjectParams = Scalar::Models::ScalarDocUpdateProjectParams + + Schema = Scalar::Models::Schema + SchemaCreateParams = Scalar::Models::SchemaCreateParams SchemaDeleteParams = Scalar::Models::SchemaDeleteParams @@ -124,10 +178,42 @@ module Scalar SchemaUpdateParams = Scalar::Models::SchemaUpdateParams + Sdk = Scalar::Models::Sdk + + SdkBuildParams = Scalar::Models::SdkBuildParams + + SdkCreateParams = Scalar::Models::SdkCreateParams + + SdkDeleteParams = Scalar::Models::SdkDeleteParams + + SdkListParams = Scalar::Models::SdkListParams + + SdkRetrieveParams = Scalar::Models::SdkRetrieveParams + + Sdks = Scalar::Models::Sdks + + SdkTargetSummary = Scalar::Models::SdkTargetSummary + + SdkUpdateParams = Scalar::Models::SdkUpdateParams + + SdkVersion = Scalar::Models::SdkVersion + Slug = Scalar::Models::Slug + Team = Scalar::Models::Team + + TeamImage = Scalar::Models::TeamImage + TeamListParams = Scalar::Models::TeamListParams + TeamName = Scalar::Models::TeamName + + Teams = Scalar::Models::Teams + + TeamSummary = Scalar::Models::TeamSummary + + Theme = Scalar::Models::Theme + ThemeCreateParams = Scalar::Models::ThemeCreateParams ThemeDeleteParams = Scalar::Models::ThemeDeleteParams @@ -144,6 +230,8 @@ module Scalar UID = Scalar::Models::UID + User = Scalar::Models::User + Value400 = Scalar::Models::Value400 Value401 = Scalar::Models::Value401 diff --git a/lib/scalar-api-ruby/models/400.rb b/lib/scalar_api_ruby/models/400.rb similarity index 100% rename from lib/scalar-api-ruby/models/400.rb rename to lib/scalar_api_ruby/models/400.rb diff --git a/lib/scalar-api-ruby/models/401.rb b/lib/scalar_api_ruby/models/401.rb similarity index 100% rename from lib/scalar-api-ruby/models/401.rb rename to lib/scalar_api_ruby/models/401.rb diff --git a/lib/scalar-api-ruby/models/403.rb b/lib/scalar_api_ruby/models/403.rb similarity index 100% rename from lib/scalar-api-ruby/models/403.rb rename to lib/scalar_api_ruby/models/403.rb diff --git a/lib/scalar-api-ruby/models/404.rb b/lib/scalar_api_ruby/models/404.rb similarity index 100% rename from lib/scalar-api-ruby/models/404.rb rename to lib/scalar_api_ruby/models/404.rb diff --git a/lib/scalar-api-ruby/models/422.rb b/lib/scalar_api_ruby/models/422.rb similarity index 100% rename from lib/scalar-api-ruby/models/422.rb rename to lib/scalar_api_ruby/models/422.rb diff --git a/lib/scalar-api-ruby/models/500.rb b/lib/scalar_api_ruby/models/500.rb similarity index 100% rename from lib/scalar-api-ruby/models/500.rb rename to lib/scalar_api_ruby/models/500.rb diff --git a/lib/scalar-api-ruby/models/access_group.rb b/lib/scalar_api_ruby/models/access_group.rb similarity index 100% rename from lib/scalar-api-ruby/models/access_group.rb rename to lib/scalar_api_ruby/models/access_group.rb diff --git a/lib/scalar_api_ruby/models/access_group_create_params.rb b/lib/scalar_api_ruby/models/access_group_create_params.rb new file mode 100644 index 0000000..e05eb92 --- /dev/null +++ b/lib/scalar_api_ruby/models/access_group_create_params.rb @@ -0,0 +1,32 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::AccessGroups#create + class AccessGroupCreateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute allowed_domains + # + # @return [String, nil] + optional :allowed_domains, String, api_name: :allowedDomains + + # @!attribute name + # + # @return [String, nil] + optional :name, String + + # @!attribute slug + # + # @return [String, nil] + optional :slug, String + + # @!method initialize(allowed_domains: nil, name: nil, slug: nil, request_options: {}) + # @param allowed_domains [String] + # @param name [String] + # @param slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end +end diff --git a/lib/scalar_api_ruby/models/access_group_create_response.rb b/lib/scalar_api_ruby/models/access_group_create_response.rb new file mode 100644 index 0000000..2db3ea5 --- /dev/null +++ b/lib/scalar_api_ruby/models/access_group_create_response.rb @@ -0,0 +1,40 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::AccessGroups#create + class AccessGroupCreateResponse < Scalar::Internal::Type::BaseModel + # @!attribute allowed_domains + # + # @return [String] + required :allowed_domains, String, api_name: :allowedDomains + + # @!attribute allowed_emails + # + # @return [String] + required :allowed_emails, String, api_name: :allowedEmails + + # @!attribute name + # + # @return [String] + required :name, String + + # @!attribute slug + # + # @return [String] + required :slug, String + + # @!attribute uid + # + # @return [String] + required :uid, String + + # @!method initialize(allowed_domains:, allowed_emails:, name:, slug:, uid:) + # @param allowed_domains [String] + # @param allowed_emails [String] + # @param name [String] + # @param slug [String] + # @param uid [String] + end + end +end diff --git a/lib/scalar_api_ruby/models/access_group_delete_params.rb b/lib/scalar_api_ruby/models/access_group_delete_params.rb new file mode 100644 index 0000000..fc91061 --- /dev/null +++ b/lib/scalar_api_ruby/models/access_group_delete_params.rb @@ -0,0 +1,20 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::AccessGroups#delete + class AccessGroupDeleteParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute slug + # + # @return [String] + required :slug, String + + # @!method initialize(slug:, request_options: {}) + # @param slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end +end diff --git a/lib/scalar_api_ruby/models/access_group_name.rb b/lib/scalar_api_ruby/models/access_group_name.rb new file mode 100644 index 0000000..88cac46 --- /dev/null +++ b/lib/scalar_api_ruby/models/access_group_name.rb @@ -0,0 +1,7 @@ +# frozen_string_literal: true + +module Scalar + module Models + AccessGroupName = String + end +end diff --git a/lib/scalar_api_ruby/models/access_group_retrieve_params.rb b/lib/scalar_api_ruby/models/access_group_retrieve_params.rb new file mode 100644 index 0000000..40ebb7d --- /dev/null +++ b/lib/scalar_api_ruby/models/access_group_retrieve_params.rb @@ -0,0 +1,20 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::AccessGroups#retrieve + class AccessGroupRetrieveParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute slug + # + # @return [String] + required :slug, String + + # @!method initialize(slug:, request_options: {}) + # @param slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end +end diff --git a/lib/scalar_api_ruby/models/access_group_retrieve_response.rb b/lib/scalar_api_ruby/models/access_group_retrieve_response.rb new file mode 100644 index 0000000..673baba --- /dev/null +++ b/lib/scalar_api_ruby/models/access_group_retrieve_response.rb @@ -0,0 +1,40 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::AccessGroups#retrieve + class AccessGroupRetrieveResponse < Scalar::Internal::Type::BaseModel + # @!attribute allowed_domains + # + # @return [String] + required :allowed_domains, String, api_name: :allowedDomains + + # @!attribute allowed_emails + # + # @return [String] + required :allowed_emails, String, api_name: :allowedEmails + + # @!attribute name + # + # @return [String] + required :name, String + + # @!attribute slug + # + # @return [String] + required :slug, String + + # @!attribute uid + # + # @return [String] + required :uid, String + + # @!method initialize(allowed_domains:, allowed_emails:, name:, slug:, uid:) + # @param allowed_domains [String] + # @param allowed_emails [String] + # @param name [String] + # @param slug [String] + # @param uid [String] + end + end +end diff --git a/lib/scalar_api_ruby/models/access_group_update_params.rb b/lib/scalar_api_ruby/models/access_group_update_params.rb new file mode 100644 index 0000000..a367fc4 --- /dev/null +++ b/lib/scalar_api_ruby/models/access_group_update_params.rb @@ -0,0 +1,32 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::AccessGroups#update + class AccessGroupUpdateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute path_slug + # + # @return [String] + required :path_slug, String + + # @!attribute name + # + # @return [String, nil] + optional :name, String + + # @!attribute body_slug + # + # @return [String, nil] + optional :body_slug, String, api_name: :slug + + # @!method initialize(path_slug:, name: nil, body_slug: nil, request_options: {}) + # @param path_slug [String] + # @param name [String] + # @param body_slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end +end diff --git a/lib/scalar_api_ruby/models/access_groups/domain_create_params.rb b/lib/scalar_api_ruby/models/access_groups/domain_create_params.rb new file mode 100644 index 0000000..a7c916a --- /dev/null +++ b/lib/scalar_api_ruby/models/access_groups/domain_create_params.rb @@ -0,0 +1,28 @@ +# frozen_string_literal: true + +module Scalar + module Models + module AccessGroups + # @see Scalar::Resources::AccessGroups::Domains#create + class DomainCreateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute slug + # + # @return [String] + required :slug, String + + # @!attribute domain + # + # @return [String] + required :domain, String + + # @!method initialize(slug:, domain:, request_options: {}) + # @param slug [String] + # @param domain [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/access_groups/domain_delete_params.rb b/lib/scalar_api_ruby/models/access_groups/domain_delete_params.rb new file mode 100644 index 0000000..dd7a76d --- /dev/null +++ b/lib/scalar_api_ruby/models/access_groups/domain_delete_params.rb @@ -0,0 +1,28 @@ +# frozen_string_literal: true + +module Scalar + module Models + module AccessGroups + # @see Scalar::Resources::AccessGroups::Domains#delete + class DomainDeleteParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute slug + # + # @return [String] + required :slug, String + + # @!attribute domain + # + # @return [String] + required :domain, String + + # @!method initialize(slug:, domain:, request_options: {}) + # @param slug [String] + # @param domain [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/access_groups/email_domain.rb b/lib/scalar_api_ruby/models/access_groups/email_domain.rb new file mode 100644 index 0000000..245c7a8 --- /dev/null +++ b/lib/scalar_api_ruby/models/access_groups/email_domain.rb @@ -0,0 +1,9 @@ +# frozen_string_literal: true + +module Scalar + module Models + module AccessGroups + EmailDomain = String + end + end +end diff --git a/lib/scalar_api_ruby/models/active_deployment.rb b/lib/scalar_api_ruby/models/active_deployment.rb new file mode 100644 index 0000000..4fc3669 --- /dev/null +++ b/lib/scalar_api_ruby/models/active_deployment.rb @@ -0,0 +1,27 @@ +# frozen_string_literal: true + +module Scalar + module Models + class ActiveDeployment < Scalar::Internal::Type::BaseModel + # @!attribute domain + # + # @return [String] + required :domain, String + + # @!attribute published_at + # + # @return [Integer] + required :published_at, Integer, api_name: :publishedAt + + # @!attribute uid + # + # @return [String] + required :uid, String + + # @!method initialize(domain:, published_at:, uid:) + # @param domain [String] + # @param published_at [Integer] + # @param uid [String] + end + end +end diff --git a/lib/scalar-api-ruby/models/registry_list_api_documents_response.rb b/lib/scalar_api_ruby/models/api_document.rb similarity index 79% rename from lib/scalar-api-ruby/models/registry_list_api_documents_response.rb rename to lib/scalar_api_ruby/models/api_document.rb index 1338d5e..6094dbf 100644 --- a/lib/scalar-api-ruby/models/registry_list_api_documents_response.rb +++ b/lib/scalar_api_ruby/models/api_document.rb @@ -2,7 +2,7 @@ module Scalar module Models - class RegistryListAPIDocumentsResponseItem < Scalar::Internal::Type::BaseModel + class APIDocument < Scalar::Internal::Type::BaseModel # @!attribute description # # @return [String] @@ -25,8 +25,8 @@ class RegistryListAPIDocumentsResponseItem < Scalar::Internal::Type::BaseModel # @!attribute tags # - # @return [Object] - required :tags, Scalar::Internal::Type::Unknown + # @return [String] + required :tags, String # @!attribute title # @@ -53,15 +53,11 @@ class RegistryListAPIDocumentsResponseItem < Scalar::Internal::Type::BaseModel # @param is_private [Boolean] # @param namespace [String] # @param slug [String] - # @param tags [Object] + # @param tags [String] # @param title [String] # @param uid [String] # @param version [String] # @param versions [Array] end - - # @type [Scalar::Internal::Type::Converter] - RegistryListAPIDocumentsResponse = - Scalar::Internal::Type::ArrayOf[-> { Scalar::Models::RegistryListAPIDocumentsResponseItem }] end end diff --git a/lib/scalar-api-ruby/models/authentication_exchange_personal_token_params.rb b/lib/scalar_api_ruby/models/authentication_exchange_personal_token_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/authentication_exchange_personal_token_params.rb rename to lib/scalar_api_ruby/models/authentication_exchange_personal_token_params.rb diff --git a/lib/scalar-api-ruby/models/authentication_exchange_personal_token_response.rb b/lib/scalar_api_ruby/models/authentication_exchange_personal_token_response.rb similarity index 100% rename from lib/scalar-api-ruby/models/authentication_exchange_personal_token_response.rb rename to lib/scalar_api_ruby/models/authentication_exchange_personal_token_response.rb diff --git a/lib/scalar-api-ruby/models/authentication_list_current_user_params.rb b/lib/scalar_api_ruby/models/authentication_list_current_user_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/authentication_list_current_user_params.rb rename to lib/scalar_api_ruby/models/authentication_list_current_user_params.rb diff --git a/lib/scalar_api_ruby/models/docs_project.rb b/lib/scalar_api_ruby/models/docs_project.rb new file mode 100644 index 0000000..927c037 --- /dev/null +++ b/lib/scalar_api_ruby/models/docs_project.rb @@ -0,0 +1,76 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::ScalarDocs#create_project + class DocsProject < Scalar::Internal::Type::BaseModel + # @!attribute access_groups + # + # @return [String] + required :access_groups, String, api_name: :accessGroups + + # @!attribute active_theme_id + # + # @return [String] + required :active_theme_id, String, api_name: :activeThemeId + + # @!attribute agent_enabled + # + # @return [Boolean] + required :agent_enabled, Scalar::Internal::Type::Boolean, api_name: :agentEnabled + + # @!attribute analytics_enabled + # + # @return [Boolean] + required :analytics_enabled, Scalar::Internal::Type::Boolean, api_name: :analyticsEnabled + + # @!attribute is_private + # + # @return [Boolean] + required :is_private, Scalar::Internal::Type::Boolean, api_name: :isPrivate + + # @!attribute last_published + # + # @return [Integer, nil] + required :last_published, Integer, api_name: :lastPublished, nil?: true + + # @!attribute login_portal_uid + # + # @return [String] + required :login_portal_uid, String, api_name: :loginPortalUid + + # @!attribute name + # + # @return [String] + required :name, String + + # @!attribute publish_status + # + # @return [String] + required :publish_status, String, api_name: :publishStatus + + # @!attribute slug + # + # @return [String] + required :slug, String + + # @!attribute uid + # + # @return [String] + required :uid, String + + # @!method initialize(access_groups:, active_theme_id:, agent_enabled:, analytics_enabled:, is_private:, last_published:, login_portal_uid:, name:, publish_status:, slug:, uid:) + # @param access_groups [String] + # @param active_theme_id [String] + # @param agent_enabled [Boolean] + # @param analytics_enabled [Boolean] + # @param is_private [Boolean] + # @param last_published [Integer, nil] + # @param login_portal_uid [String] + # @param name [String] + # @param publish_status [String] + # @param slug [String] + # @param uid [String] + end + end +end diff --git a/lib/scalar_api_ruby/models/github_project.rb b/lib/scalar_api_ruby/models/github_project.rb new file mode 100644 index 0000000..fdcd616 --- /dev/null +++ b/lib/scalar_api_ruby/models/github_project.rb @@ -0,0 +1,123 @@ +# frozen_string_literal: true + +module Scalar + module Models + class GithubProject < Scalar::Internal::Type::BaseModel + # @!attribute access_groups + # + # @return [String] + required :access_groups, String, api_name: :accessGroups + + # @!attribute active_deployment + # + # @return [Scalar::Models::ActiveDeployment, nil] + required :active_deployment, -> { Scalar::ActiveDeployment }, api_name: :activeDeployment, nil?: true + + # @!attribute active_theme_id + # + # @return [String] + required :active_theme_id, String, api_name: :activeThemeId + + # @!attribute agent_enabled + # + # @return [Boolean] + required :agent_enabled, Scalar::Internal::Type::Boolean, api_name: :agentEnabled + + # @!attribute analytics_enabled + # + # @return [Boolean] + required :analytics_enabled, Scalar::Internal::Type::Boolean, api_name: :analyticsEnabled + + # @!attribute created_at + # + # @return [Integer] + required :created_at, Integer, api_name: :createdAt + + # @!attribute is_private + # + # @return [Boolean] + required :is_private, Scalar::Internal::Type::Boolean, api_name: :isPrivate + + # @!attribute last_published + # + # @return [Integer, nil] + required :last_published, Integer, api_name: :lastPublished, nil?: true + + # @!attribute last_published_uid + # + # @return [String, nil] + required :last_published_uid, String, api_name: :lastPublishedUid, nil?: true + + # @!attribute login_portal_uid + # + # @return [String] + required :login_portal_uid, String, api_name: :loginPortalUid + + # @!attribute name + # + # @return [String] + required :name, String + + # @!attribute publish_message + # + # @return [String] + required :publish_message, String, api_name: :publishMessage + + # @!attribute publish_status + # + # @return [String] + required :publish_status, String, api_name: :publishStatus + + # @!attribute slug + # + # @return [String] + required :slug, String + + # @!attribute uid + # + # @return [String] + required :uid, String + + # @!attribute updated_at + # + # @return [Integer] + required :updated_at, Integer, api_name: :updatedAt + + # @!attribute user_info_hook_url + # + # @return [String] + required :user_info_hook_url, String, api_name: :userInfoHookUrl + + # @!attribute repository + # + # @return [Scalar::Models::GithubProjectRepository, nil] + optional :repository, -> { Scalar::GithubProjectRepository }, nil?: true + + # @!attribute typesense_id + # + # @return [Float, nil] + optional :typesense_id, Float, api_name: :typesenseId + + # @!method initialize(access_groups:, active_deployment:, active_theme_id:, agent_enabled:, analytics_enabled:, created_at:, is_private:, last_published:, last_published_uid:, login_portal_uid:, name:, publish_message:, publish_status:, slug:, uid:, updated_at:, user_info_hook_url:, repository: nil, typesense_id: nil) + # @param access_groups [String] + # @param active_deployment [Scalar::Models::ActiveDeployment, nil] + # @param active_theme_id [String] + # @param agent_enabled [Boolean] + # @param analytics_enabled [Boolean] + # @param created_at [Integer] + # @param is_private [Boolean] + # @param last_published [Integer, nil] + # @param last_published_uid [String, nil] + # @param login_portal_uid [String] + # @param name [String] + # @param publish_message [String] + # @param publish_status [String] + # @param slug [String] + # @param uid [String] + # @param updated_at [Integer] + # @param user_info_hook_url [String] + # @param repository [Scalar::Models::GithubProjectRepository, nil] + # @param typesense_id [Float] + end + end +end diff --git a/lib/scalar_api_ruby/models/github_project_repository.rb b/lib/scalar_api_ruby/models/github_project_repository.rb new file mode 100644 index 0000000..6a8dad9 --- /dev/null +++ b/lib/scalar_api_ruby/models/github_project_repository.rb @@ -0,0 +1,63 @@ +# frozen_string_literal: true + +module Scalar + module Models + class GithubProjectRepository < Scalar::Internal::Type::BaseModel + # @!attribute id + # + # @return [Float] + required :id, Float + + # @!attribute branch + # + # @return [String] + required :branch, String + + # @!attribute config_path + # + # @return [String] + required :config_path, String, api_name: :configPath + + # @!attribute expired + # + # @return [Boolean] + required :expired, Scalar::Internal::Type::Boolean + + # @!attribute linked_by + # + # @return [String] + required :linked_by, String, api_name: :linkedBy + + # @!attribute name + # + # @return [String] + required :name, String + + # @!attribute pr_comments + # + # @return [Boolean] + required :pr_comments, Scalar::Internal::Type::Boolean, api_name: :prComments + + # @!attribute publish_on_merge + # + # @return [Boolean] + required :publish_on_merge, Scalar::Internal::Type::Boolean, api_name: :publishOnMerge + + # @!attribute publish_previews + # + # @return [Boolean] + required :publish_previews, Scalar::Internal::Type::Boolean, api_name: :publishPreviews + + # @!method initialize(id:, branch:, config_path:, expired:, linked_by:, name:, pr_comments:, publish_on_merge:, publish_previews:) + # @param id [Float] + # @param branch [String] + # @param config_path [String] + # @param expired [Boolean] + # @param linked_by [String] + # @param name [String] + # @param pr_comments [Boolean] + # @param publish_on_merge [Boolean] + # @param publish_previews [Boolean] + end + end +end diff --git a/lib/scalar-api-ruby/models/login_portal_list_response.rb b/lib/scalar_api_ruby/models/login_portal.rb similarity index 66% rename from lib/scalar-api-ruby/models/login_portal_list_response.rb rename to lib/scalar_api_ruby/models/login_portal.rb index bf3fa54..ec90866 100644 --- a/lib/scalar-api-ruby/models/login_portal_list_response.rb +++ b/lib/scalar_api_ruby/models/login_portal.rb @@ -2,7 +2,7 @@ module Scalar module Models - class LoginPortalListResponseItem < Scalar::Internal::Type::BaseModel + class LoginPortal < Scalar::Internal::Type::BaseModel # @!attribute slug # # @return [String] @@ -23,9 +23,5 @@ class LoginPortalListResponseItem < Scalar::Internal::Type::BaseModel # @param title [String] # @param uid [String] end - - # @type [Scalar::Internal::Type::Converter] - LoginPortalListResponse = - Scalar::Internal::Type::ArrayOf[-> { Scalar::Models::LoginPortalListResponseItem }] end end diff --git a/lib/scalar-api-ruby/models/login_portal_create_params.rb b/lib/scalar_api_ruby/models/login_portal_create_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/login_portal_create_params.rb rename to lib/scalar_api_ruby/models/login_portal_create_params.rb diff --git a/lib/scalar-api-ruby/models/login_portal_delete_params.rb b/lib/scalar_api_ruby/models/login_portal_delete_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/login_portal_delete_params.rb rename to lib/scalar_api_ruby/models/login_portal_delete_params.rb diff --git a/lib/scalar-api-ruby/models/login_portal_email.rb b/lib/scalar_api_ruby/models/login_portal_email.rb similarity index 100% rename from lib/scalar-api-ruby/models/login_portal_email.rb rename to lib/scalar_api_ruby/models/login_portal_email.rb diff --git a/lib/scalar-api-ruby/models/login_portal_list_params.rb b/lib/scalar_api_ruby/models/login_portal_list_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/login_portal_list_params.rb rename to lib/scalar_api_ruby/models/login_portal_list_params.rb diff --git a/lib/scalar_api_ruby/models/login_portal_list_response.rb b/lib/scalar_api_ruby/models/login_portal_list_response.rb new file mode 100644 index 0000000..83cc9e2 --- /dev/null +++ b/lib/scalar_api_ruby/models/login_portal_list_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @type [Scalar::Internal::Type::Converter] + LoginPortalListResponse = Scalar::Internal::Type::ArrayOf[-> { Scalar::LoginPortal }] + end +end diff --git a/lib/scalar-api-ruby/models/login_portal_page.rb b/lib/scalar_api_ruby/models/login_portal_page.rb similarity index 100% rename from lib/scalar-api-ruby/models/login_portal_page.rb rename to lib/scalar_api_ruby/models/login_portal_page.rb diff --git a/lib/scalar-api-ruby/models/login_portal_retrieve_params.rb b/lib/scalar_api_ruby/models/login_portal_retrieve_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/login_portal_retrieve_params.rb rename to lib/scalar_api_ruby/models/login_portal_retrieve_params.rb diff --git a/lib/scalar-api-ruby/models/login_portal_retrieve_response.rb b/lib/scalar_api_ruby/models/login_portal_retrieve_response.rb similarity index 100% rename from lib/scalar-api-ruby/models/login_portal_retrieve_response.rb rename to lib/scalar_api_ruby/models/login_portal_retrieve_response.rb diff --git a/lib/scalar-api-ruby/models/login_portal_update_params.rb b/lib/scalar_api_ruby/models/login_portal_update_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/login_portal_update_params.rb rename to lib/scalar_api_ruby/models/login_portal_update_params.rb diff --git a/lib/scalar-api-ruby/models/managed_doc_version.rb b/lib/scalar_api_ruby/models/managed_doc_version.rb similarity index 75% rename from lib/scalar-api-ruby/models/managed_doc_version.rb rename to lib/scalar_api_ruby/models/managed_doc_version.rb index d44fec6..3733748 100644 --- a/lib/scalar-api-ruby/models/managed_doc_version.rb +++ b/lib/scalar_api_ruby/models/managed_doc_version.rb @@ -16,6 +16,11 @@ class ManagedDocVersion < Scalar::Internal::Type::BaseModel api_name: :embedStatus, nil?: true + # @!attribute endpoint_count + # + # @return [Integer, nil] + required :endpoint_count, Integer, api_name: :endpointCount, nil?: true + # @!attribute tags # # @return [Array] @@ -46,26 +51,21 @@ class ManagedDocVersion < Scalar::Internal::Type::BaseModel # @return [Array, nil] optional :tools, -> { Scalar::Internal::Type::ArrayOf[Scalar::ManagedDocVersion::Tool] } - # @!attribute version_sha - # - # @return [String, nil] - optional :version_sha, String, api_name: :versionSha - # @!attribute yaml_sha # # @return [String, nil] optional :yaml_sha, String, api_name: :yamlSha - # @!method initialize(created_at:, embed_status:, tags:, uid:, upgraded:, version:, json_sha: nil, tools: nil, version_sha: nil, yaml_sha: nil) + # @!method initialize(created_at:, embed_status:, endpoint_count:, tags:, uid:, upgraded:, version:, json_sha: nil, tools: nil, yaml_sha: nil) # @param created_at [Float] # @param embed_status [Symbol, Scalar::Models::ManagedDocVersion::EmbedStatus, nil] + # @param endpoint_count [Integer, nil] # @param tags [Array] # @param uid [String] # @param upgraded [Boolean] # @param version [String] # @param json_sha [String] # @param tools [Array] - # @param version_sha [String] # @param yaml_sha [String] # @see Scalar::Models::ManagedDocVersion#embed_status @@ -89,8 +89,8 @@ class Tool < Scalar::Internal::Type::BaseModel # @!attribute method_ # - # @return [Symbol, Scalar::Models::ManagedDocVersion::Tool::Method] - required :method_, enum: -> { Scalar::ManagedDocVersion::Tool::Method }, api_name: :method + # @return [String] + required :method_, String, api_name: :method # @!attribute path # @@ -99,7 +99,7 @@ class Tool < Scalar::Internal::Type::BaseModel # @!method initialize(enabled_tools:, method_:, path:) # @param enabled_tools [Array] - # @param method_ [Symbol, Scalar::Models::ManagedDocVersion::Tool::Method] + # @param method_ [String] # @param path [String] module EnabledTool @@ -111,23 +111,6 @@ module EnabledTool # @!method self.values # @return [Array] end - - # @see Scalar::Models::ManagedDocVersion::Tool#method_ - module Method - extend Scalar::Internal::Type::Enum - - DELETE = :delete - GET = :get - HEAD = :head - OPTIONS = :options - PATCH = :patch - POST = :post - PUT = :put - TRACE = :trace - - # @!method self.values - # @return [Array] - end end end end diff --git a/lib/scalar_api_ruby/models/managed_schema_version.rb b/lib/scalar_api_ruby/models/managed_schema_version.rb new file mode 100644 index 0000000..78d32c1 --- /dev/null +++ b/lib/scalar_api_ruby/models/managed_schema_version.rb @@ -0,0 +1,45 @@ +# frozen_string_literal: true + +module Scalar + module Models + class ManagedSchemaVersion < Scalar::Internal::Type::BaseModel + # @!attribute created_at + # + # @return [Integer] + required :created_at, Integer, api_name: :createdAt + + # @!attribute uid + # + # @return [String] + required :uid, String + + # @!attribute updated_at + # + # @return [Integer] + required :updated_at, Integer, api_name: :updatedAt + + # @!attribute version + # + # @return [String] + required :version, String + + # @!attribute json_sha + # + # @return [String, nil] + optional :json_sha, String, api_name: :jsonSha + + # @!attribute yaml_sha + # + # @return [String, nil] + optional :yaml_sha, String, api_name: :yamlSha + + # @!method initialize(created_at:, uid:, updated_at:, version:, json_sha: nil, yaml_sha: nil) + # @param created_at [Integer] + # @param uid [String] + # @param updated_at [Integer] + # @param version [String] + # @param json_sha [String] + # @param yaml_sha [String] + end + end +end diff --git a/lib/scalar_api_ruby/models/mcp/mcp_installation.rb b/lib/scalar_api_ruby/models/mcp/mcp_installation.rb new file mode 100644 index 0000000..c69f51d --- /dev/null +++ b/lib/scalar_api_ruby/models/mcp/mcp_installation.rb @@ -0,0 +1,75 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Mcp + class McpInstallation < Scalar::Internal::Type::BaseModel + # @!attribute id + # + # @return [String] + required :id, String + + # @!attribute access_groups + # + # @return [Array] + required :access_groups, Scalar::Internal::Type::ArrayOf[String], api_name: :accessGroups + + # @!attribute credential_redaction_enabled + # + # @return [Boolean] + required :credential_redaction_enabled, + Scalar::Internal::Type::Boolean, + api_name: :credentialRedactionEnabled + + # @!attribute is_private + # + # @return [Boolean] + required :is_private, Scalar::Internal::Type::Boolean, api_name: :isPrivate + + # @!attribute login_portal_uid + # + # @return [String, nil] + required :login_portal_uid, String, api_name: :loginPortalUid, nil?: true + + # @!attribute mcp_server_id + # + # @return [String] + required :mcp_server_id, String, api_name: :mcpServerId + + # @!attribute mcp_version + # + # @return [String, nil] + required :mcp_version, String, api_name: :mcpVersion, nil?: true + + # @!attribute name + # + # @return [String] + required :name, String + + # @!attribute pii_redaction_enabled + # + # @return [Boolean] + required :pii_redaction_enabled, Scalar::Internal::Type::Boolean, api_name: :piiRedactionEnabled + + # @!attribute slug + # + # @return [String] + required :slug, String + + # @!method initialize(id:, access_groups:, credential_redaction_enabled:, is_private:, login_portal_uid:, mcp_server_id:, mcp_version:, name:, pii_redaction_enabled:, slug:) + # @param id [String] + # @param access_groups [Array] + # @param credential_redaction_enabled [Boolean] + # @param is_private [Boolean] + # @param login_portal_uid [String, nil] + # @param mcp_server_id [String] + # @param mcp_version [String, nil] + # @param name [String] + # @param pii_redaction_enabled [Boolean] + # @param slug [String] + end + end + + McpInstallation = Mcp::McpInstallation + end +end diff --git a/lib/scalar_api_ruby/models/mcp/mcp_server.rb b/lib/scalar_api_ruby/models/mcp/mcp_server.rb new file mode 100644 index 0000000..a58b993 --- /dev/null +++ b/lib/scalar_api_ruby/models/mcp/mcp_server.rb @@ -0,0 +1,50 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Mcp + # @see Scalar::Resources::Mcp::Servers#retrieve + class McpServer < Scalar::Internal::Type::BaseModel + # @!attribute id + # + # @return [String] + required :id, String + + # @!attribute auto_add_operations + # + # @return [Boolean] + required :auto_add_operations, Scalar::Internal::Type::Boolean, api_name: :autoAddOperations + + # @!attribute created_at + # + # @return [String] + required :created_at, String, api_name: :createdAt + + # @!attribute name + # + # @return [String] + required :name, String + + # @!attribute slug + # + # @return [String] + required :slug, String + + # @!attribute updated_at + # + # @return [String] + required :updated_at, String, api_name: :updatedAt + + # @!method initialize(id:, auto_add_operations:, created_at:, name:, slug:, updated_at:) + # @param id [String] + # @param auto_add_operations [Boolean] + # @param created_at [String] + # @param name [String] + # @param slug [String] + # @param updated_at [String] + end + end + + McpServer = Mcp::McpServer + end +end diff --git a/lib/scalar_api_ruby/models/mcp/server_create_params.rb b/lib/scalar_api_ruby/models/mcp/server_create_params.rb new file mode 100644 index 0000000..9740fc1 --- /dev/null +++ b/lib/scalar_api_ruby/models/mcp/server_create_params.rb @@ -0,0 +1,40 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Mcp + # @see Scalar::Resources::Mcp::Servers#create + class ServerCreateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute name + # + # @return [String] + required :name, String + + # @!attribute project_uids + # + # @return [Array, nil] + optional :project_uids, Scalar::Internal::Type::ArrayOf[String], api_name: :projectUids + + # @!attribute slug + # + # @return [String, nil] + optional :slug, String + + # @!attribute version_uids + # + # @return [Array, nil] + optional :version_uids, Scalar::Internal::Type::ArrayOf[String], api_name: :versionUids + + # @!method initialize(name:, project_uids: nil, slug: nil, version_uids: nil, request_options: {}) + # @param name [String] + # @param project_uids [Array] + # @param slug [String] + # @param version_uids [Array] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/mcp/server_create_response.rb b/lib/scalar_api_ruby/models/mcp/server_create_response.rb new file mode 100644 index 0000000..c2b4a31 --- /dev/null +++ b/lib/scalar_api_ruby/models/mcp/server_create_response.rb @@ -0,0 +1,24 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Mcp + # @see Scalar::Resources::Mcp::Servers#create + class ServerCreateResponse < Scalar::Internal::Type::BaseModel + # @!attribute installation + # + # @return [Scalar::Models::Mcp::McpInstallation] + required :installation, -> { Scalar::Mcp::McpInstallation } + + # @!attribute server + # + # @return [Scalar::Models::Mcp::McpServer] + required :server, -> { Scalar::Mcp::McpServer } + + # @!method initialize(installation:, server:) + # @param installation [Scalar::Models::Mcp::McpInstallation] + # @param server [Scalar::Models::Mcp::McpServer] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/mcp/server_delete_params.rb b/lib/scalar_api_ruby/models/mcp/server_delete_params.rb new file mode 100644 index 0000000..f21bcac --- /dev/null +++ b/lib/scalar_api_ruby/models/mcp/server_delete_params.rb @@ -0,0 +1,22 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Mcp + # @see Scalar::Resources::Mcp::Servers#delete + class ServerDeleteParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute id + # + # @return [String] + required :id, String + + # @!method initialize(id:, request_options: {}) + # @param id [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/mcp/server_list_params.rb b/lib/scalar_api_ruby/models/mcp/server_list_params.rb new file mode 100644 index 0000000..ad952a5 --- /dev/null +++ b/lib/scalar_api_ruby/models/mcp/server_list_params.rb @@ -0,0 +1,16 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Mcp + # @see Scalar::Resources::Mcp::Servers#list + class ServerListParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!method initialize(request_options: {}) + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/mcp/server_list_response.rb b/lib/scalar_api_ruby/models/mcp/server_list_response.rb new file mode 100644 index 0000000..cf844a8 --- /dev/null +++ b/lib/scalar_api_ruby/models/mcp/server_list_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Mcp + # @type [Scalar::Internal::Type::Converter] + ServerListResponse = Scalar::Internal::Type::ArrayOf[-> { Scalar::Mcp::McpServer }] + end + end +end diff --git a/lib/scalar_api_ruby/models/mcp/server_retrieve_params.rb b/lib/scalar_api_ruby/models/mcp/server_retrieve_params.rb new file mode 100644 index 0000000..7f6ef97 --- /dev/null +++ b/lib/scalar_api_ruby/models/mcp/server_retrieve_params.rb @@ -0,0 +1,22 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Mcp + # @see Scalar::Resources::Mcp::Servers#retrieve + class ServerRetrieveParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute id + # + # @return [String] + required :id, String + + # @!method initialize(id:, request_options: {}) + # @param id [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/mcp/server_update_params.rb b/lib/scalar_api_ruby/models/mcp/server_update_params.rb new file mode 100644 index 0000000..6737bb9 --- /dev/null +++ b/lib/scalar_api_ruby/models/mcp/server_update_params.rb @@ -0,0 +1,52 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Mcp + # @see Scalar::Resources::Mcp::Servers#update + class ServerUpdateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute id + # + # @return [String] + required :id, String + + # @!attribute auto_add_operations + # + # @return [Boolean, nil] + optional :auto_add_operations, Scalar::Internal::Type::Boolean, api_name: :autoAddOperations + + # @!attribute docs_pages + # + # @return [Array, nil] + optional :docs_pages, Scalar::Internal::Type::ArrayOf[String], api_name: :docsPages + + # @!attribute name + # + # @return [String, nil] + optional :name, String + + # @!attribute operations + # + # @return [Array, nil] + optional :operations, Scalar::Internal::Type::ArrayOf[String] + + # @!attribute slug + # + # @return [String, nil] + optional :slug, String + + # @!method initialize(id:, auto_add_operations: nil, docs_pages: nil, name: nil, operations: nil, slug: nil, request_options: {}) + # @param id [String] + # @param auto_add_operations [Boolean] + # @param docs_pages [Array] + # @param name [String] + # @param operations [Array] + # @param slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/mcp/servers/installation_create_access_group_params.rb b/lib/scalar_api_ruby/models/mcp/servers/installation_create_access_group_params.rb new file mode 100644 index 0000000..b95cea9 --- /dev/null +++ b/lib/scalar_api_ruby/models/mcp/servers/installation_create_access_group_params.rb @@ -0,0 +1,36 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Mcp + module Servers + # @see Scalar::Resources::Mcp::Servers::Installations#create_access_group + class InstallationCreateAccessGroupParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute id + # + # @return [String] + required :id, String + + # @!attribute installation_id + # + # @return [String] + required :installation_id, String + + # @!attribute access_group_uid + # + # @return [String] + required :access_group_uid, String, api_name: :accessGroupUid + + # @!method initialize(id:, installation_id:, access_group_uid:, request_options: {}) + # @param id [String] + # @param installation_id [String] + # @param access_group_uid [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end + end + end +end diff --git a/lib/scalar_api_ruby/models/mcp/servers/installation_create_params.rb b/lib/scalar_api_ruby/models/mcp/servers/installation_create_params.rb new file mode 100644 index 0000000..0fb1eb8 --- /dev/null +++ b/lib/scalar_api_ruby/models/mcp/servers/installation_create_params.rb @@ -0,0 +1,44 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Mcp + module Servers + # @see Scalar::Resources::Mcp::Servers::Installations#create + class InstallationCreateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute id + # + # @return [String] + required :id, String + + # @!attribute document_auth + # + # @return [Hash{Symbol=>Object}] + required :document_auth, + Scalar::Internal::Type::HashOf[Scalar::Internal::Type::Unknown], + api_name: :documentAuth + + # @!attribute name + # + # @return [String] + required :name, String + + # @!attribute slug + # + # @return [String, nil] + optional :slug, String + + # @!method initialize(id:, document_auth:, name:, slug: nil, request_options: {}) + # @param id [String] + # @param document_auth [Hash{Symbol=>Object}] + # @param name [String] + # @param slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end + end + end +end diff --git a/lib/scalar_api_ruby/models/mcp/servers/installation_delete_access_group_params.rb b/lib/scalar_api_ruby/models/mcp/servers/installation_delete_access_group_params.rb new file mode 100644 index 0000000..31bed5e --- /dev/null +++ b/lib/scalar_api_ruby/models/mcp/servers/installation_delete_access_group_params.rb @@ -0,0 +1,36 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Mcp + module Servers + # @see Scalar::Resources::Mcp::Servers::Installations#delete_access_group + class InstallationDeleteAccessGroupParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute id + # + # @return [String] + required :id, String + + # @!attribute installation_id + # + # @return [String] + required :installation_id, String + + # @!attribute access_group_uid + # + # @return [String] + required :access_group_uid, String, api_name: :accessGroupUid + + # @!method initialize(id:, installation_id:, access_group_uid:, request_options: {}) + # @param id [String] + # @param installation_id [String] + # @param access_group_uid [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end + end + end +end diff --git a/lib/scalar_api_ruby/models/mcp/servers/installation_delete_params.rb b/lib/scalar_api_ruby/models/mcp/servers/installation_delete_params.rb new file mode 100644 index 0000000..a2001de --- /dev/null +++ b/lib/scalar_api_ruby/models/mcp/servers/installation_delete_params.rb @@ -0,0 +1,30 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Mcp + module Servers + # @see Scalar::Resources::Mcp::Servers::Installations#delete + class InstallationDeleteParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute id + # + # @return [String] + required :id, String + + # @!attribute installation_id + # + # @return [String] + required :installation_id, String + + # @!method initialize(id:, installation_id:, request_options: {}) + # @param id [String] + # @param installation_id [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end + end + end +end diff --git a/lib/scalar_api_ruby/models/mcp/servers/installation_list_params.rb b/lib/scalar_api_ruby/models/mcp/servers/installation_list_params.rb new file mode 100644 index 0000000..13ce587 --- /dev/null +++ b/lib/scalar_api_ruby/models/mcp/servers/installation_list_params.rb @@ -0,0 +1,24 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Mcp + module Servers + # @see Scalar::Resources::Mcp::Servers::Installations#list + class InstallationListParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute id + # + # @return [String] + required :id, String + + # @!method initialize(id:, request_options: {}) + # @param id [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end + end + end +end diff --git a/lib/scalar_api_ruby/models/mcp/servers/installation_list_response.rb b/lib/scalar_api_ruby/models/mcp/servers/installation_list_response.rb new file mode 100644 index 0000000..98d36ad --- /dev/null +++ b/lib/scalar_api_ruby/models/mcp/servers/installation_list_response.rb @@ -0,0 +1,13 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Mcp + module Servers + # @type [Scalar::Internal::Type::Converter] + InstallationListResponse = + Scalar::Internal::Type::ArrayOf[-> { Scalar::Mcp::Servers::McpInstallationListItem }] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/mcp/servers/installation_retrieve_params.rb b/lib/scalar_api_ruby/models/mcp/servers/installation_retrieve_params.rb new file mode 100644 index 0000000..878f0f7 --- /dev/null +++ b/lib/scalar_api_ruby/models/mcp/servers/installation_retrieve_params.rb @@ -0,0 +1,30 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Mcp + module Servers + # @see Scalar::Resources::Mcp::Servers::Installations#retrieve + class InstallationRetrieveParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute id + # + # @return [String] + required :id, String + + # @!attribute installation_id + # + # @return [String] + required :installation_id, String + + # @!method initialize(id:, installation_id:, request_options: {}) + # @param id [String] + # @param installation_id [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end + end + end +end diff --git a/lib/scalar_api_ruby/models/mcp/servers/installation_update_params.rb b/lib/scalar_api_ruby/models/mcp/servers/installation_update_params.rb new file mode 100644 index 0000000..78ffcf4 --- /dev/null +++ b/lib/scalar_api_ruby/models/mcp/servers/installation_update_params.rb @@ -0,0 +1,68 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Mcp + module Servers + # @see Scalar::Resources::Mcp::Servers::Installations#update + class InstallationUpdateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute id + # + # @return [String] + required :id, String + + # @!attribute installation_id + # + # @return [String] + required :installation_id, String + + # @!attribute document_auth + # + # @return [Hash{Symbol=>Object}, nil] + optional :document_auth, + Scalar::Internal::Type::HashOf[Scalar::Internal::Type::Unknown], + api_name: :documentAuth + + # @!attribute is_private + # + # @return [Boolean, nil] + optional :is_private, Scalar::Internal::Type::Boolean, api_name: :isPrivate + + # @!attribute login_portal_uid + # + # @return [String, nil] + optional :login_portal_uid, String, api_name: :loginPortalUid, nil?: true + + # @!attribute mcp_version + # + # @return [String, nil] + optional :mcp_version, String, api_name: :mcpVersion, nil?: true + + # @!attribute name + # + # @return [String, nil] + optional :name, String + + # @!attribute slug + # + # @return [String, nil] + optional :slug, String + + # @!method initialize(id:, installation_id:, document_auth: nil, is_private: nil, login_portal_uid: nil, mcp_version: nil, name: nil, slug: nil, request_options: {}) + # @param id [String] + # @param installation_id [String] + # @param document_auth [Hash{Symbol=>Object}] + # @param is_private [Boolean] + # @param login_portal_uid [String, nil] + # @param mcp_version [String, nil] + # @param name [String] + # @param slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end + end + end +end diff --git a/lib/scalar_api_ruby/models/mcp/servers/mcp_installation_list_item.rb b/lib/scalar_api_ruby/models/mcp/servers/mcp_installation_list_item.rb new file mode 100644 index 0000000..b678809 --- /dev/null +++ b/lib/scalar_api_ruby/models/mcp/servers/mcp_installation_list_item.rb @@ -0,0 +1,43 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Mcp + module Servers + class McpInstallationListItem < Scalar::Internal::Type::BaseModel + # @!attribute id + # + # @return [String] + required :id, String + + # @!attribute is_private + # + # @return [Boolean] + required :is_private, Scalar::Internal::Type::Boolean, api_name: :isPrivate + + # @!attribute mcp_version + # + # @return [String, nil] + required :mcp_version, String, api_name: :mcpVersion, nil?: true + + # @!attribute name + # + # @return [String] + required :name, String + + # @!attribute slug + # + # @return [String] + required :slug, String + + # @!method initialize(id:, is_private:, mcp_version:, name:, slug:) + # @param id [String] + # @param is_private [Boolean] + # @param mcp_version [String, nil] + # @param name [String] + # @param slug [String] + end + end + end + end +end diff --git a/lib/scalar_api_ruby/models/method.rb b/lib/scalar_api_ruby/models/method.rb new file mode 100644 index 0000000..c103989 --- /dev/null +++ b/lib/scalar_api_ruby/models/method.rb @@ -0,0 +1,7 @@ +# frozen_string_literal: true + +module Scalar + module Models + Method = String + end +end diff --git a/lib/scalar-api-ruby/models/namespace.rb b/lib/scalar_api_ruby/models/namespace.rb similarity index 100% rename from lib/scalar-api-ruby/models/namespace.rb rename to lib/scalar_api_ruby/models/namespace.rb diff --git a/lib/scalar-api-ruby/models/namespace_list_params.rb b/lib/scalar_api_ruby/models/namespace_list_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/namespace_list_params.rb rename to lib/scalar_api_ruby/models/namespace_list_params.rb diff --git a/lib/scalar-api-ruby/models/namespace_list_response.rb b/lib/scalar_api_ruby/models/namespace_list_response.rb similarity index 100% rename from lib/scalar-api-ruby/models/namespace_list_response.rb rename to lib/scalar_api_ruby/models/namespace_list_response.rb diff --git a/lib/scalar-api-ruby/models/nanoid.rb b/lib/scalar_api_ruby/models/nanoid.rb similarity index 100% rename from lib/scalar-api-ruby/models/nanoid.rb rename to lib/scalar_api_ruby/models/nanoid.rb diff --git a/lib/scalar-api-ruby/models/registry_create_api_document_access_group_params.rb b/lib/scalar_api_ruby/models/registry_create_api_document_access_group_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/registry_create_api_document_access_group_params.rb rename to lib/scalar_api_ruby/models/registry_create_api_document_access_group_params.rb diff --git a/lib/scalar-api-ruby/models/registry_create_api_document_params.rb b/lib/scalar_api_ruby/models/registry_create_api_document_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/registry_create_api_document_params.rb rename to lib/scalar_api_ruby/models/registry_create_api_document_params.rb diff --git a/lib/scalar-api-ruby/models/registry_create_api_document_response.rb b/lib/scalar_api_ruby/models/registry_create_api_document_response.rb similarity index 78% rename from lib/scalar-api-ruby/models/registry_create_api_document_response.rb rename to lib/scalar_api_ruby/models/registry_create_api_document_response.rb index 6aa7f21..63f47b7 100644 --- a/lib/scalar-api-ruby/models/registry_create_api_document_response.rb +++ b/lib/scalar_api_ruby/models/registry_create_api_document_response.rb @@ -19,11 +19,6 @@ class RegistryCreateAPIDocumentResponse < Scalar::Internal::Type::BaseModel # @return [String] required :uid, String - # @!attribute version_sha - # - # @return [String] - required :version_sha, String, api_name: :versionSha - # @!attribute version_uid # # @return [String] @@ -34,11 +29,10 @@ class RegistryCreateAPIDocumentResponse < Scalar::Internal::Type::BaseModel # @return [String] required :yaml_sha, String, api_name: :yamlSha - # @!method initialize(json_sha:, title:, uid:, version_sha:, version_uid:, yaml_sha:) + # @!method initialize(json_sha:, title:, uid:, version_uid:, yaml_sha:) # @param json_sha [String] # @param title [String] # @param uid [String] - # @param version_sha [String] # @param version_uid [String] # @param yaml_sha [String] end diff --git a/lib/scalar-api-ruby/models/registry_create_api_document_version_params.rb b/lib/scalar_api_ruby/models/registry_create_api_document_version_params.rb similarity index 80% rename from lib/scalar-api-ruby/models/registry_create_api_document_version_params.rb rename to lib/scalar_api_ruby/models/registry_create_api_document_version_params.rb index 61d8869..b375e22 100644 --- a/lib/scalar-api-ruby/models/registry_create_api_document_version_params.rb +++ b/lib/scalar_api_ruby/models/registry_create_api_document_version_params.rb @@ -32,18 +32,12 @@ class RegistryCreateAPIDocumentVersionParams < Scalar::Internal::Type::BaseModel # @return [Boolean, nil] optional :force, Scalar::Internal::Type::Boolean - # @!attribute last_known_version_sha - # - # @return [String, nil] - optional :last_known_version_sha, String, api_name: :lastKnownVersionSha - - # @!method initialize(namespace:, slug:, document:, version:, force: nil, last_known_version_sha: nil, request_options: {}) + # @!method initialize(namespace:, slug:, document:, version:, force: nil, request_options: {}) # @param namespace [String] # @param slug [String] # @param document [String] # @param version [String] # @param force [Boolean] - # @param last_known_version_sha [String] # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/scalar-api-ruby/models/registry_delete_api_document_access_group_params.rb b/lib/scalar_api_ruby/models/registry_delete_api_document_access_group_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/registry_delete_api_document_access_group_params.rb rename to lib/scalar_api_ruby/models/registry_delete_api_document_access_group_params.rb diff --git a/lib/scalar-api-ruby/models/registry_delete_api_document_params.rb b/lib/scalar_api_ruby/models/registry_delete_api_document_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/registry_delete_api_document_params.rb rename to lib/scalar_api_ruby/models/registry_delete_api_document_params.rb diff --git a/lib/scalar-api-ruby/models/registry_delete_api_document_version_params.rb b/lib/scalar_api_ruby/models/registry_delete_api_document_version_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/registry_delete_api_document_version_params.rb rename to lib/scalar_api_ruby/models/registry_delete_api_document_version_params.rb diff --git a/lib/scalar-api-ruby/models/registry_list_all_api_documents_params.rb b/lib/scalar_api_ruby/models/registry_list_all_api_documents_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/registry_list_all_api_documents_params.rb rename to lib/scalar_api_ruby/models/registry_list_all_api_documents_params.rb diff --git a/lib/scalar_api_ruby/models/registry_list_all_api_documents_response.rb b/lib/scalar_api_ruby/models/registry_list_all_api_documents_response.rb new file mode 100644 index 0000000..e21f5eb --- /dev/null +++ b/lib/scalar_api_ruby/models/registry_list_all_api_documents_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @type [Scalar::Internal::Type::Converter] + RegistryListAllAPIDocumentsResponse = Scalar::Internal::Type::ArrayOf[-> { Scalar::APIDocument }] + end +end diff --git a/lib/scalar-api-ruby/models/registry_list_api_document_version_metadata_params.rb b/lib/scalar_api_ruby/models/registry_list_api_document_version_metadata_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/registry_list_api_document_version_metadata_params.rb rename to lib/scalar_api_ruby/models/registry_list_api_document_version_metadata_params.rb diff --git a/lib/scalar-api-ruby/models/registry_list_api_documents_params.rb b/lib/scalar_api_ruby/models/registry_list_api_documents_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/registry_list_api_documents_params.rb rename to lib/scalar_api_ruby/models/registry_list_api_documents_params.rb diff --git a/lib/scalar_api_ruby/models/registry_list_api_documents_response.rb b/lib/scalar_api_ruby/models/registry_list_api_documents_response.rb new file mode 100644 index 0000000..6081d65 --- /dev/null +++ b/lib/scalar_api_ruby/models/registry_list_api_documents_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @type [Scalar::Internal::Type::Converter] + RegistryListAPIDocumentsResponse = Scalar::Internal::Type::ArrayOf[-> { Scalar::APIDocument }] + end +end diff --git a/lib/scalar-api-ruby/models/registry_retrieve_api_document_version_params.rb b/lib/scalar_api_ruby/models/registry_retrieve_api_document_version_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/registry_retrieve_api_document_version_params.rb rename to lib/scalar_api_ruby/models/registry_retrieve_api_document_version_params.rb diff --git a/lib/scalar-api-ruby/models/registry_retrieve_api_document_version_response.rb b/lib/scalar_api_ruby/models/registry_retrieve_api_document_version_response.rb similarity index 100% rename from lib/scalar-api-ruby/models/registry_retrieve_api_document_version_response.rb rename to lib/scalar_api_ruby/models/registry_retrieve_api_document_version_response.rb diff --git a/lib/scalar-api-ruby/models/registry_update_api_document_params.rb b/lib/scalar_api_ruby/models/registry_update_api_document_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/registry_update_api_document_params.rb rename to lib/scalar_api_ruby/models/registry_update_api_document_params.rb diff --git a/lib/scalar-api-ruby/models/registry_update_api_document_version_params.rb b/lib/scalar_api_ruby/models/registry_update_api_document_version_params.rb similarity index 79% rename from lib/scalar-api-ruby/models/registry_update_api_document_version_params.rb rename to lib/scalar_api_ruby/models/registry_update_api_document_version_params.rb index 037a667..e5cbf7a 100644 --- a/lib/scalar-api-ruby/models/registry_update_api_document_version_params.rb +++ b/lib/scalar_api_ruby/models/registry_update_api_document_version_params.rb @@ -27,17 +27,11 @@ class RegistryUpdateAPIDocumentVersionParams < Scalar::Internal::Type::BaseModel # @return [String] required :document, String - # @!attribute last_known_version_sha - # - # @return [String, nil] - optional :last_known_version_sha, String, api_name: :lastKnownVersionSha - - # @!method initialize(namespace:, slug:, semver:, document:, last_known_version_sha: nil, request_options: {}) + # @!method initialize(namespace:, slug:, semver:, document:, request_options: {}) # @param namespace [String] # @param slug [String] # @param semver [String] # @param document [String] - # @param last_known_version_sha [String] # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/scalar-api-ruby/models/registry_update_api_document_version_response.rb b/lib/scalar_api_ruby/models/registry_update_api_document_version_response.rb similarity index 70% rename from lib/scalar-api-ruby/models/registry_update_api_document_version_response.rb rename to lib/scalar_api_ruby/models/registry_update_api_document_version_response.rb index 59a9973..adc0029 100644 --- a/lib/scalar-api-ruby/models/registry_update_api_document_version_response.rb +++ b/lib/scalar_api_ruby/models/registry_update_api_document_version_response.rb @@ -9,19 +9,13 @@ class RegistryUpdateAPIDocumentVersionResponse < Scalar::Internal::Type::BaseMod # @return [String] required :json_sha, String, api_name: :jsonSha - # @!attribute version_sha - # - # @return [String] - required :version_sha, String, api_name: :versionSha - # @!attribute yaml_sha # # @return [String] required :yaml_sha, String, api_name: :yamlSha - # @!method initialize(json_sha:, version_sha:, yaml_sha:) + # @!method initialize(json_sha:, yaml_sha:) # @param json_sha [String] - # @param version_sha [String] # @param yaml_sha [String] end end diff --git a/lib/scalar-api-ruby/models/rule_list_rulesets_response.rb b/lib/scalar_api_ruby/models/rule.rb similarity index 80% rename from lib/scalar-api-ruby/models/rule_list_rulesets_response.rb rename to lib/scalar_api_ruby/models/rule.rb index 9db319a..8263c83 100644 --- a/lib/scalar-api-ruby/models/rule_list_rulesets_response.rb +++ b/lib/scalar_api_ruby/models/rule.rb @@ -2,7 +2,7 @@ module Scalar module Models - class RuleListRulesetsResponseItem < Scalar::Internal::Type::BaseModel + class Rule < Scalar::Internal::Type::BaseModel # @!attribute description # # @return [String] @@ -41,9 +41,5 @@ class RuleListRulesetsResponseItem < Scalar::Internal::Type::BaseModel # @param title [String] # @param uid [String] end - - # @type [Scalar::Internal::Type::Converter] - RuleListRulesetsResponse = - Scalar::Internal::Type::ArrayOf[-> { Scalar::Models::RuleListRulesetsResponseItem }] end end diff --git a/lib/scalar-api-ruby/models/rule_create_ruleset_access_group_params.rb b/lib/scalar_api_ruby/models/rule_create_ruleset_access_group_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/rule_create_ruleset_access_group_params.rb rename to lib/scalar_api_ruby/models/rule_create_ruleset_access_group_params.rb diff --git a/lib/scalar-api-ruby/models/rule_create_ruleset_params.rb b/lib/scalar_api_ruby/models/rule_create_ruleset_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/rule_create_ruleset_params.rb rename to lib/scalar_api_ruby/models/rule_create_ruleset_params.rb diff --git a/lib/scalar-api-ruby/models/rule_delete_ruleset_access_group_params.rb b/lib/scalar_api_ruby/models/rule_delete_ruleset_access_group_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/rule_delete_ruleset_access_group_params.rb rename to lib/scalar_api_ruby/models/rule_delete_ruleset_access_group_params.rb diff --git a/lib/scalar-api-ruby/models/rule_delete_ruleset_params.rb b/lib/scalar_api_ruby/models/rule_delete_ruleset_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/rule_delete_ruleset_params.rb rename to lib/scalar_api_ruby/models/rule_delete_ruleset_params.rb diff --git a/lib/scalar-api-ruby/models/rule_list_rulesets_params.rb b/lib/scalar_api_ruby/models/rule_list_rulesets_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/rule_list_rulesets_params.rb rename to lib/scalar_api_ruby/models/rule_list_rulesets_params.rb diff --git a/lib/scalar_api_ruby/models/rule_list_rulesets_response.rb b/lib/scalar_api_ruby/models/rule_list_rulesets_response.rb new file mode 100644 index 0000000..f268bf9 --- /dev/null +++ b/lib/scalar_api_ruby/models/rule_list_rulesets_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @type [Scalar::Internal::Type::Converter] + RuleListRulesetsResponse = Scalar::Internal::Type::ArrayOf[-> { Scalar::Rule }] + end +end diff --git a/lib/scalar-api-ruby/models/rule_retrieve_ruleset_document_params.rb b/lib/scalar_api_ruby/models/rule_retrieve_ruleset_document_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/rule_retrieve_ruleset_document_params.rb rename to lib/scalar_api_ruby/models/rule_retrieve_ruleset_document_params.rb diff --git a/lib/scalar-api-ruby/models/rule_retrieve_ruleset_document_response.rb b/lib/scalar_api_ruby/models/rule_retrieve_ruleset_document_response.rb similarity index 100% rename from lib/scalar-api-ruby/models/rule_retrieve_ruleset_document_response.rb rename to lib/scalar_api_ruby/models/rule_retrieve_ruleset_document_response.rb diff --git a/lib/scalar-api-ruby/models/rule_update_ruleset_params.rb b/lib/scalar_api_ruby/models/rule_update_ruleset_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/rule_update_ruleset_params.rb rename to lib/scalar_api_ruby/models/rule_update_ruleset_params.rb diff --git a/lib/scalar-api-ruby/models/scalar_doc_create_guide_params.rb b/lib/scalar_api_ruby/models/scalar_doc_create_guide_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/scalar_doc_create_guide_params.rb rename to lib/scalar_api_ruby/models/scalar_doc_create_guide_params.rb diff --git a/lib/scalar-api-ruby/models/scalar_doc_create_guide_response.rb b/lib/scalar_api_ruby/models/scalar_doc_create_guide_response.rb similarity index 100% rename from lib/scalar-api-ruby/models/scalar_doc_create_guide_response.rb rename to lib/scalar_api_ruby/models/scalar_doc_create_guide_response.rb diff --git a/lib/scalar_api_ruby/models/scalar_doc_create_project_params.rb b/lib/scalar_api_ruby/models/scalar_doc_create_project_params.rb new file mode 100644 index 0000000..1cb5396 --- /dev/null +++ b/lib/scalar_api_ruby/models/scalar_doc_create_project_params.rb @@ -0,0 +1,103 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::ScalarDocs#create_project + class ScalarDocCreateProjectParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute name + # + # @return [String] + required :name, String + + # @!attribute provider + # + # @return [Symbol, Scalar::Models::ScalarDocCreateProjectParams::Provider] + required :provider, enum: -> { Scalar::ScalarDocCreateProjectParams::Provider } + + # @!attribute bitbucket_repository + # + # @return [Scalar::Models::ScalarDocCreateProjectParams::BitbucketRepository, nil] + optional :bitbucket_repository, + -> { Scalar::ScalarDocCreateProjectParams::BitbucketRepository }, + api_name: :bitbucketRepository + + # @!attribute blank + # + # @return [Boolean, nil] + optional :blank, Scalar::Internal::Type::Boolean + + # @!attribute github_repository + # + # @return [Scalar::Models::ScalarDocCreateProjectParams::GithubRepository, nil] + optional :github_repository, + -> { Scalar::ScalarDocCreateProjectParams::GithubRepository }, + api_name: :githubRepository + + # @!attribute is_private + # + # @return [Boolean, nil] + optional :is_private, Scalar::Internal::Type::Boolean, api_name: :isPrivate + + # @!attribute slug + # + # @return [String, nil] + optional :slug, String + + # @!method initialize(name:, provider:, bitbucket_repository: nil, blank: nil, github_repository: nil, is_private: nil, slug: nil, request_options: {}) + # @param name [String] + # @param provider [Symbol, Scalar::Models::ScalarDocCreateProjectParams::Provider] + # @param bitbucket_repository [Scalar::Models::ScalarDocCreateProjectParams::BitbucketRepository] + # @param blank [Boolean] + # @param github_repository [Scalar::Models::ScalarDocCreateProjectParams::GithubRepository] + # @param is_private [Boolean] + # @param slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + + module Provider + extend Scalar::Internal::Type::Enum + + FORGEJO = :forgejo + GITHUB = :github + BITBUCKET = :bitbucket + + # @!method self.values + # @return [Array] + end + + class BitbucketRepository < Scalar::Internal::Type::BaseModel + # @!attribute repo_uuid + # + # @return [String] + required :repo_uuid, String, api_name: :repoUuid + + # @!attribute workspace_uuid + # + # @return [String] + required :workspace_uuid, String, api_name: :workspaceUuid + + # @!method initialize(repo_uuid:, workspace_uuid:) + # @param repo_uuid [String] + # @param workspace_uuid [String] + end + + class GithubRepository < Scalar::Internal::Type::BaseModel + # @!attribute installation_id + # + # @return [Integer] + required :installation_id, Integer, api_name: :installationId + + # @!attribute repo_id + # + # @return [Integer] + required :repo_id, Integer, api_name: :repoId + + # @!method initialize(installation_id:, repo_id:) + # @param installation_id [Integer] + # @param repo_id [Integer] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/scalar_doc_delete_project_params.rb b/lib/scalar_api_ruby/models/scalar_doc_delete_project_params.rb new file mode 100644 index 0000000..d212463 --- /dev/null +++ b/lib/scalar_api_ruby/models/scalar_doc_delete_project_params.rb @@ -0,0 +1,20 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::ScalarDocs#delete_project + class ScalarDocDeleteProjectParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute slug + # + # @return [String] + required :slug, String + + # @!method initialize(slug:, request_options: {}) + # @param slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end +end diff --git a/lib/scalar-api-ruby/models/scalar_doc_list_guides_params.rb b/lib/scalar_api_ruby/models/scalar_doc_list_guides_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/scalar_doc_list_guides_params.rb rename to lib/scalar_api_ruby/models/scalar_doc_list_guides_params.rb diff --git a/lib/scalar_api_ruby/models/scalar_doc_list_guides_response.rb b/lib/scalar_api_ruby/models/scalar_doc_list_guides_response.rb new file mode 100644 index 0000000..f44807c --- /dev/null +++ b/lib/scalar_api_ruby/models/scalar_doc_list_guides_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @type [Scalar::Internal::Type::Converter] + ScalarDocListGuidesResponse = Scalar::Internal::Type::ArrayOf[-> { Scalar::GithubProject }] + end +end diff --git a/lib/scalar_api_ruby/models/scalar_doc_list_project_config_params.rb b/lib/scalar_api_ruby/models/scalar_doc_list_project_config_params.rb new file mode 100644 index 0000000..f22a4a8 --- /dev/null +++ b/lib/scalar_api_ruby/models/scalar_doc_list_project_config_params.rb @@ -0,0 +1,26 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::ScalarDocs#list_project_config + class ScalarDocListProjectConfigParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute slug + # + # @return [String] + required :slug, String + + # @!attribute ref + # + # @return [String, nil] + optional :ref, String + + # @!method initialize(slug:, ref: nil, request_options: {}) + # @param slug [String] + # @param ref [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end +end diff --git a/lib/scalar_api_ruby/models/scalar_doc_list_project_config_response.rb b/lib/scalar_api_ruby/models/scalar_doc_list_project_config_response.rb new file mode 100644 index 0000000..af18e57 --- /dev/null +++ b/lib/scalar_api_ruby/models/scalar_doc_list_project_config_response.rb @@ -0,0 +1,34 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::ScalarDocs#list_project_config + class ScalarDocListProjectConfigResponse < Scalar::Internal::Type::BaseModel + # @!attribute base_token + # + # @return [String] + required :base_token, String, api_name: :baseToken + + # @!attribute content + # + # @return [String] + required :content, String + + # @!attribute path + # + # @return [String] + required :path, String + + # @!attribute ref + # + # @return [String] + required :ref, String + + # @!method initialize(base_token:, content:, path:, ref:) + # @param base_token [String] + # @param content [String] + # @param path [String] + # @param ref [String] + end + end +end diff --git a/lib/scalar_api_ruby/models/scalar_doc_list_project_domain_params.rb b/lib/scalar_api_ruby/models/scalar_doc_list_project_domain_params.rb new file mode 100644 index 0000000..8001857 --- /dev/null +++ b/lib/scalar_api_ruby/models/scalar_doc_list_project_domain_params.rb @@ -0,0 +1,20 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::ScalarDocs#list_project_domain + class ScalarDocListProjectDomainParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute slug + # + # @return [String] + required :slug, String + + # @!method initialize(slug:, request_options: {}) + # @param slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end +end diff --git a/lib/scalar_api_ruby/models/scalar_doc_list_project_domain_response.rb b/lib/scalar_api_ruby/models/scalar_doc_list_project_domain_response.rb new file mode 100644 index 0000000..9d576a1 --- /dev/null +++ b/lib/scalar_api_ruby/models/scalar_doc_list_project_domain_response.rb @@ -0,0 +1,22 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::ScalarDocs#list_project_domain + class ScalarDocListProjectDomainResponse < Scalar::Internal::Type::BaseModel + # @!attribute custom_domain + # + # @return [String, nil] + required :custom_domain, String, api_name: :customDomain, nil?: true + + # @!attribute scalar_domain + # + # @return [String, nil] + required :scalar_domain, String, api_name: :scalarDomain, nil?: true + + # @!method initialize(custom_domain:, scalar_domain:) + # @param custom_domain [String, nil] + # @param scalar_domain [String, nil] + end + end +end diff --git a/lib/scalar_api_ruby/models/scalar_doc_list_project_domain_status_params.rb b/lib/scalar_api_ruby/models/scalar_doc_list_project_domain_status_params.rb new file mode 100644 index 0000000..e769ae0 --- /dev/null +++ b/lib/scalar_api_ruby/models/scalar_doc_list_project_domain_status_params.rb @@ -0,0 +1,20 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::ScalarDocs#list_project_domain_status + class ScalarDocListProjectDomainStatusParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute slug + # + # @return [String] + required :slug, String + + # @!method initialize(slug:, request_options: {}) + # @param slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end +end diff --git a/lib/scalar_api_ruby/models/scalar_doc_list_project_domain_status_response.rb b/lib/scalar_api_ruby/models/scalar_doc_list_project_domain_status_response.rb new file mode 100644 index 0000000..a573a89 --- /dev/null +++ b/lib/scalar_api_ruby/models/scalar_doc_list_project_domain_status_response.rb @@ -0,0 +1,65 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::ScalarDocs#list_project_domain_status + class ScalarDocListProjectDomainStatusResponse < Scalar::Internal::Type::BaseModel + # @!attribute domain + # + # @return [String, nil] + required :domain, String, nil?: true + + # @!attribute expected + # + # @return [Scalar::Models::ScalarDocListProjectDomainStatusResponse::Expected, nil] + required :expected, + -> { Scalar::Models::ScalarDocListProjectDomainStatusResponse::Expected }, + nil?: true + + # @!attribute found + # + # @return [Array] + required :found, Scalar::Internal::Type::ArrayOf[String] + + # @!attribute status + # + # @return [Symbol, Scalar::Models::ScalarDocListProjectDomainStatusResponse::Status] + required :status, enum: -> { Scalar::Models::ScalarDocListProjectDomainStatusResponse::Status } + + # @!method initialize(domain:, expected:, found:, status:) + # @param domain [String, nil] + # @param expected [Scalar::Models::ScalarDocListProjectDomainStatusResponse::Expected, nil] + # @param found [Array] + # @param status [Symbol, Scalar::Models::ScalarDocListProjectDomainStatusResponse::Status] + + # @see Scalar::Models::ScalarDocListProjectDomainStatusResponse#expected + class Expected < Scalar::Internal::Type::BaseModel + # @!attribute target + # + # @return [String] + required :target, String + + # @!attribute type + # + # @return [Symbol, :CNAME] + required :type, const: :CNAME + + # @!method initialize(target:, type: :CNAME) + # @param target [String] + # @param type [Symbol, :CNAME] + end + + # @see Scalar::Models::ScalarDocListProjectDomainStatusResponse#status + module Status + extend Scalar::Internal::Type::Enum + + VERIFIED = :verified + PENDING = :pending + MISCONFIGURED = :misconfigured + + # @!method self.values + # @return [Array] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/scalar_doc_list_projects_params.rb b/lib/scalar_api_ruby/models/scalar_doc_list_projects_params.rb new file mode 100644 index 0000000..5b7f154 --- /dev/null +++ b/lib/scalar_api_ruby/models/scalar_doc_list_projects_params.rb @@ -0,0 +1,20 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::ScalarDocs#list_projects + class ScalarDocListProjectsParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute limit + # + # @return [Integer, nil] + optional :limit, Integer + + # @!method initialize(limit: nil, request_options: {}) + # @param limit [Integer] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end +end diff --git a/lib/scalar_api_ruby/models/scalar_doc_list_projects_response.rb b/lib/scalar_api_ruby/models/scalar_doc_list_projects_response.rb new file mode 100644 index 0000000..618b392 --- /dev/null +++ b/lib/scalar_api_ruby/models/scalar_doc_list_projects_response.rb @@ -0,0 +1,22 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::ScalarDocs#list_projects + class ScalarDocListProjectsResponse < Scalar::Internal::Type::BaseModel + # @!attribute data + # + # @return [Array] + required :data, -> { Scalar::Internal::Type::ArrayOf[Scalar::DocsProject] } + + # @!attribute has_more + # + # @return [Boolean] + required :has_more, Scalar::Internal::Type::Boolean, api_name: :hasMore + + # @!method initialize(data:, has_more:) + # @param data [Array] + # @param has_more [Boolean] + end + end +end diff --git a/lib/scalar-api-ruby/models/scalar_doc_publish_guide_params.rb b/lib/scalar_api_ruby/models/scalar_doc_publish_guide_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/scalar_doc_publish_guide_params.rb rename to lib/scalar_api_ruby/models/scalar_doc_publish_guide_params.rb diff --git a/lib/scalar-api-ruby/models/scalar_doc_publish_guide_response.rb b/lib/scalar_api_ruby/models/scalar_doc_publish_guide_response.rb similarity index 100% rename from lib/scalar-api-ruby/models/scalar_doc_publish_guide_response.rb rename to lib/scalar_api_ruby/models/scalar_doc_publish_guide_response.rb diff --git a/lib/scalar_api_ruby/models/scalar_doc_publish_project_params.rb b/lib/scalar_api_ruby/models/scalar_doc_publish_project_params.rb new file mode 100644 index 0000000..c08c1fa --- /dev/null +++ b/lib/scalar_api_ruby/models/scalar_doc_publish_project_params.rb @@ -0,0 +1,38 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::ScalarDocs#publish_project + class ScalarDocPublishProjectParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute slug + # + # @return [String] + required :slug, String + + # @!attribute commit_sha + # + # @return [String, nil] + optional :commit_sha, String, api_name: :commitSha + + # @!attribute config_path + # + # @return [String, nil] + optional :config_path, String, api_name: :configPath + + # @!attribute preview + # + # @return [Boolean, nil] + optional :preview, Scalar::Internal::Type::Boolean + + # @!method initialize(slug:, commit_sha: nil, config_path: nil, preview: nil, request_options: {}) + # @param slug [String] + # @param commit_sha [String] + # @param config_path [String] + # @param preview [Boolean] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end +end diff --git a/lib/scalar_api_ruby/models/scalar_doc_publish_project_response.rb b/lib/scalar_api_ruby/models/scalar_doc_publish_project_response.rb new file mode 100644 index 0000000..4e96553 --- /dev/null +++ b/lib/scalar_api_ruby/models/scalar_doc_publish_project_response.rb @@ -0,0 +1,16 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::ScalarDocs#publish_project + class ScalarDocPublishProjectResponse < Scalar::Internal::Type::BaseModel + # @!attribute publish_uid + # + # @return [String] + required :publish_uid, String, api_name: :publishUid + + # @!method initialize(publish_uid:) + # @param publish_uid [String] + end + end +end diff --git a/lib/scalar_api_ruby/models/scalar_doc_retrieve_project_params.rb b/lib/scalar_api_ruby/models/scalar_doc_retrieve_project_params.rb new file mode 100644 index 0000000..4d9cc3e --- /dev/null +++ b/lib/scalar_api_ruby/models/scalar_doc_retrieve_project_params.rb @@ -0,0 +1,20 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::ScalarDocs#retrieve_project + class ScalarDocRetrieveProjectParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute slug + # + # @return [String] + required :slug, String + + # @!method initialize(slug:, request_options: {}) + # @param slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end +end diff --git a/lib/scalar_api_ruby/models/scalar_doc_update_project_config_params.rb b/lib/scalar_api_ruby/models/scalar_doc_update_project_config_params.rb new file mode 100644 index 0000000..7245562 --- /dev/null +++ b/lib/scalar_api_ruby/models/scalar_doc_update_project_config_params.rb @@ -0,0 +1,50 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::ScalarDocs#update_project_config + class ScalarDocUpdateProjectConfigParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute slug + # + # @return [String] + required :slug, String + + # @!attribute content + # + # @return [String] + required :content, String + + # @!attribute base_token + # + # @return [String, nil] + optional :base_token, String, api_name: :baseToken + + # @!attribute message + # + # @return [String, nil] + optional :message, String + + # @!attribute path + # + # @return [String, nil] + optional :path, String + + # @!attribute ref + # + # @return [String, nil] + optional :ref, String + + # @!method initialize(slug:, content:, base_token: nil, message: nil, path: nil, ref: nil, request_options: {}) + # @param slug [String] + # @param content [String] + # @param base_token [String] + # @param message [String] + # @param path [String] + # @param ref [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end +end diff --git a/lib/scalar_api_ruby/models/scalar_doc_update_project_config_response.rb b/lib/scalar_api_ruby/models/scalar_doc_update_project_config_response.rb new file mode 100644 index 0000000..7f52c25 --- /dev/null +++ b/lib/scalar_api_ruby/models/scalar_doc_update_project_config_response.rb @@ -0,0 +1,28 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::ScalarDocs#update_project_config + class ScalarDocUpdateProjectConfigResponse < Scalar::Internal::Type::BaseModel + # @!attribute base_token + # + # @return [String] + required :base_token, String, api_name: :baseToken + + # @!attribute commit_sha + # + # @return [String, nil] + required :commit_sha, String, api_name: :commitSha, nil?: true + + # @!attribute ref + # + # @return [String] + required :ref, String + + # @!method initialize(base_token:, commit_sha:, ref:) + # @param base_token [String] + # @param commit_sha [String, nil] + # @param ref [String] + end + end +end diff --git a/lib/scalar_api_ruby/models/scalar_doc_update_project_params.rb b/lib/scalar_api_ruby/models/scalar_doc_update_project_params.rb new file mode 100644 index 0000000..143d889 --- /dev/null +++ b/lib/scalar_api_ruby/models/scalar_doc_update_project_params.rb @@ -0,0 +1,75 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::ScalarDocs#update_project + class ScalarDocUpdateProjectParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute slug + # + # @return [String] + required :slug, String + + # @!attribute access_groups + # + # @return [Array, nil] + optional :access_groups, Scalar::Internal::Type::ArrayOf[String], api_name: :accessGroups + + # @!attribute active_theme_id + # + # @return [String, nil] + optional :active_theme_id, String, api_name: :activeThemeId + + # @!attribute agent_enabled + # + # @return [Boolean, nil] + optional :agent_enabled, Scalar::Internal::Type::Boolean, api_name: :agentEnabled + + # @!attribute analytics_enabled + # + # @return [Boolean, nil] + optional :analytics_enabled, Scalar::Internal::Type::Boolean, api_name: :analyticsEnabled + + # @!attribute is_private + # + # @return [Boolean, nil] + optional :is_private, Scalar::Internal::Type::Boolean, api_name: :isPrivate + + # @!attribute login_portal_uid + # + # @return [String, Symbol, nil] + optional :login_portal_uid, + union: -> { Scalar::ScalarDocUpdateProjectParams::LoginPortalUID }, + api_name: :loginPortalUid + + # @!attribute name + # + # @return [String, nil] + optional :name, String + + # @!method initialize(slug:, access_groups: nil, active_theme_id: nil, agent_enabled: nil, analytics_enabled: nil, is_private: nil, login_portal_uid: nil, name: nil, request_options: {}) + # @param slug [String] + # @param access_groups [Array] + # @param active_theme_id [String] + # @param agent_enabled [Boolean] + # @param analytics_enabled [Boolean] + # @param is_private [Boolean] + # @param login_portal_uid [String, Symbol] + # @param name [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + + module LoginPortalUID + extend Scalar::Internal::Type::Union + + variant String + + variant const: :"" + + # @!method self.variants + # @return [Array(String, Symbol)] + end + end + end +end diff --git a/lib/scalar-api-ruby/models/registry_list_all_api_documents_response.rb b/lib/scalar_api_ruby/models/schema.rb similarity index 58% rename from lib/scalar-api-ruby/models/registry_list_all_api_documents_response.rb rename to lib/scalar_api_ruby/models/schema.rb index 35a0bf9..3de5b32 100644 --- a/lib/scalar-api-ruby/models/registry_list_all_api_documents_response.rb +++ b/lib/scalar_api_ruby/models/schema.rb @@ -2,7 +2,7 @@ module Scalar module Models - class RegistryListAllAPIDocumentsResponseItem < Scalar::Internal::Type::BaseModel + class Schema < Scalar::Internal::Type::BaseModel # @!attribute description # # @return [String] @@ -23,11 +23,6 @@ class RegistryListAllAPIDocumentsResponseItem < Scalar::Internal::Type::BaseMode # @return [String] required :slug, String - # @!attribute tags - # - # @return [Object] - required :tags, Scalar::Internal::Type::Unknown - # @!attribute title # # @return [String] @@ -38,30 +33,19 @@ class RegistryListAllAPIDocumentsResponseItem < Scalar::Internal::Type::BaseMode # @return [String] required :uid, String - # @!attribute version - # - # @return [String] - required :version, String - # @!attribute versions # - # @return [Array] - required :versions, -> { Scalar::Internal::Type::ArrayOf[Scalar::ManagedDocVersion] } + # @return [Array] + required :versions, -> { Scalar::Internal::Type::ArrayOf[Scalar::ManagedSchemaVersion] } - # @!method initialize(description:, is_private:, namespace:, slug:, tags:, title:, uid:, version:, versions:) + # @!method initialize(description:, is_private:, namespace:, slug:, title:, uid:, versions:) # @param description [String] # @param is_private [Boolean] # @param namespace [String] # @param slug [String] - # @param tags [Object] # @param title [String] # @param uid [String] - # @param version [String] - # @param versions [Array] + # @param versions [Array] end - - # @type [Scalar::Internal::Type::Converter] - RegistryListAllAPIDocumentsResponse = - Scalar::Internal::Type::ArrayOf[-> { Scalar::Models::RegistryListAllAPIDocumentsResponseItem }] end end diff --git a/lib/scalar-api-ruby/models/schema_create_params.rb b/lib/scalar_api_ruby/models/schema_create_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/schema_create_params.rb rename to lib/scalar_api_ruby/models/schema_create_params.rb diff --git a/lib/scalar-api-ruby/models/schema_delete_params.rb b/lib/scalar_api_ruby/models/schema_delete_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/schema_delete_params.rb rename to lib/scalar_api_ruby/models/schema_delete_params.rb diff --git a/lib/scalar-api-ruby/models/schema_list_params.rb b/lib/scalar_api_ruby/models/schema_list_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/schema_list_params.rb rename to lib/scalar_api_ruby/models/schema_list_params.rb diff --git a/lib/scalar_api_ruby/models/schema_list_response.rb b/lib/scalar_api_ruby/models/schema_list_response.rb new file mode 100644 index 0000000..d9b010b --- /dev/null +++ b/lib/scalar_api_ruby/models/schema_list_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @type [Scalar::Internal::Type::Converter] + SchemaListResponse = Scalar::Internal::Type::ArrayOf[-> { Scalar::Schema }] + end +end diff --git a/lib/scalar-api-ruby/models/schema_update_params.rb b/lib/scalar_api_ruby/models/schema_update_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/schema_update_params.rb rename to lib/scalar_api_ruby/models/schema_update_params.rb diff --git a/lib/scalar-api-ruby/models/schemas/access_group_create_params.rb b/lib/scalar_api_ruby/models/schemas/access_group_create_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/schemas/access_group_create_params.rb rename to lib/scalar_api_ruby/models/schemas/access_group_create_params.rb diff --git a/lib/scalar-api-ruby/models/schemas/access_group_delete_params.rb b/lib/scalar_api_ruby/models/schemas/access_group_delete_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/schemas/access_group_delete_params.rb rename to lib/scalar_api_ruby/models/schemas/access_group_delete_params.rb diff --git a/lib/scalar-api-ruby/models/schemas/version_create_params.rb b/lib/scalar_api_ruby/models/schemas/version_create_params.rb similarity index 83% rename from lib/scalar-api-ruby/models/schemas/version_create_params.rb rename to lib/scalar_api_ruby/models/schemas/version_create_params.rb index 95d1186..8c1c6b1 100644 --- a/lib/scalar-api-ruby/models/schemas/version_create_params.rb +++ b/lib/scalar_api_ruby/models/schemas/version_create_params.rb @@ -28,11 +28,17 @@ class VersionCreateParams < Scalar::Internal::Type::BaseModel # @return [String] required :version, String - # @!method initialize(namespace:, slug:, document:, version:, request_options: {}) + # @!attribute force + # + # @return [Boolean, nil] + optional :force, Scalar::Internal::Type::Boolean + + # @!method initialize(namespace:, slug:, document:, version:, force: nil, request_options: {}) # @param namespace [String] # @param slug [String] # @param document [String] # @param version [String] + # @param force [Boolean] # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/scalar_api_ruby/models/schemas/version_create_response.rb b/lib/scalar_api_ruby/models/schemas/version_create_response.rb new file mode 100644 index 0000000..6b16912 --- /dev/null +++ b/lib/scalar_api_ruby/models/schemas/version_create_response.rb @@ -0,0 +1,18 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Schemas + # @see Scalar::Resources::Schemas::Version#create + class VersionCreateResponse < Scalar::Internal::Type::BaseModel + # @!attribute uid + # + # @return [String] + required :uid, String + + # @!method initialize(uid:) + # @param uid [String] + end + end + end +end diff --git a/lib/scalar-api-ruby/models/schemas/version_delete_params.rb b/lib/scalar_api_ruby/models/schemas/version_delete_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/schemas/version_delete_params.rb rename to lib/scalar_api_ruby/models/schemas/version_delete_params.rb diff --git a/lib/scalar-api-ruby/models/schemas/version_retrieve_params.rb b/lib/scalar_api_ruby/models/schemas/version_retrieve_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/schemas/version_retrieve_params.rb rename to lib/scalar_api_ruby/models/schemas/version_retrieve_params.rb diff --git a/lib/scalar-api-ruby/models/schemas/version_retrieve_response.rb b/lib/scalar_api_ruby/models/schemas/version_retrieve_response.rb similarity index 100% rename from lib/scalar-api-ruby/models/schemas/version_retrieve_response.rb rename to lib/scalar_api_ruby/models/schemas/version_retrieve_response.rb diff --git a/lib/scalar_api_ruby/models/sdk.rb b/lib/scalar_api_ruby/models/sdk.rb new file mode 100644 index 0000000..0bb45f2 --- /dev/null +++ b/lib/scalar_api_ruby/models/sdk.rb @@ -0,0 +1,76 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::Sdks#retrieve + class Sdk < Scalar::Internal::Type::BaseModel + # @!attribute api_uid + # + # @return [String, nil] + required :api_uid, String, api_name: :apiUid, nil?: true + + # @!attribute current_version + # + # @return [String] + required :current_version, String, api_name: :currentVersion + + # @!attribute description + # + # @return [String] + required :description, String + + # @!attribute is_private + # + # @return [Boolean] + required :is_private, Scalar::Internal::Type::Boolean, api_name: :isPrivate + + # @!attribute namespace + # + # @return [String] + required :namespace, String + + # @!attribute slug + # + # @return [String] + required :slug, String + + # @!attribute targets + # + # @return [Array] + required :targets, -> { Scalar::Internal::Type::ArrayOf[Scalar::SdkTargetSummary] } + + # @!attribute title + # + # @return [String] + required :title, String + + # @!attribute uid + # + # @return [String] + required :uid, String + + # @!attribute versions + # + # @return [Array] + required :versions, -> { Scalar::Internal::Type::ArrayOf[Scalar::SdkVersion] } + + # @!attribute api_version + # + # @return [String, nil] + optional :api_version, String, api_name: :apiVersion, nil?: true + + # @!method initialize(api_uid:, current_version:, description:, is_private:, namespace:, slug:, targets:, title:, uid:, versions:, api_version: nil) + # @param api_uid [String, nil] + # @param current_version [String] + # @param description [String] + # @param is_private [Boolean] + # @param namespace [String] + # @param slug [String] + # @param targets [Array] + # @param title [String] + # @param uid [String] + # @param versions [Array] + # @param api_version [String, nil] + end + end +end diff --git a/lib/scalar_api_ruby/models/sdk_build_params.rb b/lib/scalar_api_ruby/models/sdk_build_params.rb new file mode 100644 index 0000000..75c32d8 --- /dev/null +++ b/lib/scalar_api_ruby/models/sdk_build_params.rb @@ -0,0 +1,53 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::Sdks#build + class SdkBuildParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute uid + # + # @return [String] + required :uid, String + + # @!attribute languages + # + # @return [Array, nil] + optional :languages, -> { Scalar::Internal::Type::ArrayOf[enum: Scalar::SdkBuildParams::Language] } + + # @!attribute version + # + # @return [String, nil] + optional :version, String + + # @!method initialize(uid:, languages: nil, version: nil, request_options: {}) + # @param uid [String] + # @param languages [Array] + # @param version [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + + module Language + extend Scalar::Internal::Type::Enum + + TYPESCRIPT = :typescript + PYTHON = :python + CLI = :cli + CSHARP = :csharp + JAVA = :java + RUBY = :ruby + PHP = :php + GO = :go + RUST = :rust + KOTLIN = :kotlin + SWIFT = :swift + CPP = :cpp + DART = :dart + + # @!method self.values + # @return [Array] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/sdk_build_response.rb b/lib/scalar_api_ruby/models/sdk_build_response.rb new file mode 100644 index 0000000..8cebb70 --- /dev/null +++ b/lib/scalar_api_ruby/models/sdk_build_response.rb @@ -0,0 +1,16 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::Sdks#build + class SdkBuildResponse < Scalar::Internal::Type::BaseModel + # @!attribute version + # + # @return [String] + required :version, String + + # @!method initialize(version:) + # @param version [String] + end + end +end diff --git a/lib/scalar_api_ruby/models/sdk_create_params.rb b/lib/scalar_api_ruby/models/sdk_create_params.rb new file mode 100644 index 0000000..9716bc8 --- /dev/null +++ b/lib/scalar_api_ruby/models/sdk_create_params.rb @@ -0,0 +1,71 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::Sdks#create + class SdkCreateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute api_uid + # + # @return [String] + required :api_uid, String, api_name: :apiUid + + # @!attribute languages + # + # @return [Array] + required :languages, -> { Scalar::Internal::Type::ArrayOf[enum: Scalar::SdkCreateParams::Language] } + + # @!attribute class_name + # + # @return [String, nil] + optional :class_name, String, api_name: :className + + # @!attribute config + # + # @return [String, nil] + optional :config, String + + # @!attribute slug + # + # @return [String, nil] + optional :slug, String + + # @!attribute title + # + # @return [String, nil] + optional :title, String + + # @!method initialize(api_uid:, languages:, class_name: nil, config: nil, slug: nil, title: nil, request_options: {}) + # @param api_uid [String] + # @param languages [Array] + # @param class_name [String] + # @param config [String] + # @param slug [String] + # @param title [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + + module Language + extend Scalar::Internal::Type::Enum + + TYPESCRIPT = :typescript + PYTHON = :python + CLI = :cli + CSHARP = :csharp + JAVA = :java + RUBY = :ruby + PHP = :php + GO = :go + RUST = :rust + KOTLIN = :kotlin + SWIFT = :swift + CPP = :cpp + DART = :dart + + # @!method self.values + # @return [Array] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/sdk_delete_params.rb b/lib/scalar_api_ruby/models/sdk_delete_params.rb new file mode 100644 index 0000000..337a68c --- /dev/null +++ b/lib/scalar_api_ruby/models/sdk_delete_params.rb @@ -0,0 +1,20 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::Sdks#delete + class SdkDeleteParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute uid + # + # @return [String] + required :uid, String + + # @!method initialize(uid:, request_options: {}) + # @param uid [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end +end diff --git a/lib/scalar_api_ruby/models/sdk_list_params.rb b/lib/scalar_api_ruby/models/sdk_list_params.rb new file mode 100644 index 0000000..cd00698 --- /dev/null +++ b/lib/scalar_api_ruby/models/sdk_list_params.rb @@ -0,0 +1,20 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::Sdks#list + class SdkListParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute limit + # + # @return [Integer, nil] + optional :limit, Integer + + # @!method initialize(limit: nil, request_options: {}) + # @param limit [Integer] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end +end diff --git a/lib/scalar_api_ruby/models/sdk_list_response.rb b/lib/scalar_api_ruby/models/sdk_list_response.rb new file mode 100644 index 0000000..70da49c --- /dev/null +++ b/lib/scalar_api_ruby/models/sdk_list_response.rb @@ -0,0 +1,22 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::Sdks#list + class SdkListResponse < Scalar::Internal::Type::BaseModel + # @!attribute data + # + # @return [Array] + required :data, -> { Scalar::Internal::Type::ArrayOf[Scalar::Sdk] } + + # @!attribute has_more + # + # @return [Boolean] + required :has_more, Scalar::Internal::Type::Boolean, api_name: :hasMore + + # @!method initialize(data:, has_more:) + # @param data [Array] + # @param has_more [Boolean] + end + end +end diff --git a/lib/scalar_api_ruby/models/sdk_retrieve_params.rb b/lib/scalar_api_ruby/models/sdk_retrieve_params.rb new file mode 100644 index 0000000..29faa11 --- /dev/null +++ b/lib/scalar_api_ruby/models/sdk_retrieve_params.rb @@ -0,0 +1,20 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::Sdks#retrieve + class SdkRetrieveParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute uid + # + # @return [String] + required :uid, String + + # @!method initialize(uid:, request_options: {}) + # @param uid [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end +end diff --git a/lib/scalar_api_ruby/models/sdk_target_summary.rb b/lib/scalar_api_ruby/models/sdk_target_summary.rb new file mode 100644 index 0000000..3298f29 --- /dev/null +++ b/lib/scalar_api_ruby/models/sdk_target_summary.rb @@ -0,0 +1,43 @@ +# frozen_string_literal: true + +module Scalar + module Models + class SdkTargetSummary < Scalar::Internal::Type::BaseModel + # @!attribute language + # + # @return [Symbol, Scalar::Models::SdkTargetSummary::Language] + required :language, enum: -> { Scalar::SdkTargetSummary::Language } + + # @!attribute slug + # + # @return [String] + required :slug, String + + # @!method initialize(language:, slug:) + # @param language [Symbol, Scalar::Models::SdkTargetSummary::Language] + # @param slug [String] + + # @see Scalar::Models::SdkTargetSummary#language + module Language + extend Scalar::Internal::Type::Enum + + TYPESCRIPT = :typescript + PYTHON = :python + CLI = :cli + CSHARP = :csharp + JAVA = :java + RUBY = :ruby + PHP = :php + GO = :go + RUST = :rust + KOTLIN = :kotlin + SWIFT = :swift + CPP = :cpp + DART = :dart + + # @!method self.values + # @return [Array] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/sdk_update_params.rb b/lib/scalar_api_ruby/models/sdk_update_params.rb new file mode 100644 index 0000000..46365d6 --- /dev/null +++ b/lib/scalar_api_ruby/models/sdk_update_params.rb @@ -0,0 +1,56 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @see Scalar::Resources::Sdks#update + class SdkUpdateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute uid + # + # @return [String] + required :uid, String + + # @!attribute api_uid + # + # @return [String, nil] + optional :api_uid, String, api_name: :apiUid, nil?: true + + # @!attribute api_version + # + # @return [String, nil] + optional :api_version, String, api_name: :apiVersion, nil?: true + + # @!attribute config + # + # @return [String, nil] + optional :config, String + + # @!attribute is_private + # + # @return [Boolean, nil] + optional :is_private, Scalar::Internal::Type::Boolean, api_name: :isPrivate + + # @!attribute slug + # + # @return [String, nil] + optional :slug, String + + # @!attribute title + # + # @return [String, nil] + optional :title, String + + # @!method initialize(uid:, api_uid: nil, api_version: nil, config: nil, is_private: nil, slug: nil, title: nil, request_options: {}) + # @param uid [String] + # @param api_uid [String, nil] + # @param api_version [String, nil] + # @param config [String] + # @param is_private [Boolean] + # @param slug [String] + # @param title [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end +end diff --git a/lib/scalar_api_ruby/models/sdk_version.rb b/lib/scalar_api_ruby/models/sdk_version.rb new file mode 100644 index 0000000..6e26650 --- /dev/null +++ b/lib/scalar_api_ruby/models/sdk_version.rb @@ -0,0 +1,77 @@ +# frozen_string_literal: true + +module Scalar + module Models + class SdkVersion < Scalar::Internal::Type::BaseModel + # @!attribute api_version + # + # @return [String] + required :api_version, String, api_name: :apiVersion + + # @!attribute languages + # + # @return [Array] + required :languages, -> { Scalar::Internal::Type::ArrayOf[enum: Scalar::SdkVersion::Language] } + + # @!attribute status + # + # @return [Symbol, Scalar::Models::SdkVersion::Status] + required :status, enum: -> { Scalar::SdkVersion::Status } + + # @!attribute version + # + # @return [String] + required :version, String + + # @!attribute created_at + # + # @return [Integer, nil] + optional :created_at, Integer, api_name: :createdAt + + # @!attribute published_at + # + # @return [Integer, nil] + optional :published_at, Integer, api_name: :publishedAt + + # @!method initialize(api_version:, languages:, status:, version:, created_at: nil, published_at: nil) + # @param api_version [String] + # @param languages [Array] + # @param status [Symbol, Scalar::Models::SdkVersion::Status] + # @param version [String] + # @param created_at [Integer] + # @param published_at [Integer] + + module Language + extend Scalar::Internal::Type::Enum + + TYPESCRIPT = :typescript + PYTHON = :python + CLI = :cli + CSHARP = :csharp + JAVA = :java + RUBY = :ruby + PHP = :php + GO = :go + RUST = :rust + KOTLIN = :kotlin + SWIFT = :swift + CPP = :cpp + DART = :dart + + # @!method self.values + # @return [Array] + end + + # @see Scalar::Models::SdkVersion#status + module Status + extend Scalar::Internal::Type::Enum + + DRAFT = :draft + PUBLISHED = :published + + # @!method self.values + # @return [Array] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/sdks/repository_link_params.rb b/lib/scalar_api_ruby/models/sdks/repository_link_params.rb new file mode 100644 index 0000000..1e4706e --- /dev/null +++ b/lib/scalar_api_ruby/models/sdks/repository_link_params.rb @@ -0,0 +1,67 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Sdks + # @see Scalar::Resources::Sdks::Repositories#link + class RepositoryLinkParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute uid + # + # @return [String] + required :uid, String + + # @!attribute base_branch + # + # @return [String] + required :base_branch, String, api_name: :baseBranch + + # @!attribute language + # + # @return [Symbol, Scalar::Models::Sdks::RepositoryLinkParams::Language] + required :language, enum: -> { Scalar::Sdks::RepositoryLinkParams::Language } + + # @!attribute repository_id + # + # @return [Integer] + required :repository_id, Integer, api_name: :repositoryId + + # @!attribute prerelease_type + # + # @return [String, nil] + optional :prerelease_type, String, api_name: :prereleaseType + + # @!method initialize(uid:, base_branch:, language:, repository_id:, prerelease_type: nil, request_options: {}) + # @param uid [String] + # @param base_branch [String] + # @param language [Symbol, Scalar::Models::Sdks::RepositoryLinkParams::Language] + # @param repository_id [Integer] + # @param prerelease_type [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + + module Language + extend Scalar::Internal::Type::Enum + + TYPESCRIPT = :typescript + PYTHON = :python + CLI = :cli + CSHARP = :csharp + JAVA = :java + RUBY = :ruby + PHP = :php + GO = :go + RUST = :rust + KOTLIN = :kotlin + SWIFT = :swift + CPP = :cpp + DART = :dart + + # @!method self.values + # @return [Array] + end + end + end + end +end diff --git a/lib/scalar_api_ruby/models/sdks/repository_link_response.rb b/lib/scalar_api_ruby/models/sdks/repository_link_response.rb new file mode 100644 index 0000000..4aff2fe --- /dev/null +++ b/lib/scalar_api_ruby/models/sdks/repository_link_response.rb @@ -0,0 +1,24 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Sdks + # @see Scalar::Resources::Sdks::Repositories#link + class RepositoryLinkResponse < Scalar::Internal::Type::BaseModel + # @!attribute branch + # + # @return [String] + required :branch, String + + # @!attribute repo + # + # @return [String] + required :repo, String + + # @!method initialize(branch:, repo:) + # @param branch [String] + # @param repo [String] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/sdks/repository_unlink_params.rb b/lib/scalar_api_ruby/models/sdks/repository_unlink_params.rb new file mode 100644 index 0000000..5e5d379 --- /dev/null +++ b/lib/scalar_api_ruby/models/sdks/repository_unlink_params.rb @@ -0,0 +1,49 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Sdks + # @see Scalar::Resources::Sdks::Repositories#unlink + class RepositoryUnlinkParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute uid + # + # @return [String] + required :uid, String + + # @!attribute language + # + # @return [Symbol, Scalar::Models::Sdks::RepositoryUnlinkParams::Language] + required :language, enum: -> { Scalar::Sdks::RepositoryUnlinkParams::Language } + + # @!method initialize(uid:, language:, request_options: {}) + # @param uid [String] + # @param language [Symbol, Scalar::Models::Sdks::RepositoryUnlinkParams::Language] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + + module Language + extend Scalar::Internal::Type::Enum + + TYPESCRIPT = :typescript + PYTHON = :python + CLI = :cli + CSHARP = :csharp + JAVA = :java + RUBY = :ruby + PHP = :php + GO = :go + RUST = :rust + KOTLIN = :kotlin + SWIFT = :swift + CPP = :cpp + DART = :dart + + # @!method self.values + # @return [Array] + end + end + end + end +end diff --git a/lib/scalar_api_ruby/models/sdks/repository_update_publishing_params.rb b/lib/scalar_api_ruby/models/sdks/repository_update_publishing_params.rb new file mode 100644 index 0000000..76233e5 --- /dev/null +++ b/lib/scalar_api_ruby/models/sdks/repository_update_publishing_params.rb @@ -0,0 +1,95 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Sdks + # @see Scalar::Resources::Sdks::Repositories#update_publishing + class RepositoryUpdatePublishingParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute uid + # + # @return [String] + required :uid, String + + # @!attribute language + # + # @return [Symbol, Scalar::Models::Sdks::RepositoryUpdatePublishingParams::Language] + required :language, enum: -> { Scalar::Sdks::RepositoryUpdatePublishingParams::Language } + + # @!attribute publish_on_merge + # + # @return [Boolean] + required :publish_on_merge, Scalar::Internal::Type::Boolean, api_name: :publishOnMerge + + # @!attribute access + # + # @return [Symbol, Scalar::Models::Sdks::RepositoryUpdatePublishingParams::Access, nil] + optional :access, enum: -> { Scalar::Sdks::RepositoryUpdatePublishingParams::Access } + + # @!attribute auth_method + # + # @return [Symbol, Scalar::Models::Sdks::RepositoryUpdatePublishingParams::AuthMethod, nil] + optional :auth_method, + enum: -> { Scalar::Sdks::RepositoryUpdatePublishingParams::AuthMethod }, + api_name: :authMethod + + # @!attribute tag + # + # @return [String, nil] + optional :tag, String + + # @!method initialize(uid:, language:, publish_on_merge:, access: nil, auth_method: nil, tag: nil, request_options: {}) + # @param uid [String] + # @param language [Symbol, Scalar::Models::Sdks::RepositoryUpdatePublishingParams::Language] + # @param publish_on_merge [Boolean] + # @param access [Symbol, Scalar::Models::Sdks::RepositoryUpdatePublishingParams::Access] + # @param auth_method [Symbol, Scalar::Models::Sdks::RepositoryUpdatePublishingParams::AuthMethod] + # @param tag [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + + module Language + extend Scalar::Internal::Type::Enum + + TYPESCRIPT = :typescript + PYTHON = :python + CLI = :cli + CSHARP = :csharp + JAVA = :java + RUBY = :ruby + PHP = :php + GO = :go + RUST = :rust + KOTLIN = :kotlin + SWIFT = :swift + CPP = :cpp + DART = :dart + + # @!method self.values + # @return [Array] + end + + module Access + extend Scalar::Internal::Type::Enum + + PUBLIC = :public + RESTRICTED = :restricted + + # @!method self.values + # @return [Array] + end + + module AuthMethod + extend Scalar::Internal::Type::Enum + + OIDC = :oidc + ACCESS_TOKEN = :"access-token" + + # @!method self.values + # @return [Array] + end + end + end + end +end diff --git a/lib/scalar_api_ruby/models/sdks/version_create_params.rb b/lib/scalar_api_ruby/models/sdks/version_create_params.rb new file mode 100644 index 0000000..4b13959 --- /dev/null +++ b/lib/scalar_api_ruby/models/sdks/version_create_params.rb @@ -0,0 +1,34 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Sdks + # @see Scalar::Resources::Sdks::Versions#create + class VersionCreateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute uid + # + # @return [String] + required :uid, String + + # @!attribute api_version + # + # @return [String] + required :api_version, String, api_name: :apiVersion + + # @!attribute version + # + # @return [String] + required :version, String + + # @!method initialize(uid:, api_version:, version:, request_options: {}) + # @param uid [String] + # @param api_version [String] + # @param version [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/sdks/version_delete_params.rb b/lib/scalar_api_ruby/models/sdks/version_delete_params.rb new file mode 100644 index 0000000..99ecf7d --- /dev/null +++ b/lib/scalar_api_ruby/models/sdks/version_delete_params.rb @@ -0,0 +1,28 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Sdks + # @see Scalar::Resources::Sdks::Versions#delete + class VersionDeleteParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute uid + # + # @return [String] + required :uid, String + + # @!attribute version + # + # @return [String] + required :version, String + + # @!method initialize(uid:, version:, request_options: {}) + # @param uid [String] + # @param version [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end + end +end diff --git a/lib/scalar-api-ruby/models/slug.rb b/lib/scalar_api_ruby/models/slug.rb similarity index 100% rename from lib/scalar-api-ruby/models/slug.rb rename to lib/scalar_api_ruby/models/slug.rb diff --git a/lib/scalar-api-ruby/models/team_list_response.rb b/lib/scalar_api_ruby/models/team.rb similarity index 78% rename from lib/scalar-api-ruby/models/team_list_response.rb rename to lib/scalar_api_ruby/models/team.rb index dc4f248..bb498f8 100644 --- a/lib/scalar-api-ruby/models/team_list_response.rb +++ b/lib/scalar_api_ruby/models/team.rb @@ -2,7 +2,7 @@ module Scalar module Models - class TeamListResponseItem < Scalar::Internal::Type::BaseModel + class Team < Scalar::Internal::Type::BaseModel # @!attribute name # # @return [String] @@ -35,8 +35,5 @@ class TeamListResponseItem < Scalar::Internal::Type::BaseModel # @param uid [String] # @param image_uri [String] end - - # @type [Scalar::Internal::Type::Converter] - TeamListResponse = Scalar::Internal::Type::ArrayOf[-> { Scalar::Models::TeamListResponseItem }] end end diff --git a/lib/scalar_api_ruby/models/team_image.rb b/lib/scalar_api_ruby/models/team_image.rb new file mode 100644 index 0000000..af1f564 --- /dev/null +++ b/lib/scalar_api_ruby/models/team_image.rb @@ -0,0 +1,7 @@ +# frozen_string_literal: true + +module Scalar + module Models + TeamImage = String + end +end diff --git a/lib/scalar-api-ruby/models/team_list_params.rb b/lib/scalar_api_ruby/models/team_list_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/team_list_params.rb rename to lib/scalar_api_ruby/models/team_list_params.rb diff --git a/lib/scalar_api_ruby/models/team_list_response.rb b/lib/scalar_api_ruby/models/team_list_response.rb new file mode 100644 index 0000000..3e8ea64 --- /dev/null +++ b/lib/scalar_api_ruby/models/team_list_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @type [Scalar::Internal::Type::Converter] + TeamListResponse = Scalar::Internal::Type::ArrayOf[-> { Scalar::Team }] + end +end diff --git a/lib/scalar_api_ruby/models/team_name.rb b/lib/scalar_api_ruby/models/team_name.rb new file mode 100644 index 0000000..22c944e --- /dev/null +++ b/lib/scalar_api_ruby/models/team_name.rb @@ -0,0 +1,7 @@ +# frozen_string_literal: true + +module Scalar + module Models + TeamName = String + end +end diff --git a/lib/scalar_api_ruby/models/team_summary.rb b/lib/scalar_api_ruby/models/team_summary.rb new file mode 100644 index 0000000..64fd9f7 --- /dev/null +++ b/lib/scalar_api_ruby/models/team_summary.rb @@ -0,0 +1,27 @@ +# frozen_string_literal: true + +module Scalar + module Models + class TeamSummary < Scalar::Internal::Type::BaseModel + # @!attribute name + # + # @return [String] + required :name, String + + # @!attribute uid + # + # @return [String] + required :uid, String + + # @!attribute image_uri + # + # @return [String, nil] + optional :image_uri, String, api_name: :imageUri + + # @!method initialize(name:, uid:, image_uri: nil) + # @param name [String] + # @param uid [String] + # @param image_uri [String] + end + end +end diff --git a/lib/scalar_api_ruby/models/teams/email.rb b/lib/scalar_api_ruby/models/teams/email.rb new file mode 100644 index 0000000..afe627e --- /dev/null +++ b/lib/scalar_api_ruby/models/teams/email.rb @@ -0,0 +1,9 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Teams + Email = String + end + end +end diff --git a/lib/scalar_api_ruby/models/teams/invite_cancel_params.rb b/lib/scalar_api_ruby/models/teams/invite_cancel_params.rb new file mode 100644 index 0000000..04ed78c --- /dev/null +++ b/lib/scalar_api_ruby/models/teams/invite_cancel_params.rb @@ -0,0 +1,22 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Teams + # @see Scalar::Resources::Teams::Invites#cancel + class InviteCancelParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute uid + # + # @return [String] + required :uid, String + + # @!method initialize(uid:, request_options: {}) + # @param uid [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/teams/invite_member_params.rb b/lib/scalar_api_ruby/models/teams/invite_member_params.rb new file mode 100644 index 0000000..9415618 --- /dev/null +++ b/lib/scalar_api_ruby/models/teams/invite_member_params.rb @@ -0,0 +1,28 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Teams + # @see Scalar::Resources::Teams::Invites#member + class InviteMemberParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute email + # + # @return [String] + required :email, String + + # @!attribute role + # + # @return [Symbol, Scalar::Models::Teams::Role] + required :role, enum: -> { Scalar::Teams::Role } + + # @!method initialize(email:, role:, request_options: {}) + # @param email [String] + # @param role [Symbol, Scalar::Models::Teams::Role] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/teams/invite_resend_params.rb b/lib/scalar_api_ruby/models/teams/invite_resend_params.rb new file mode 100644 index 0000000..f431600 --- /dev/null +++ b/lib/scalar_api_ruby/models/teams/invite_resend_params.rb @@ -0,0 +1,22 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Teams + # @see Scalar::Resources::Teams::Invites#resend + class InviteResendParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute uid + # + # @return [String] + required :uid, String + + # @!method initialize(uid:, request_options: {}) + # @param uid [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/teams/member_delete_params.rb b/lib/scalar_api_ruby/models/teams/member_delete_params.rb new file mode 100644 index 0000000..a181630 --- /dev/null +++ b/lib/scalar_api_ruby/models/teams/member_delete_params.rb @@ -0,0 +1,22 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Teams + # @see Scalar::Resources::Teams::Members#delete + class MemberDeleteParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute uid + # + # @return [String] + required :uid, String + + # @!method initialize(uid:, request_options: {}) + # @param uid [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/teams/member_list_params.rb b/lib/scalar_api_ruby/models/teams/member_list_params.rb new file mode 100644 index 0000000..5495ef1 --- /dev/null +++ b/lib/scalar_api_ruby/models/teams/member_list_params.rb @@ -0,0 +1,16 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Teams + # @see Scalar::Resources::Teams::Members#list + class MemberListParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!method initialize(request_options: {}) + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/teams/member_list_response.rb b/lib/scalar_api_ruby/models/teams/member_list_response.rb new file mode 100644 index 0000000..cecca5d --- /dev/null +++ b/lib/scalar_api_ruby/models/teams/member_list_response.rb @@ -0,0 +1,26 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Teams + # @see Scalar::Resources::Teams::Members#list + class MemberListResponse < Scalar::Internal::Type::BaseModel + # @!attribute members + # + # @return [Array] + required :members, -> { Scalar::Internal::Type::ArrayOf[Scalar::Teams::TeamMember] } + + # @!attribute pending_invites + # + # @return [Array] + required :pending_invites, + -> { Scalar::Internal::Type::ArrayOf[Scalar::Teams::TeamInvite] }, + api_name: :pendingInvites + + # @!method initialize(members:, pending_invites:) + # @param members [Array] + # @param pending_invites [Array] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/teams/member_update_params.rb b/lib/scalar_api_ruby/models/teams/member_update_params.rb new file mode 100644 index 0000000..c89076c --- /dev/null +++ b/lib/scalar_api_ruby/models/teams/member_update_params.rb @@ -0,0 +1,28 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Teams + # @see Scalar::Resources::Teams::Members#update + class MemberUpdateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + # @!attribute uid + # + # @return [String] + required :uid, String + + # @!attribute role + # + # @return [Symbol, Scalar::Models::Teams::Role] + required :role, enum: -> { Scalar::Teams::Role } + + # @!method initialize(uid:, role:, request_options: {}) + # @param uid [String] + # @param role [Symbol, Scalar::Models::Teams::Role] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/teams/role.rb b/lib/scalar_api_ruby/models/teams/role.rb new file mode 100644 index 0000000..efd1f5f --- /dev/null +++ b/lib/scalar_api_ruby/models/teams/role.rb @@ -0,0 +1,19 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Teams + module Role + extend Scalar::Internal::Type::Enum + + OWNER = :owner + ADMIN = :admin + EDITOR = :editor + VIEWER = :viewer + + # @!method self.values + # @return [Array] + end + end + end +end diff --git a/lib/scalar_api_ruby/models/teams/team_invite.rb b/lib/scalar_api_ruby/models/teams/team_invite.rb new file mode 100644 index 0000000..d541188 --- /dev/null +++ b/lib/scalar_api_ruby/models/teams/team_invite.rb @@ -0,0 +1,37 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Teams + class TeamInvite < Scalar::Internal::Type::BaseModel + # @!attribute email + # + # @return [String] + required :email, String + + # @!attribute role + # + # @return [Symbol, Scalar::Models::Teams::Role] + required :role, enum: -> { Scalar::Teams::Role } + + # @!attribute uid + # + # @return [String] + required :uid, String + + # @!attribute expires + # + # @return [Float, nil] + optional :expires, Float + + # @!method initialize(email:, role:, uid:, expires: nil) + # @param email [String] + # @param role [Symbol, Scalar::Models::Teams::Role] + # @param uid [String] + # @param expires [Float] + end + end + + TeamInvite = Teams::TeamInvite + end +end diff --git a/lib/scalar_api_ruby/models/teams/team_member.rb b/lib/scalar_api_ruby/models/teams/team_member.rb new file mode 100644 index 0000000..d0ce545 --- /dev/null +++ b/lib/scalar_api_ruby/models/teams/team_member.rb @@ -0,0 +1,37 @@ +# frozen_string_literal: true + +module Scalar + module Models + module Teams + class TeamMember < Scalar::Internal::Type::BaseModel + # @!attribute display_name + # + # @return [String] + required :display_name, String, api_name: :displayName + + # @!attribute role + # + # @return [Symbol, Scalar::Models::Teams::Role] + required :role, enum: -> { Scalar::Teams::Role } + + # @!attribute uid + # + # @return [String] + required :uid, String + + # @!attribute image_uri + # + # @return [String, nil] + optional :image_uri, String, api_name: :imageUri + + # @!method initialize(display_name:, role:, uid:, image_uri: nil) + # @param display_name [String] + # @param role [Symbol, Scalar::Models::Teams::Role] + # @param uid [String] + # @param image_uri [String] + end + end + + TeamMember = Teams::TeamMember + end +end diff --git a/lib/scalar-api-ruby/models/theme_list_response.rb b/lib/scalar_api_ruby/models/theme.rb similarity index 74% rename from lib/scalar-api-ruby/models/theme_list_response.rb rename to lib/scalar_api_ruby/models/theme.rb index 7010530..acd6a9b 100644 --- a/lib/scalar-api-ruby/models/theme_list_response.rb +++ b/lib/scalar_api_ruby/models/theme.rb @@ -2,7 +2,7 @@ module Scalar module Models - class ThemeListResponseItem < Scalar::Internal::Type::BaseModel + class Theme < Scalar::Internal::Type::BaseModel # @!attribute description # # @return [String] @@ -29,8 +29,5 @@ class ThemeListResponseItem < Scalar::Internal::Type::BaseModel # @param slug [String] # @param uid [String] end - - # @type [Scalar::Internal::Type::Converter] - ThemeListResponse = Scalar::Internal::Type::ArrayOf[-> { Scalar::Models::ThemeListResponseItem }] end end diff --git a/lib/scalar-api-ruby/models/theme_create_params.rb b/lib/scalar_api_ruby/models/theme_create_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/theme_create_params.rb rename to lib/scalar_api_ruby/models/theme_create_params.rb diff --git a/lib/scalar-api-ruby/models/theme_delete_params.rb b/lib/scalar_api_ruby/models/theme_delete_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/theme_delete_params.rb rename to lib/scalar_api_ruby/models/theme_delete_params.rb diff --git a/lib/scalar-api-ruby/models/theme_list_params.rb b/lib/scalar_api_ruby/models/theme_list_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/theme_list_params.rb rename to lib/scalar_api_ruby/models/theme_list_params.rb diff --git a/lib/scalar_api_ruby/models/theme_list_response.rb b/lib/scalar_api_ruby/models/theme_list_response.rb new file mode 100644 index 0000000..cca1f31 --- /dev/null +++ b/lib/scalar_api_ruby/models/theme_list_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Scalar + module Models + # @type [Scalar::Internal::Type::Converter] + ThemeListResponse = Scalar::Internal::Type::ArrayOf[-> { Scalar::Theme }] + end +end diff --git a/lib/scalar-api-ruby/models/theme_replace_document_params.rb b/lib/scalar_api_ruby/models/theme_replace_document_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/theme_replace_document_params.rb rename to lib/scalar_api_ruby/models/theme_replace_document_params.rb diff --git a/lib/scalar-api-ruby/models/theme_retrieve_params.rb b/lib/scalar_api_ruby/models/theme_retrieve_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/theme_retrieve_params.rb rename to lib/scalar_api_ruby/models/theme_retrieve_params.rb diff --git a/lib/scalar-api-ruby/models/theme_retrieve_response.rb b/lib/scalar_api_ruby/models/theme_retrieve_response.rb similarity index 100% rename from lib/scalar-api-ruby/models/theme_retrieve_response.rb rename to lib/scalar_api_ruby/models/theme_retrieve_response.rb diff --git a/lib/scalar-api-ruby/models/theme_update_params.rb b/lib/scalar_api_ruby/models/theme_update_params.rb similarity index 100% rename from lib/scalar-api-ruby/models/theme_update_params.rb rename to lib/scalar_api_ruby/models/theme_update_params.rb diff --git a/lib/scalar-api-ruby/models/timestamp.rb b/lib/scalar_api_ruby/models/timestamp.rb similarity index 100% rename from lib/scalar-api-ruby/models/timestamp.rb rename to lib/scalar_api_ruby/models/timestamp.rb diff --git a/lib/scalar-api-ruby/models/uid.rb b/lib/scalar_api_ruby/models/uid.rb similarity index 100% rename from lib/scalar-api-ruby/models/uid.rb rename to lib/scalar_api_ruby/models/uid.rb diff --git a/lib/scalar-api-ruby/models/authentication_list_current_user_response.rb b/lib/scalar_api_ruby/models/user.rb similarity index 58% rename from lib/scalar-api-ruby/models/authentication_list_current_user_response.rb rename to lib/scalar_api_ruby/models/user.rb index 82568ff..0db7400 100644 --- a/lib/scalar-api-ruby/models/authentication_list_current_user_response.rb +++ b/lib/scalar_api_ruby/models/user.rb @@ -3,7 +3,7 @@ module Scalar module Models # @see Scalar::Resources::Authentication#list_current_user - class AuthenticationListCurrentUserResponse < Scalar::Internal::Type::BaseModel + class User < Scalar::Internal::Type::BaseModel # @!attribute active_team_id # # @return [String, nil] @@ -26,11 +26,8 @@ class AuthenticationListCurrentUserResponse < Scalar::Internal::Type::BaseModel # @!attribute teams # - # @return [Array] - required :teams, - -> do - Scalar::Internal::Type::ArrayOf[Scalar::Models::AuthenticationListCurrentUserResponse::Team] - end + # @return [Array] + required :teams, -> { Scalar::Internal::Type::ArrayOf[Scalar::TeamSummary] } # @!attribute uid # @@ -52,32 +49,10 @@ class AuthenticationListCurrentUserResponse < Scalar::Internal::Type::BaseModel # @param created_at [Integer] # @param email [String] # @param has_github [Boolean] - # @param teams [Array] + # @param teams [Array] # @param uid [String] # @param updated_at [Integer] # @param theme [String] - - class Team < Scalar::Internal::Type::BaseModel - # @!attribute name - # - # @return [String] - required :name, String - - # @!attribute uid - # - # @return [String] - required :uid, String - - # @!attribute image_uri - # - # @return [String, nil] - optional :image_uri, String, api_name: :imageUri - - # @!method initialize(name:, uid:, image_uri: nil) - # @param name [String] - # @param uid [String] - # @param image_uri [String] - end end end end diff --git a/lib/scalar-api-ruby/models/version.rb b/lib/scalar_api_ruby/models/version.rb similarity index 100% rename from lib/scalar-api-ruby/models/version.rb rename to lib/scalar_api_ruby/models/version.rb diff --git a/lib/scalar-api-ruby/request_options.rb b/lib/scalar_api_ruby/request_options.rb similarity index 100% rename from lib/scalar-api-ruby/request_options.rb rename to lib/scalar_api_ruby/request_options.rb diff --git a/lib/scalar_api_ruby/resources/access_groups.rb b/lib/scalar_api_ruby/resources/access_groups.rb new file mode 100644 index 0000000..3883f58 --- /dev/null +++ b/lib/scalar_api_ruby/resources/access_groups.rb @@ -0,0 +1,108 @@ +# frozen_string_literal: true + +module Scalar + module Resources + # Access Groups + class AccessGroups + # Access Groups + # @return [Scalar::Resources::AccessGroups::Domains] + attr_reader :domains + + # Create a group for the current team. Requires docs edit permission and the + # access groups billing feature. Domains are exact email domains, without + # wildcards or implicit subdomain matching. + # + # @overload create(allowed_domains: nil, name: nil, slug: nil, request_options: {}) + # + # @param allowed_domains [String] + # @param name [String] + # @param slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Scalar::Models::AccessGroupCreateResponse] + # + # @see Scalar::Models::AccessGroupCreateParams + def create(params = {}) + parsed, options = Scalar::AccessGroupCreateParams.dump_request(params) + @client.request( + method: :post, + path: "v1/access-groups", + body: parsed, + model: Scalar::Models::AccessGroupCreateResponse, + options: options + ) + end + + # Get a group and its email and domain allowlists by slug. + # + # @overload retrieve(slug, request_options: {}) + # + # @param slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Scalar::Models::AccessGroupRetrieveResponse] + # + # @see Scalar::Models::AccessGroupRetrieveParams + def retrieve(slug, params = {}) + @client.request( + method: :get, + path: ["v1/access-groups/%1$s", slug], + model: Scalar::Models::AccessGroupRetrieveResponse, + options: params[:request_options] + ) + end + + # Update group metadata. Requires docs edit permission. After changing the slug, + # use the new slug in subsequent requests. + # + # @overload update(path_slug, name: nil, body_slug: nil, request_options: {}) + # + # @param path_slug [String] + # @param name [String] + # @param body_slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Object] + # + # @see Scalar::Models::AccessGroupUpdateParams + def update(path_slug, params = {}) + parsed, options = Scalar::AccessGroupUpdateParams.dump_request(params) + @client.request( + method: :patch, + path: ["v1/access-groups/%1$s", path_slug], + body: parsed, + model: Scalar::Internal::Type::Unknown, + options: options + ) + end + + # Delete a group and remove its project assignments. Requires docs edit + # permission. + # + # @overload delete(slug, request_options: {}) + # + # @param slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Object] + # + # @see Scalar::Models::AccessGroupDeleteParams + def delete(slug, params = {}) + @client.request( + method: :delete, + path: ["v1/access-groups/%1$s", slug], + model: Scalar::Internal::Type::Unknown, + options: params[:request_options] + ) + end + + # @api private + # + # @param client [Scalar::Client] + def initialize(client:) + @client = client + @domains = Scalar::Resources::AccessGroups::Domains.new(client: client) + end + end + end +end diff --git a/lib/scalar_api_ruby/resources/access_groups/domains.rb b/lib/scalar_api_ruby/resources/access_groups/domains.rb new file mode 100644 index 0000000..7a36bf4 --- /dev/null +++ b/lib/scalar_api_ruby/resources/access_groups/domains.rb @@ -0,0 +1,63 @@ +# frozen_string_literal: true + +module Scalar + module Resources + class AccessGroups + # Access Groups + class Domains + # Allow an exact email domain in a group. Requires docs edit permission. A group + # supports up to 1000 domains. + # + # @overload create(slug, domain:, request_options: {}) + # + # @param slug [String] + # @param domain [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Object] + # + # @see Scalar::Models::AccessGroups::DomainCreateParams + def create(slug, params) + parsed, options = Scalar::AccessGroups::DomainCreateParams.dump_request(params) + @client.request( + method: :post, + path: ["v1/access-groups/%1$s/domains", slug], + body: parsed, + model: Scalar::Internal::Type::Unknown, + options: options + ) + end + + # Remove an exact email domain from a group. Requires docs edit permission. Other + # allowed domains and emails are preserved. + # + # @overload delete(slug, domain:, request_options: {}) + # + # @param slug [String] + # @param domain [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Object] + # + # @see Scalar::Models::AccessGroups::DomainDeleteParams + def delete(slug, params) + parsed, options = Scalar::AccessGroups::DomainDeleteParams.dump_request(params) + @client.request( + method: :delete, + path: ["v1/access-groups/%1$s/domains", slug], + body: parsed, + model: Scalar::Internal::Type::Unknown, + options: options + ) + end + + # @api private + # + # @param client [Scalar::Client] + def initialize(client:) + @client = client + end + end + end + end +end diff --git a/lib/scalar-api-ruby/resources/authentication.rb b/lib/scalar_api_ruby/resources/authentication.rb similarity index 91% rename from lib/scalar-api-ruby/resources/authentication.rb rename to lib/scalar_api_ruby/resources/authentication.rb index f2c8887..d21d9ae 100644 --- a/lib/scalar-api-ruby/resources/authentication.rb +++ b/lib/scalar_api_ruby/resources/authentication.rb @@ -31,14 +31,14 @@ def exchange_personal_token(params) # # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [Scalar::Models::AuthenticationListCurrentUserResponse] + # @return [Scalar::Models::User] # # @see Scalar::Models::AuthenticationListCurrentUserParams def list_current_user(params = {}) @client.request( method: :get, path: "v1/auth/me", - model: Scalar::Models::AuthenticationListCurrentUserResponse, + model: Scalar::User, options: params[:request_options] ) end diff --git a/lib/scalar-api-ruby/resources/login_portals.rb b/lib/scalar_api_ruby/resources/login_portals.rb similarity index 95% rename from lib/scalar-api-ruby/resources/login_portals.rb rename to lib/scalar_api_ruby/resources/login_portals.rb index 600a71f..f6327f7 100644 --- a/lib/scalar-api-ruby/resources/login_portals.rb +++ b/lib/scalar_api_ruby/resources/login_portals.rb @@ -75,14 +75,14 @@ def update(slug, params = {}) # # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [Array] + # @return [Array] # # @see Scalar::Models::LoginPortalListParams def list(params = {}) @client.request( method: :get, path: "v1/login-portals", - model: Scalar::Internal::Type::ArrayOf[Scalar::Models::LoginPortalListResponseItem], + model: Scalar::Internal::Type::ArrayOf[Scalar::LoginPortal], options: params[:request_options] ) end diff --git a/lib/scalar_api_ruby/resources/mcp.rb b/lib/scalar_api_ruby/resources/mcp.rb new file mode 100644 index 0000000..3e3a7bb --- /dev/null +++ b/lib/scalar_api_ruby/resources/mcp.rb @@ -0,0 +1,19 @@ +# frozen_string_literal: true + +module Scalar + module Resources + class Mcp + # MCP + # @return [Scalar::Resources::Mcp::Servers] + attr_reader :servers + + # @api private + # + # @param client [Scalar::Client] + def initialize(client:) + @client = client + @servers = Scalar::Resources::Mcp::Servers.new(client: client) + end + end + end +end diff --git a/lib/scalar_api_ruby/resources/mcp/servers.rb b/lib/scalar_api_ruby/resources/mcp/servers.rb new file mode 100644 index 0000000..27fa3c7 --- /dev/null +++ b/lib/scalar_api_ruby/resources/mcp/servers.rb @@ -0,0 +1,129 @@ +# frozen_string_literal: true + +module Scalar + module Resources + class Mcp + # MCP + class Servers + # MCP + # @return [Scalar::Resources::Mcp::Servers::Installations] + attr_reader :installations + + # Create an MCP server over one or more API document versions. The response + # carries the server and its first installation. + # + # @overload create(name:, project_uids: nil, slug: nil, version_uids: nil, request_options: {}) + # + # @param name [String] + # @param project_uids [Array] + # @param slug [String] + # @param version_uids [Array] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Scalar::Models::Mcp::ServerCreateResponse] + # + # @see Scalar::Models::Mcp::ServerCreateParams + def create(params) + parsed, options = Scalar::Mcp::ServerCreateParams.dump_request(params) + @client.request( + method: :post, + path: "v1/mcp/servers", + body: parsed, + model: Scalar::Models::Mcp::ServerCreateResponse, + options: options + ) + end + + # Get a single MCP server by its id. + # + # @overload retrieve(id, request_options: {}) + # + # @param id [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Scalar::Models::Mcp::McpServer] + # + # @see Scalar::Models::Mcp::ServerRetrieveParams + def retrieve(id, params = {}) + @client.request( + method: :get, + path: ["v1/mcp/servers/%1$s", id], + model: Scalar::Mcp::McpServer, + options: params[:request_options] + ) + end + + # Update MCP server metadata and which tools it exposes. + # + # @overload update(id, auto_add_operations: nil, docs_pages: nil, name: nil, operations: nil, slug: nil, request_options: {}) + # + # @param id [String] + # @param auto_add_operations [Boolean] + # @param docs_pages [Array] + # @param name [String] + # @param operations [Array] + # @param slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Scalar::Models::Mcp::McpServer] + # + # @see Scalar::Models::Mcp::ServerUpdateParams + def update(id, params = {}) + parsed, options = Scalar::Mcp::ServerUpdateParams.dump_request(params) + @client.request( + method: :patch, + path: ["v1/mcp/servers/%1$s", id], + body: parsed, + model: Scalar::Mcp::McpServer, + options: options + ) + end + + # List every MCP server on the team. + # + # @overload list(request_options: {}) + # + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Array] + # + # @see Scalar::Models::Mcp::ServerListParams + def list(params = {}) + @client.request( + method: :get, + path: "v1/mcp/servers", + model: Scalar::Internal::Type::ArrayOf[Scalar::Mcp::McpServer], + options: params[:request_options] + ) + end + + # Delete an MCP server and every installation it serves. + # + # @overload delete(id, request_options: {}) + # + # @param id [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Object] + # + # @see Scalar::Models::Mcp::ServerDeleteParams + def delete(id, params = {}) + @client.request( + method: :delete, + path: ["v1/mcp/servers/%1$s", id], + model: Scalar::Internal::Type::Unknown, + options: params[:request_options] + ) + end + + # @api private + # + # @param client [Scalar::Client] + def initialize(client:) + @client = client + @installations = Scalar::Resources::Mcp::Servers::Installations.new(client: client) + end + end + end + end +end diff --git a/lib/scalar_api_ruby/resources/mcp/servers/installations.rb b/lib/scalar_api_ruby/resources/mcp/servers/installations.rb new file mode 100644 index 0000000..208eca9 --- /dev/null +++ b/lib/scalar_api_ruby/resources/mcp/servers/installations.rb @@ -0,0 +1,200 @@ +# frozen_string_literal: true + +module Scalar + module Resources + class Mcp + class Servers + # MCP + class Installations + # Create an installation of an MCP server. `documentAuth` holds the credentials + # the server presents to the upstream API and is never returned. + # + # @overload create(id, document_auth:, name:, slug: nil, request_options: {}) + # + # @param id [String] + # @param document_auth [Hash{Symbol=>Object}] + # @param name [String] + # @param slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Scalar::Models::Mcp::McpInstallation] + # + # @see Scalar::Models::Mcp::Servers::InstallationCreateParams + def create(id, params) + parsed, options = Scalar::Mcp::Servers::InstallationCreateParams.dump_request(params) + @client.request( + method: :post, + path: ["v1/mcp/servers/%1$s/installations", id], + body: parsed, + model: Scalar::Mcp::McpInstallation, + options: options + ) + end + + # Get a single installation of an MCP server. + # + # @overload retrieve(installation_id, id:, request_options: {}) + # + # @param installation_id [String] + # @param id [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Scalar::Models::Mcp::McpInstallation] + # + # @see Scalar::Models::Mcp::Servers::InstallationRetrieveParams + def retrieve(installation_id, params) + parsed, options = Scalar::Mcp::Servers::InstallationRetrieveParams.dump_request(params) + id = parsed.delete(:id) { raise ArgumentError.new("missing required path argument #{_1}") } + @client.request( + method: :get, + path: ["v1/mcp/servers/%1$s/installations/%2$s", id, installation_id], + model: Scalar::Mcp::McpInstallation, + options: options + ) + end + + # Update an installation. Set `isPrivate` and add access groups to put it behind a + # login. + # + # @overload update(installation_id, id:, document_auth: nil, is_private: nil, login_portal_uid: nil, mcp_version: nil, name: nil, slug: nil, request_options: {}) + # + # @param installation_id [String] Path param + # + # @param id [String] Path param + # + # @param document_auth [Hash{Symbol=>Object}] Body param + # + # @param is_private [Boolean] Body param + # + # @param login_portal_uid [String, nil] Body param + # + # @param mcp_version [String, nil] Body param + # + # @param name [String] Body param + # + # @param slug [String] Body param + # + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Scalar::Models::Mcp::McpInstallation] + # + # @see Scalar::Models::Mcp::Servers::InstallationUpdateParams + def update(installation_id, params) + parsed, options = Scalar::Mcp::Servers::InstallationUpdateParams.dump_request(params) + id = parsed.delete(:id) { raise ArgumentError.new("missing required path argument #{_1}") } + @client.request( + method: :patch, + path: ["v1/mcp/servers/%1$s/installations/%2$s", id, installation_id], + body: parsed, + model: Scalar::Mcp::McpInstallation, + options: options + ) + end + + # List the installations of an MCP server. An installation is what an MCP client + # connects to. + # + # @overload list(id, request_options: {}) + # + # @param id [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Array] + # + # @see Scalar::Models::Mcp::Servers::InstallationListParams + def list(id, params = {}) + @client.request( + method: :get, + path: ["v1/mcp/servers/%1$s/installations", id], + model: Scalar::Internal::Type::ArrayOf[Scalar::Mcp::Servers::McpInstallationListItem], + options: params[:request_options] + ) + end + + # Delete an installation of an MCP server. + # + # @overload delete(installation_id, id:, request_options: {}) + # + # @param installation_id [String] + # @param id [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Object] + # + # @see Scalar::Models::Mcp::Servers::InstallationDeleteParams + def delete(installation_id, params) + parsed, options = Scalar::Mcp::Servers::InstallationDeleteParams.dump_request(params) + id = parsed.delete(:id) { raise ArgumentError.new("missing required path argument #{_1}") } + @client.request( + method: :delete, + path: ["v1/mcp/servers/%1$s/installations/%2$s", id, installation_id], + model: Scalar::Internal::Type::Unknown, + options: options + ) + end + + # Let an access group reach a private installation. + # + # @overload create_access_group(installation_id, id:, access_group_uid:, request_options: {}) + # + # @param installation_id [String] Path param + # + # @param id [String] Path param + # + # @param access_group_uid [String] Body param + # + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Object] + # + # @see Scalar::Models::Mcp::Servers::InstallationCreateAccessGroupParams + def create_access_group(installation_id, params) + parsed, options = Scalar::Mcp::Servers::InstallationCreateAccessGroupParams.dump_request(params) + id = parsed.delete(:id) { raise ArgumentError.new("missing required path argument #{_1}") } + @client.request( + method: :post, + path: ["v1/mcp/servers/%1$s/installations/%2$s/access-group", id, installation_id], + body: parsed, + model: Scalar::Internal::Type::Unknown, + options: options + ) + end + + # Stop an access group reaching a private installation. + # + # @overload delete_access_group(installation_id, id:, access_group_uid:, request_options: {}) + # + # @param installation_id [String] Path param + # + # @param id [String] Path param + # + # @param access_group_uid [String] Body param + # + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Object] + # + # @see Scalar::Models::Mcp::Servers::InstallationDeleteAccessGroupParams + def delete_access_group(installation_id, params) + parsed, options = Scalar::Mcp::Servers::InstallationDeleteAccessGroupParams.dump_request(params) + id = parsed.delete(:id) { raise ArgumentError.new("missing required path argument #{_1}") } + @client.request( + method: :delete, + path: ["v1/mcp/servers/%1$s/installations/%2$s/access-group", id, installation_id], + body: parsed, + model: Scalar::Internal::Type::Unknown, + options: options + ) + end + + # @api private + # + # @param client [Scalar::Client] + def initialize(client:) + @client = client + end + end + end + end + end +end diff --git a/lib/scalar-api-ruby/resources/namespaces.rb b/lib/scalar_api_ruby/resources/namespaces.rb similarity index 100% rename from lib/scalar-api-ruby/resources/namespaces.rb rename to lib/scalar_api_ruby/resources/namespaces.rb diff --git a/lib/scalar-api-ruby/resources/registry.rb b/lib/scalar_api_ruby/resources/registry.rb similarity index 94% rename from lib/scalar-api-ruby/resources/registry.rb rename to lib/scalar_api_ruby/resources/registry.rb index 2b6ae55..a630530 100644 --- a/lib/scalar-api-ruby/resources/registry.rb +++ b/lib/scalar_api_ruby/resources/registry.rb @@ -62,7 +62,7 @@ def create_api_document_access_group(slug, params) # Create a new API document version. # - # @overload create_api_document_version(slug, namespace:, document:, version:, force: nil, last_known_version_sha: nil, request_options: {}) + # @overload create_api_document_version(slug, namespace:, document:, version:, force: nil, request_options: {}) # # @param slug [String] Path param # @@ -74,8 +74,6 @@ def create_api_document_access_group(slug, params) # # @param force [Boolean] Body param # - # @param last_known_version_sha [String] Body param - # # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Scalar::Models::ManagedDocVersion] @@ -176,14 +174,14 @@ def delete_api_document_version(semver, params) # # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [Array] + # @return [Array] # # @see Scalar::Models::RegistryListAllAPIDocumentsParams def list_all_api_documents(params = {}) @client.request( method: :get, path: "v1/apis", - model: Scalar::Internal::Type::ArrayOf[Scalar::Models::RegistryListAllAPIDocumentsResponseItem], + model: Scalar::Internal::Type::ArrayOf[Scalar::APIDocument], options: params[:request_options] ) end @@ -221,14 +219,14 @@ def list_api_document_version_metadata(semver, params) # @param namespace [String] # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [Array] + # @return [Array] # # @see Scalar::Models::RegistryListAPIDocumentsParams def list_api_documents(namespace, params = {}) @client.request( method: :get, path: ["v1/apis/%1$s", namespace], - model: Scalar::Internal::Type::ArrayOf[Scalar::Models::RegistryListAPIDocumentsResponseItem], + model: Scalar::Internal::Type::ArrayOf[Scalar::APIDocument], options: params[:request_options] ) end @@ -297,7 +295,7 @@ def update_api_document(slug, params) # Update the registry file content for an API document version. # - # @overload update_api_document_version(semver, namespace:, slug:, document:, last_known_version_sha: nil, request_options: {}) + # @overload update_api_document_version(semver, namespace:, slug:, document:, request_options: {}) # # @param semver [String] Path param # @@ -307,8 +305,6 @@ def update_api_document(slug, params) # # @param document [String] Body param # - # @param last_known_version_sha [String] Body param - # # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Scalar::Models::RegistryUpdateAPIDocumentVersionResponse] diff --git a/lib/scalar-api-ruby/resources/rules.rb b/lib/scalar_api_ruby/resources/rules.rb similarity index 97% rename from lib/scalar-api-ruby/resources/rules.rb rename to lib/scalar_api_ruby/resources/rules.rb index 8efe193..6da660c 100644 --- a/lib/scalar-api-ruby/resources/rules.rb +++ b/lib/scalar_api_ruby/resources/rules.rb @@ -116,14 +116,14 @@ def delete_ruleset_access_group(slug, params) # @param namespace [String] # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [Array] + # @return [Array] # # @see Scalar::Models::RuleListRulesetsParams def list_rulesets(namespace, params = {}) @client.request( method: :get, path: ["v1/rulesets/%1$s", namespace], - model: Scalar::Internal::Type::ArrayOf[Scalar::Models::RuleListRulesetsResponseItem], + model: Scalar::Internal::Type::ArrayOf[Scalar::Rule], options: params[:request_options] ) end diff --git a/lib/scalar_api_ruby/resources/scalar_docs.rb b/lib/scalar_api_ruby/resources/scalar_docs.rb new file mode 100644 index 0000000..bc18f6a --- /dev/null +++ b/lib/scalar_api_ruby/resources/scalar_docs.rb @@ -0,0 +1,312 @@ +# frozen_string_literal: true + +module Scalar + module Resources + # Scalar Docs + class ScalarDocs + # Create a guide project. + # + # @overload create_guide(allowed_domains:, allowed_users:, is_private:, name:, slug: nil, request_options: {}) + # + # @param allowed_domains [Array] + # @param allowed_users [Array] + # @param is_private [Boolean] + # @param name [String] + # @param slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Scalar::Models::ScalarDocCreateGuideResponse] + # + # @see Scalar::Models::ScalarDocCreateGuideParams + def create_guide(params) + parsed, options = Scalar::ScalarDocCreateGuideParams.dump_request(params) + @client.request( + method: :post, + path: "v1/guides", + body: parsed, + model: Scalar::Models::ScalarDocCreateGuideResponse, + options: options + ) + end + + # Create a docs project. Omit `provider` to have Scalar host the repository. + # + # @overload create_project(name:, provider:, bitbucket_repository: nil, blank: nil, github_repository: nil, is_private: nil, slug: nil, request_options: {}) + # + # @param name [String] + # @param provider [Symbol, Scalar::Models::ScalarDocCreateProjectParams::Provider] + # @param bitbucket_repository [Scalar::Models::ScalarDocCreateProjectParams::BitbucketRepository] + # @param blank [Boolean] + # @param github_repository [Scalar::Models::ScalarDocCreateProjectParams::GithubRepository] + # @param is_private [Boolean] + # @param slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Scalar::Models::DocsProject] + # + # @see Scalar::Models::ScalarDocCreateProjectParams + def create_project(params) + parsed, options = Scalar::ScalarDocCreateProjectParams.dump_request(params) + @client.request( + method: :post, + path: "v1/docs", + body: parsed, + model: Scalar::DocsProject, + options: options + ) + end + + # Delete a docs project, its deploys, its publish records and its cached builds. + # + # @overload delete_project(slug, request_options: {}) + # + # @param slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Object] + # + # @see Scalar::Models::ScalarDocDeleteProjectParams + def delete_project(slug, params = {}) + @client.request( + method: :delete, + path: ["v1/docs/%1$s", slug], + model: Scalar::Internal::Type::Unknown, + options: params[:request_options] + ) + end + + # List all guide projects. + # + # @overload list_guides(request_options: {}) + # + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Array] + # + # @see Scalar::Models::ScalarDocListGuidesParams + def list_guides(params = {}) + @client.request( + method: :get, + path: "v1/guides", + model: Scalar::Internal::Type::ArrayOf[Scalar::GithubProject], + options: params[:request_options] + ) + end + + # Read `scalar.config.json` straight from the project repository, without cloning + # it. `baseToken` is the compare-and-swap handle for a later write. + # + # @overload list_project_config(slug, ref: nil, request_options: {}) + # + # @param slug [String] + # @param ref [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Scalar::Models::ScalarDocListProjectConfigResponse] + # + # @see Scalar::Models::ScalarDocListProjectConfigParams + def list_project_config(slug, params = {}) + parsed, options = Scalar::ScalarDocListProjectConfigParams.dump_request(params) + query = Scalar::Internal::Util.encode_query_params(parsed) + @client.request( + method: :get, + path: ["v1/docs/%1$s/config", slug], + query: query, + model: Scalar::Models::ScalarDocListProjectConfigResponse, + options: options + ) + end + + # The domains the project serves on — the Scalar-hosted one and the custom one, + # when set. + # + # @overload list_project_domain(slug, request_options: {}) + # + # @param slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Scalar::Models::ScalarDocListProjectDomainResponse] + # + # @see Scalar::Models::ScalarDocListProjectDomainParams + def list_project_domain(slug, params = {}) + @client.request( + method: :get, + path: ["v1/docs/%1$s/domain", slug], + model: Scalar::Models::ScalarDocListProjectDomainResponse, + options: params[:request_options] + ) + end + + # Whether the project custom domain points at Scalar yet. `expected` is the CNAME + # record to create; `found` is what resolves today. A project with no custom + # domain reports `verified` with no expected record, because Scalar serves its own + # subdomain directly. + # + # @overload list_project_domain_status(slug, request_options: {}) + # + # @param slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Scalar::Models::ScalarDocListProjectDomainStatusResponse] + # + # @see Scalar::Models::ScalarDocListProjectDomainStatusParams + def list_project_domain_status(slug, params = {}) + @client.request( + method: :get, + path: ["v1/docs/%1$s/domain/status", slug], + model: Scalar::Models::ScalarDocListProjectDomainStatusResponse, + options: params[:request_options] + ) + end + + # List every docs project on the team. + # + # @overload list_projects(limit: nil, request_options: {}) + # + # @param limit [Integer] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Scalar::Models::ScalarDocListProjectsResponse] + # + # @see Scalar::Models::ScalarDocListProjectsParams + def list_projects(params = {}) + parsed, options = Scalar::ScalarDocListProjectsParams.dump_request(params) + query = Scalar::Internal::Util.encode_query_params(parsed) + @client.request( + method: :get, + path: "v1/docs", + query: query, + model: Scalar::Models::ScalarDocListProjectsResponse, + options: options + ) + end + + # Start a new publish process. + # + # @overload publish_guide(slug, request_options: {}) + # + # @param slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Scalar::Models::ScalarDocPublishGuideResponse] + # + # @see Scalar::Models::ScalarDocPublishGuideParams + def publish_guide(slug, params = {}) + @client.request( + method: :post, + path: ["v1/guides/%1$s/publish", slug], + model: Scalar::Models::ScalarDocPublishGuideResponse, + options: params[:request_options] + ) + end + + # Start a build and deploy. The returned `publishUid` identifies the publish + # record. + # + # @overload publish_project(slug, commit_sha: nil, config_path: nil, preview: nil, request_options: {}) + # + # @param slug [String] + # @param commit_sha [String] + # @param config_path [String] + # @param preview [Boolean] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Scalar::Models::ScalarDocPublishProjectResponse] + # + # @see Scalar::Models::ScalarDocPublishProjectParams + def publish_project(slug, params = {}) + parsed, options = Scalar::ScalarDocPublishProjectParams.dump_request(params) + @client.request( + method: :post, + path: ["v1/docs/%1$s/publish", slug], + body: parsed, + model: Scalar::Models::ScalarDocPublishProjectResponse, + options: options + ) + end + + # Get a single docs project by its slug. + # + # @overload retrieve_project(slug, request_options: {}) + # + # @param slug [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Scalar::Models::DocsProject] + # + # @see Scalar::Models::ScalarDocRetrieveProjectParams + def retrieve_project(slug, params = {}) + @client.request( + method: :get, + path: ["v1/docs/%1$s", slug], + model: Scalar::DocsProject, + options: params[:request_options] + ) + end + + # Update project settings. Set `isPrivate` with `accessGroups` to put the site + # behind a login. + # + # @overload update_project(slug, access_groups: nil, active_theme_id: nil, agent_enabled: nil, analytics_enabled: nil, is_private: nil, login_portal_uid: nil, name: nil, request_options: {}) + # + # @param slug [String] + # @param access_groups [Array] + # @param active_theme_id [String] + # @param agent_enabled [Boolean] + # @param analytics_enabled [Boolean] + # @param is_private [Boolean] + # @param login_portal_uid [String, Symbol] + # @param name [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Object] + # + # @see Scalar::Models::ScalarDocUpdateProjectParams + def update_project(slug, params = {}) + parsed, options = Scalar::ScalarDocUpdateProjectParams.dump_request(params) + @client.request( + method: :patch, + path: ["v1/docs/%1$s", slug], + body: parsed, + model: Scalar::Internal::Type::Unknown, + options: options + ) + end + + # Commit `scalar.config.json` straight to the project repository. Pass the + # `baseToken` from the read this edit was based on; a conflict means the file + # moved underneath it. + # + # @overload update_project_config(slug, content:, base_token: nil, message: nil, path: nil, ref: nil, request_options: {}) + # + # @param slug [String] + # @param content [String] + # @param base_token [String] + # @param message [String] + # @param path [String] + # @param ref [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Scalar::Models::ScalarDocUpdateProjectConfigResponse] + # + # @see Scalar::Models::ScalarDocUpdateProjectConfigParams + def update_project_config(slug, params) + parsed, options = Scalar::ScalarDocUpdateProjectConfigParams.dump_request(params) + @client.request( + method: :put, + path: ["v1/docs/%1$s/config", slug], + body: parsed, + model: Scalar::Models::ScalarDocUpdateProjectConfigResponse, + options: options + ) + end + + # @api private + # + # @param client [Scalar::Client] + def initialize(client:) + @client = client + end + end + end +end diff --git a/lib/scalar-api-ruby/resources/schemas.rb b/lib/scalar_api_ruby/resources/schemas.rb similarity index 96% rename from lib/scalar-api-ruby/resources/schemas.rb rename to lib/scalar_api_ruby/resources/schemas.rb index 934c99c..6c90ccd 100644 --- a/lib/scalar-api-ruby/resources/schemas.rb +++ b/lib/scalar_api_ruby/resources/schemas.rb @@ -78,14 +78,14 @@ def update(slug, params) # @param namespace [String] # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [Array] + # @return [Array] # # @see Scalar::Models::SchemaListParams def list(namespace, params = {}) @client.request( method: :get, path: ["v1/schemas/%1$s", namespace], - model: Scalar::Internal::Type::ArrayOf[Scalar::Models::SchemaListResponseItem], + model: Scalar::Internal::Type::ArrayOf[Scalar::Schema], options: params[:request_options] ) end diff --git a/lib/scalar-api-ruby/resources/schemas/access_group.rb b/lib/scalar_api_ruby/resources/schemas/access_group.rb similarity index 100% rename from lib/scalar-api-ruby/resources/schemas/access_group.rb rename to lib/scalar_api_ruby/resources/schemas/access_group.rb diff --git a/lib/scalar-api-ruby/resources/schemas/version.rb b/lib/scalar_api_ruby/resources/schemas/version.rb similarity index 93% rename from lib/scalar-api-ruby/resources/schemas/version.rb rename to lib/scalar_api_ruby/resources/schemas/version.rb index 0839efc..a595c1e 100644 --- a/lib/scalar-api-ruby/resources/schemas/version.rb +++ b/lib/scalar_api_ruby/resources/schemas/version.rb @@ -7,7 +7,7 @@ class Schemas class Version # Create a schema version. # - # @overload create(slug, namespace:, document:, version:, request_options: {}) + # @overload create(slug, namespace:, document:, version:, force: nil, request_options: {}) # # @param slug [String] Path param # @@ -17,9 +17,11 @@ class Version # # @param version [String] Body param # + # @param force [Boolean] Body param + # # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [Scalar::Models::UID] + # @return [Scalar::Models::Schemas::VersionCreateResponse] # # @see Scalar::Models::Schemas::VersionCreateParams def create(slug, params) @@ -30,7 +32,7 @@ def create(slug, params) method: :post, path: ["v1/schemas/%1$s/%2$s/version", namespace, slug], body: parsed, - model: Scalar::UID, + model: Scalar::Models::Schemas::VersionCreateResponse, options: options ) end diff --git a/lib/scalar_api_ruby/resources/sdks.rb b/lib/scalar_api_ruby/resources/sdks.rb new file mode 100644 index 0000000..250b6b7 --- /dev/null +++ b/lib/scalar_api_ruby/resources/sdks.rb @@ -0,0 +1,156 @@ +# frozen_string_literal: true + +module Scalar + module Resources + # SDKs + class Sdks + # SDKs + # @return [Scalar::Resources::Sdks::Versions] + attr_reader :versions + + # SDKs + # @return [Scalar::Resources::Sdks::Repositories] + attr_reader :repositories + + # Create an SDK from an API document, targeting one or more languages. + # + # @overload create(api_uid:, languages:, class_name: nil, config: nil, slug: nil, title: nil, request_options: {}) + # + # @param api_uid [String] + # @param languages [Array] + # @param class_name [String] + # @param config [String] + # @param slug [String] + # @param title [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Scalar::Models::UID] + # + # @see Scalar::Models::SdkCreateParams + def create(params) + parsed, options = Scalar::SdkCreateParams.dump_request(params) + @client.request(method: :post, path: "v1/sdks", body: parsed, model: Scalar::UID, options: options) + end + + # Get a single SDK by its uid. + # + # @overload retrieve(uid, request_options: {}) + # + # @param uid [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Scalar::Models::Sdk] + # + # @see Scalar::Models::SdkRetrieveParams + def retrieve(uid, params = {}) + @client.request( + method: :get, + path: ["v1/sdks/%1$s", uid], + model: Scalar::Sdk, + options: params[:request_options] + ) + end + + # Update SDK metadata, its linked API, or its config. + # + # @overload update(uid, api_uid: nil, api_version: nil, config: nil, is_private: nil, slug: nil, title: nil, request_options: {}) + # + # @param uid [String] + # @param api_uid [String, nil] + # @param api_version [String, nil] + # @param config [String] + # @param is_private [Boolean] + # @param slug [String] + # @param title [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Object] + # + # @see Scalar::Models::SdkUpdateParams + def update(uid, params = {}) + parsed, options = Scalar::SdkUpdateParams.dump_request(params) + @client.request( + method: :patch, + path: ["v1/sdks/%1$s", uid], + body: parsed, + model: Scalar::Internal::Type::Unknown, + options: options + ) + end + + # List every SDK on the team. + # + # @overload list(limit: nil, request_options: {}) + # + # @param limit [Integer] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Scalar::Models::SdkListResponse] + # + # @see Scalar::Models::SdkListParams + def list(params = {}) + parsed, options = Scalar::SdkListParams.dump_request(params) + query = Scalar::Internal::Util.encode_query_params(parsed) + @client.request( + method: :get, + path: "v1/sdks", + query: query, + model: Scalar::Models::SdkListResponse, + options: options + ) + end + + # Delete an SDK and every version it holds. + # + # @overload delete(uid, request_options: {}) + # + # @param uid [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Object] + # + # @see Scalar::Models::SdkDeleteParams + def delete(uid, params = {}) + @client.request( + method: :delete, + path: ["v1/sdks/%1$s", uid], + model: Scalar::Internal::Type::Unknown, + options: params[:request_options] + ) + end + + # Start a build. Omit `version` to build the current work — the open draft, else + # the latest version — and the resolved version comes back in the response. + # + # @overload build(uid, languages: nil, version: nil, request_options: {}) + # + # @param uid [String] + # @param languages [Array] + # @param version [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Scalar::Models::SdkBuildResponse] + # + # @see Scalar::Models::SdkBuildParams + def build(uid, params = {}) + parsed, options = Scalar::SdkBuildParams.dump_request(params) + @client.request( + method: :post, + path: ["v1/sdks/%1$s/build", uid], + body: parsed, + model: Scalar::Models::SdkBuildResponse, + options: options + ) + end + + # @api private + # + # @param client [Scalar::Client] + def initialize(client:) + @client = client + @versions = Scalar::Resources::Sdks::Versions.new(client: client) + @repositories = Scalar::Resources::Sdks::Repositories.new(client: client) + end + end + end +end diff --git a/lib/scalar_api_ruby/resources/sdks/repositories.rb b/lib/scalar_api_ruby/resources/sdks/repositories.rb new file mode 100644 index 0000000..200a8f4 --- /dev/null +++ b/lib/scalar_api_ruby/resources/sdks/repositories.rb @@ -0,0 +1,97 @@ +# frozen_string_literal: true + +module Scalar + module Resources + class Sdks + # SDKs + class Repositories + # Link one language target to a GitHub repository, so builds sync there. + # + # @overload link(uid, base_branch:, language:, repository_id:, prerelease_type: nil, request_options: {}) + # + # @param uid [String] + # @param base_branch [String] + # @param language [Symbol, Scalar::Models::Sdks::RepositoryLinkParams::Language] + # @param repository_id [Integer] + # @param prerelease_type [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Scalar::Models::Sdks::RepositoryLinkResponse] + # + # @see Scalar::Models::Sdks::RepositoryLinkParams + def link(uid, params) + parsed, options = Scalar::Sdks::RepositoryLinkParams.dump_request(params) + @client.request( + method: :post, + path: ["v1/sdks/%1$s/repositories", uid], + body: parsed, + model: Scalar::Models::Sdks::RepositoryLinkResponse, + options: options + ) + end + + # Unlink one language target from its repository. + # + # @overload unlink(language, uid:, request_options: {}) + # + # @param language [Symbol, Scalar::Models::Sdks::RepositoryUnlinkParams::Language] + # @param uid [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Object] + # + # @see Scalar::Models::Sdks::RepositoryUnlinkParams + def unlink(language, params) + parsed, options = Scalar::Sdks::RepositoryUnlinkParams.dump_request(params) + uid = parsed.delete(:uid) { raise ArgumentError.new("missing required path argument #{_1}") } + @client.request( + method: :delete, + path: ["v1/sdks/%1$s/repositories/%2$s", uid, language], + model: Scalar::Internal::Type::Unknown, + options: options + ) + end + + # Toggle publish-on-merge and the release settings for a linked target. + # + # @overload update_publishing(language, uid:, publish_on_merge:, access: nil, auth_method: nil, tag: nil, request_options: {}) + # + # @param language [Symbol, Scalar::Models::Sdks::RepositoryUpdatePublishingParams::Language] Path param + # + # @param uid [String] Path param + # + # @param publish_on_merge [Boolean] Body param + # + # @param access [Symbol, Scalar::Models::Sdks::RepositoryUpdatePublishingParams::Access] Body param + # + # @param auth_method [Symbol, Scalar::Models::Sdks::RepositoryUpdatePublishingParams::AuthMethod] Body param + # + # @param tag [String] Body param + # + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Object] + # + # @see Scalar::Models::Sdks::RepositoryUpdatePublishingParams + def update_publishing(language, params) + parsed, options = Scalar::Sdks::RepositoryUpdatePublishingParams.dump_request(params) + uid = parsed.delete(:uid) { raise ArgumentError.new("missing required path argument #{_1}") } + @client.request( + method: :post, + path: ["v1/sdks/%1$s/repositories/%2$s/publishing", uid, language], + body: parsed, + model: Scalar::Internal::Type::Unknown, + options: options + ) + end + + # @api private + # + # @param client [Scalar::Client] + def initialize(client:) + @client = client + end + end + end + end +end diff --git a/lib/scalar_api_ruby/resources/sdks/versions.rb b/lib/scalar_api_ruby/resources/sdks/versions.rb new file mode 100644 index 0000000..c6a26f2 --- /dev/null +++ b/lib/scalar_api_ruby/resources/sdks/versions.rb @@ -0,0 +1,62 @@ +# frozen_string_literal: true + +module Scalar + module Resources + class Sdks + # SDKs + class Versions + # Create a new SDK version against a specific API version. + # + # @overload create(uid, api_version:, version:, request_options: {}) + # + # @param uid [String] + # @param api_version [String] + # @param version [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Object] + # + # @see Scalar::Models::Sdks::VersionCreateParams + def create(uid, params) + parsed, options = Scalar::Sdks::VersionCreateParams.dump_request(params) + @client.request( + method: :post, + path: ["v1/sdks/%1$s/versions", uid], + body: parsed, + model: Scalar::Internal::Type::Unknown, + options: options + ) + end + + # Permanently delete one version of an SDK. + # + # @overload delete(version, uid:, request_options: {}) + # + # @param version [String] + # @param uid [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Object] + # + # @see Scalar::Models::Sdks::VersionDeleteParams + def delete(version, params) + parsed, options = Scalar::Sdks::VersionDeleteParams.dump_request(params) + uid = parsed.delete(:uid) { raise ArgumentError.new("missing required path argument #{_1}") } + @client.request( + method: :delete, + path: ["v1/sdks/%1$s/versions/%2$s", uid, version], + model: Scalar::Internal::Type::Unknown, + options: options + ) + end + + # @api private + # + # @param client [Scalar::Client] + def initialize(client:) + @client = client + end + end + end + end +end diff --git a/lib/scalar-api-ruby/resources/teams.rb b/lib/scalar_api_ruby/resources/teams.rb similarity index 59% rename from lib/scalar-api-ruby/resources/teams.rb rename to lib/scalar_api_ruby/resources/teams.rb index e7e8b3c..683eb5b 100644 --- a/lib/scalar-api-ruby/resources/teams.rb +++ b/lib/scalar_api_ruby/resources/teams.rb @@ -4,20 +4,28 @@ module Scalar module Resources # Teams class Teams + # Teams + # @return [Scalar::Resources::Teams::Members] + attr_reader :members + + # Teams + # @return [Scalar::Resources::Teams::Invites] + attr_reader :invites + # List all available teams # # @overload list(request_options: {}) # # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [Array] + # @return [Array] # # @see Scalar::Models::TeamListParams def list(params = {}) @client.request( method: :get, path: "v1/teams", - model: Scalar::Internal::Type::ArrayOf[Scalar::Models::TeamListResponseItem], + model: Scalar::Internal::Type::ArrayOf[Scalar::Team], options: params[:request_options] ) end @@ -27,6 +35,8 @@ def list(params = {}) # @param client [Scalar::Client] def initialize(client:) @client = client + @members = Scalar::Resources::Teams::Members.new(client: client) + @invites = Scalar::Resources::Teams::Invites.new(client: client) end end end diff --git a/lib/scalar_api_ruby/resources/teams/invites.rb b/lib/scalar_api_ruby/resources/teams/invites.rb new file mode 100644 index 0000000..2c16746 --- /dev/null +++ b/lib/scalar_api_ruby/resources/teams/invites.rb @@ -0,0 +1,77 @@ +# frozen_string_literal: true + +module Scalar + module Resources + class Teams + # Teams + class Invites + # Withdraw an invite that has not been accepted. + # + # @overload cancel(uid, request_options: {}) + # + # @param uid [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Object] + # + # @see Scalar::Models::Teams::InviteCancelParams + def cancel(uid, params = {}) + @client.request( + method: :delete, + path: ["v1/teams/invites/%1$s", uid], + model: Scalar::Internal::Type::Unknown, + options: params[:request_options] + ) + end + + # Invite someone to the current team by email. + # + # @overload member(email:, role:, request_options: {}) + # + # @param email [String] + # @param role [Symbol, Scalar::Models::Teams::Role] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Object] + # + # @see Scalar::Models::Teams::InviteMemberParams + def member(params) + parsed, options = Scalar::Teams::InviteMemberParams.dump_request(params) + @client.request( + method: :post, + path: "v1/teams/invites", + body: parsed, + model: Scalar::Internal::Type::Unknown, + options: options + ) + end + + # Send the invite email again. + # + # @overload resend(uid, request_options: {}) + # + # @param uid [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Object] + # + # @see Scalar::Models::Teams::InviteResendParams + def resend(uid, params = {}) + @client.request( + method: :patch, + path: ["v1/teams/invites/%1$s", uid], + model: Scalar::Internal::Type::Unknown, + options: params[:request_options] + ) + end + + # @api private + # + # @param client [Scalar::Client] + def initialize(client:) + @client = client + end + end + end + end +end diff --git a/lib/scalar_api_ruby/resources/teams/members.rb b/lib/scalar_api_ruby/resources/teams/members.rb new file mode 100644 index 0000000..d1d7e7f --- /dev/null +++ b/lib/scalar_api_ruby/resources/teams/members.rb @@ -0,0 +1,76 @@ +# frozen_string_literal: true + +module Scalar + module Resources + class Teams + # Teams + class Members + # Change what a member of the current team is allowed to do. + # + # @overload update(uid, role:, request_options: {}) + # + # @param uid [String] + # @param role [Symbol, Scalar::Models::Teams::Role] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Object] + # + # @see Scalar::Models::Teams::MemberUpdateParams + def update(uid, params) + parsed, options = Scalar::Teams::MemberUpdateParams.dump_request(params) + @client.request( + method: :patch, + path: ["v1/teams/members/%1$s", uid], + body: parsed, + model: Scalar::Internal::Type::Unknown, + options: options + ) + end + + # List the members of the current team, along with the invites still outstanding. + # + # @overload list(request_options: {}) + # + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Scalar::Models::Teams::MemberListResponse] + # + # @see Scalar::Models::Teams::MemberListParams + def list(params = {}) + @client.request( + method: :get, + path: "v1/teams/members", + model: Scalar::Models::Teams::MemberListResponse, + options: params[:request_options] + ) + end + + # Remove someone from the current team. + # + # @overload delete(uid, request_options: {}) + # + # @param uid [String] + # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [Object] + # + # @see Scalar::Models::Teams::MemberDeleteParams + def delete(uid, params = {}) + @client.request( + method: :delete, + path: ["v1/teams/members/%1$s", uid], + model: Scalar::Internal::Type::Unknown, + options: params[:request_options] + ) + end + + # @api private + # + # @param client [Scalar::Client] + def initialize(client:) + @client = client + end + end + end + end +end diff --git a/lib/scalar-api-ruby/resources/themes.rb b/lib/scalar_api_ruby/resources/themes.rb similarity index 96% rename from lib/scalar-api-ruby/resources/themes.rb rename to lib/scalar_api_ruby/resources/themes.rb index 2d1158b..45529ba 100644 --- a/lib/scalar-api-ruby/resources/themes.rb +++ b/lib/scalar_api_ruby/resources/themes.rb @@ -73,14 +73,14 @@ def update(slug, params = {}) # # @param request_options [Scalar::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [Array] + # @return [Array] # # @see Scalar::Models::ThemeListParams def list(params = {}) @client.request( method: :get, path: "v1/themes", - model: Scalar::Internal::Type::ArrayOf[Scalar::Models::ThemeListResponseItem], + model: Scalar::Internal::Type::ArrayOf[Scalar::Theme], options: params[:request_options] ) end diff --git a/lib/scalar-api-ruby/version.rb b/lib/scalar_api_ruby/version.rb similarity index 51% rename from lib/scalar-api-ruby/version.rb rename to lib/scalar_api_ruby/version.rb index bca90b8..94fb104 100644 --- a/lib/scalar-api-ruby/version.rb +++ b/lib/scalar_api_ruby/version.rb @@ -1,5 +1,5 @@ # frozen_string_literal: true module Scalar - VERSION = "0.1.1" # x-release-please-version + VERSION = "0.2.0" # x-release-please-version end diff --git a/rbi/scalar-api-ruby/models/authentication_list_current_user_response.rbi b/rbi/scalar-api-ruby/models/authentication_list_current_user_response.rbi deleted file mode 100644 index 43c46e6..0000000 --- a/rbi/scalar-api-ruby/models/authentication_list_current_user_response.rbi +++ /dev/null @@ -1,129 +0,0 @@ -# typed: strong - -module Scalar - module Models - class AuthenticationListCurrentUserResponse < Scalar::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Scalar::Models::AuthenticationListCurrentUserResponse, - Scalar::Internal::AnyHash - ) - end - - sig { returns(T.nilable(String)) } - attr_accessor :active_team_id - - sig { returns(Integer) } - attr_accessor :created_at - - sig { returns(String) } - attr_accessor :email - - sig { returns(T::Boolean) } - attr_accessor :has_github - - sig do - returns( - T::Array[Scalar::Models::AuthenticationListCurrentUserResponse::Team] - ) - end - attr_accessor :teams - - sig { returns(String) } - attr_accessor :uid - - sig { returns(Integer) } - attr_accessor :updated_at - - sig { returns(T.nilable(String)) } - attr_reader :theme - - sig { params(theme: String).void } - attr_writer :theme - - sig do - params( - active_team_id: T.nilable(String), - created_at: Integer, - email: String, - has_github: T::Boolean, - teams: - T::Array[ - Scalar::Models::AuthenticationListCurrentUserResponse::Team::OrHash - ], - uid: String, - updated_at: Integer, - theme: String - ).returns(T.attached_class) - end - def self.new( - active_team_id:, - created_at:, - email:, - has_github:, - teams:, - uid:, - updated_at:, - theme: nil - ) - end - - sig do - override.returns( - { - active_team_id: T.nilable(String), - created_at: Integer, - email: String, - has_github: T::Boolean, - teams: - T::Array[ - Scalar::Models::AuthenticationListCurrentUserResponse::Team - ], - uid: String, - updated_at: Integer, - theme: String - } - ) - end - def to_hash - end - - class Team < Scalar::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Scalar::Models::AuthenticationListCurrentUserResponse::Team, - Scalar::Internal::AnyHash - ) - end - - sig { returns(String) } - attr_accessor :name - - sig { returns(String) } - attr_accessor :uid - - sig { returns(T.nilable(String)) } - attr_reader :image_uri - - sig { params(image_uri: String).void } - attr_writer :image_uri - - sig do - params(name: String, uid: String, image_uri: String).returns( - T.attached_class - ) - end - def self.new(name:, uid:, image_uri: nil) - end - - sig do - override.returns({ name: String, uid: String, image_uri: String }) - end - def to_hash - end - end - end - end -end diff --git a/rbi/scalar-api-ruby/models/scalar_doc_list_guides_response.rbi b/rbi/scalar-api-ruby/models/scalar_doc_list_guides_response.rbi deleted file mode 100644 index 244b9b6..0000000 --- a/rbi/scalar-api-ruby/models/scalar_doc_list_guides_response.rbi +++ /dev/null @@ -1,303 +0,0 @@ -# typed: strong - -module Scalar - module Models - class ScalarDocListGuidesResponseItem < Scalar::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Scalar::Models::ScalarDocListGuidesResponseItem, - Scalar::Internal::AnyHash - ) - end - - sig { returns(T.anything) } - attr_accessor :access_groups - - sig do - returns( - T.nilable( - Scalar::Models::ScalarDocListGuidesResponseItem::ActiveDeployment - ) - ) - end - attr_reader :active_deployment - - sig do - params( - active_deployment: - T.nilable( - Scalar::Models::ScalarDocListGuidesResponseItem::ActiveDeployment::OrHash - ) - ).void - end - attr_writer :active_deployment - - sig { returns(String) } - attr_accessor :active_theme_id - - sig { returns(T::Boolean) } - attr_accessor :agent_enabled - - sig { returns(Integer) } - attr_accessor :created_at - - sig { returns(T::Boolean) } - attr_accessor :is_private - - sig { returns(T.nilable(Integer)) } - attr_accessor :last_published - - sig { returns(T.nilable(String)) } - attr_accessor :last_published_uid - - sig { returns(String) } - attr_accessor :login_portal_uid - - sig { returns(String) } - attr_accessor :name - - sig { returns(String) } - attr_accessor :publish_message - - sig { returns(String) } - attr_accessor :publish_status - - sig { returns(String) } - attr_accessor :slug - - sig { returns(String) } - attr_accessor :uid - - sig { returns(Integer) } - attr_accessor :updated_at - - sig do - returns( - T.nilable(Scalar::Models::ScalarDocListGuidesResponseItem::Repository) - ) - end - attr_reader :repository - - sig do - params( - repository: - T.nilable( - Scalar::Models::ScalarDocListGuidesResponseItem::Repository::OrHash - ) - ).void - end - attr_writer :repository - - sig { returns(T.nilable(Float)) } - attr_reader :typesense_id - - sig { params(typesense_id: Float).void } - attr_writer :typesense_id - - sig do - params( - access_groups: T.anything, - active_deployment: - T.nilable( - Scalar::Models::ScalarDocListGuidesResponseItem::ActiveDeployment::OrHash - ), - active_theme_id: String, - agent_enabled: T::Boolean, - created_at: Integer, - is_private: T::Boolean, - last_published: T.nilable(Integer), - last_published_uid: T.nilable(String), - login_portal_uid: String, - name: String, - publish_message: String, - publish_status: String, - slug: String, - uid: String, - updated_at: Integer, - repository: - T.nilable( - Scalar::Models::ScalarDocListGuidesResponseItem::Repository::OrHash - ), - typesense_id: Float - ).returns(T.attached_class) - end - def self.new( - access_groups:, - active_deployment:, - active_theme_id:, - agent_enabled:, - created_at:, - is_private:, - last_published:, - last_published_uid:, - login_portal_uid:, - name:, - publish_message:, - publish_status:, - slug:, - uid:, - updated_at:, - repository: nil, - typesense_id: nil - ) - end - - sig do - override.returns( - { - access_groups: T.anything, - active_deployment: - T.nilable( - Scalar::Models::ScalarDocListGuidesResponseItem::ActiveDeployment - ), - active_theme_id: String, - agent_enabled: T::Boolean, - created_at: Integer, - is_private: T::Boolean, - last_published: T.nilable(Integer), - last_published_uid: T.nilable(String), - login_portal_uid: String, - name: String, - publish_message: String, - publish_status: String, - slug: String, - uid: String, - updated_at: Integer, - repository: - T.nilable( - Scalar::Models::ScalarDocListGuidesResponseItem::Repository - ), - typesense_id: Float - } - ) - end - def to_hash - end - - class ActiveDeployment < Scalar::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Scalar::Models::ScalarDocListGuidesResponseItem::ActiveDeployment, - Scalar::Internal::AnyHash - ) - end - - sig { returns(String) } - attr_accessor :domain - - sig { returns(Integer) } - attr_accessor :published_at - - sig { returns(String) } - attr_accessor :uid - - sig do - params(domain: String, published_at: Integer, uid: String).returns( - T.attached_class - ) - end - def self.new(domain:, published_at:, uid:) - end - - sig do - override.returns( - { domain: String, published_at: Integer, uid: String } - ) - end - def to_hash - end - end - - class Repository < Scalar::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Scalar::Models::ScalarDocListGuidesResponseItem::Repository, - Scalar::Internal::AnyHash - ) - end - - sig { returns(Float) } - attr_accessor :id - - sig { returns(String) } - attr_accessor :branch - - sig { returns(String) } - attr_accessor :config_path - - sig { returns(T::Boolean) } - attr_accessor :expired - - sig { returns(String) } - attr_accessor :linked_by - - sig { returns(String) } - attr_accessor :name - - sig { returns(T::Boolean) } - attr_accessor :pr_comments - - sig { returns(T::Boolean) } - attr_accessor :publish_on_merge - - sig { returns(T::Boolean) } - attr_accessor :publish_previews - - sig do - params( - id: Float, - branch: String, - config_path: String, - expired: T::Boolean, - linked_by: String, - name: String, - pr_comments: T::Boolean, - publish_on_merge: T::Boolean, - publish_previews: T::Boolean - ).returns(T.attached_class) - end - def self.new( - id:, - branch:, - config_path:, - expired:, - linked_by:, - name:, - pr_comments:, - publish_on_merge:, - publish_previews: - ) - end - - sig do - override.returns( - { - id: Float, - branch: String, - config_path: String, - expired: T::Boolean, - linked_by: String, - name: String, - pr_comments: T::Boolean, - publish_on_merge: T::Boolean, - publish_previews: T::Boolean - } - ) - end - def to_hash - end - end - end - - ScalarDocListGuidesResponse = - T.let( - Scalar::Internal::Type::ArrayOf[ - Scalar::Models::ScalarDocListGuidesResponseItem - ], - Scalar::Internal::Type::Converter - ) - end -end diff --git a/rbi/scalar-api-ruby/models/schema_list_response.rbi b/rbi/scalar-api-ruby/models/schema_list_response.rbi deleted file mode 100644 index a19b187..0000000 --- a/rbi/scalar-api-ruby/models/schema_list_response.rbi +++ /dev/null @@ -1,127 +0,0 @@ -# typed: strong - -module Scalar - module Models - class SchemaListResponseItem < Scalar::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Scalar::Models::SchemaListResponseItem, - Scalar::Internal::AnyHash - ) - end - - sig { returns(String) } - attr_accessor :description - - sig { returns(T::Boolean) } - attr_accessor :is_private - - sig { returns(String) } - attr_accessor :namespace - - sig { returns(String) } - attr_accessor :slug - - sig { returns(String) } - attr_accessor :title - - sig { returns(String) } - attr_accessor :uid - - sig { returns(T::Array[Scalar::Models::SchemaListResponseItem::Version]) } - attr_accessor :versions - - sig do - params( - description: String, - is_private: T::Boolean, - namespace: String, - slug: String, - title: String, - uid: String, - versions: - T::Array[Scalar::Models::SchemaListResponseItem::Version::OrHash] - ).returns(T.attached_class) - end - def self.new( - description:, - is_private:, - namespace:, - slug:, - title:, - uid:, - versions: - ) - end - - sig do - override.returns( - { - description: String, - is_private: T::Boolean, - namespace: String, - slug: String, - title: String, - uid: String, - versions: T::Array[Scalar::Models::SchemaListResponseItem::Version] - } - ) - end - def to_hash - end - - class Version < Scalar::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Scalar::Models::SchemaListResponseItem::Version, - Scalar::Internal::AnyHash - ) - end - - sig { returns(Integer) } - attr_accessor :created_at - - sig { returns(String) } - attr_accessor :uid - - sig { returns(Integer) } - attr_accessor :updated_at - - sig { returns(String) } - attr_accessor :version - - sig do - params( - created_at: Integer, - uid: String, - updated_at: Integer, - version: String - ).returns(T.attached_class) - end - def self.new(created_at:, uid:, updated_at:, version:) - end - - sig do - override.returns( - { - created_at: Integer, - uid: String, - updated_at: Integer, - version: String - } - ) - end - def to_hash - end - end - end - - SchemaListResponse = - T.let( - Scalar::Internal::Type::ArrayOf[Scalar::Models::SchemaListResponseItem], - Scalar::Internal::Type::Converter - ) - end -end diff --git a/rbi/scalar-api-ruby/resources/scalar_docs.rbi b/rbi/scalar-api-ruby/resources/scalar_docs.rbi deleted file mode 100644 index f99fe87..0000000 --- a/rbi/scalar-api-ruby/resources/scalar_docs.rbi +++ /dev/null @@ -1,53 +0,0 @@ -# typed: strong - -module Scalar - module Resources - # Scalar Docs - class ScalarDocs - # Create a guide project. - sig do - params( - allowed_domains: T::Array[String], - allowed_users: T::Array[String], - is_private: T::Boolean, - name: String, - slug: String, - request_options: Scalar::RequestOptions::OrHash - ).returns(Scalar::Models::ScalarDocCreateGuideResponse) - end - def create_guide( - allowed_domains:, - allowed_users:, - is_private:, - name:, - slug: nil, - request_options: {} - ) - end - - # List all guide projects. - sig do - params(request_options: Scalar::RequestOptions::OrHash).returns( - T::Array[Scalar::Models::ScalarDocListGuidesResponseItem] - ) - end - def list_guides(request_options: {}) - end - - # Start a new publish process. - sig do - params( - slug: String, - request_options: Scalar::RequestOptions::OrHash - ).returns(Scalar::Models::ScalarDocPublishGuideResponse) - end - def publish_guide(slug, request_options: {}) - end - - # @api private - sig { params(client: Scalar::Client).returns(T.attached_class) } - def self.new(client:) - end - end - end -end diff --git a/rbi/scalar-api-ruby/client.rbi b/rbi/scalar_api_ruby/client.rbi similarity index 82% rename from rbi/scalar-api-ruby/client.rbi rename to rbi/scalar_api_ruby/client.rbi index 4498e58..f9eacf6 100644 --- a/rbi/scalar-api-ruby/client.rbi +++ b/rbi/scalar_api_ruby/client.rbi @@ -10,9 +10,12 @@ module Scalar DEFAULT_MAX_RETRY_DELAY = T.let(8.0, Float) - sig { returns(String) } + sig { returns(T.nilable(String)) } attr_reader :bearer_auth + sig { returns(T.nilable(String)) } + attr_reader :o_auth2 + # Registry sig { returns(Scalar::Resources::Registry) } attr_reader :registry @@ -25,6 +28,10 @@ module Scalar sig { returns(Scalar::Resources::LoginPortals) } attr_reader :login_portals + # Access Groups + sig { returns(Scalar::Resources::AccessGroups) } + attr_reader :access_groups + # Rules sig { returns(Scalar::Resources::Rules) } attr_reader :rules @@ -49,6 +56,13 @@ module Scalar sig { returns(Scalar::Resources::Authentication) } attr_reader :authentication + # SDKs + sig { returns(Scalar::Resources::Sdks) } + attr_reader :sdks + + sig { returns(Scalar::Resources::Mcp) } + attr_reader :mcp + # @api private sig { override.returns(T::Hash[String, String]) } private def auth_headers @@ -58,6 +72,7 @@ module Scalar sig do params( bearer_auth: T.nilable(String), + o_auth2: T.nilable(String), base_url: T.nilable(String), max_retries: Integer, timeout: Float, @@ -68,6 +83,8 @@ module Scalar def self.new( # Defaults to `ENV["BEARER_AUTH"]` bearer_auth: ENV["BEARER_AUTH"], + # Defaults to `ENV["SCALAR_OAUTH_TOKEN"]` + o_auth2: ENV["SCALAR_OAUTH_TOKEN"], # Override the default base URL for the API, e.g., # `"https://api.example.com/v2/"`. Defaults to `ENV["SCALAR_BASE_URL"]` base_url: ENV["SCALAR_BASE_URL"], diff --git a/rbi/scalar-api-ruby/errors.rbi b/rbi/scalar_api_ruby/errors.rbi similarity index 100% rename from rbi/scalar-api-ruby/errors.rbi rename to rbi/scalar_api_ruby/errors.rbi diff --git a/rbi/scalar-api-ruby/file_part.rbi b/rbi/scalar_api_ruby/file_part.rbi similarity index 100% rename from rbi/scalar-api-ruby/file_part.rbi rename to rbi/scalar_api_ruby/file_part.rbi diff --git a/rbi/scalar-api-ruby/internal.rbi b/rbi/scalar_api_ruby/internal.rbi similarity index 100% rename from rbi/scalar-api-ruby/internal.rbi rename to rbi/scalar_api_ruby/internal.rbi diff --git a/rbi/scalar-api-ruby/internal/transport/base_client.rbi b/rbi/scalar_api_ruby/internal/transport/base_client.rbi similarity index 100% rename from rbi/scalar-api-ruby/internal/transport/base_client.rbi rename to rbi/scalar_api_ruby/internal/transport/base_client.rbi diff --git a/rbi/scalar-api-ruby/internal/transport/pooled_net_requester.rbi b/rbi/scalar_api_ruby/internal/transport/pooled_net_requester.rbi similarity index 100% rename from rbi/scalar-api-ruby/internal/transport/pooled_net_requester.rbi rename to rbi/scalar_api_ruby/internal/transport/pooled_net_requester.rbi diff --git a/rbi/scalar-api-ruby/internal/type/array_of.rbi b/rbi/scalar_api_ruby/internal/type/array_of.rbi similarity index 100% rename from rbi/scalar-api-ruby/internal/type/array_of.rbi rename to rbi/scalar_api_ruby/internal/type/array_of.rbi diff --git a/rbi/scalar-api-ruby/internal/type/base_model.rbi b/rbi/scalar_api_ruby/internal/type/base_model.rbi similarity index 100% rename from rbi/scalar-api-ruby/internal/type/base_model.rbi rename to rbi/scalar_api_ruby/internal/type/base_model.rbi diff --git a/rbi/scalar-api-ruby/internal/type/base_page.rbi b/rbi/scalar_api_ruby/internal/type/base_page.rbi similarity index 100% rename from rbi/scalar-api-ruby/internal/type/base_page.rbi rename to rbi/scalar_api_ruby/internal/type/base_page.rbi diff --git a/rbi/scalar-api-ruby/internal/type/boolean.rbi b/rbi/scalar_api_ruby/internal/type/boolean.rbi similarity index 100% rename from rbi/scalar-api-ruby/internal/type/boolean.rbi rename to rbi/scalar_api_ruby/internal/type/boolean.rbi diff --git a/rbi/scalar-api-ruby/internal/type/converter.rbi b/rbi/scalar_api_ruby/internal/type/converter.rbi similarity index 100% rename from rbi/scalar-api-ruby/internal/type/converter.rbi rename to rbi/scalar_api_ruby/internal/type/converter.rbi diff --git a/rbi/scalar-api-ruby/internal/type/enum.rbi b/rbi/scalar_api_ruby/internal/type/enum.rbi similarity index 100% rename from rbi/scalar-api-ruby/internal/type/enum.rbi rename to rbi/scalar_api_ruby/internal/type/enum.rbi diff --git a/rbi/scalar-api-ruby/internal/type/file_input.rbi b/rbi/scalar_api_ruby/internal/type/file_input.rbi similarity index 100% rename from rbi/scalar-api-ruby/internal/type/file_input.rbi rename to rbi/scalar_api_ruby/internal/type/file_input.rbi diff --git a/rbi/scalar-api-ruby/internal/type/hash_of.rbi b/rbi/scalar_api_ruby/internal/type/hash_of.rbi similarity index 100% rename from rbi/scalar-api-ruby/internal/type/hash_of.rbi rename to rbi/scalar_api_ruby/internal/type/hash_of.rbi diff --git a/rbi/scalar-api-ruby/internal/type/request_parameters.rbi b/rbi/scalar_api_ruby/internal/type/request_parameters.rbi similarity index 100% rename from rbi/scalar-api-ruby/internal/type/request_parameters.rbi rename to rbi/scalar_api_ruby/internal/type/request_parameters.rbi diff --git a/rbi/scalar-api-ruby/internal/type/union.rbi b/rbi/scalar_api_ruby/internal/type/union.rbi similarity index 100% rename from rbi/scalar-api-ruby/internal/type/union.rbi rename to rbi/scalar_api_ruby/internal/type/union.rbi diff --git a/rbi/scalar-api-ruby/internal/type/unknown.rbi b/rbi/scalar_api_ruby/internal/type/unknown.rbi similarity index 100% rename from rbi/scalar-api-ruby/internal/type/unknown.rbi rename to rbi/scalar_api_ruby/internal/type/unknown.rbi diff --git a/rbi/scalar-api-ruby/internal/util.rbi b/rbi/scalar_api_ruby/internal/util.rbi similarity index 100% rename from rbi/scalar-api-ruby/internal/util.rbi rename to rbi/scalar_api_ruby/internal/util.rbi diff --git a/rbi/scalar-api-ruby/models.rbi b/rbi/scalar_api_ruby/models.rbi similarity index 61% rename from rbi/scalar-api-ruby/models.rbi rename to rbi/scalar_api_ruby/models.rbi index c36489c..13da1ea 100644 --- a/rbi/scalar-api-ruby/models.rbi +++ b/rbi/scalar_api_ruby/models.rbi @@ -3,12 +3,36 @@ module Scalar AccessGroup = Scalar::Models::AccessGroup + AccessGroupCreateParams = Scalar::Models::AccessGroupCreateParams + + AccessGroupDeleteParams = Scalar::Models::AccessGroupDeleteParams + + AccessGroupName = Scalar::Models::AccessGroupName + + AccessGroupRetrieveParams = Scalar::Models::AccessGroupRetrieveParams + + AccessGroups = Scalar::Models::AccessGroups + + AccessGroupUpdateParams = Scalar::Models::AccessGroupUpdateParams + + ActiveDeployment = Scalar::Models::ActiveDeployment + + APIDocument = Scalar::Models::APIDocument + AuthenticationExchangePersonalTokenParams = Scalar::Models::AuthenticationExchangePersonalTokenParams AuthenticationListCurrentUserParams = Scalar::Models::AuthenticationListCurrentUserParams + DocsProject = Scalar::Models::DocsProject + + GithubProject = Scalar::Models::GithubProject + + GithubProjectRepository = Scalar::Models::GithubProjectRepository + + LoginPortal = Scalar::Models::LoginPortal + LoginPortalCreateParams = Scalar::Models::LoginPortalCreateParams LoginPortalDeleteParams = Scalar::Models::LoginPortalDeleteParams @@ -25,6 +49,12 @@ module Scalar ManagedDocVersion = Scalar::Models::ManagedDocVersion + ManagedSchemaVersion = Scalar::Models::ManagedSchemaVersion + + Mcp = Scalar::Models::Mcp + + Method = Scalar::Models::Method + Namespace = Scalar::Models::Namespace NamespaceListParams = Scalar::Models::NamespaceListParams @@ -67,6 +97,8 @@ module Scalar RegistryUpdateAPIDocumentVersionParams = Scalar::Models::RegistryUpdateAPIDocumentVersionParams + Rule = Scalar::Models::Rule + RuleCreateRulesetAccessGroupParams = Scalar::Models::RuleCreateRulesetAccessGroupParams @@ -86,10 +118,37 @@ module Scalar ScalarDocCreateGuideParams = Scalar::Models::ScalarDocCreateGuideParams + ScalarDocCreateProjectParams = Scalar::Models::ScalarDocCreateProjectParams + + ScalarDocDeleteProjectParams = Scalar::Models::ScalarDocDeleteProjectParams + ScalarDocListGuidesParams = Scalar::Models::ScalarDocListGuidesParams + ScalarDocListProjectConfigParams = + Scalar::Models::ScalarDocListProjectConfigParams + + ScalarDocListProjectDomainParams = + Scalar::Models::ScalarDocListProjectDomainParams + + ScalarDocListProjectDomainStatusParams = + Scalar::Models::ScalarDocListProjectDomainStatusParams + + ScalarDocListProjectsParams = Scalar::Models::ScalarDocListProjectsParams + ScalarDocPublishGuideParams = Scalar::Models::ScalarDocPublishGuideParams + ScalarDocPublishProjectParams = Scalar::Models::ScalarDocPublishProjectParams + + ScalarDocRetrieveProjectParams = + Scalar::Models::ScalarDocRetrieveProjectParams + + ScalarDocUpdateProjectConfigParams = + Scalar::Models::ScalarDocUpdateProjectConfigParams + + ScalarDocUpdateProjectParams = Scalar::Models::ScalarDocUpdateProjectParams + + Schema = Scalar::Models::Schema + SchemaCreateParams = Scalar::Models::SchemaCreateParams SchemaDeleteParams = Scalar::Models::SchemaDeleteParams @@ -100,10 +159,42 @@ module Scalar SchemaUpdateParams = Scalar::Models::SchemaUpdateParams + Sdk = Scalar::Models::Sdk + + SdkBuildParams = Scalar::Models::SdkBuildParams + + SdkCreateParams = Scalar::Models::SdkCreateParams + + SdkDeleteParams = Scalar::Models::SdkDeleteParams + + SdkListParams = Scalar::Models::SdkListParams + + SdkRetrieveParams = Scalar::Models::SdkRetrieveParams + + Sdks = Scalar::Models::Sdks + + SdkTargetSummary = Scalar::Models::SdkTargetSummary + + SdkUpdateParams = Scalar::Models::SdkUpdateParams + + SdkVersion = Scalar::Models::SdkVersion + Slug = Scalar::Models::Slug + Team = Scalar::Models::Team + + TeamImage = Scalar::Models::TeamImage + TeamListParams = Scalar::Models::TeamListParams + TeamName = Scalar::Models::TeamName + + Teams = Scalar::Models::Teams + + TeamSummary = Scalar::Models::TeamSummary + + Theme = Scalar::Models::Theme + ThemeCreateParams = Scalar::Models::ThemeCreateParams ThemeDeleteParams = Scalar::Models::ThemeDeleteParams @@ -120,6 +211,8 @@ module Scalar UID = Scalar::Models::UID + User = Scalar::Models::User + Value400 = Scalar::Models::Value400 Value401 = Scalar::Models::Value401 diff --git a/rbi/scalar-api-ruby/models/400.rbi b/rbi/scalar_api_ruby/models/400.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/400.rbi rename to rbi/scalar_api_ruby/models/400.rbi diff --git a/rbi/scalar-api-ruby/models/401.rbi b/rbi/scalar_api_ruby/models/401.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/401.rbi rename to rbi/scalar_api_ruby/models/401.rbi diff --git a/rbi/scalar-api-ruby/models/403.rbi b/rbi/scalar_api_ruby/models/403.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/403.rbi rename to rbi/scalar_api_ruby/models/403.rbi diff --git a/rbi/scalar-api-ruby/models/404.rbi b/rbi/scalar_api_ruby/models/404.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/404.rbi rename to rbi/scalar_api_ruby/models/404.rbi diff --git a/rbi/scalar-api-ruby/models/422.rbi b/rbi/scalar_api_ruby/models/422.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/422.rbi rename to rbi/scalar_api_ruby/models/422.rbi diff --git a/rbi/scalar-api-ruby/models/500.rbi b/rbi/scalar_api_ruby/models/500.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/500.rbi rename to rbi/scalar_api_ruby/models/500.rbi diff --git a/rbi/scalar-api-ruby/models/access_group.rbi b/rbi/scalar_api_ruby/models/access_group.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/access_group.rbi rename to rbi/scalar_api_ruby/models/access_group.rbi diff --git a/rbi/scalar_api_ruby/models/access_group_create_params.rbi b/rbi/scalar_api_ruby/models/access_group_create_params.rbi new file mode 100644 index 0000000..b725bee --- /dev/null +++ b/rbi/scalar_api_ruby/models/access_group_create_params.rbi @@ -0,0 +1,62 @@ +# typed: strong + +module Scalar + module Models + class AccessGroupCreateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::AccessGroupCreateParams, Scalar::Internal::AnyHash) + end + + sig { returns(T.nilable(String)) } + attr_reader :allowed_domains + + sig { params(allowed_domains: String).void } + attr_writer :allowed_domains + + sig { returns(T.nilable(String)) } + attr_reader :name + + sig { params(name: String).void } + attr_writer :name + + sig { returns(T.nilable(String)) } + attr_reader :slug + + sig { params(slug: String).void } + attr_writer :slug + + sig do + params( + allowed_domains: String, + name: String, + slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + allowed_domains: nil, + name: nil, + slug: nil, + request_options: {} + ) + end + + sig do + override.returns( + { + allowed_domains: String, + name: String, + slug: String, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/access_group_create_response.rbi b/rbi/scalar_api_ruby/models/access_group_create_response.rbi new file mode 100644 index 0000000..17e3338 --- /dev/null +++ b/rbi/scalar_api_ruby/models/access_group_create_response.rbi @@ -0,0 +1,56 @@ +# typed: strong + +module Scalar + module Models + class AccessGroupCreateResponse < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Scalar::Models::AccessGroupCreateResponse, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :allowed_domains + + sig { returns(String) } + attr_accessor :allowed_emails + + sig { returns(String) } + attr_accessor :name + + sig { returns(String) } + attr_accessor :slug + + sig { returns(String) } + attr_accessor :uid + + sig do + params( + allowed_domains: String, + allowed_emails: String, + name: String, + slug: String, + uid: String + ).returns(T.attached_class) + end + def self.new(allowed_domains:, allowed_emails:, name:, slug:, uid:) + end + + sig do + override.returns( + { + allowed_domains: String, + allowed_emails: String, + name: String, + slug: String, + uid: String + } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/access_group_delete_params.rbi b/rbi/scalar_api_ruby/models/access_group_delete_params.rbi new file mode 100644 index 0000000..5eae5cd --- /dev/null +++ b/rbi/scalar_api_ruby/models/access_group_delete_params.rbi @@ -0,0 +1,35 @@ +# typed: strong + +module Scalar + module Models + class AccessGroupDeleteParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::AccessGroupDeleteParams, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :slug + + sig do + params( + slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(slug:, request_options: {}) + end + + sig do + override.returns( + { slug: String, request_options: Scalar::RequestOptions } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/access_group_name.rbi b/rbi/scalar_api_ruby/models/access_group_name.rbi new file mode 100644 index 0000000..f378a52 --- /dev/null +++ b/rbi/scalar_api_ruby/models/access_group_name.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Scalar + module Models + AccessGroupName = String + end +end diff --git a/rbi/scalar_api_ruby/models/access_group_retrieve_params.rbi b/rbi/scalar_api_ruby/models/access_group_retrieve_params.rbi new file mode 100644 index 0000000..3a58cac --- /dev/null +++ b/rbi/scalar_api_ruby/models/access_group_retrieve_params.rbi @@ -0,0 +1,35 @@ +# typed: strong + +module Scalar + module Models + class AccessGroupRetrieveParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::AccessGroupRetrieveParams, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :slug + + sig do + params( + slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(slug:, request_options: {}) + end + + sig do + override.returns( + { slug: String, request_options: Scalar::RequestOptions } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/access_group_retrieve_response.rbi b/rbi/scalar_api_ruby/models/access_group_retrieve_response.rbi new file mode 100644 index 0000000..7fc3a91 --- /dev/null +++ b/rbi/scalar_api_ruby/models/access_group_retrieve_response.rbi @@ -0,0 +1,56 @@ +# typed: strong + +module Scalar + module Models + class AccessGroupRetrieveResponse < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Scalar::Models::AccessGroupRetrieveResponse, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :allowed_domains + + sig { returns(String) } + attr_accessor :allowed_emails + + sig { returns(String) } + attr_accessor :name + + sig { returns(String) } + attr_accessor :slug + + sig { returns(String) } + attr_accessor :uid + + sig do + params( + allowed_domains: String, + allowed_emails: String, + name: String, + slug: String, + uid: String + ).returns(T.attached_class) + end + def self.new(allowed_domains:, allowed_emails:, name:, slug:, uid:) + end + + sig do + override.returns( + { + allowed_domains: String, + allowed_emails: String, + name: String, + slug: String, + uid: String + } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/access_group_update_params.rbi b/rbi/scalar_api_ruby/models/access_group_update_params.rbi new file mode 100644 index 0000000..92f5c5f --- /dev/null +++ b/rbi/scalar_api_ruby/models/access_group_update_params.rbi @@ -0,0 +1,54 @@ +# typed: strong + +module Scalar + module Models + class AccessGroupUpdateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::AccessGroupUpdateParams, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :path_slug + + sig { returns(T.nilable(String)) } + attr_reader :name + + sig { params(name: String).void } + attr_writer :name + + sig { returns(T.nilable(String)) } + attr_reader :body_slug + + sig { params(body_slug: String).void } + attr_writer :body_slug + + sig do + params( + path_slug: String, + name: String, + body_slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(path_slug:, name: nil, body_slug: nil, request_options: {}) + end + + sig do + override.returns( + { + path_slug: String, + name: String, + body_slug: String, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/access_groups/domain_create_params.rbi b/rbi/scalar_api_ruby/models/access_groups/domain_create_params.rbi new file mode 100644 index 0000000..50b708c --- /dev/null +++ b/rbi/scalar_api_ruby/models/access_groups/domain_create_params.rbi @@ -0,0 +1,48 @@ +# typed: strong + +module Scalar + module Models + module AccessGroups + class DomainCreateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any( + Scalar::AccessGroups::DomainCreateParams, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :slug + + sig { returns(String) } + attr_accessor :domain + + sig do + params( + slug: String, + domain: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(slug:, domain:, request_options: {}) + end + + sig do + override.returns( + { + slug: String, + domain: String, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/access_groups/domain_delete_params.rbi b/rbi/scalar_api_ruby/models/access_groups/domain_delete_params.rbi new file mode 100644 index 0000000..d4346e9 --- /dev/null +++ b/rbi/scalar_api_ruby/models/access_groups/domain_delete_params.rbi @@ -0,0 +1,48 @@ +# typed: strong + +module Scalar + module Models + module AccessGroups + class DomainDeleteParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any( + Scalar::AccessGroups::DomainDeleteParams, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :slug + + sig { returns(String) } + attr_accessor :domain + + sig do + params( + slug: String, + domain: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(slug:, domain:, request_options: {}) + end + + sig do + override.returns( + { + slug: String, + domain: String, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/access_groups/email_domain.rbi b/rbi/scalar_api_ruby/models/access_groups/email_domain.rbi new file mode 100644 index 0000000..b55fcd0 --- /dev/null +++ b/rbi/scalar_api_ruby/models/access_groups/email_domain.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Scalar + module Models + module AccessGroups + EmailDomain = String + end + end +end diff --git a/rbi/scalar_api_ruby/models/active_deployment.rbi b/rbi/scalar_api_ruby/models/active_deployment.rbi new file mode 100644 index 0000000..b528123 --- /dev/null +++ b/rbi/scalar_api_ruby/models/active_deployment.rbi @@ -0,0 +1,35 @@ +# typed: strong + +module Scalar + module Models + class ActiveDeployment < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(Scalar::ActiveDeployment, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :domain + + sig { returns(Integer) } + attr_accessor :published_at + + sig { returns(String) } + attr_accessor :uid + + sig do + params(domain: String, published_at: Integer, uid: String).returns( + T.attached_class + ) + end + def self.new(domain:, published_at:, uid:) + end + + sig do + override.returns({ domain: String, published_at: Integer, uid: String }) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar-api-ruby/models/registry_list_api_documents_response.rbi b/rbi/scalar_api_ruby/models/api_document.rbi similarity index 73% rename from rbi/scalar-api-ruby/models/registry_list_api_documents_response.rbi rename to rbi/scalar_api_ruby/models/api_document.rbi index 9bfc66b..570fcc4 100644 --- a/rbi/scalar-api-ruby/models/registry_list_api_documents_response.rbi +++ b/rbi/scalar_api_ruby/models/api_document.rbi @@ -2,14 +2,9 @@ module Scalar module Models - class RegistryListAPIDocumentsResponseItem < Scalar::Internal::Type::BaseModel + class APIDocument < Scalar::Internal::Type::BaseModel OrHash = - T.type_alias do - T.any( - Scalar::Models::RegistryListAPIDocumentsResponseItem, - Scalar::Internal::AnyHash - ) - end + T.type_alias { T.any(Scalar::APIDocument, Scalar::Internal::AnyHash) } sig { returns(String) } attr_accessor :description @@ -23,7 +18,7 @@ module Scalar sig { returns(String) } attr_accessor :slug - sig { returns(T.anything) } + sig { returns(String) } attr_accessor :tags sig { returns(String) } @@ -44,7 +39,7 @@ module Scalar is_private: T::Boolean, namespace: String, slug: String, - tags: T.anything, + tags: String, title: String, uid: String, version: String, @@ -71,7 +66,7 @@ module Scalar is_private: T::Boolean, namespace: String, slug: String, - tags: T.anything, + tags: String, title: String, uid: String, version: String, @@ -82,13 +77,5 @@ module Scalar def to_hash end end - - RegistryListAPIDocumentsResponse = - T.let( - Scalar::Internal::Type::ArrayOf[ - Scalar::Models::RegistryListAPIDocumentsResponseItem - ], - Scalar::Internal::Type::Converter - ) end end diff --git a/rbi/scalar-api-ruby/models/authentication_exchange_personal_token_params.rbi b/rbi/scalar_api_ruby/models/authentication_exchange_personal_token_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/authentication_exchange_personal_token_params.rbi rename to rbi/scalar_api_ruby/models/authentication_exchange_personal_token_params.rbi diff --git a/rbi/scalar-api-ruby/models/authentication_exchange_personal_token_response.rbi b/rbi/scalar_api_ruby/models/authentication_exchange_personal_token_response.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/authentication_exchange_personal_token_response.rbi rename to rbi/scalar_api_ruby/models/authentication_exchange_personal_token_response.rbi diff --git a/rbi/scalar-api-ruby/models/authentication_list_current_user_params.rbi b/rbi/scalar_api_ruby/models/authentication_list_current_user_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/authentication_list_current_user_params.rbi rename to rbi/scalar_api_ruby/models/authentication_list_current_user_params.rbi diff --git a/rbi/scalar_api_ruby/models/docs_project.rbi b/rbi/scalar_api_ruby/models/docs_project.rbi new file mode 100644 index 0000000..20c7278 --- /dev/null +++ b/rbi/scalar_api_ruby/models/docs_project.rbi @@ -0,0 +1,93 @@ +# typed: strong + +module Scalar + module Models + class DocsProject < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(Scalar::DocsProject, Scalar::Internal::AnyHash) } + + sig { returns(String) } + attr_accessor :access_groups + + sig { returns(String) } + attr_accessor :active_theme_id + + sig { returns(T::Boolean) } + attr_accessor :agent_enabled + + sig { returns(T::Boolean) } + attr_accessor :analytics_enabled + + sig { returns(T::Boolean) } + attr_accessor :is_private + + sig { returns(T.nilable(Integer)) } + attr_accessor :last_published + + sig { returns(String) } + attr_accessor :login_portal_uid + + sig { returns(String) } + attr_accessor :name + + sig { returns(String) } + attr_accessor :publish_status + + sig { returns(String) } + attr_accessor :slug + + sig { returns(String) } + attr_accessor :uid + + sig do + params( + access_groups: String, + active_theme_id: String, + agent_enabled: T::Boolean, + analytics_enabled: T::Boolean, + is_private: T::Boolean, + last_published: T.nilable(Integer), + login_portal_uid: String, + name: String, + publish_status: String, + slug: String, + uid: String + ).returns(T.attached_class) + end + def self.new( + access_groups:, + active_theme_id:, + agent_enabled:, + analytics_enabled:, + is_private:, + last_published:, + login_portal_uid:, + name:, + publish_status:, + slug:, + uid: + ) + end + + sig do + override.returns( + { + access_groups: String, + active_theme_id: String, + agent_enabled: T::Boolean, + analytics_enabled: T::Boolean, + is_private: T::Boolean, + last_published: T.nilable(Integer), + login_portal_uid: String, + name: String, + publish_status: String, + slug: String, + uid: String + } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/github_project.rbi b/rbi/scalar_api_ruby/models/github_project.rbi new file mode 100644 index 0000000..84eed6f --- /dev/null +++ b/rbi/scalar_api_ruby/models/github_project.rbi @@ -0,0 +1,158 @@ +# typed: strong + +module Scalar + module Models + class GithubProject < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(Scalar::GithubProject, Scalar::Internal::AnyHash) } + + sig { returns(String) } + attr_accessor :access_groups + + sig { returns(T.nilable(Scalar::ActiveDeployment)) } + attr_reader :active_deployment + + sig do + params( + active_deployment: T.nilable(Scalar::ActiveDeployment::OrHash) + ).void + end + attr_writer :active_deployment + + sig { returns(String) } + attr_accessor :active_theme_id + + sig { returns(T::Boolean) } + attr_accessor :agent_enabled + + sig { returns(T::Boolean) } + attr_accessor :analytics_enabled + + sig { returns(Integer) } + attr_accessor :created_at + + sig { returns(T::Boolean) } + attr_accessor :is_private + + sig { returns(T.nilable(Integer)) } + attr_accessor :last_published + + sig { returns(T.nilable(String)) } + attr_accessor :last_published_uid + + sig { returns(String) } + attr_accessor :login_portal_uid + + sig { returns(String) } + attr_accessor :name + + sig { returns(String) } + attr_accessor :publish_message + + sig { returns(String) } + attr_accessor :publish_status + + sig { returns(String) } + attr_accessor :slug + + sig { returns(String) } + attr_accessor :uid + + sig { returns(Integer) } + attr_accessor :updated_at + + sig { returns(String) } + attr_accessor :user_info_hook_url + + sig { returns(T.nilable(Scalar::GithubProjectRepository)) } + attr_reader :repository + + sig do + params( + repository: T.nilable(Scalar::GithubProjectRepository::OrHash) + ).void + end + attr_writer :repository + + sig { returns(T.nilable(Float)) } + attr_reader :typesense_id + + sig { params(typesense_id: Float).void } + attr_writer :typesense_id + + sig do + params( + access_groups: String, + active_deployment: T.nilable(Scalar::ActiveDeployment::OrHash), + active_theme_id: String, + agent_enabled: T::Boolean, + analytics_enabled: T::Boolean, + created_at: Integer, + is_private: T::Boolean, + last_published: T.nilable(Integer), + last_published_uid: T.nilable(String), + login_portal_uid: String, + name: String, + publish_message: String, + publish_status: String, + slug: String, + uid: String, + updated_at: Integer, + user_info_hook_url: String, + repository: T.nilable(Scalar::GithubProjectRepository::OrHash), + typesense_id: Float + ).returns(T.attached_class) + end + def self.new( + access_groups:, + active_deployment:, + active_theme_id:, + agent_enabled:, + analytics_enabled:, + created_at:, + is_private:, + last_published:, + last_published_uid:, + login_portal_uid:, + name:, + publish_message:, + publish_status:, + slug:, + uid:, + updated_at:, + user_info_hook_url:, + repository: nil, + typesense_id: nil + ) + end + + sig do + override.returns( + { + access_groups: String, + active_deployment: T.nilable(Scalar::ActiveDeployment), + active_theme_id: String, + agent_enabled: T::Boolean, + analytics_enabled: T::Boolean, + created_at: Integer, + is_private: T::Boolean, + last_published: T.nilable(Integer), + last_published_uid: T.nilable(String), + login_portal_uid: String, + name: String, + publish_message: String, + publish_status: String, + slug: String, + uid: String, + updated_at: Integer, + user_info_hook_url: String, + repository: T.nilable(Scalar::GithubProjectRepository), + typesense_id: Float + } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/github_project_repository.rbi b/rbi/scalar_api_ruby/models/github_project_repository.rbi new file mode 100644 index 0000000..d831007 --- /dev/null +++ b/rbi/scalar_api_ruby/models/github_project_repository.rbi @@ -0,0 +1,83 @@ +# typed: strong + +module Scalar + module Models + class GithubProjectRepository < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(Scalar::GithubProjectRepository, Scalar::Internal::AnyHash) + end + + sig { returns(Float) } + attr_accessor :id + + sig { returns(String) } + attr_accessor :branch + + sig { returns(String) } + attr_accessor :config_path + + sig { returns(T::Boolean) } + attr_accessor :expired + + sig { returns(String) } + attr_accessor :linked_by + + sig { returns(String) } + attr_accessor :name + + sig { returns(T::Boolean) } + attr_accessor :pr_comments + + sig { returns(T::Boolean) } + attr_accessor :publish_on_merge + + sig { returns(T::Boolean) } + attr_accessor :publish_previews + + sig do + params( + id: Float, + branch: String, + config_path: String, + expired: T::Boolean, + linked_by: String, + name: String, + pr_comments: T::Boolean, + publish_on_merge: T::Boolean, + publish_previews: T::Boolean + ).returns(T.attached_class) + end + def self.new( + id:, + branch:, + config_path:, + expired:, + linked_by:, + name:, + pr_comments:, + publish_on_merge:, + publish_previews: + ) + end + + sig do + override.returns( + { + id: Float, + branch: String, + config_path: String, + expired: T::Boolean, + linked_by: String, + name: String, + pr_comments: T::Boolean, + publish_on_merge: T::Boolean, + publish_previews: T::Boolean + } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar-api-ruby/models/login_portal_list_response.rbi b/rbi/scalar_api_ruby/models/login_portal.rbi similarity index 55% rename from rbi/scalar-api-ruby/models/login_portal_list_response.rbi rename to rbi/scalar_api_ruby/models/login_portal.rbi index e94edbc..6c59ece 100644 --- a/rbi/scalar-api-ruby/models/login_portal_list_response.rbi +++ b/rbi/scalar_api_ruby/models/login_portal.rbi @@ -2,14 +2,9 @@ module Scalar module Models - class LoginPortalListResponseItem < Scalar::Internal::Type::BaseModel + class LoginPortal < Scalar::Internal::Type::BaseModel OrHash = - T.type_alias do - T.any( - Scalar::Models::LoginPortalListResponseItem, - Scalar::Internal::AnyHash - ) - end + T.type_alias { T.any(Scalar::LoginPortal, Scalar::Internal::AnyHash) } sig { returns(String) } attr_accessor :slug @@ -32,13 +27,5 @@ module Scalar def to_hash end end - - LoginPortalListResponse = - T.let( - Scalar::Internal::Type::ArrayOf[ - Scalar::Models::LoginPortalListResponseItem - ], - Scalar::Internal::Type::Converter - ) end end diff --git a/rbi/scalar-api-ruby/models/login_portal_create_params.rbi b/rbi/scalar_api_ruby/models/login_portal_create_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/login_portal_create_params.rbi rename to rbi/scalar_api_ruby/models/login_portal_create_params.rbi diff --git a/rbi/scalar-api-ruby/models/login_portal_delete_params.rbi b/rbi/scalar_api_ruby/models/login_portal_delete_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/login_portal_delete_params.rbi rename to rbi/scalar_api_ruby/models/login_portal_delete_params.rbi diff --git a/rbi/scalar-api-ruby/models/login_portal_email.rbi b/rbi/scalar_api_ruby/models/login_portal_email.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/login_portal_email.rbi rename to rbi/scalar_api_ruby/models/login_portal_email.rbi diff --git a/rbi/scalar-api-ruby/models/login_portal_list_params.rbi b/rbi/scalar_api_ruby/models/login_portal_list_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/login_portal_list_params.rbi rename to rbi/scalar_api_ruby/models/login_portal_list_params.rbi diff --git a/rbi/scalar_api_ruby/models/login_portal_list_response.rbi b/rbi/scalar_api_ruby/models/login_portal_list_response.rbi new file mode 100644 index 0000000..a4928af --- /dev/null +++ b/rbi/scalar_api_ruby/models/login_portal_list_response.rbi @@ -0,0 +1,11 @@ +# typed: strong + +module Scalar + module Models + LoginPortalListResponse = + T.let( + Scalar::Internal::Type::ArrayOf[Scalar::LoginPortal], + Scalar::Internal::Type::Converter + ) + end +end diff --git a/rbi/scalar-api-ruby/models/login_portal_page.rbi b/rbi/scalar_api_ruby/models/login_portal_page.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/login_portal_page.rbi rename to rbi/scalar_api_ruby/models/login_portal_page.rbi diff --git a/rbi/scalar-api-ruby/models/login_portal_retrieve_params.rbi b/rbi/scalar_api_ruby/models/login_portal_retrieve_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/login_portal_retrieve_params.rbi rename to rbi/scalar_api_ruby/models/login_portal_retrieve_params.rbi diff --git a/rbi/scalar-api-ruby/models/login_portal_retrieve_response.rbi b/rbi/scalar_api_ruby/models/login_portal_retrieve_response.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/login_portal_retrieve_response.rbi rename to rbi/scalar_api_ruby/models/login_portal_retrieve_response.rbi diff --git a/rbi/scalar-api-ruby/models/login_portal_update_params.rbi b/rbi/scalar_api_ruby/models/login_portal_update_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/login_portal_update_params.rbi rename to rbi/scalar_api_ruby/models/login_portal_update_params.rbi diff --git a/rbi/scalar-api-ruby/models/managed_doc_version.rbi b/rbi/scalar_api_ruby/models/managed_doc_version.rbi similarity index 73% rename from rbi/scalar-api-ruby/models/managed_doc_version.rbi rename to rbi/scalar_api_ruby/models/managed_doc_version.rbi index db5cfa4..8c8130b 100644 --- a/rbi/scalar-api-ruby/models/managed_doc_version.rbi +++ b/rbi/scalar_api_ruby/models/managed_doc_version.rbi @@ -16,6 +16,9 @@ module Scalar end attr_accessor :embed_status + sig { returns(T.nilable(Integer)) } + attr_accessor :endpoint_count + sig { returns(T::Array[String]) } attr_accessor :tags @@ -42,12 +45,6 @@ module Scalar end attr_writer :tools - sig { returns(T.nilable(String)) } - attr_reader :version_sha - - sig { params(version_sha: String).void } - attr_writer :version_sha - sig { returns(T.nilable(String)) } attr_reader :yaml_sha @@ -59,26 +56,26 @@ module Scalar created_at: Float, embed_status: T.nilable(Scalar::ManagedDocVersion::EmbedStatus::OrSymbol), + endpoint_count: T.nilable(Integer), tags: T::Array[String], uid: String, upgraded: T::Boolean, version: String, json_sha: String, tools: T::Array[Scalar::ManagedDocVersion::Tool::OrHash], - version_sha: String, yaml_sha: String ).returns(T.attached_class) end def self.new( created_at:, embed_status:, + endpoint_count:, tags:, uid:, upgraded:, version:, json_sha: nil, tools: nil, - version_sha: nil, yaml_sha: nil ) end @@ -89,13 +86,13 @@ module Scalar created_at: Float, embed_status: T.nilable(Scalar::ManagedDocVersion::EmbedStatus::TaggedSymbol), + endpoint_count: T.nilable(Integer), tags: T::Array[String], uid: String, upgraded: T::Boolean, version: String, json_sha: String, tools: T::Array[Scalar::ManagedDocVersion::Tool], - version_sha: String, yaml_sha: String } ) @@ -137,7 +134,7 @@ module Scalar end attr_accessor :enabled_tools - sig { returns(Scalar::ManagedDocVersion::Tool::Method::TaggedSymbol) } + sig { returns(String) } attr_accessor :method_ sig { returns(String) } @@ -147,7 +144,7 @@ module Scalar params( enabled_tools: T::Array[Scalar::ManagedDocVersion::Tool::EnabledTool::OrSymbol], - method_: Scalar::ManagedDocVersion::Tool::Method::OrSymbol, + method_: String, path: String ).returns(T.attached_class) end @@ -161,7 +158,7 @@ module Scalar T::Array[ Scalar::ManagedDocVersion::Tool::EnabledTool::TaggedSymbol ], - method_: Scalar::ManagedDocVersion::Tool::Method::TaggedSymbol, + method_: String, path: String } ) @@ -199,47 +196,6 @@ module Scalar def self.values end end - - module Method - extend Scalar::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all(Symbol, Scalar::ManagedDocVersion::Tool::Method) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - DELETE = - T.let( - :delete, - Scalar::ManagedDocVersion::Tool::Method::TaggedSymbol - ) - GET = - T.let(:get, Scalar::ManagedDocVersion::Tool::Method::TaggedSymbol) - HEAD = - T.let(:head, Scalar::ManagedDocVersion::Tool::Method::TaggedSymbol) - OPTIONS = - T.let( - :options, - Scalar::ManagedDocVersion::Tool::Method::TaggedSymbol - ) - PATCH = - T.let(:patch, Scalar::ManagedDocVersion::Tool::Method::TaggedSymbol) - POST = - T.let(:post, Scalar::ManagedDocVersion::Tool::Method::TaggedSymbol) - PUT = - T.let(:put, Scalar::ManagedDocVersion::Tool::Method::TaggedSymbol) - TRACE = - T.let(:trace, Scalar::ManagedDocVersion::Tool::Method::TaggedSymbol) - - sig do - override.returns( - T::Array[Scalar::ManagedDocVersion::Tool::Method::TaggedSymbol] - ) - end - def self.values - end - end end end end diff --git a/rbi/scalar_api_ruby/models/managed_schema_version.rbi b/rbi/scalar_api_ruby/models/managed_schema_version.rbi new file mode 100644 index 0000000..3f8ba03 --- /dev/null +++ b/rbi/scalar_api_ruby/models/managed_schema_version.rbi @@ -0,0 +1,71 @@ +# typed: strong + +module Scalar + module Models + class ManagedSchemaVersion < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(Scalar::ManagedSchemaVersion, Scalar::Internal::AnyHash) + end + + sig { returns(Integer) } + attr_accessor :created_at + + sig { returns(String) } + attr_accessor :uid + + sig { returns(Integer) } + attr_accessor :updated_at + + sig { returns(String) } + attr_accessor :version + + sig { returns(T.nilable(String)) } + attr_reader :json_sha + + sig { params(json_sha: String).void } + attr_writer :json_sha + + sig { returns(T.nilable(String)) } + attr_reader :yaml_sha + + sig { params(yaml_sha: String).void } + attr_writer :yaml_sha + + sig do + params( + created_at: Integer, + uid: String, + updated_at: Integer, + version: String, + json_sha: String, + yaml_sha: String + ).returns(T.attached_class) + end + def self.new( + created_at:, + uid:, + updated_at:, + version:, + json_sha: nil, + yaml_sha: nil + ) + end + + sig do + override.returns( + { + created_at: Integer, + uid: String, + updated_at: Integer, + version: String, + json_sha: String, + yaml_sha: String + } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/mcp/mcp_installation.rbi b/rbi/scalar_api_ruby/models/mcp/mcp_installation.rbi new file mode 100644 index 0000000..bb97dd8 --- /dev/null +++ b/rbi/scalar_api_ruby/models/mcp/mcp_installation.rbi @@ -0,0 +1,93 @@ +# typed: strong + +module Scalar + module Models + McpInstallation = Mcp::McpInstallation + + module Mcp + class McpInstallation < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(Scalar::Mcp::McpInstallation, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :id + + sig { returns(T::Array[String]) } + attr_accessor :access_groups + + sig { returns(T::Boolean) } + attr_accessor :credential_redaction_enabled + + sig { returns(T::Boolean) } + attr_accessor :is_private + + sig { returns(T.nilable(String)) } + attr_accessor :login_portal_uid + + sig { returns(String) } + attr_accessor :mcp_server_id + + sig { returns(T.nilable(String)) } + attr_accessor :mcp_version + + sig { returns(String) } + attr_accessor :name + + sig { returns(T::Boolean) } + attr_accessor :pii_redaction_enabled + + sig { returns(String) } + attr_accessor :slug + + sig do + params( + id: String, + access_groups: T::Array[String], + credential_redaction_enabled: T::Boolean, + is_private: T::Boolean, + login_portal_uid: T.nilable(String), + mcp_server_id: String, + mcp_version: T.nilable(String), + name: String, + pii_redaction_enabled: T::Boolean, + slug: String + ).returns(T.attached_class) + end + def self.new( + id:, + access_groups:, + credential_redaction_enabled:, + is_private:, + login_portal_uid:, + mcp_server_id:, + mcp_version:, + name:, + pii_redaction_enabled:, + slug: + ) + end + + sig do + override.returns( + { + id: String, + access_groups: T::Array[String], + credential_redaction_enabled: T::Boolean, + is_private: T::Boolean, + login_portal_uid: T.nilable(String), + mcp_server_id: String, + mcp_version: T.nilable(String), + name: String, + pii_redaction_enabled: T::Boolean, + slug: String + } + ) + end + def to_hash + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/mcp/mcp_server.rbi b/rbi/scalar_api_ruby/models/mcp/mcp_server.rbi new file mode 100644 index 0000000..5116191 --- /dev/null +++ b/rbi/scalar_api_ruby/models/mcp/mcp_server.rbi @@ -0,0 +1,69 @@ +# typed: strong + +module Scalar + module Models + McpServer = Mcp::McpServer + + module Mcp + class McpServer < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(Scalar::Mcp::McpServer, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :id + + sig { returns(T::Boolean) } + attr_accessor :auto_add_operations + + sig { returns(String) } + attr_accessor :created_at + + sig { returns(String) } + attr_accessor :name + + sig { returns(String) } + attr_accessor :slug + + sig { returns(String) } + attr_accessor :updated_at + + sig do + params( + id: String, + auto_add_operations: T::Boolean, + created_at: String, + name: String, + slug: String, + updated_at: String + ).returns(T.attached_class) + end + def self.new( + id:, + auto_add_operations:, + created_at:, + name:, + slug:, + updated_at: + ) + end + + sig do + override.returns( + { + id: String, + auto_add_operations: T::Boolean, + created_at: String, + name: String, + slug: String, + updated_at: String + } + ) + end + def to_hash + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/mcp/server_create_params.rbi b/rbi/scalar_api_ruby/models/mcp/server_create_params.rbi new file mode 100644 index 0000000..05d70b5 --- /dev/null +++ b/rbi/scalar_api_ruby/models/mcp/server_create_params.rbi @@ -0,0 +1,70 @@ +# typed: strong + +module Scalar + module Models + module Mcp + class ServerCreateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::Mcp::ServerCreateParams, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :name + + sig { returns(T.nilable(T::Array[String])) } + attr_reader :project_uids + + sig { params(project_uids: T::Array[String]).void } + attr_writer :project_uids + + sig { returns(T.nilable(String)) } + attr_reader :slug + + sig { params(slug: String).void } + attr_writer :slug + + sig { returns(T.nilable(T::Array[String])) } + attr_reader :version_uids + + sig { params(version_uids: T::Array[String]).void } + attr_writer :version_uids + + sig do + params( + name: String, + project_uids: T::Array[String], + slug: String, + version_uids: T::Array[String], + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + name:, + project_uids: nil, + slug: nil, + version_uids: nil, + request_options: {} + ) + end + + sig do + override.returns( + { + name: String, + project_uids: T::Array[String], + slug: String, + version_uids: T::Array[String], + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/mcp/server_create_response.rbi b/rbi/scalar_api_ruby/models/mcp/server_create_response.rbi new file mode 100644 index 0000000..c490a24 --- /dev/null +++ b/rbi/scalar_api_ruby/models/mcp/server_create_response.rbi @@ -0,0 +1,49 @@ +# typed: strong + +module Scalar + module Models + module Mcp + class ServerCreateResponse < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Scalar::Models::Mcp::ServerCreateResponse, + Scalar::Internal::AnyHash + ) + end + + sig { returns(Scalar::Mcp::McpInstallation) } + attr_reader :installation + + sig { params(installation: Scalar::Mcp::McpInstallation::OrHash).void } + attr_writer :installation + + sig { returns(Scalar::Mcp::McpServer) } + attr_reader :server + + sig { params(server: Scalar::Mcp::McpServer::OrHash).void } + attr_writer :server + + sig do + params( + installation: Scalar::Mcp::McpInstallation::OrHash, + server: Scalar::Mcp::McpServer::OrHash + ).returns(T.attached_class) + end + def self.new(installation:, server:) + end + + sig do + override.returns( + { + installation: Scalar::Mcp::McpInstallation, + server: Scalar::Mcp::McpServer + } + ) + end + def to_hash + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/mcp/server_delete_params.rbi b/rbi/scalar_api_ruby/models/mcp/server_delete_params.rbi new file mode 100644 index 0000000..44c2cae --- /dev/null +++ b/rbi/scalar_api_ruby/models/mcp/server_delete_params.rbi @@ -0,0 +1,37 @@ +# typed: strong + +module Scalar + module Models + module Mcp + class ServerDeleteParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::Mcp::ServerDeleteParams, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :id + + sig do + params( + id: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(id:, request_options: {}) + end + + sig do + override.returns( + { id: String, request_options: Scalar::RequestOptions } + ) + end + def to_hash + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/mcp/server_list_params.rbi b/rbi/scalar_api_ruby/models/mcp/server_list_params.rbi new file mode 100644 index 0000000..457ef20 --- /dev/null +++ b/rbi/scalar_api_ruby/models/mcp/server_list_params.rbi @@ -0,0 +1,29 @@ +# typed: strong + +module Scalar + module Models + module Mcp + class ServerListParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::Mcp::ServerListParams, Scalar::Internal::AnyHash) + end + + sig do + params(request_options: Scalar::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) + end + + sig { override.returns({ request_options: Scalar::RequestOptions }) } + def to_hash + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/mcp/server_list_response.rbi b/rbi/scalar_api_ruby/models/mcp/server_list_response.rbi new file mode 100644 index 0000000..4f87fa6 --- /dev/null +++ b/rbi/scalar_api_ruby/models/mcp/server_list_response.rbi @@ -0,0 +1,13 @@ +# typed: strong + +module Scalar + module Models + module Mcp + ServerListResponse = + T.let( + Scalar::Internal::Type::ArrayOf[Scalar::Mcp::McpServer], + Scalar::Internal::Type::Converter + ) + end + end +end diff --git a/rbi/scalar_api_ruby/models/mcp/server_retrieve_params.rbi b/rbi/scalar_api_ruby/models/mcp/server_retrieve_params.rbi new file mode 100644 index 0000000..6714648 --- /dev/null +++ b/rbi/scalar_api_ruby/models/mcp/server_retrieve_params.rbi @@ -0,0 +1,37 @@ +# typed: strong + +module Scalar + module Models + module Mcp + class ServerRetrieveParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::Mcp::ServerRetrieveParams, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :id + + sig do + params( + id: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(id:, request_options: {}) + end + + sig do + override.returns( + { id: String, request_options: Scalar::RequestOptions } + ) + end + def to_hash + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/mcp/server_update_params.rbi b/rbi/scalar_api_ruby/models/mcp/server_update_params.rbi new file mode 100644 index 0000000..5cc8881 --- /dev/null +++ b/rbi/scalar_api_ruby/models/mcp/server_update_params.rbi @@ -0,0 +1,88 @@ +# typed: strong + +module Scalar + module Models + module Mcp + class ServerUpdateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::Mcp::ServerUpdateParams, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :id + + sig { returns(T.nilable(T::Boolean)) } + attr_reader :auto_add_operations + + sig { params(auto_add_operations: T::Boolean).void } + attr_writer :auto_add_operations + + sig { returns(T.nilable(T::Array[String])) } + attr_reader :docs_pages + + sig { params(docs_pages: T::Array[String]).void } + attr_writer :docs_pages + + sig { returns(T.nilable(String)) } + attr_reader :name + + sig { params(name: String).void } + attr_writer :name + + sig { returns(T.nilable(T::Array[String])) } + attr_reader :operations + + sig { params(operations: T::Array[String]).void } + attr_writer :operations + + sig { returns(T.nilable(String)) } + attr_reader :slug + + sig { params(slug: String).void } + attr_writer :slug + + sig do + params( + id: String, + auto_add_operations: T::Boolean, + docs_pages: T::Array[String], + name: String, + operations: T::Array[String], + slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + id:, + auto_add_operations: nil, + docs_pages: nil, + name: nil, + operations: nil, + slug: nil, + request_options: {} + ) + end + + sig do + override.returns( + { + id: String, + auto_add_operations: T::Boolean, + docs_pages: T::Array[String], + name: String, + operations: T::Array[String], + slug: String, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/mcp/servers/installation_create_access_group_params.rbi b/rbi/scalar_api_ruby/models/mcp/servers/installation_create_access_group_params.rbi new file mode 100644 index 0000000..585ce88 --- /dev/null +++ b/rbi/scalar_api_ruby/models/mcp/servers/installation_create_access_group_params.rbi @@ -0,0 +1,60 @@ +# typed: strong + +module Scalar + module Models + module Mcp + module Servers + class InstallationCreateAccessGroupParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any( + Scalar::Mcp::Servers::InstallationCreateAccessGroupParams, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :id + + sig { returns(String) } + attr_accessor :installation_id + + sig { returns(String) } + attr_accessor :access_group_uid + + sig do + params( + id: String, + installation_id: String, + access_group_uid: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + id:, + installation_id:, + access_group_uid:, + request_options: {} + ) + end + + sig do + override.returns( + { + id: String, + installation_id: String, + access_group_uid: String, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/mcp/servers/installation_create_params.rbi b/rbi/scalar_api_ruby/models/mcp/servers/installation_create_params.rbi new file mode 100644 index 0000000..1175dd1 --- /dev/null +++ b/rbi/scalar_api_ruby/models/mcp/servers/installation_create_params.rbi @@ -0,0 +1,69 @@ +# typed: strong + +module Scalar + module Models + module Mcp + module Servers + class InstallationCreateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any( + Scalar::Mcp::Servers::InstallationCreateParams, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :id + + sig { returns(T::Hash[Symbol, T.anything]) } + attr_accessor :document_auth + + sig { returns(String) } + attr_accessor :name + + sig { returns(T.nilable(String)) } + attr_reader :slug + + sig { params(slug: String).void } + attr_writer :slug + + sig do + params( + id: String, + document_auth: T::Hash[Symbol, T.anything], + name: String, + slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + id:, + document_auth:, + name:, + slug: nil, + request_options: {} + ) + end + + sig do + override.returns( + { + id: String, + document_auth: T::Hash[Symbol, T.anything], + name: String, + slug: String, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/mcp/servers/installation_delete_access_group_params.rbi b/rbi/scalar_api_ruby/models/mcp/servers/installation_delete_access_group_params.rbi new file mode 100644 index 0000000..b5d359b --- /dev/null +++ b/rbi/scalar_api_ruby/models/mcp/servers/installation_delete_access_group_params.rbi @@ -0,0 +1,60 @@ +# typed: strong + +module Scalar + module Models + module Mcp + module Servers + class InstallationDeleteAccessGroupParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any( + Scalar::Mcp::Servers::InstallationDeleteAccessGroupParams, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :id + + sig { returns(String) } + attr_accessor :installation_id + + sig { returns(String) } + attr_accessor :access_group_uid + + sig do + params( + id: String, + installation_id: String, + access_group_uid: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + id:, + installation_id:, + access_group_uid:, + request_options: {} + ) + end + + sig do + override.returns( + { + id: String, + installation_id: String, + access_group_uid: String, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/mcp/servers/installation_delete_params.rbi b/rbi/scalar_api_ruby/models/mcp/servers/installation_delete_params.rbi new file mode 100644 index 0000000..c440c56 --- /dev/null +++ b/rbi/scalar_api_ruby/models/mcp/servers/installation_delete_params.rbi @@ -0,0 +1,50 @@ +# typed: strong + +module Scalar + module Models + module Mcp + module Servers + class InstallationDeleteParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any( + Scalar::Mcp::Servers::InstallationDeleteParams, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :id + + sig { returns(String) } + attr_accessor :installation_id + + sig do + params( + id: String, + installation_id: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(id:, installation_id:, request_options: {}) + end + + sig do + override.returns( + { + id: String, + installation_id: String, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/mcp/servers/installation_list_params.rbi b/rbi/scalar_api_ruby/models/mcp/servers/installation_list_params.rbi new file mode 100644 index 0000000..7580c43 --- /dev/null +++ b/rbi/scalar_api_ruby/models/mcp/servers/installation_list_params.rbi @@ -0,0 +1,42 @@ +# typed: strong + +module Scalar + module Models + module Mcp + module Servers + class InstallationListParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any( + Scalar::Mcp::Servers::InstallationListParams, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :id + + sig do + params( + id: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(id:, request_options: {}) + end + + sig do + override.returns( + { id: String, request_options: Scalar::RequestOptions } + ) + end + def to_hash + end + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/mcp/servers/installation_list_response.rbi b/rbi/scalar_api_ruby/models/mcp/servers/installation_list_response.rbi new file mode 100644 index 0000000..cc5034b --- /dev/null +++ b/rbi/scalar_api_ruby/models/mcp/servers/installation_list_response.rbi @@ -0,0 +1,17 @@ +# typed: strong + +module Scalar + module Models + module Mcp + module Servers + InstallationListResponse = + T.let( + Scalar::Internal::Type::ArrayOf[ + Scalar::Mcp::Servers::McpInstallationListItem + ], + Scalar::Internal::Type::Converter + ) + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/mcp/servers/installation_retrieve_params.rbi b/rbi/scalar_api_ruby/models/mcp/servers/installation_retrieve_params.rbi new file mode 100644 index 0000000..81226bc --- /dev/null +++ b/rbi/scalar_api_ruby/models/mcp/servers/installation_retrieve_params.rbi @@ -0,0 +1,50 @@ +# typed: strong + +module Scalar + module Models + module Mcp + module Servers + class InstallationRetrieveParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any( + Scalar::Mcp::Servers::InstallationRetrieveParams, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :id + + sig { returns(String) } + attr_accessor :installation_id + + sig do + params( + id: String, + installation_id: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(id:, installation_id:, request_options: {}) + end + + sig do + override.returns( + { + id: String, + installation_id: String, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/mcp/servers/installation_update_params.rbi b/rbi/scalar_api_ruby/models/mcp/servers/installation_update_params.rbi new file mode 100644 index 0000000..d1dda97 --- /dev/null +++ b/rbi/scalar_api_ruby/models/mcp/servers/installation_update_params.rbi @@ -0,0 +1,102 @@ +# typed: strong + +module Scalar + module Models + module Mcp + module Servers + class InstallationUpdateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any( + Scalar::Mcp::Servers::InstallationUpdateParams, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :id + + sig { returns(String) } + attr_accessor :installation_id + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_reader :document_auth + + sig { params(document_auth: T::Hash[Symbol, T.anything]).void } + attr_writer :document_auth + + sig { returns(T.nilable(T::Boolean)) } + attr_reader :is_private + + sig { params(is_private: T::Boolean).void } + attr_writer :is_private + + sig { returns(T.nilable(String)) } + attr_accessor :login_portal_uid + + sig { returns(T.nilable(String)) } + attr_accessor :mcp_version + + sig { returns(T.nilable(String)) } + attr_reader :name + + sig { params(name: String).void } + attr_writer :name + + sig { returns(T.nilable(String)) } + attr_reader :slug + + sig { params(slug: String).void } + attr_writer :slug + + sig do + params( + id: String, + installation_id: String, + document_auth: T::Hash[Symbol, T.anything], + is_private: T::Boolean, + login_portal_uid: T.nilable(String), + mcp_version: T.nilable(String), + name: String, + slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + id:, + installation_id:, + document_auth: nil, + is_private: nil, + login_portal_uid: nil, + mcp_version: nil, + name: nil, + slug: nil, + request_options: {} + ) + end + + sig do + override.returns( + { + id: String, + installation_id: String, + document_auth: T::Hash[Symbol, T.anything], + is_private: T::Boolean, + login_portal_uid: T.nilable(String), + mcp_version: T.nilable(String), + name: String, + slug: String, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/mcp/servers/mcp_installation_list_item.rbi b/rbi/scalar_api_ruby/models/mcp/servers/mcp_installation_list_item.rbi new file mode 100644 index 0000000..d487dec --- /dev/null +++ b/rbi/scalar_api_ruby/models/mcp/servers/mcp_installation_list_item.rbi @@ -0,0 +1,60 @@ +# typed: strong + +module Scalar + module Models + module Mcp + module Servers + class McpInstallationListItem < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Scalar::Mcp::Servers::McpInstallationListItem, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :id + + sig { returns(T::Boolean) } + attr_accessor :is_private + + sig { returns(T.nilable(String)) } + attr_accessor :mcp_version + + sig { returns(String) } + attr_accessor :name + + sig { returns(String) } + attr_accessor :slug + + sig do + params( + id: String, + is_private: T::Boolean, + mcp_version: T.nilable(String), + name: String, + slug: String + ).returns(T.attached_class) + end + def self.new(id:, is_private:, mcp_version:, name:, slug:) + end + + sig do + override.returns( + { + id: String, + is_private: T::Boolean, + mcp_version: T.nilable(String), + name: String, + slug: String + } + ) + end + def to_hash + end + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/method.rbi b/rbi/scalar_api_ruby/models/method.rbi new file mode 100644 index 0000000..ac637b5 --- /dev/null +++ b/rbi/scalar_api_ruby/models/method.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Scalar + module Models + Method = String + end +end diff --git a/rbi/scalar-api-ruby/models/namespace.rbi b/rbi/scalar_api_ruby/models/namespace.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/namespace.rbi rename to rbi/scalar_api_ruby/models/namespace.rbi diff --git a/rbi/scalar-api-ruby/models/namespace_list_params.rbi b/rbi/scalar_api_ruby/models/namespace_list_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/namespace_list_params.rbi rename to rbi/scalar_api_ruby/models/namespace_list_params.rbi diff --git a/rbi/scalar-api-ruby/models/namespace_list_response.rbi b/rbi/scalar_api_ruby/models/namespace_list_response.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/namespace_list_response.rbi rename to rbi/scalar_api_ruby/models/namespace_list_response.rbi diff --git a/rbi/scalar-api-ruby/models/nanoid.rbi b/rbi/scalar_api_ruby/models/nanoid.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/nanoid.rbi rename to rbi/scalar_api_ruby/models/nanoid.rbi diff --git a/rbi/scalar-api-ruby/models/registry_create_api_document_access_group_params.rbi b/rbi/scalar_api_ruby/models/registry_create_api_document_access_group_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/registry_create_api_document_access_group_params.rbi rename to rbi/scalar_api_ruby/models/registry_create_api_document_access_group_params.rbi diff --git a/rbi/scalar-api-ruby/models/registry_create_api_document_params.rbi b/rbi/scalar_api_ruby/models/registry_create_api_document_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/registry_create_api_document_params.rbi rename to rbi/scalar_api_ruby/models/registry_create_api_document_params.rbi diff --git a/rbi/scalar-api-ruby/models/registry_create_api_document_response.rbi b/rbi/scalar_api_ruby/models/registry_create_api_document_response.rbi similarity index 80% rename from rbi/scalar-api-ruby/models/registry_create_api_document_response.rbi rename to rbi/scalar_api_ruby/models/registry_create_api_document_response.rbi index 2f20f30..b8ed255 100644 --- a/rbi/scalar-api-ruby/models/registry_create_api_document_response.rbi +++ b/rbi/scalar_api_ruby/models/registry_create_api_document_response.rbi @@ -20,9 +20,6 @@ module Scalar sig { returns(String) } attr_accessor :uid - sig { returns(String) } - attr_accessor :version_sha - sig { returns(String) } attr_accessor :version_uid @@ -34,19 +31,11 @@ module Scalar json_sha: String, title: String, uid: String, - version_sha: String, version_uid: String, yaml_sha: String ).returns(T.attached_class) end - def self.new( - json_sha:, - title:, - uid:, - version_sha:, - version_uid:, - yaml_sha: - ) + def self.new(json_sha:, title:, uid:, version_uid:, yaml_sha:) end sig do @@ -55,7 +44,6 @@ module Scalar json_sha: String, title: String, uid: String, - version_sha: String, version_uid: String, yaml_sha: String } diff --git a/rbi/scalar-api-ruby/models/registry_create_api_document_version_params.rbi b/rbi/scalar_api_ruby/models/registry_create_api_document_version_params.rbi similarity index 83% rename from rbi/scalar-api-ruby/models/registry_create_api_document_version_params.rbi rename to rbi/scalar_api_ruby/models/registry_create_api_document_version_params.rbi index a32bea1..c6ef746 100644 --- a/rbi/scalar-api-ruby/models/registry_create_api_document_version_params.rbi +++ b/rbi/scalar_api_ruby/models/registry_create_api_document_version_params.rbi @@ -32,12 +32,6 @@ module Scalar sig { params(force: T::Boolean).void } attr_writer :force - sig { returns(T.nilable(String)) } - attr_reader :last_known_version_sha - - sig { params(last_known_version_sha: String).void } - attr_writer :last_known_version_sha - sig do params( namespace: String, @@ -45,7 +39,6 @@ module Scalar document: String, version: String, force: T::Boolean, - last_known_version_sha: String, request_options: Scalar::RequestOptions::OrHash ).returns(T.attached_class) end @@ -55,7 +48,6 @@ module Scalar document:, version:, force: nil, - last_known_version_sha: nil, request_options: {} ) end @@ -68,7 +60,6 @@ module Scalar document: String, version: String, force: T::Boolean, - last_known_version_sha: String, request_options: Scalar::RequestOptions } ) diff --git a/rbi/scalar-api-ruby/models/registry_delete_api_document_access_group_params.rbi b/rbi/scalar_api_ruby/models/registry_delete_api_document_access_group_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/registry_delete_api_document_access_group_params.rbi rename to rbi/scalar_api_ruby/models/registry_delete_api_document_access_group_params.rbi diff --git a/rbi/scalar-api-ruby/models/registry_delete_api_document_params.rbi b/rbi/scalar_api_ruby/models/registry_delete_api_document_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/registry_delete_api_document_params.rbi rename to rbi/scalar_api_ruby/models/registry_delete_api_document_params.rbi diff --git a/rbi/scalar-api-ruby/models/registry_delete_api_document_version_params.rbi b/rbi/scalar_api_ruby/models/registry_delete_api_document_version_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/registry_delete_api_document_version_params.rbi rename to rbi/scalar_api_ruby/models/registry_delete_api_document_version_params.rbi diff --git a/rbi/scalar-api-ruby/models/registry_list_all_api_documents_params.rbi b/rbi/scalar_api_ruby/models/registry_list_all_api_documents_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/registry_list_all_api_documents_params.rbi rename to rbi/scalar_api_ruby/models/registry_list_all_api_documents_params.rbi diff --git a/rbi/scalar_api_ruby/models/registry_list_all_api_documents_response.rbi b/rbi/scalar_api_ruby/models/registry_list_all_api_documents_response.rbi new file mode 100644 index 0000000..41132c0 --- /dev/null +++ b/rbi/scalar_api_ruby/models/registry_list_all_api_documents_response.rbi @@ -0,0 +1,11 @@ +# typed: strong + +module Scalar + module Models + RegistryListAllAPIDocumentsResponse = + T.let( + Scalar::Internal::Type::ArrayOf[Scalar::APIDocument], + Scalar::Internal::Type::Converter + ) + end +end diff --git a/rbi/scalar-api-ruby/models/registry_list_api_document_version_metadata_params.rbi b/rbi/scalar_api_ruby/models/registry_list_api_document_version_metadata_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/registry_list_api_document_version_metadata_params.rbi rename to rbi/scalar_api_ruby/models/registry_list_api_document_version_metadata_params.rbi diff --git a/rbi/scalar-api-ruby/models/registry_list_api_documents_params.rbi b/rbi/scalar_api_ruby/models/registry_list_api_documents_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/registry_list_api_documents_params.rbi rename to rbi/scalar_api_ruby/models/registry_list_api_documents_params.rbi diff --git a/rbi/scalar_api_ruby/models/registry_list_api_documents_response.rbi b/rbi/scalar_api_ruby/models/registry_list_api_documents_response.rbi new file mode 100644 index 0000000..c85e40b --- /dev/null +++ b/rbi/scalar_api_ruby/models/registry_list_api_documents_response.rbi @@ -0,0 +1,11 @@ +# typed: strong + +module Scalar + module Models + RegistryListAPIDocumentsResponse = + T.let( + Scalar::Internal::Type::ArrayOf[Scalar::APIDocument], + Scalar::Internal::Type::Converter + ) + end +end diff --git a/rbi/scalar-api-ruby/models/registry_retrieve_api_document_version_params.rbi b/rbi/scalar_api_ruby/models/registry_retrieve_api_document_version_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/registry_retrieve_api_document_version_params.rbi rename to rbi/scalar_api_ruby/models/registry_retrieve_api_document_version_params.rbi diff --git a/rbi/scalar-api-ruby/models/registry_retrieve_api_document_version_response.rbi b/rbi/scalar_api_ruby/models/registry_retrieve_api_document_version_response.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/registry_retrieve_api_document_version_response.rbi rename to rbi/scalar_api_ruby/models/registry_retrieve_api_document_version_response.rbi diff --git a/rbi/scalar-api-ruby/models/registry_update_api_document_params.rbi b/rbi/scalar_api_ruby/models/registry_update_api_document_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/registry_update_api_document_params.rbi rename to rbi/scalar_api_ruby/models/registry_update_api_document_params.rbi diff --git a/rbi/scalar-api-ruby/models/registry_update_api_document_version_params.rbi b/rbi/scalar_api_ruby/models/registry_update_api_document_version_params.rbi similarity index 73% rename from rbi/scalar-api-ruby/models/registry_update_api_document_version_params.rbi rename to rbi/scalar_api_ruby/models/registry_update_api_document_version_params.rbi index fe5f020..4da71a8 100644 --- a/rbi/scalar-api-ruby/models/registry_update_api_document_version_params.rbi +++ b/rbi/scalar_api_ruby/models/registry_update_api_document_version_params.rbi @@ -26,30 +26,16 @@ module Scalar sig { returns(String) } attr_accessor :document - sig { returns(T.nilable(String)) } - attr_reader :last_known_version_sha - - sig { params(last_known_version_sha: String).void } - attr_writer :last_known_version_sha - sig do params( namespace: String, slug: String, semver: String, document: String, - last_known_version_sha: String, request_options: Scalar::RequestOptions::OrHash ).returns(T.attached_class) end - def self.new( - namespace:, - slug:, - semver:, - document:, - last_known_version_sha: nil, - request_options: {} - ) + def self.new(namespace:, slug:, semver:, document:, request_options: {}) end sig do @@ -59,7 +45,6 @@ module Scalar slug: String, semver: String, document: String, - last_known_version_sha: String, request_options: Scalar::RequestOptions } ) diff --git a/rbi/scalar-api-ruby/models/registry_update_api_document_version_response.rbi b/rbi/scalar_api_ruby/models/registry_update_api_document_version_response.rbi similarity index 58% rename from rbi/scalar-api-ruby/models/registry_update_api_document_version_response.rbi rename to rbi/scalar_api_ruby/models/registry_update_api_document_version_response.rbi index 7e52803..afa4479 100644 --- a/rbi/scalar-api-ruby/models/registry_update_api_document_version_response.rbi +++ b/rbi/scalar_api_ruby/models/registry_update_api_document_version_response.rbi @@ -14,25 +14,16 @@ module Scalar sig { returns(String) } attr_accessor :json_sha - sig { returns(String) } - attr_accessor :version_sha - sig { returns(String) } attr_accessor :yaml_sha sig do - params(json_sha: String, version_sha: String, yaml_sha: String).returns( - T.attached_class - ) + params(json_sha: String, yaml_sha: String).returns(T.attached_class) end - def self.new(json_sha:, version_sha:, yaml_sha:) + def self.new(json_sha:, yaml_sha:) end - sig do - override.returns( - { json_sha: String, version_sha: String, yaml_sha: String } - ) - end + sig { override.returns({ json_sha: String, yaml_sha: String }) } def to_hash end end diff --git a/rbi/scalar-api-ruby/models/rule_list_rulesets_response.rbi b/rbi/scalar_api_ruby/models/rule.rbi similarity index 69% rename from rbi/scalar-api-ruby/models/rule_list_rulesets_response.rbi rename to rbi/scalar_api_ruby/models/rule.rbi index 6debc40..059f007 100644 --- a/rbi/scalar-api-ruby/models/rule_list_rulesets_response.rbi +++ b/rbi/scalar_api_ruby/models/rule.rbi @@ -2,14 +2,8 @@ module Scalar module Models - class RuleListRulesetsResponseItem < Scalar::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Scalar::Models::RuleListRulesetsResponseItem, - Scalar::Internal::AnyHash - ) - end + class Rule < Scalar::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(Scalar::Rule, Scalar::Internal::AnyHash) } sig { returns(String) } attr_accessor :description @@ -57,13 +51,5 @@ module Scalar def to_hash end end - - RuleListRulesetsResponse = - T.let( - Scalar::Internal::Type::ArrayOf[ - Scalar::Models::RuleListRulesetsResponseItem - ], - Scalar::Internal::Type::Converter - ) end end diff --git a/rbi/scalar-api-ruby/models/rule_create_ruleset_access_group_params.rbi b/rbi/scalar_api_ruby/models/rule_create_ruleset_access_group_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/rule_create_ruleset_access_group_params.rbi rename to rbi/scalar_api_ruby/models/rule_create_ruleset_access_group_params.rbi diff --git a/rbi/scalar-api-ruby/models/rule_create_ruleset_params.rbi b/rbi/scalar_api_ruby/models/rule_create_ruleset_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/rule_create_ruleset_params.rbi rename to rbi/scalar_api_ruby/models/rule_create_ruleset_params.rbi diff --git a/rbi/scalar-api-ruby/models/rule_delete_ruleset_access_group_params.rbi b/rbi/scalar_api_ruby/models/rule_delete_ruleset_access_group_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/rule_delete_ruleset_access_group_params.rbi rename to rbi/scalar_api_ruby/models/rule_delete_ruleset_access_group_params.rbi diff --git a/rbi/scalar-api-ruby/models/rule_delete_ruleset_params.rbi b/rbi/scalar_api_ruby/models/rule_delete_ruleset_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/rule_delete_ruleset_params.rbi rename to rbi/scalar_api_ruby/models/rule_delete_ruleset_params.rbi diff --git a/rbi/scalar-api-ruby/models/rule_list_rulesets_params.rbi b/rbi/scalar_api_ruby/models/rule_list_rulesets_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/rule_list_rulesets_params.rbi rename to rbi/scalar_api_ruby/models/rule_list_rulesets_params.rbi diff --git a/rbi/scalar_api_ruby/models/rule_list_rulesets_response.rbi b/rbi/scalar_api_ruby/models/rule_list_rulesets_response.rbi new file mode 100644 index 0000000..6f3100b --- /dev/null +++ b/rbi/scalar_api_ruby/models/rule_list_rulesets_response.rbi @@ -0,0 +1,11 @@ +# typed: strong + +module Scalar + module Models + RuleListRulesetsResponse = + T.let( + Scalar::Internal::Type::ArrayOf[Scalar::Rule], + Scalar::Internal::Type::Converter + ) + end +end diff --git a/rbi/scalar-api-ruby/models/rule_retrieve_ruleset_document_params.rbi b/rbi/scalar_api_ruby/models/rule_retrieve_ruleset_document_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/rule_retrieve_ruleset_document_params.rbi rename to rbi/scalar_api_ruby/models/rule_retrieve_ruleset_document_params.rbi diff --git a/rbi/scalar-api-ruby/models/rule_retrieve_ruleset_document_response.rbi b/rbi/scalar_api_ruby/models/rule_retrieve_ruleset_document_response.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/rule_retrieve_ruleset_document_response.rbi rename to rbi/scalar_api_ruby/models/rule_retrieve_ruleset_document_response.rbi diff --git a/rbi/scalar-api-ruby/models/rule_update_ruleset_params.rbi b/rbi/scalar_api_ruby/models/rule_update_ruleset_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/rule_update_ruleset_params.rbi rename to rbi/scalar_api_ruby/models/rule_update_ruleset_params.rbi diff --git a/rbi/scalar-api-ruby/models/scalar_doc_create_guide_params.rbi b/rbi/scalar_api_ruby/models/scalar_doc_create_guide_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/scalar_doc_create_guide_params.rbi rename to rbi/scalar_api_ruby/models/scalar_doc_create_guide_params.rbi diff --git a/rbi/scalar-api-ruby/models/scalar_doc_create_guide_response.rbi b/rbi/scalar_api_ruby/models/scalar_doc_create_guide_response.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/scalar_doc_create_guide_response.rbi rename to rbi/scalar_api_ruby/models/scalar_doc_create_guide_response.rbi diff --git a/rbi/scalar_api_ruby/models/scalar_doc_create_project_params.rbi b/rbi/scalar_api_ruby/models/scalar_doc_create_project_params.rbi new file mode 100644 index 0000000..95f5deb --- /dev/null +++ b/rbi/scalar_api_ruby/models/scalar_doc_create_project_params.rbi @@ -0,0 +1,206 @@ +# typed: strong + +module Scalar + module Models + class ScalarDocCreateProjectParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::ScalarDocCreateProjectParams, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :name + + sig { returns(Scalar::ScalarDocCreateProjectParams::Provider::OrSymbol) } + attr_accessor :provider + + sig do + returns( + T.nilable(Scalar::ScalarDocCreateProjectParams::BitbucketRepository) + ) + end + attr_reader :bitbucket_repository + + sig do + params( + bitbucket_repository: + Scalar::ScalarDocCreateProjectParams::BitbucketRepository::OrHash + ).void + end + attr_writer :bitbucket_repository + + sig { returns(T.nilable(T::Boolean)) } + attr_reader :blank + + sig { params(blank: T::Boolean).void } + attr_writer :blank + + sig do + returns( + T.nilable(Scalar::ScalarDocCreateProjectParams::GithubRepository) + ) + end + attr_reader :github_repository + + sig do + params( + github_repository: + Scalar::ScalarDocCreateProjectParams::GithubRepository::OrHash + ).void + end + attr_writer :github_repository + + sig { returns(T.nilable(T::Boolean)) } + attr_reader :is_private + + sig { params(is_private: T::Boolean).void } + attr_writer :is_private + + sig { returns(T.nilable(String)) } + attr_reader :slug + + sig { params(slug: String).void } + attr_writer :slug + + sig do + params( + name: String, + provider: Scalar::ScalarDocCreateProjectParams::Provider::OrSymbol, + bitbucket_repository: + Scalar::ScalarDocCreateProjectParams::BitbucketRepository::OrHash, + blank: T::Boolean, + github_repository: + Scalar::ScalarDocCreateProjectParams::GithubRepository::OrHash, + is_private: T::Boolean, + slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + name:, + provider:, + bitbucket_repository: nil, + blank: nil, + github_repository: nil, + is_private: nil, + slug: nil, + request_options: {} + ) + end + + sig do + override.returns( + { + name: String, + provider: Scalar::ScalarDocCreateProjectParams::Provider::OrSymbol, + bitbucket_repository: + Scalar::ScalarDocCreateProjectParams::BitbucketRepository, + blank: T::Boolean, + github_repository: + Scalar::ScalarDocCreateProjectParams::GithubRepository, + is_private: T::Boolean, + slug: String, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + + module Provider + extend Scalar::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, Scalar::ScalarDocCreateProjectParams::Provider) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + FORGEJO = + T.let( + :forgejo, + Scalar::ScalarDocCreateProjectParams::Provider::TaggedSymbol + ) + GITHUB = + T.let( + :github, + Scalar::ScalarDocCreateProjectParams::Provider::TaggedSymbol + ) + BITBUCKET = + T.let( + :bitbucket, + Scalar::ScalarDocCreateProjectParams::Provider::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Scalar::ScalarDocCreateProjectParams::Provider::TaggedSymbol + ] + ) + end + def self.values + end + end + + class BitbucketRepository < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Scalar::ScalarDocCreateProjectParams::BitbucketRepository, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :repo_uuid + + sig { returns(String) } + attr_accessor :workspace_uuid + + sig do + params(repo_uuid: String, workspace_uuid: String).returns( + T.attached_class + ) + end + def self.new(repo_uuid:, workspace_uuid:) + end + + sig { override.returns({ repo_uuid: String, workspace_uuid: String }) } + def to_hash + end + end + + class GithubRepository < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Scalar::ScalarDocCreateProjectParams::GithubRepository, + Scalar::Internal::AnyHash + ) + end + + sig { returns(Integer) } + attr_accessor :installation_id + + sig { returns(Integer) } + attr_accessor :repo_id + + sig do + params(installation_id: Integer, repo_id: Integer).returns( + T.attached_class + ) + end + def self.new(installation_id:, repo_id:) + end + + sig { override.returns({ installation_id: Integer, repo_id: Integer }) } + def to_hash + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/scalar_doc_delete_project_params.rbi b/rbi/scalar_api_ruby/models/scalar_doc_delete_project_params.rbi new file mode 100644 index 0000000..8be45a8 --- /dev/null +++ b/rbi/scalar_api_ruby/models/scalar_doc_delete_project_params.rbi @@ -0,0 +1,35 @@ +# typed: strong + +module Scalar + module Models + class ScalarDocDeleteProjectParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::ScalarDocDeleteProjectParams, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :slug + + sig do + params( + slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(slug:, request_options: {}) + end + + sig do + override.returns( + { slug: String, request_options: Scalar::RequestOptions } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar-api-ruby/models/scalar_doc_list_guides_params.rbi b/rbi/scalar_api_ruby/models/scalar_doc_list_guides_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/scalar_doc_list_guides_params.rbi rename to rbi/scalar_api_ruby/models/scalar_doc_list_guides_params.rbi diff --git a/rbi/scalar_api_ruby/models/scalar_doc_list_guides_response.rbi b/rbi/scalar_api_ruby/models/scalar_doc_list_guides_response.rbi new file mode 100644 index 0000000..4452f2c --- /dev/null +++ b/rbi/scalar_api_ruby/models/scalar_doc_list_guides_response.rbi @@ -0,0 +1,11 @@ +# typed: strong + +module Scalar + module Models + ScalarDocListGuidesResponse = + T.let( + Scalar::Internal::Type::ArrayOf[Scalar::GithubProject], + Scalar::Internal::Type::Converter + ) + end +end diff --git a/rbi/scalar_api_ruby/models/scalar_doc_list_project_config_params.rbi b/rbi/scalar_api_ruby/models/scalar_doc_list_project_config_params.rbi new file mode 100644 index 0000000..1f68dc7 --- /dev/null +++ b/rbi/scalar_api_ruby/models/scalar_doc_list_project_config_params.rbi @@ -0,0 +1,45 @@ +# typed: strong + +module Scalar + module Models + class ScalarDocListProjectConfigParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any( + Scalar::ScalarDocListProjectConfigParams, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :slug + + sig { returns(T.nilable(String)) } + attr_reader :ref + + sig { params(ref: String).void } + attr_writer :ref + + sig do + params( + slug: String, + ref: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(slug:, ref: nil, request_options: {}) + end + + sig do + override.returns( + { slug: String, ref: String, request_options: Scalar::RequestOptions } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/scalar_doc_list_project_config_response.rbi b/rbi/scalar_api_ruby/models/scalar_doc_list_project_config_response.rbi new file mode 100644 index 0000000..851f473 --- /dev/null +++ b/rbi/scalar_api_ruby/models/scalar_doc_list_project_config_response.rbi @@ -0,0 +1,46 @@ +# typed: strong + +module Scalar + module Models + class ScalarDocListProjectConfigResponse < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Scalar::Models::ScalarDocListProjectConfigResponse, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :base_token + + sig { returns(String) } + attr_accessor :content + + sig { returns(String) } + attr_accessor :path + + sig { returns(String) } + attr_accessor :ref + + sig do + params( + base_token: String, + content: String, + path: String, + ref: String + ).returns(T.attached_class) + end + def self.new(base_token:, content:, path:, ref:) + end + + sig do + override.returns( + { base_token: String, content: String, path: String, ref: String } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/scalar_doc_list_project_domain_params.rbi b/rbi/scalar_api_ruby/models/scalar_doc_list_project_domain_params.rbi new file mode 100644 index 0000000..3e65caf --- /dev/null +++ b/rbi/scalar_api_ruby/models/scalar_doc_list_project_domain_params.rbi @@ -0,0 +1,38 @@ +# typed: strong + +module Scalar + module Models + class ScalarDocListProjectDomainParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any( + Scalar::ScalarDocListProjectDomainParams, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :slug + + sig do + params( + slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(slug:, request_options: {}) + end + + sig do + override.returns( + { slug: String, request_options: Scalar::RequestOptions } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/scalar_doc_list_project_domain_response.rbi b/rbi/scalar_api_ruby/models/scalar_doc_list_project_domain_response.rbi new file mode 100644 index 0000000..d811ad2 --- /dev/null +++ b/rbi/scalar_api_ruby/models/scalar_doc_list_project_domain_response.rbi @@ -0,0 +1,38 @@ +# typed: strong + +module Scalar + module Models + class ScalarDocListProjectDomainResponse < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Scalar::Models::ScalarDocListProjectDomainResponse, + Scalar::Internal::AnyHash + ) + end + + sig { returns(T.nilable(String)) } + attr_accessor :custom_domain + + sig { returns(T.nilable(String)) } + attr_accessor :scalar_domain + + sig do + params( + custom_domain: T.nilable(String), + scalar_domain: T.nilable(String) + ).returns(T.attached_class) + end + def self.new(custom_domain:, scalar_domain:) + end + + sig do + override.returns( + { custom_domain: T.nilable(String), scalar_domain: T.nilable(String) } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/scalar_doc_list_project_domain_status_params.rbi b/rbi/scalar_api_ruby/models/scalar_doc_list_project_domain_status_params.rbi new file mode 100644 index 0000000..f6e3a56 --- /dev/null +++ b/rbi/scalar_api_ruby/models/scalar_doc_list_project_domain_status_params.rbi @@ -0,0 +1,38 @@ +# typed: strong + +module Scalar + module Models + class ScalarDocListProjectDomainStatusParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any( + Scalar::ScalarDocListProjectDomainStatusParams, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :slug + + sig do + params( + slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(slug:, request_options: {}) + end + + sig do + override.returns( + { slug: String, request_options: Scalar::RequestOptions } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/scalar_doc_list_project_domain_status_response.rbi b/rbi/scalar_api_ruby/models/scalar_doc_list_project_domain_status_response.rbi new file mode 100644 index 0000000..d2d2a25 --- /dev/null +++ b/rbi/scalar_api_ruby/models/scalar_doc_list_project_domain_status_response.rbi @@ -0,0 +1,142 @@ +# typed: strong + +module Scalar + module Models + class ScalarDocListProjectDomainStatusResponse < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Scalar::Models::ScalarDocListProjectDomainStatusResponse, + Scalar::Internal::AnyHash + ) + end + + sig { returns(T.nilable(String)) } + attr_accessor :domain + + sig do + returns( + T.nilable( + Scalar::Models::ScalarDocListProjectDomainStatusResponse::Expected + ) + ) + end + attr_reader :expected + + sig do + params( + expected: + T.nilable( + Scalar::Models::ScalarDocListProjectDomainStatusResponse::Expected::OrHash + ) + ).void + end + attr_writer :expected + + sig { returns(T::Array[String]) } + attr_accessor :found + + sig do + returns( + Scalar::Models::ScalarDocListProjectDomainStatusResponse::Status::TaggedSymbol + ) + end + attr_accessor :status + + sig do + params( + domain: T.nilable(String), + expected: + T.nilable( + Scalar::Models::ScalarDocListProjectDomainStatusResponse::Expected::OrHash + ), + found: T::Array[String], + status: + Scalar::Models::ScalarDocListProjectDomainStatusResponse::Status::OrSymbol + ).returns(T.attached_class) + end + def self.new(domain:, expected:, found:, status:) + end + + sig do + override.returns( + { + domain: T.nilable(String), + expected: + T.nilable( + Scalar::Models::ScalarDocListProjectDomainStatusResponse::Expected + ), + found: T::Array[String], + status: + Scalar::Models::ScalarDocListProjectDomainStatusResponse::Status::TaggedSymbol + } + ) + end + def to_hash + end + + class Expected < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Scalar::Models::ScalarDocListProjectDomainStatusResponse::Expected, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :target + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(target: String, type: Symbol).returns(T.attached_class) } + def self.new(target:, type: :CNAME) + end + + sig { override.returns({ target: String, type: Symbol }) } + def to_hash + end + end + + module Status + extend Scalar::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Scalar::Models::ScalarDocListProjectDomainStatusResponse::Status + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + VERIFIED = + T.let( + :verified, + Scalar::Models::ScalarDocListProjectDomainStatusResponse::Status::TaggedSymbol + ) + PENDING = + T.let( + :pending, + Scalar::Models::ScalarDocListProjectDomainStatusResponse::Status::TaggedSymbol + ) + MISCONFIGURED = + T.let( + :misconfigured, + Scalar::Models::ScalarDocListProjectDomainStatusResponse::Status::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Scalar::Models::ScalarDocListProjectDomainStatusResponse::Status::TaggedSymbol + ] + ) + end + def self.values + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/scalar_doc_list_projects_params.rbi b/rbi/scalar_api_ruby/models/scalar_doc_list_projects_params.rbi new file mode 100644 index 0000000..ef43bfd --- /dev/null +++ b/rbi/scalar_api_ruby/models/scalar_doc_list_projects_params.rbi @@ -0,0 +1,38 @@ +# typed: strong + +module Scalar + module Models + class ScalarDocListProjectsParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::ScalarDocListProjectsParams, Scalar::Internal::AnyHash) + end + + sig { returns(T.nilable(Integer)) } + attr_reader :limit + + sig { params(limit: Integer).void } + attr_writer :limit + + sig do + params( + limit: Integer, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(limit: nil, request_options: {}) + end + + sig do + override.returns( + { limit: Integer, request_options: Scalar::RequestOptions } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/scalar_doc_list_projects_response.rbi b/rbi/scalar_api_ruby/models/scalar_doc_list_projects_response.rbi new file mode 100644 index 0000000..2d72bfb --- /dev/null +++ b/rbi/scalar_api_ruby/models/scalar_doc_list_projects_response.rbi @@ -0,0 +1,38 @@ +# typed: strong + +module Scalar + module Models + class ScalarDocListProjectsResponse < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Scalar::Models::ScalarDocListProjectsResponse, + Scalar::Internal::AnyHash + ) + end + + sig { returns(T::Array[Scalar::DocsProject]) } + attr_accessor :data + + sig { returns(T::Boolean) } + attr_accessor :has_more + + sig do + params( + data: T::Array[Scalar::DocsProject::OrHash], + has_more: T::Boolean + ).returns(T.attached_class) + end + def self.new(data:, has_more:) + end + + sig do + override.returns( + { data: T::Array[Scalar::DocsProject], has_more: T::Boolean } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar-api-ruby/models/scalar_doc_publish_guide_params.rbi b/rbi/scalar_api_ruby/models/scalar_doc_publish_guide_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/scalar_doc_publish_guide_params.rbi rename to rbi/scalar_api_ruby/models/scalar_doc_publish_guide_params.rbi diff --git a/rbi/scalar-api-ruby/models/scalar_doc_publish_guide_response.rbi b/rbi/scalar_api_ruby/models/scalar_doc_publish_guide_response.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/scalar_doc_publish_guide_response.rbi rename to rbi/scalar_api_ruby/models/scalar_doc_publish_guide_response.rbi diff --git a/rbi/scalar_api_ruby/models/scalar_doc_publish_project_params.rbi b/rbi/scalar_api_ruby/models/scalar_doc_publish_project_params.rbi new file mode 100644 index 0000000..ce53adf --- /dev/null +++ b/rbi/scalar_api_ruby/models/scalar_doc_publish_project_params.rbi @@ -0,0 +1,71 @@ +# typed: strong + +module Scalar + module Models + class ScalarDocPublishProjectParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any( + Scalar::ScalarDocPublishProjectParams, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :slug + + sig { returns(T.nilable(String)) } + attr_reader :commit_sha + + sig { params(commit_sha: String).void } + attr_writer :commit_sha + + sig { returns(T.nilable(String)) } + attr_reader :config_path + + sig { params(config_path: String).void } + attr_writer :config_path + + sig { returns(T.nilable(T::Boolean)) } + attr_reader :preview + + sig { params(preview: T::Boolean).void } + attr_writer :preview + + sig do + params( + slug: String, + commit_sha: String, + config_path: String, + preview: T::Boolean, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + slug:, + commit_sha: nil, + config_path: nil, + preview: nil, + request_options: {} + ) + end + + sig do + override.returns( + { + slug: String, + commit_sha: String, + config_path: String, + preview: T::Boolean, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/scalar_doc_publish_project_response.rbi b/rbi/scalar_api_ruby/models/scalar_doc_publish_project_response.rbi new file mode 100644 index 0000000..0d543fa --- /dev/null +++ b/rbi/scalar_api_ruby/models/scalar_doc_publish_project_response.rbi @@ -0,0 +1,26 @@ +# typed: strong + +module Scalar + module Models + class ScalarDocPublishProjectResponse < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Scalar::Models::ScalarDocPublishProjectResponse, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :publish_uid + + sig { params(publish_uid: String).returns(T.attached_class) } + def self.new(publish_uid:) + end + + sig { override.returns({ publish_uid: String }) } + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/scalar_doc_retrieve_project_params.rbi b/rbi/scalar_api_ruby/models/scalar_doc_retrieve_project_params.rbi new file mode 100644 index 0000000..1559b66 --- /dev/null +++ b/rbi/scalar_api_ruby/models/scalar_doc_retrieve_project_params.rbi @@ -0,0 +1,38 @@ +# typed: strong + +module Scalar + module Models + class ScalarDocRetrieveProjectParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any( + Scalar::ScalarDocRetrieveProjectParams, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :slug + + sig do + params( + slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(slug:, request_options: {}) + end + + sig do + override.returns( + { slug: String, request_options: Scalar::RequestOptions } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/scalar_doc_update_project_config_params.rbi b/rbi/scalar_api_ruby/models/scalar_doc_update_project_config_params.rbi new file mode 100644 index 0000000..dfa6c40 --- /dev/null +++ b/rbi/scalar_api_ruby/models/scalar_doc_update_project_config_params.rbi @@ -0,0 +1,86 @@ +# typed: strong + +module Scalar + module Models + class ScalarDocUpdateProjectConfigParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any( + Scalar::ScalarDocUpdateProjectConfigParams, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :slug + + sig { returns(String) } + attr_accessor :content + + sig { returns(T.nilable(String)) } + attr_reader :base_token + + sig { params(base_token: String).void } + attr_writer :base_token + + sig { returns(T.nilable(String)) } + attr_reader :message + + sig { params(message: String).void } + attr_writer :message + + sig { returns(T.nilable(String)) } + attr_reader :path + + sig { params(path: String).void } + attr_writer :path + + sig { returns(T.nilable(String)) } + attr_reader :ref + + sig { params(ref: String).void } + attr_writer :ref + + sig do + params( + slug: String, + content: String, + base_token: String, + message: String, + path: String, + ref: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + slug:, + content:, + base_token: nil, + message: nil, + path: nil, + ref: nil, + request_options: {} + ) + end + + sig do + override.returns( + { + slug: String, + content: String, + base_token: String, + message: String, + path: String, + ref: String, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/scalar_doc_update_project_config_response.rbi b/rbi/scalar_api_ruby/models/scalar_doc_update_project_config_response.rbi new file mode 100644 index 0000000..e0a9563 --- /dev/null +++ b/rbi/scalar_api_ruby/models/scalar_doc_update_project_config_response.rbi @@ -0,0 +1,42 @@ +# typed: strong + +module Scalar + module Models + class ScalarDocUpdateProjectConfigResponse < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Scalar::Models::ScalarDocUpdateProjectConfigResponse, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :base_token + + sig { returns(T.nilable(String)) } + attr_accessor :commit_sha + + sig { returns(String) } + attr_accessor :ref + + sig do + params( + base_token: String, + commit_sha: T.nilable(String), + ref: String + ).returns(T.attached_class) + end + def self.new(base_token:, commit_sha:, ref:) + end + + sig do + override.returns( + { base_token: String, commit_sha: T.nilable(String), ref: String } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/scalar_doc_update_project_params.rbi b/rbi/scalar_api_ruby/models/scalar_doc_update_project_params.rbi new file mode 100644 index 0000000..55db3c5 --- /dev/null +++ b/rbi/scalar_api_ruby/models/scalar_doc_update_project_params.rbi @@ -0,0 +1,126 @@ +# typed: strong + +module Scalar + module Models + class ScalarDocUpdateProjectParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::ScalarDocUpdateProjectParams, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :slug + + sig { returns(T.nilable(T::Array[String])) } + attr_reader :access_groups + + sig { params(access_groups: T::Array[String]).void } + attr_writer :access_groups + + sig { returns(T.nilable(String)) } + attr_reader :active_theme_id + + sig { params(active_theme_id: String).void } + attr_writer :active_theme_id + + sig { returns(T.nilable(T::Boolean)) } + attr_reader :agent_enabled + + sig { params(agent_enabled: T::Boolean).void } + attr_writer :agent_enabled + + sig { returns(T.nilable(T::Boolean)) } + attr_reader :analytics_enabled + + sig { params(analytics_enabled: T::Boolean).void } + attr_writer :analytics_enabled + + sig { returns(T.nilable(T::Boolean)) } + attr_reader :is_private + + sig { params(is_private: T::Boolean).void } + attr_writer :is_private + + sig { returns(T.nilable(T.any(String, Symbol))) } + attr_reader :login_portal_uid + + sig do + params( + login_portal_uid: + Scalar::ScalarDocUpdateProjectParams::LoginPortalUID::Variants + ).void + end + attr_writer :login_portal_uid + + sig { returns(T.nilable(String)) } + attr_reader :name + + sig { params(name: String).void } + attr_writer :name + + sig do + params( + slug: String, + access_groups: T::Array[String], + active_theme_id: String, + agent_enabled: T::Boolean, + analytics_enabled: T::Boolean, + is_private: T::Boolean, + login_portal_uid: + Scalar::ScalarDocUpdateProjectParams::LoginPortalUID::Variants, + name: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + slug:, + access_groups: nil, + active_theme_id: nil, + agent_enabled: nil, + analytics_enabled: nil, + is_private: nil, + login_portal_uid: nil, + name: nil, + request_options: {} + ) + end + + sig do + override.returns( + { + slug: String, + access_groups: T::Array[String], + active_theme_id: String, + agent_enabled: T::Boolean, + analytics_enabled: T::Boolean, + is_private: T::Boolean, + login_portal_uid: T.any(String, Symbol), + name: String, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + + module LoginPortalUID + extend Scalar::Internal::Type::Union + + Variants = T.type_alias { T.any(String, Symbol) } + + sig do + override.returns( + T::Array[ + Scalar::ScalarDocUpdateProjectParams::LoginPortalUID::Variants + ] + ) + end + def self.variants + end + end + end + end +end diff --git a/rbi/scalar-api-ruby/models/registry_list_all_api_documents_response.rbi b/rbi/scalar_api_ruby/models/schema.rbi similarity index 54% rename from rbi/scalar-api-ruby/models/registry_list_all_api_documents_response.rbi rename to rbi/scalar_api_ruby/models/schema.rbi index 7e740b2..c385482 100644 --- a/rbi/scalar-api-ruby/models/registry_list_all_api_documents_response.rbi +++ b/rbi/scalar_api_ruby/models/schema.rbi @@ -2,14 +2,8 @@ module Scalar module Models - class RegistryListAllAPIDocumentsResponseItem < Scalar::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Scalar::Models::RegistryListAllAPIDocumentsResponseItem, - Scalar::Internal::AnyHash - ) - end + class Schema < Scalar::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(Scalar::Schema, Scalar::Internal::AnyHash) } sig { returns(String) } attr_accessor :description @@ -23,19 +17,13 @@ module Scalar sig { returns(String) } attr_accessor :slug - sig { returns(T.anything) } - attr_accessor :tags - sig { returns(String) } attr_accessor :title sig { returns(String) } attr_accessor :uid - sig { returns(String) } - attr_accessor :version - - sig { returns(T::Array[Scalar::ManagedDocVersion]) } + sig { returns(T::Array[Scalar::ManagedSchemaVersion]) } attr_accessor :versions sig do @@ -44,11 +32,9 @@ module Scalar is_private: T::Boolean, namespace: String, slug: String, - tags: T.anything, title: String, uid: String, - version: String, - versions: T::Array[Scalar::ManagedDocVersion::OrHash] + versions: T::Array[Scalar::ManagedSchemaVersion::OrHash] ).returns(T.attached_class) end def self.new( @@ -56,10 +42,8 @@ module Scalar is_private:, namespace:, slug:, - tags:, title:, uid:, - version:, versions: ) end @@ -71,24 +55,14 @@ module Scalar is_private: T::Boolean, namespace: String, slug: String, - tags: T.anything, title: String, uid: String, - version: String, - versions: T::Array[Scalar::ManagedDocVersion] + versions: T::Array[Scalar::ManagedSchemaVersion] } ) end def to_hash end end - - RegistryListAllAPIDocumentsResponse = - T.let( - Scalar::Internal::Type::ArrayOf[ - Scalar::Models::RegistryListAllAPIDocumentsResponseItem - ], - Scalar::Internal::Type::Converter - ) end end diff --git a/rbi/scalar-api-ruby/models/schema_create_params.rbi b/rbi/scalar_api_ruby/models/schema_create_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/schema_create_params.rbi rename to rbi/scalar_api_ruby/models/schema_create_params.rbi diff --git a/rbi/scalar-api-ruby/models/schema_delete_params.rbi b/rbi/scalar_api_ruby/models/schema_delete_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/schema_delete_params.rbi rename to rbi/scalar_api_ruby/models/schema_delete_params.rbi diff --git a/rbi/scalar-api-ruby/models/schema_list_params.rbi b/rbi/scalar_api_ruby/models/schema_list_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/schema_list_params.rbi rename to rbi/scalar_api_ruby/models/schema_list_params.rbi diff --git a/rbi/scalar_api_ruby/models/schema_list_response.rbi b/rbi/scalar_api_ruby/models/schema_list_response.rbi new file mode 100644 index 0000000..1d473d0 --- /dev/null +++ b/rbi/scalar_api_ruby/models/schema_list_response.rbi @@ -0,0 +1,11 @@ +# typed: strong + +module Scalar + module Models + SchemaListResponse = + T.let( + Scalar::Internal::Type::ArrayOf[Scalar::Schema], + Scalar::Internal::Type::Converter + ) + end +end diff --git a/rbi/scalar-api-ruby/models/schema_update_params.rbi b/rbi/scalar_api_ruby/models/schema_update_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/schema_update_params.rbi rename to rbi/scalar_api_ruby/models/schema_update_params.rbi diff --git a/rbi/scalar-api-ruby/models/schemas/access_group_create_params.rbi b/rbi/scalar_api_ruby/models/schemas/access_group_create_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/schemas/access_group_create_params.rbi rename to rbi/scalar_api_ruby/models/schemas/access_group_create_params.rbi diff --git a/rbi/scalar-api-ruby/models/schemas/access_group_delete_params.rbi b/rbi/scalar_api_ruby/models/schemas/access_group_delete_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/schemas/access_group_delete_params.rbi rename to rbi/scalar_api_ruby/models/schemas/access_group_delete_params.rbi diff --git a/rbi/scalar-api-ruby/models/schemas/version_create_params.rbi b/rbi/scalar_api_ruby/models/schemas/version_create_params.rbi similarity index 85% rename from rbi/scalar-api-ruby/models/schemas/version_create_params.rbi rename to rbi/scalar_api_ruby/models/schemas/version_create_params.rbi index 5201ad2..665e3b7 100644 --- a/rbi/scalar-api-ruby/models/schemas/version_create_params.rbi +++ b/rbi/scalar_api_ruby/models/schemas/version_create_params.rbi @@ -27,12 +27,19 @@ module Scalar sig { returns(String) } attr_accessor :version + sig { returns(T.nilable(T::Boolean)) } + attr_reader :force + + sig { params(force: T::Boolean).void } + attr_writer :force + sig do params( namespace: String, slug: String, document: String, version: String, + force: T::Boolean, request_options: Scalar::RequestOptions::OrHash ).returns(T.attached_class) end @@ -41,6 +48,7 @@ module Scalar slug:, document:, version:, + force: nil, request_options: {} ) end @@ -52,6 +60,7 @@ module Scalar slug: String, document: String, version: String, + force: T::Boolean, request_options: Scalar::RequestOptions } ) diff --git a/rbi/scalar_api_ruby/models/schemas/version_create_response.rbi b/rbi/scalar_api_ruby/models/schemas/version_create_response.rbi new file mode 100644 index 0000000..2661880 --- /dev/null +++ b/rbi/scalar_api_ruby/models/schemas/version_create_response.rbi @@ -0,0 +1,28 @@ +# typed: strong + +module Scalar + module Models + module Schemas + class VersionCreateResponse < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Scalar::Models::Schemas::VersionCreateResponse, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :uid + + sig { params(uid: String).returns(T.attached_class) } + def self.new(uid:) + end + + sig { override.returns({ uid: String }) } + def to_hash + end + end + end + end +end diff --git a/rbi/scalar-api-ruby/models/schemas/version_delete_params.rbi b/rbi/scalar_api_ruby/models/schemas/version_delete_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/schemas/version_delete_params.rbi rename to rbi/scalar_api_ruby/models/schemas/version_delete_params.rbi diff --git a/rbi/scalar-api-ruby/models/schemas/version_retrieve_params.rbi b/rbi/scalar_api_ruby/models/schemas/version_retrieve_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/schemas/version_retrieve_params.rbi rename to rbi/scalar_api_ruby/models/schemas/version_retrieve_params.rbi diff --git a/rbi/scalar-api-ruby/models/schemas/version_retrieve_response.rbi b/rbi/scalar_api_ruby/models/schemas/version_retrieve_response.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/schemas/version_retrieve_response.rbi rename to rbi/scalar_api_ruby/models/schemas/version_retrieve_response.rbi diff --git a/rbi/scalar_api_ruby/models/sdk.rbi b/rbi/scalar_api_ruby/models/sdk.rbi new file mode 100644 index 0000000..cc8b757 --- /dev/null +++ b/rbi/scalar_api_ruby/models/sdk.rbi @@ -0,0 +1,92 @@ +# typed: strong + +module Scalar + module Models + class Sdk < Scalar::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(Scalar::Sdk, Scalar::Internal::AnyHash) } + + sig { returns(T.nilable(String)) } + attr_accessor :api_uid + + sig { returns(String) } + attr_accessor :current_version + + sig { returns(String) } + attr_accessor :description + + sig { returns(T::Boolean) } + attr_accessor :is_private + + sig { returns(String) } + attr_accessor :namespace + + sig { returns(String) } + attr_accessor :slug + + sig { returns(T::Array[Scalar::SdkTargetSummary]) } + attr_accessor :targets + + sig { returns(String) } + attr_accessor :title + + sig { returns(String) } + attr_accessor :uid + + sig { returns(T::Array[Scalar::SdkVersion]) } + attr_accessor :versions + + sig { returns(T.nilable(String)) } + attr_accessor :api_version + + sig do + params( + api_uid: T.nilable(String), + current_version: String, + description: String, + is_private: T::Boolean, + namespace: String, + slug: String, + targets: T::Array[Scalar::SdkTargetSummary::OrHash], + title: String, + uid: String, + versions: T::Array[Scalar::SdkVersion::OrHash], + api_version: T.nilable(String) + ).returns(T.attached_class) + end + def self.new( + api_uid:, + current_version:, + description:, + is_private:, + namespace:, + slug:, + targets:, + title:, + uid:, + versions:, + api_version: nil + ) + end + + sig do + override.returns( + { + api_uid: T.nilable(String), + current_version: String, + description: String, + is_private: T::Boolean, + namespace: String, + slug: String, + targets: T::Array[Scalar::SdkTargetSummary], + title: String, + uid: String, + versions: T::Array[Scalar::SdkVersion], + api_version: T.nilable(String) + } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/sdk_build_params.rbi b/rbi/scalar_api_ruby/models/sdk_build_params.rbi new file mode 100644 index 0000000..714baf6 --- /dev/null +++ b/rbi/scalar_api_ruby/models/sdk_build_params.rbi @@ -0,0 +1,91 @@ +# typed: strong + +module Scalar + module Models + class SdkBuildParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::SdkBuildParams, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :uid + + sig do + returns(T.nilable(T::Array[Scalar::SdkBuildParams::Language::OrSymbol])) + end + attr_reader :languages + + sig do + params( + languages: T::Array[Scalar::SdkBuildParams::Language::OrSymbol] + ).void + end + attr_writer :languages + + sig { returns(T.nilable(String)) } + attr_reader :version + + sig { params(version: String).void } + attr_writer :version + + sig do + params( + uid: String, + languages: T::Array[Scalar::SdkBuildParams::Language::OrSymbol], + version: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(uid:, languages: nil, version: nil, request_options: {}) + end + + sig do + override.returns( + { + uid: String, + languages: T::Array[Scalar::SdkBuildParams::Language::OrSymbol], + version: String, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + + module Language + extend Scalar::Internal::Type::Enum + + TaggedSymbol = + T.type_alias { T.all(Symbol, Scalar::SdkBuildParams::Language) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + TYPESCRIPT = + T.let(:typescript, Scalar::SdkBuildParams::Language::TaggedSymbol) + PYTHON = T.let(:python, Scalar::SdkBuildParams::Language::TaggedSymbol) + CLI = T.let(:cli, Scalar::SdkBuildParams::Language::TaggedSymbol) + CSHARP = T.let(:csharp, Scalar::SdkBuildParams::Language::TaggedSymbol) + JAVA = T.let(:java, Scalar::SdkBuildParams::Language::TaggedSymbol) + RUBY = T.let(:ruby, Scalar::SdkBuildParams::Language::TaggedSymbol) + PHP = T.let(:php, Scalar::SdkBuildParams::Language::TaggedSymbol) + GO = T.let(:go, Scalar::SdkBuildParams::Language::TaggedSymbol) + RUST = T.let(:rust, Scalar::SdkBuildParams::Language::TaggedSymbol) + KOTLIN = T.let(:kotlin, Scalar::SdkBuildParams::Language::TaggedSymbol) + SWIFT = T.let(:swift, Scalar::SdkBuildParams::Language::TaggedSymbol) + CPP = T.let(:cpp, Scalar::SdkBuildParams::Language::TaggedSymbol) + DART = T.let(:dart, Scalar::SdkBuildParams::Language::TaggedSymbol) + + sig do + override.returns( + T::Array[Scalar::SdkBuildParams::Language::TaggedSymbol] + ) + end + def self.values + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/sdk_build_response.rbi b/rbi/scalar_api_ruby/models/sdk_build_response.rbi new file mode 100644 index 0000000..1eead10 --- /dev/null +++ b/rbi/scalar_api_ruby/models/sdk_build_response.rbi @@ -0,0 +1,23 @@ +# typed: strong + +module Scalar + module Models + class SdkBuildResponse < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(Scalar::Models::SdkBuildResponse, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :version + + sig { params(version: String).returns(T.attached_class) } + def self.new(version:) + end + + sig { override.returns({ version: String }) } + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/sdk_create_params.rbi b/rbi/scalar_api_ruby/models/sdk_create_params.rbi new file mode 100644 index 0000000..b88a27f --- /dev/null +++ b/rbi/scalar_api_ruby/models/sdk_create_params.rbi @@ -0,0 +1,114 @@ +# typed: strong + +module Scalar + module Models + class SdkCreateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::SdkCreateParams, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :api_uid + + sig { returns(T::Array[Scalar::SdkCreateParams::Language::OrSymbol]) } + attr_accessor :languages + + sig { returns(T.nilable(String)) } + attr_reader :class_name + + sig { params(class_name: String).void } + attr_writer :class_name + + sig { returns(T.nilable(String)) } + attr_reader :config + + sig { params(config: String).void } + attr_writer :config + + sig { returns(T.nilable(String)) } + attr_reader :slug + + sig { params(slug: String).void } + attr_writer :slug + + sig { returns(T.nilable(String)) } + attr_reader :title + + sig { params(title: String).void } + attr_writer :title + + sig do + params( + api_uid: String, + languages: T::Array[Scalar::SdkCreateParams::Language::OrSymbol], + class_name: String, + config: String, + slug: String, + title: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + api_uid:, + languages:, + class_name: nil, + config: nil, + slug: nil, + title: nil, + request_options: {} + ) + end + + sig do + override.returns( + { + api_uid: String, + languages: T::Array[Scalar::SdkCreateParams::Language::OrSymbol], + class_name: String, + config: String, + slug: String, + title: String, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + + module Language + extend Scalar::Internal::Type::Enum + + TaggedSymbol = + T.type_alias { T.all(Symbol, Scalar::SdkCreateParams::Language) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + TYPESCRIPT = + T.let(:typescript, Scalar::SdkCreateParams::Language::TaggedSymbol) + PYTHON = T.let(:python, Scalar::SdkCreateParams::Language::TaggedSymbol) + CLI = T.let(:cli, Scalar::SdkCreateParams::Language::TaggedSymbol) + CSHARP = T.let(:csharp, Scalar::SdkCreateParams::Language::TaggedSymbol) + JAVA = T.let(:java, Scalar::SdkCreateParams::Language::TaggedSymbol) + RUBY = T.let(:ruby, Scalar::SdkCreateParams::Language::TaggedSymbol) + PHP = T.let(:php, Scalar::SdkCreateParams::Language::TaggedSymbol) + GO = T.let(:go, Scalar::SdkCreateParams::Language::TaggedSymbol) + RUST = T.let(:rust, Scalar::SdkCreateParams::Language::TaggedSymbol) + KOTLIN = T.let(:kotlin, Scalar::SdkCreateParams::Language::TaggedSymbol) + SWIFT = T.let(:swift, Scalar::SdkCreateParams::Language::TaggedSymbol) + CPP = T.let(:cpp, Scalar::SdkCreateParams::Language::TaggedSymbol) + DART = T.let(:dart, Scalar::SdkCreateParams::Language::TaggedSymbol) + + sig do + override.returns( + T::Array[Scalar::SdkCreateParams::Language::TaggedSymbol] + ) + end + def self.values + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/sdk_delete_params.rbi b/rbi/scalar_api_ruby/models/sdk_delete_params.rbi new file mode 100644 index 0000000..ab4b073 --- /dev/null +++ b/rbi/scalar_api_ruby/models/sdk_delete_params.rbi @@ -0,0 +1,35 @@ +# typed: strong + +module Scalar + module Models + class SdkDeleteParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::SdkDeleteParams, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :uid + + sig do + params( + uid: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(uid:, request_options: {}) + end + + sig do + override.returns( + { uid: String, request_options: Scalar::RequestOptions } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/sdk_list_params.rbi b/rbi/scalar_api_ruby/models/sdk_list_params.rbi new file mode 100644 index 0000000..0099e99 --- /dev/null +++ b/rbi/scalar_api_ruby/models/sdk_list_params.rbi @@ -0,0 +1,36 @@ +# typed: strong + +module Scalar + module Models + class SdkListParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias { T.any(Scalar::SdkListParams, Scalar::Internal::AnyHash) } + + sig { returns(T.nilable(Integer)) } + attr_reader :limit + + sig { params(limit: Integer).void } + attr_writer :limit + + sig do + params( + limit: Integer, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(limit: nil, request_options: {}) + end + + sig do + override.returns( + { limit: Integer, request_options: Scalar::RequestOptions } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/sdk_list_response.rbi b/rbi/scalar_api_ruby/models/sdk_list_response.rbi new file mode 100644 index 0000000..44be97b --- /dev/null +++ b/rbi/scalar_api_ruby/models/sdk_list_response.rbi @@ -0,0 +1,33 @@ +# typed: strong + +module Scalar + module Models + class SdkListResponse < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(Scalar::Models::SdkListResponse, Scalar::Internal::AnyHash) + end + + sig { returns(T::Array[Scalar::Sdk]) } + attr_accessor :data + + sig { returns(T::Boolean) } + attr_accessor :has_more + + sig do + params( + data: T::Array[Scalar::Sdk::OrHash], + has_more: T::Boolean + ).returns(T.attached_class) + end + def self.new(data:, has_more:) + end + + sig do + override.returns({ data: T::Array[Scalar::Sdk], has_more: T::Boolean }) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/sdk_retrieve_params.rbi b/rbi/scalar_api_ruby/models/sdk_retrieve_params.rbi new file mode 100644 index 0000000..a102d0b --- /dev/null +++ b/rbi/scalar_api_ruby/models/sdk_retrieve_params.rbi @@ -0,0 +1,35 @@ +# typed: strong + +module Scalar + module Models + class SdkRetrieveParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::SdkRetrieveParams, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :uid + + sig do + params( + uid: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(uid:, request_options: {}) + end + + sig do + override.returns( + { uid: String, request_options: Scalar::RequestOptions } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/sdk_target_summary.rbi b/rbi/scalar_api_ruby/models/sdk_target_summary.rbi new file mode 100644 index 0000000..2b3e2b7 --- /dev/null +++ b/rbi/scalar_api_ruby/models/sdk_target_summary.rbi @@ -0,0 +1,72 @@ +# typed: strong + +module Scalar + module Models + class SdkTargetSummary < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(Scalar::SdkTargetSummary, Scalar::Internal::AnyHash) + end + + sig { returns(Scalar::SdkTargetSummary::Language::TaggedSymbol) } + attr_accessor :language + + sig { returns(String) } + attr_accessor :slug + + sig do + params( + language: Scalar::SdkTargetSummary::Language::OrSymbol, + slug: String + ).returns(T.attached_class) + end + def self.new(language:, slug:) + end + + sig do + override.returns( + { + language: Scalar::SdkTargetSummary::Language::TaggedSymbol, + slug: String + } + ) + end + def to_hash + end + + module Language + extend Scalar::Internal::Type::Enum + + TaggedSymbol = + T.type_alias { T.all(Symbol, Scalar::SdkTargetSummary::Language) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + TYPESCRIPT = + T.let(:typescript, Scalar::SdkTargetSummary::Language::TaggedSymbol) + PYTHON = + T.let(:python, Scalar::SdkTargetSummary::Language::TaggedSymbol) + CLI = T.let(:cli, Scalar::SdkTargetSummary::Language::TaggedSymbol) + CSHARP = + T.let(:csharp, Scalar::SdkTargetSummary::Language::TaggedSymbol) + JAVA = T.let(:java, Scalar::SdkTargetSummary::Language::TaggedSymbol) + RUBY = T.let(:ruby, Scalar::SdkTargetSummary::Language::TaggedSymbol) + PHP = T.let(:php, Scalar::SdkTargetSummary::Language::TaggedSymbol) + GO = T.let(:go, Scalar::SdkTargetSummary::Language::TaggedSymbol) + RUST = T.let(:rust, Scalar::SdkTargetSummary::Language::TaggedSymbol) + KOTLIN = + T.let(:kotlin, Scalar::SdkTargetSummary::Language::TaggedSymbol) + SWIFT = T.let(:swift, Scalar::SdkTargetSummary::Language::TaggedSymbol) + CPP = T.let(:cpp, Scalar::SdkTargetSummary::Language::TaggedSymbol) + DART = T.let(:dart, Scalar::SdkTargetSummary::Language::TaggedSymbol) + + sig do + override.returns( + T::Array[Scalar::SdkTargetSummary::Language::TaggedSymbol] + ) + end + def self.values + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/sdk_update_params.rbi b/rbi/scalar_api_ruby/models/sdk_update_params.rbi new file mode 100644 index 0000000..bef749a --- /dev/null +++ b/rbi/scalar_api_ruby/models/sdk_update_params.rbi @@ -0,0 +1,89 @@ +# typed: strong + +module Scalar + module Models + class SdkUpdateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::SdkUpdateParams, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :uid + + sig { returns(T.nilable(String)) } + attr_accessor :api_uid + + sig { returns(T.nilable(String)) } + attr_accessor :api_version + + sig { returns(T.nilable(String)) } + attr_reader :config + + sig { params(config: String).void } + attr_writer :config + + sig { returns(T.nilable(T::Boolean)) } + attr_reader :is_private + + sig { params(is_private: T::Boolean).void } + attr_writer :is_private + + sig { returns(T.nilable(String)) } + attr_reader :slug + + sig { params(slug: String).void } + attr_writer :slug + + sig { returns(T.nilable(String)) } + attr_reader :title + + sig { params(title: String).void } + attr_writer :title + + sig do + params( + uid: String, + api_uid: T.nilable(String), + api_version: T.nilable(String), + config: String, + is_private: T::Boolean, + slug: String, + title: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + uid:, + api_uid: nil, + api_version: nil, + config: nil, + is_private: nil, + slug: nil, + title: nil, + request_options: {} + ) + end + + sig do + override.returns( + { + uid: String, + api_uid: T.nilable(String), + api_version: T.nilable(String), + config: String, + is_private: T::Boolean, + slug: String, + title: String, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/sdk_version.rbi b/rbi/scalar_api_ruby/models/sdk_version.rbi new file mode 100644 index 0000000..ea0c544 --- /dev/null +++ b/rbi/scalar_api_ruby/models/sdk_version.rbi @@ -0,0 +1,115 @@ +# typed: strong + +module Scalar + module Models + class SdkVersion < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(Scalar::SdkVersion, Scalar::Internal::AnyHash) } + + sig { returns(String) } + attr_accessor :api_version + + sig { returns(T::Array[Scalar::SdkVersion::Language::TaggedSymbol]) } + attr_accessor :languages + + sig { returns(Scalar::SdkVersion::Status::TaggedSymbol) } + attr_accessor :status + + sig { returns(String) } + attr_accessor :version + + sig { returns(T.nilable(Integer)) } + attr_reader :created_at + + sig { params(created_at: Integer).void } + attr_writer :created_at + + sig { returns(T.nilable(Integer)) } + attr_reader :published_at + + sig { params(published_at: Integer).void } + attr_writer :published_at + + sig do + params( + api_version: String, + languages: T::Array[Scalar::SdkVersion::Language::OrSymbol], + status: Scalar::SdkVersion::Status::OrSymbol, + version: String, + created_at: Integer, + published_at: Integer + ).returns(T.attached_class) + end + def self.new( + api_version:, + languages:, + status:, + version:, + created_at: nil, + published_at: nil + ) + end + + sig do + override.returns( + { + api_version: String, + languages: T::Array[Scalar::SdkVersion::Language::TaggedSymbol], + status: Scalar::SdkVersion::Status::TaggedSymbol, + version: String, + created_at: Integer, + published_at: Integer + } + ) + end + def to_hash + end + + module Language + extend Scalar::Internal::Type::Enum + + TaggedSymbol = + T.type_alias { T.all(Symbol, Scalar::SdkVersion::Language) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + TYPESCRIPT = + T.let(:typescript, Scalar::SdkVersion::Language::TaggedSymbol) + PYTHON = T.let(:python, Scalar::SdkVersion::Language::TaggedSymbol) + CLI = T.let(:cli, Scalar::SdkVersion::Language::TaggedSymbol) + CSHARP = T.let(:csharp, Scalar::SdkVersion::Language::TaggedSymbol) + JAVA = T.let(:java, Scalar::SdkVersion::Language::TaggedSymbol) + RUBY = T.let(:ruby, Scalar::SdkVersion::Language::TaggedSymbol) + PHP = T.let(:php, Scalar::SdkVersion::Language::TaggedSymbol) + GO = T.let(:go, Scalar::SdkVersion::Language::TaggedSymbol) + RUST = T.let(:rust, Scalar::SdkVersion::Language::TaggedSymbol) + KOTLIN = T.let(:kotlin, Scalar::SdkVersion::Language::TaggedSymbol) + SWIFT = T.let(:swift, Scalar::SdkVersion::Language::TaggedSymbol) + CPP = T.let(:cpp, Scalar::SdkVersion::Language::TaggedSymbol) + DART = T.let(:dart, Scalar::SdkVersion::Language::TaggedSymbol) + + sig do + override.returns(T::Array[Scalar::SdkVersion::Language::TaggedSymbol]) + end + def self.values + end + end + + module Status + extend Scalar::Internal::Type::Enum + + TaggedSymbol = + T.type_alias { T.all(Symbol, Scalar::SdkVersion::Status) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + DRAFT = T.let(:draft, Scalar::SdkVersion::Status::TaggedSymbol) + PUBLISHED = T.let(:published, Scalar::SdkVersion::Status::TaggedSymbol) + + sig do + override.returns(T::Array[Scalar::SdkVersion::Status::TaggedSymbol]) + end + def self.values + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/sdks/repository_link_params.rbi b/rbi/scalar_api_ruby/models/sdks/repository_link_params.rbi new file mode 100644 index 0000000..2a54fb3 --- /dev/null +++ b/rbi/scalar_api_ruby/models/sdks/repository_link_params.rbi @@ -0,0 +1,156 @@ +# typed: strong + +module Scalar + module Models + module Sdks + class RepositoryLinkParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::Sdks::RepositoryLinkParams, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :uid + + sig { returns(String) } + attr_accessor :base_branch + + sig { returns(Scalar::Sdks::RepositoryLinkParams::Language::OrSymbol) } + attr_accessor :language + + sig { returns(Integer) } + attr_accessor :repository_id + + sig { returns(T.nilable(String)) } + attr_reader :prerelease_type + + sig { params(prerelease_type: String).void } + attr_writer :prerelease_type + + sig do + params( + uid: String, + base_branch: String, + language: Scalar::Sdks::RepositoryLinkParams::Language::OrSymbol, + repository_id: Integer, + prerelease_type: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + uid:, + base_branch:, + language:, + repository_id:, + prerelease_type: nil, + request_options: {} + ) + end + + sig do + override.returns( + { + uid: String, + base_branch: String, + language: Scalar::Sdks::RepositoryLinkParams::Language::OrSymbol, + repository_id: Integer, + prerelease_type: String, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + + module Language + extend Scalar::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, Scalar::Sdks::RepositoryLinkParams::Language) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + TYPESCRIPT = + T.let( + :typescript, + Scalar::Sdks::RepositoryLinkParams::Language::TaggedSymbol + ) + PYTHON = + T.let( + :python, + Scalar::Sdks::RepositoryLinkParams::Language::TaggedSymbol + ) + CLI = + T.let( + :cli, + Scalar::Sdks::RepositoryLinkParams::Language::TaggedSymbol + ) + CSHARP = + T.let( + :csharp, + Scalar::Sdks::RepositoryLinkParams::Language::TaggedSymbol + ) + JAVA = + T.let( + :java, + Scalar::Sdks::RepositoryLinkParams::Language::TaggedSymbol + ) + RUBY = + T.let( + :ruby, + Scalar::Sdks::RepositoryLinkParams::Language::TaggedSymbol + ) + PHP = + T.let( + :php, + Scalar::Sdks::RepositoryLinkParams::Language::TaggedSymbol + ) + GO = + T.let( + :go, + Scalar::Sdks::RepositoryLinkParams::Language::TaggedSymbol + ) + RUST = + T.let( + :rust, + Scalar::Sdks::RepositoryLinkParams::Language::TaggedSymbol + ) + KOTLIN = + T.let( + :kotlin, + Scalar::Sdks::RepositoryLinkParams::Language::TaggedSymbol + ) + SWIFT = + T.let( + :swift, + Scalar::Sdks::RepositoryLinkParams::Language::TaggedSymbol + ) + CPP = + T.let( + :cpp, + Scalar::Sdks::RepositoryLinkParams::Language::TaggedSymbol + ) + DART = + T.let( + :dart, + Scalar::Sdks::RepositoryLinkParams::Language::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Scalar::Sdks::RepositoryLinkParams::Language::TaggedSymbol + ] + ) + end + def self.values + end + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/sdks/repository_link_response.rbi b/rbi/scalar_api_ruby/models/sdks/repository_link_response.rbi new file mode 100644 index 0000000..d347640 --- /dev/null +++ b/rbi/scalar_api_ruby/models/sdks/repository_link_response.rbi @@ -0,0 +1,31 @@ +# typed: strong + +module Scalar + module Models + module Sdks + class RepositoryLinkResponse < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Scalar::Models::Sdks::RepositoryLinkResponse, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :branch + + sig { returns(String) } + attr_accessor :repo + + sig { params(branch: String, repo: String).returns(T.attached_class) } + def self.new(branch:, repo:) + end + + sig { override.returns({ branch: String, repo: String }) } + def to_hash + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/sdks/repository_unlink_params.rbi b/rbi/scalar_api_ruby/models/sdks/repository_unlink_params.rbi new file mode 100644 index 0000000..d224967 --- /dev/null +++ b/rbi/scalar_api_ruby/models/sdks/repository_unlink_params.rbi @@ -0,0 +1,137 @@ +# typed: strong + +module Scalar + module Models + module Sdks + class RepositoryUnlinkParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any( + Scalar::Sdks::RepositoryUnlinkParams, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :uid + + sig do + returns(Scalar::Sdks::RepositoryUnlinkParams::Language::OrSymbol) + end + attr_accessor :language + + sig do + params( + uid: String, + language: Scalar::Sdks::RepositoryUnlinkParams::Language::OrSymbol, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(uid:, language:, request_options: {}) + end + + sig do + override.returns( + { + uid: String, + language: + Scalar::Sdks::RepositoryUnlinkParams::Language::OrSymbol, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + + module Language + extend Scalar::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, Scalar::Sdks::RepositoryUnlinkParams::Language) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + TYPESCRIPT = + T.let( + :typescript, + Scalar::Sdks::RepositoryUnlinkParams::Language::TaggedSymbol + ) + PYTHON = + T.let( + :python, + Scalar::Sdks::RepositoryUnlinkParams::Language::TaggedSymbol + ) + CLI = + T.let( + :cli, + Scalar::Sdks::RepositoryUnlinkParams::Language::TaggedSymbol + ) + CSHARP = + T.let( + :csharp, + Scalar::Sdks::RepositoryUnlinkParams::Language::TaggedSymbol + ) + JAVA = + T.let( + :java, + Scalar::Sdks::RepositoryUnlinkParams::Language::TaggedSymbol + ) + RUBY = + T.let( + :ruby, + Scalar::Sdks::RepositoryUnlinkParams::Language::TaggedSymbol + ) + PHP = + T.let( + :php, + Scalar::Sdks::RepositoryUnlinkParams::Language::TaggedSymbol + ) + GO = + T.let( + :go, + Scalar::Sdks::RepositoryUnlinkParams::Language::TaggedSymbol + ) + RUST = + T.let( + :rust, + Scalar::Sdks::RepositoryUnlinkParams::Language::TaggedSymbol + ) + KOTLIN = + T.let( + :kotlin, + Scalar::Sdks::RepositoryUnlinkParams::Language::TaggedSymbol + ) + SWIFT = + T.let( + :swift, + Scalar::Sdks::RepositoryUnlinkParams::Language::TaggedSymbol + ) + CPP = + T.let( + :cpp, + Scalar::Sdks::RepositoryUnlinkParams::Language::TaggedSymbol + ) + DART = + T.let( + :dart, + Scalar::Sdks::RepositoryUnlinkParams::Language::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Scalar::Sdks::RepositoryUnlinkParams::Language::TaggedSymbol + ] + ) + end + def self.values + end + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/sdks/repository_update_publishing_params.rbi b/rbi/scalar_api_ruby/models/sdks/repository_update_publishing_params.rbi new file mode 100644 index 0000000..7e2c3c1 --- /dev/null +++ b/rbi/scalar_api_ruby/models/sdks/repository_update_publishing_params.rbi @@ -0,0 +1,274 @@ +# typed: strong + +module Scalar + module Models + module Sdks + class RepositoryUpdatePublishingParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any( + Scalar::Sdks::RepositoryUpdatePublishingParams, + Scalar::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :uid + + sig do + returns( + Scalar::Sdks::RepositoryUpdatePublishingParams::Language::OrSymbol + ) + end + attr_accessor :language + + sig { returns(T::Boolean) } + attr_accessor :publish_on_merge + + sig do + returns( + T.nilable( + Scalar::Sdks::RepositoryUpdatePublishingParams::Access::OrSymbol + ) + ) + end + attr_reader :access + + sig do + params( + access: + Scalar::Sdks::RepositoryUpdatePublishingParams::Access::OrSymbol + ).void + end + attr_writer :access + + sig do + returns( + T.nilable( + Scalar::Sdks::RepositoryUpdatePublishingParams::AuthMethod::OrSymbol + ) + ) + end + attr_reader :auth_method + + sig do + params( + auth_method: + Scalar::Sdks::RepositoryUpdatePublishingParams::AuthMethod::OrSymbol + ).void + end + attr_writer :auth_method + + sig { returns(T.nilable(String)) } + attr_reader :tag + + sig { params(tag: String).void } + attr_writer :tag + + sig do + params( + uid: String, + language: + Scalar::Sdks::RepositoryUpdatePublishingParams::Language::OrSymbol, + publish_on_merge: T::Boolean, + access: + Scalar::Sdks::RepositoryUpdatePublishingParams::Access::OrSymbol, + auth_method: + Scalar::Sdks::RepositoryUpdatePublishingParams::AuthMethod::OrSymbol, + tag: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + uid:, + language:, + publish_on_merge:, + access: nil, + auth_method: nil, + tag: nil, + request_options: {} + ) + end + + sig do + override.returns( + { + uid: String, + language: + Scalar::Sdks::RepositoryUpdatePublishingParams::Language::OrSymbol, + publish_on_merge: T::Boolean, + access: + Scalar::Sdks::RepositoryUpdatePublishingParams::Access::OrSymbol, + auth_method: + Scalar::Sdks::RepositoryUpdatePublishingParams::AuthMethod::OrSymbol, + tag: String, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + + module Language + extend Scalar::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Scalar::Sdks::RepositoryUpdatePublishingParams::Language + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + TYPESCRIPT = + T.let( + :typescript, + Scalar::Sdks::RepositoryUpdatePublishingParams::Language::TaggedSymbol + ) + PYTHON = + T.let( + :python, + Scalar::Sdks::RepositoryUpdatePublishingParams::Language::TaggedSymbol + ) + CLI = + T.let( + :cli, + Scalar::Sdks::RepositoryUpdatePublishingParams::Language::TaggedSymbol + ) + CSHARP = + T.let( + :csharp, + Scalar::Sdks::RepositoryUpdatePublishingParams::Language::TaggedSymbol + ) + JAVA = + T.let( + :java, + Scalar::Sdks::RepositoryUpdatePublishingParams::Language::TaggedSymbol + ) + RUBY = + T.let( + :ruby, + Scalar::Sdks::RepositoryUpdatePublishingParams::Language::TaggedSymbol + ) + PHP = + T.let( + :php, + Scalar::Sdks::RepositoryUpdatePublishingParams::Language::TaggedSymbol + ) + GO = + T.let( + :go, + Scalar::Sdks::RepositoryUpdatePublishingParams::Language::TaggedSymbol + ) + RUST = + T.let( + :rust, + Scalar::Sdks::RepositoryUpdatePublishingParams::Language::TaggedSymbol + ) + KOTLIN = + T.let( + :kotlin, + Scalar::Sdks::RepositoryUpdatePublishingParams::Language::TaggedSymbol + ) + SWIFT = + T.let( + :swift, + Scalar::Sdks::RepositoryUpdatePublishingParams::Language::TaggedSymbol + ) + CPP = + T.let( + :cpp, + Scalar::Sdks::RepositoryUpdatePublishingParams::Language::TaggedSymbol + ) + DART = + T.let( + :dart, + Scalar::Sdks::RepositoryUpdatePublishingParams::Language::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Scalar::Sdks::RepositoryUpdatePublishingParams::Language::TaggedSymbol + ] + ) + end + def self.values + end + end + + module Access + extend Scalar::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Scalar::Sdks::RepositoryUpdatePublishingParams::Access + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + PUBLIC = + T.let( + :public, + Scalar::Sdks::RepositoryUpdatePublishingParams::Access::TaggedSymbol + ) + RESTRICTED = + T.let( + :restricted, + Scalar::Sdks::RepositoryUpdatePublishingParams::Access::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Scalar::Sdks::RepositoryUpdatePublishingParams::Access::TaggedSymbol + ] + ) + end + def self.values + end + end + + module AuthMethod + extend Scalar::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Scalar::Sdks::RepositoryUpdatePublishingParams::AuthMethod + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + OIDC = + T.let( + :oidc, + Scalar::Sdks::RepositoryUpdatePublishingParams::AuthMethod::TaggedSymbol + ) + ACCESS_TOKEN = + T.let( + :"access-token", + Scalar::Sdks::RepositoryUpdatePublishingParams::AuthMethod::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Scalar::Sdks::RepositoryUpdatePublishingParams::AuthMethod::TaggedSymbol + ] + ) + end + def self.values + end + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/sdks/version_create_params.rbi b/rbi/scalar_api_ruby/models/sdks/version_create_params.rbi new file mode 100644 index 0000000..7e5a8ca --- /dev/null +++ b/rbi/scalar_api_ruby/models/sdks/version_create_params.rbi @@ -0,0 +1,50 @@ +# typed: strong + +module Scalar + module Models + module Sdks + class VersionCreateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::Sdks::VersionCreateParams, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :uid + + sig { returns(String) } + attr_accessor :api_version + + sig { returns(String) } + attr_accessor :version + + sig do + params( + uid: String, + api_version: String, + version: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(uid:, api_version:, version:, request_options: {}) + end + + sig do + override.returns( + { + uid: String, + api_version: String, + version: String, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/sdks/version_delete_params.rbi b/rbi/scalar_api_ruby/models/sdks/version_delete_params.rbi new file mode 100644 index 0000000..2cba1be --- /dev/null +++ b/rbi/scalar_api_ruby/models/sdks/version_delete_params.rbi @@ -0,0 +1,45 @@ +# typed: strong + +module Scalar + module Models + module Sdks + class VersionDeleteParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::Sdks::VersionDeleteParams, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :uid + + sig { returns(String) } + attr_accessor :version + + sig do + params( + uid: String, + version: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(uid:, version:, request_options: {}) + end + + sig do + override.returns( + { + uid: String, + version: String, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + end + end + end +end diff --git a/rbi/scalar-api-ruby/models/slug.rbi b/rbi/scalar_api_ruby/models/slug.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/slug.rbi rename to rbi/scalar_api_ruby/models/slug.rbi diff --git a/rbi/scalar-api-ruby/models/team_list_response.rbi b/rbi/scalar_api_ruby/models/team.rbi similarity index 72% rename from rbi/scalar-api-ruby/models/team_list_response.rbi rename to rbi/scalar_api_ruby/models/team.rbi index 79e7e36..97546ad 100644 --- a/rbi/scalar-api-ruby/models/team_list_response.rbi +++ b/rbi/scalar_api_ruby/models/team.rbi @@ -2,11 +2,8 @@ module Scalar module Models - class TeamListResponseItem < Scalar::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any(Scalar::Models::TeamListResponseItem, Scalar::Internal::AnyHash) - end + class Team < Scalar::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(Scalar::Team, Scalar::Internal::AnyHash) } sig { returns(String) } attr_accessor :name @@ -52,11 +49,5 @@ module Scalar def to_hash end end - - TeamListResponse = - T.let( - Scalar::Internal::Type::ArrayOf[Scalar::Models::TeamListResponseItem], - Scalar::Internal::Type::Converter - ) end end diff --git a/rbi/scalar_api_ruby/models/team_image.rbi b/rbi/scalar_api_ruby/models/team_image.rbi new file mode 100644 index 0000000..17f2989 --- /dev/null +++ b/rbi/scalar_api_ruby/models/team_image.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Scalar + module Models + TeamImage = String + end +end diff --git a/rbi/scalar-api-ruby/models/team_list_params.rbi b/rbi/scalar_api_ruby/models/team_list_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/team_list_params.rbi rename to rbi/scalar_api_ruby/models/team_list_params.rbi diff --git a/rbi/scalar_api_ruby/models/team_list_response.rbi b/rbi/scalar_api_ruby/models/team_list_response.rbi new file mode 100644 index 0000000..12454cb --- /dev/null +++ b/rbi/scalar_api_ruby/models/team_list_response.rbi @@ -0,0 +1,11 @@ +# typed: strong + +module Scalar + module Models + TeamListResponse = + T.let( + Scalar::Internal::Type::ArrayOf[Scalar::Team], + Scalar::Internal::Type::Converter + ) + end +end diff --git a/rbi/scalar_api_ruby/models/team_name.rbi b/rbi/scalar_api_ruby/models/team_name.rbi new file mode 100644 index 0000000..b029ac7 --- /dev/null +++ b/rbi/scalar_api_ruby/models/team_name.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Scalar + module Models + TeamName = String + end +end diff --git a/rbi/scalar_api_ruby/models/team_summary.rbi b/rbi/scalar_api_ruby/models/team_summary.rbi new file mode 100644 index 0000000..10b2370 --- /dev/null +++ b/rbi/scalar_api_ruby/models/team_summary.rbi @@ -0,0 +1,34 @@ +# typed: strong + +module Scalar + module Models + class TeamSummary < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(Scalar::TeamSummary, Scalar::Internal::AnyHash) } + + sig { returns(String) } + attr_accessor :name + + sig { returns(String) } + attr_accessor :uid + + sig { returns(T.nilable(String)) } + attr_reader :image_uri + + sig { params(image_uri: String).void } + attr_writer :image_uri + + sig do + params(name: String, uid: String, image_uri: String).returns( + T.attached_class + ) + end + def self.new(name:, uid:, image_uri: nil) + end + + sig { override.returns({ name: String, uid: String, image_uri: String }) } + def to_hash + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/teams/email.rbi b/rbi/scalar_api_ruby/models/teams/email.rbi new file mode 100644 index 0000000..c0617c7 --- /dev/null +++ b/rbi/scalar_api_ruby/models/teams/email.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Scalar + module Models + module Teams + Email = String + end + end +end diff --git a/rbi/scalar_api_ruby/models/teams/invite_cancel_params.rbi b/rbi/scalar_api_ruby/models/teams/invite_cancel_params.rbi new file mode 100644 index 0000000..740ddb8 --- /dev/null +++ b/rbi/scalar_api_ruby/models/teams/invite_cancel_params.rbi @@ -0,0 +1,37 @@ +# typed: strong + +module Scalar + module Models + module Teams + class InviteCancelParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::Teams::InviteCancelParams, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :uid + + sig do + params( + uid: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(uid:, request_options: {}) + end + + sig do + override.returns( + { uid: String, request_options: Scalar::RequestOptions } + ) + end + def to_hash + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/teams/invite_member_params.rbi b/rbi/scalar_api_ruby/models/teams/invite_member_params.rbi new file mode 100644 index 0000000..16e3acc --- /dev/null +++ b/rbi/scalar_api_ruby/models/teams/invite_member_params.rbi @@ -0,0 +1,45 @@ +# typed: strong + +module Scalar + module Models + module Teams + class InviteMemberParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::Teams::InviteMemberParams, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :email + + sig { returns(Scalar::Teams::Role::OrSymbol) } + attr_accessor :role + + sig do + params( + email: String, + role: Scalar::Teams::Role::OrSymbol, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(email:, role:, request_options: {}) + end + + sig do + override.returns( + { + email: String, + role: Scalar::Teams::Role::OrSymbol, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/teams/invite_resend_params.rbi b/rbi/scalar_api_ruby/models/teams/invite_resend_params.rbi new file mode 100644 index 0000000..4fc9038 --- /dev/null +++ b/rbi/scalar_api_ruby/models/teams/invite_resend_params.rbi @@ -0,0 +1,37 @@ +# typed: strong + +module Scalar + module Models + module Teams + class InviteResendParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::Teams::InviteResendParams, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :uid + + sig do + params( + uid: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(uid:, request_options: {}) + end + + sig do + override.returns( + { uid: String, request_options: Scalar::RequestOptions } + ) + end + def to_hash + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/teams/member_delete_params.rbi b/rbi/scalar_api_ruby/models/teams/member_delete_params.rbi new file mode 100644 index 0000000..d4c6e43 --- /dev/null +++ b/rbi/scalar_api_ruby/models/teams/member_delete_params.rbi @@ -0,0 +1,37 @@ +# typed: strong + +module Scalar + module Models + module Teams + class MemberDeleteParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::Teams::MemberDeleteParams, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :uid + + sig do + params( + uid: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(uid:, request_options: {}) + end + + sig do + override.returns( + { uid: String, request_options: Scalar::RequestOptions } + ) + end + def to_hash + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/teams/member_list_params.rbi b/rbi/scalar_api_ruby/models/teams/member_list_params.rbi new file mode 100644 index 0000000..26b7575 --- /dev/null +++ b/rbi/scalar_api_ruby/models/teams/member_list_params.rbi @@ -0,0 +1,29 @@ +# typed: strong + +module Scalar + module Models + module Teams + class MemberListParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::Teams::MemberListParams, Scalar::Internal::AnyHash) + end + + sig do + params(request_options: Scalar::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) + end + + sig { override.returns({ request_options: Scalar::RequestOptions }) } + def to_hash + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/teams/member_list_response.rbi b/rbi/scalar_api_ruby/models/teams/member_list_response.rbi new file mode 100644 index 0000000..ae1ec17 --- /dev/null +++ b/rbi/scalar_api_ruby/models/teams/member_list_response.rbi @@ -0,0 +1,43 @@ +# typed: strong + +module Scalar + module Models + module Teams + class MemberListResponse < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Scalar::Models::Teams::MemberListResponse, + Scalar::Internal::AnyHash + ) + end + + sig { returns(T::Array[Scalar::Teams::TeamMember]) } + attr_accessor :members + + sig { returns(T::Array[Scalar::Teams::TeamInvite]) } + attr_accessor :pending_invites + + sig do + params( + members: T::Array[Scalar::Teams::TeamMember::OrHash], + pending_invites: T::Array[Scalar::Teams::TeamInvite::OrHash] + ).returns(T.attached_class) + end + def self.new(members:, pending_invites:) + end + + sig do + override.returns( + { + members: T::Array[Scalar::Teams::TeamMember], + pending_invites: T::Array[Scalar::Teams::TeamInvite] + } + ) + end + def to_hash + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/teams/member_update_params.rbi b/rbi/scalar_api_ruby/models/teams/member_update_params.rbi new file mode 100644 index 0000000..a43f98b --- /dev/null +++ b/rbi/scalar_api_ruby/models/teams/member_update_params.rbi @@ -0,0 +1,45 @@ +# typed: strong + +module Scalar + module Models + module Teams + class MemberUpdateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + OrHash = + T.type_alias do + T.any(Scalar::Teams::MemberUpdateParams, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :uid + + sig { returns(Scalar::Teams::Role::OrSymbol) } + attr_accessor :role + + sig do + params( + uid: String, + role: Scalar::Teams::Role::OrSymbol, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(uid:, role:, request_options: {}) + end + + sig do + override.returns( + { + uid: String, + role: Scalar::Teams::Role::OrSymbol, + request_options: Scalar::RequestOptions + } + ) + end + def to_hash + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/teams/role.rbi b/rbi/scalar_api_ruby/models/teams/role.rbi new file mode 100644 index 0000000..2afcfa9 --- /dev/null +++ b/rbi/scalar_api_ruby/models/teams/role.rbi @@ -0,0 +1,23 @@ +# typed: strong + +module Scalar + module Models + module Teams + module Role + extend Scalar::Internal::Type::Enum + + TaggedSymbol = T.type_alias { T.all(Symbol, Scalar::Teams::Role) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + OWNER = T.let(:owner, Scalar::Teams::Role::TaggedSymbol) + ADMIN = T.let(:admin, Scalar::Teams::Role::TaggedSymbol) + EDITOR = T.let(:editor, Scalar::Teams::Role::TaggedSymbol) + VIEWER = T.let(:viewer, Scalar::Teams::Role::TaggedSymbol) + + sig { override.returns(T::Array[Scalar::Teams::Role::TaggedSymbol]) } + def self.values + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/teams/team_invite.rbi b/rbi/scalar_api_ruby/models/teams/team_invite.rbi new file mode 100644 index 0000000..607d752 --- /dev/null +++ b/rbi/scalar_api_ruby/models/teams/team_invite.rbi @@ -0,0 +1,55 @@ +# typed: strong + +module Scalar + module Models + TeamInvite = Teams::TeamInvite + + module Teams + class TeamInvite < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(Scalar::Teams::TeamInvite, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :email + + sig { returns(Scalar::Teams::Role::TaggedSymbol) } + attr_accessor :role + + sig { returns(String) } + attr_accessor :uid + + sig { returns(T.nilable(Float)) } + attr_reader :expires + + sig { params(expires: Float).void } + attr_writer :expires + + sig do + params( + email: String, + role: Scalar::Teams::Role::OrSymbol, + uid: String, + expires: Float + ).returns(T.attached_class) + end + def self.new(email:, role:, uid:, expires: nil) + end + + sig do + override.returns( + { + email: String, + role: Scalar::Teams::Role::TaggedSymbol, + uid: String, + expires: Float + } + ) + end + def to_hash + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/models/teams/team_member.rbi b/rbi/scalar_api_ruby/models/teams/team_member.rbi new file mode 100644 index 0000000..b54ce46 --- /dev/null +++ b/rbi/scalar_api_ruby/models/teams/team_member.rbi @@ -0,0 +1,55 @@ +# typed: strong + +module Scalar + module Models + TeamMember = Teams::TeamMember + + module Teams + class TeamMember < Scalar::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(Scalar::Teams::TeamMember, Scalar::Internal::AnyHash) + end + + sig { returns(String) } + attr_accessor :display_name + + sig { returns(Scalar::Teams::Role::TaggedSymbol) } + attr_accessor :role + + sig { returns(String) } + attr_accessor :uid + + sig { returns(T.nilable(String)) } + attr_reader :image_uri + + sig { params(image_uri: String).void } + attr_writer :image_uri + + sig do + params( + display_name: String, + role: Scalar::Teams::Role::OrSymbol, + uid: String, + image_uri: String + ).returns(T.attached_class) + end + def self.new(display_name:, role:, uid:, image_uri: nil) + end + + sig do + override.returns( + { + display_name: String, + role: Scalar::Teams::Role::TaggedSymbol, + uid: String, + image_uri: String + } + ) + end + def to_hash + end + end + end + end +end diff --git a/rbi/scalar-api-ruby/models/theme_list_response.rbi b/rbi/scalar_api_ruby/models/theme.rbi similarity index 63% rename from rbi/scalar-api-ruby/models/theme_list_response.rbi rename to rbi/scalar_api_ruby/models/theme.rbi index 225476a..28a36aa 100644 --- a/rbi/scalar-api-ruby/models/theme_list_response.rbi +++ b/rbi/scalar_api_ruby/models/theme.rbi @@ -2,14 +2,8 @@ module Scalar module Models - class ThemeListResponseItem < Scalar::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Scalar::Models::ThemeListResponseItem, - Scalar::Internal::AnyHash - ) - end + class Theme < Scalar::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(Scalar::Theme, Scalar::Internal::AnyHash) } sig { returns(String) } attr_accessor :description @@ -42,11 +36,5 @@ module Scalar def to_hash end end - - ThemeListResponse = - T.let( - Scalar::Internal::Type::ArrayOf[Scalar::Models::ThemeListResponseItem], - Scalar::Internal::Type::Converter - ) end end diff --git a/rbi/scalar-api-ruby/models/theme_create_params.rbi b/rbi/scalar_api_ruby/models/theme_create_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/theme_create_params.rbi rename to rbi/scalar_api_ruby/models/theme_create_params.rbi diff --git a/rbi/scalar-api-ruby/models/theme_delete_params.rbi b/rbi/scalar_api_ruby/models/theme_delete_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/theme_delete_params.rbi rename to rbi/scalar_api_ruby/models/theme_delete_params.rbi diff --git a/rbi/scalar-api-ruby/models/theme_list_params.rbi b/rbi/scalar_api_ruby/models/theme_list_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/theme_list_params.rbi rename to rbi/scalar_api_ruby/models/theme_list_params.rbi diff --git a/rbi/scalar_api_ruby/models/theme_list_response.rbi b/rbi/scalar_api_ruby/models/theme_list_response.rbi new file mode 100644 index 0000000..2cb79d3 --- /dev/null +++ b/rbi/scalar_api_ruby/models/theme_list_response.rbi @@ -0,0 +1,11 @@ +# typed: strong + +module Scalar + module Models + ThemeListResponse = + T.let( + Scalar::Internal::Type::ArrayOf[Scalar::Theme], + Scalar::Internal::Type::Converter + ) + end +end diff --git a/rbi/scalar-api-ruby/models/theme_replace_document_params.rbi b/rbi/scalar_api_ruby/models/theme_replace_document_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/theme_replace_document_params.rbi rename to rbi/scalar_api_ruby/models/theme_replace_document_params.rbi diff --git a/rbi/scalar-api-ruby/models/theme_retrieve_params.rbi b/rbi/scalar_api_ruby/models/theme_retrieve_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/theme_retrieve_params.rbi rename to rbi/scalar_api_ruby/models/theme_retrieve_params.rbi diff --git a/rbi/scalar-api-ruby/models/theme_retrieve_response.rbi b/rbi/scalar_api_ruby/models/theme_retrieve_response.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/theme_retrieve_response.rbi rename to rbi/scalar_api_ruby/models/theme_retrieve_response.rbi diff --git a/rbi/scalar-api-ruby/models/theme_update_params.rbi b/rbi/scalar_api_ruby/models/theme_update_params.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/theme_update_params.rbi rename to rbi/scalar_api_ruby/models/theme_update_params.rbi diff --git a/rbi/scalar-api-ruby/models/timestamp.rbi b/rbi/scalar_api_ruby/models/timestamp.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/timestamp.rbi rename to rbi/scalar_api_ruby/models/timestamp.rbi diff --git a/rbi/scalar-api-ruby/models/uid.rbi b/rbi/scalar_api_ruby/models/uid.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/uid.rbi rename to rbi/scalar_api_ruby/models/uid.rbi diff --git a/rbi/scalar_api_ruby/models/user.rbi b/rbi/scalar_api_ruby/models/user.rbi new file mode 100644 index 0000000..3455b86 --- /dev/null +++ b/rbi/scalar_api_ruby/models/user.rbi @@ -0,0 +1,77 @@ +# typed: strong + +module Scalar + module Models + class User < Scalar::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(Scalar::User, Scalar::Internal::AnyHash) } + + sig { returns(T.nilable(String)) } + attr_accessor :active_team_id + + sig { returns(Integer) } + attr_accessor :created_at + + sig { returns(String) } + attr_accessor :email + + sig { returns(T::Boolean) } + attr_accessor :has_github + + sig { returns(T::Array[Scalar::TeamSummary]) } + attr_accessor :teams + + sig { returns(String) } + attr_accessor :uid + + sig { returns(Integer) } + attr_accessor :updated_at + + sig { returns(T.nilable(String)) } + attr_reader :theme + + sig { params(theme: String).void } + attr_writer :theme + + sig do + params( + active_team_id: T.nilable(String), + created_at: Integer, + email: String, + has_github: T::Boolean, + teams: T::Array[Scalar::TeamSummary::OrHash], + uid: String, + updated_at: Integer, + theme: String + ).returns(T.attached_class) + end + def self.new( + active_team_id:, + created_at:, + email:, + has_github:, + teams:, + uid:, + updated_at:, + theme: nil + ) + end + + sig do + override.returns( + { + active_team_id: T.nilable(String), + created_at: Integer, + email: String, + has_github: T::Boolean, + teams: T::Array[Scalar::TeamSummary], + uid: String, + updated_at: Integer, + theme: String + } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/scalar-api-ruby/models/version.rbi b/rbi/scalar_api_ruby/models/version.rbi similarity index 100% rename from rbi/scalar-api-ruby/models/version.rbi rename to rbi/scalar_api_ruby/models/version.rbi diff --git a/rbi/scalar-api-ruby/request_options.rbi b/rbi/scalar_api_ruby/request_options.rbi similarity index 100% rename from rbi/scalar-api-ruby/request_options.rbi rename to rbi/scalar_api_ruby/request_options.rbi diff --git a/rbi/scalar_api_ruby/resources/access_groups.rbi b/rbi/scalar_api_ruby/resources/access_groups.rbi new file mode 100644 index 0000000..1332fb0 --- /dev/null +++ b/rbi/scalar_api_ruby/resources/access_groups.rbi @@ -0,0 +1,70 @@ +# typed: strong + +module Scalar + module Resources + # Access Groups + class AccessGroups + # Access Groups + sig { returns(Scalar::Resources::AccessGroups::Domains) } + attr_reader :domains + + # Create a group for the current team. Requires docs edit permission and the + # access groups billing feature. Domains are exact email domains, without + # wildcards or implicit subdomain matching. + sig do + params( + allowed_domains: String, + name: String, + slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(Scalar::Models::AccessGroupCreateResponse) + end + def create( + allowed_domains: nil, + name: nil, + slug: nil, + request_options: {} + ) + end + + # Get a group and its email and domain allowlists by slug. + sig do + params( + slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(Scalar::Models::AccessGroupRetrieveResponse) + end + def retrieve(slug, request_options: {}) + end + + # Update group metadata. Requires docs edit permission. After changing the slug, + # use the new slug in subsequent requests. + sig do + params( + path_slug: String, + name: String, + body_slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.anything) + end + def update(path_slug, name: nil, body_slug: nil, request_options: {}) + end + + # Delete a group and remove its project assignments. Requires docs edit + # permission. + sig do + params( + slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.anything) + end + def delete(slug, request_options: {}) + end + + # @api private + sig { params(client: Scalar::Client).returns(T.attached_class) } + def self.new(client:) + end + end + end +end diff --git a/rbi/scalar_api_ruby/resources/access_groups/domains.rbi b/rbi/scalar_api_ruby/resources/access_groups/domains.rbi new file mode 100644 index 0000000..72a1c73 --- /dev/null +++ b/rbi/scalar_api_ruby/resources/access_groups/domains.rbi @@ -0,0 +1,39 @@ +# typed: strong + +module Scalar + module Resources + class AccessGroups + # Access Groups + class Domains + # Allow an exact email domain in a group. Requires docs edit permission. A group + # supports up to 1000 domains. + sig do + params( + slug: String, + domain: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.anything) + end + def create(slug, domain:, request_options: {}) + end + + # Remove an exact email domain from a group. Requires docs edit permission. Other + # allowed domains and emails are preserved. + sig do + params( + slug: String, + domain: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.anything) + end + def delete(slug, domain:, request_options: {}) + end + + # @api private + sig { params(client: Scalar::Client).returns(T.attached_class) } + def self.new(client:) + end + end + end + end +end diff --git a/rbi/scalar-api-ruby/resources/authentication.rbi b/rbi/scalar_api_ruby/resources/authentication.rbi similarity index 92% rename from rbi/scalar-api-ruby/resources/authentication.rbi rename to rbi/scalar_api_ruby/resources/authentication.rbi index d558b7b..3c0c545 100644 --- a/rbi/scalar-api-ruby/resources/authentication.rbi +++ b/rbi/scalar_api_ruby/resources/authentication.rbi @@ -17,7 +17,7 @@ module Scalar # Get the authenticated user, including their available teams and theme. sig do params(request_options: Scalar::RequestOptions::OrHash).returns( - Scalar::Models::AuthenticationListCurrentUserResponse + Scalar::User ) end def list_current_user(request_options: {}) diff --git a/rbi/scalar-api-ruby/resources/login_portals.rbi b/rbi/scalar_api_ruby/resources/login_portals.rbi similarity index 96% rename from rbi/scalar-api-ruby/resources/login_portals.rbi rename to rbi/scalar_api_ruby/resources/login_portals.rbi index 3695d37..a44aa81 100644 --- a/rbi/scalar-api-ruby/resources/login_portals.rbi +++ b/rbi/scalar_api_ruby/resources/login_portals.rbi @@ -41,7 +41,7 @@ module Scalar # List all login portals for the current team. sig do params(request_options: Scalar::RequestOptions::OrHash).returns( - T::Array[Scalar::Models::LoginPortalListResponseItem] + T::Array[Scalar::LoginPortal] ) end def list(request_options: {}) diff --git a/rbi/scalar_api_ruby/resources/mcp.rbi b/rbi/scalar_api_ruby/resources/mcp.rbi new file mode 100644 index 0000000..1477409 --- /dev/null +++ b/rbi/scalar_api_ruby/resources/mcp.rbi @@ -0,0 +1,16 @@ +# typed: strong + +module Scalar + module Resources + class Mcp + # MCP + sig { returns(Scalar::Resources::Mcp::Servers) } + attr_reader :servers + + # @api private + sig { params(client: Scalar::Client).returns(T.attached_class) } + def self.new(client:) + end + end + end +end diff --git a/rbi/scalar_api_ruby/resources/mcp/servers.rbi b/rbi/scalar_api_ruby/resources/mcp/servers.rbi new file mode 100644 index 0000000..f41fdcb --- /dev/null +++ b/rbi/scalar_api_ruby/resources/mcp/servers.rbi @@ -0,0 +1,91 @@ +# typed: strong + +module Scalar + module Resources + class Mcp + # MCP + class Servers + # MCP + sig { returns(Scalar::Resources::Mcp::Servers::Installations) } + attr_reader :installations + + # Create an MCP server over one or more API document versions. The response + # carries the server and its first installation. + sig do + params( + name: String, + project_uids: T::Array[String], + slug: String, + version_uids: T::Array[String], + request_options: Scalar::RequestOptions::OrHash + ).returns(Scalar::Models::Mcp::ServerCreateResponse) + end + def create( + name:, + project_uids: nil, + slug: nil, + version_uids: nil, + request_options: {} + ) + end + + # Get a single MCP server by its id. + sig do + params( + id: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(Scalar::Mcp::McpServer) + end + def retrieve(id, request_options: {}) + end + + # Update MCP server metadata and which tools it exposes. + sig do + params( + id: String, + auto_add_operations: T::Boolean, + docs_pages: T::Array[String], + name: String, + operations: T::Array[String], + slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(Scalar::Mcp::McpServer) + end + def update( + id, + auto_add_operations: nil, + docs_pages: nil, + name: nil, + operations: nil, + slug: nil, + request_options: {} + ) + end + + # List every MCP server on the team. + sig do + params(request_options: Scalar::RequestOptions::OrHash).returns( + T::Array[Scalar::Mcp::McpServer] + ) + end + def list(request_options: {}) + end + + # Delete an MCP server and every installation it serves. + sig do + params( + id: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.anything) + end + def delete(id, request_options: {}) + end + + # @api private + sig { params(client: Scalar::Client).returns(T.attached_class) } + def self.new(client:) + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/resources/mcp/servers/installations.rbi b/rbi/scalar_api_ruby/resources/mcp/servers/installations.rbi new file mode 100644 index 0000000..e0cb0bc --- /dev/null +++ b/rbi/scalar_api_ruby/resources/mcp/servers/installations.rbi @@ -0,0 +1,140 @@ +# typed: strong + +module Scalar + module Resources + class Mcp + class Servers + # MCP + class Installations + # Create an installation of an MCP server. `documentAuth` holds the credentials + # the server presents to the upstream API and is never returned. + sig do + params( + id: String, + document_auth: T::Hash[Symbol, T.anything], + name: String, + slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(Scalar::Mcp::McpInstallation) + end + def create(id, document_auth:, name:, slug: nil, request_options: {}) + end + + # Get a single installation of an MCP server. + sig do + params( + installation_id: String, + id: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(Scalar::Mcp::McpInstallation) + end + def retrieve(installation_id, id:, request_options: {}) + end + + # Update an installation. Set `isPrivate` and add access groups to put it behind a + # login. + sig do + params( + installation_id: String, + id: String, + document_auth: T::Hash[Symbol, T.anything], + is_private: T::Boolean, + login_portal_uid: T.nilable(String), + mcp_version: T.nilable(String), + name: String, + slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(Scalar::Mcp::McpInstallation) + end + def update( + # Path param + installation_id, + # Path param + id:, + # Body param + document_auth: nil, + # Body param + is_private: nil, + # Body param + login_portal_uid: nil, + # Body param + mcp_version: nil, + # Body param + name: nil, + # Body param + slug: nil, + request_options: {} + ) + end + + # List the installations of an MCP server. An installation is what an MCP client + # connects to. + sig do + params( + id: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T::Array[Scalar::Mcp::Servers::McpInstallationListItem]) + end + def list(id, request_options: {}) + end + + # Delete an installation of an MCP server. + sig do + params( + installation_id: String, + id: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.anything) + end + def delete(installation_id, id:, request_options: {}) + end + + # Let an access group reach a private installation. + sig do + params( + installation_id: String, + id: String, + access_group_uid: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.anything) + end + def create_access_group( + # Path param + installation_id, + # Path param + id:, + # Body param + access_group_uid:, + request_options: {} + ) + end + + # Stop an access group reaching a private installation. + sig do + params( + installation_id: String, + id: String, + access_group_uid: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.anything) + end + def delete_access_group( + # Path param + installation_id, + # Path param + id:, + # Body param + access_group_uid:, + request_options: {} + ) + end + + # @api private + sig { params(client: Scalar::Client).returns(T.attached_class) } + def self.new(client:) + end + end + end + end + end +end diff --git a/rbi/scalar-api-ruby/resources/namespaces.rbi b/rbi/scalar_api_ruby/resources/namespaces.rbi similarity index 100% rename from rbi/scalar-api-ruby/resources/namespaces.rbi rename to rbi/scalar_api_ruby/resources/namespaces.rbi diff --git a/rbi/scalar-api-ruby/resources/registry.rbi b/rbi/scalar_api_ruby/resources/registry.rbi similarity index 93% rename from rbi/scalar-api-ruby/resources/registry.rbi rename to rbi/scalar_api_ruby/resources/registry.rbi index b7fc177..4efbec4 100644 --- a/rbi/scalar-api-ruby/resources/registry.rbi +++ b/rbi/scalar_api_ruby/resources/registry.rbi @@ -59,7 +59,6 @@ module Scalar document: String, version: String, force: T::Boolean, - last_known_version_sha: String, request_options: Scalar::RequestOptions::OrHash ).returns(Scalar::ManagedDocVersion) end @@ -74,8 +73,6 @@ module Scalar version:, # Body param force: nil, - # Body param - last_known_version_sha: nil, request_options: {} ) end @@ -131,7 +128,7 @@ module Scalar # List all API documents across every namespace the caller can access. sig do params(request_options: Scalar::RequestOptions::OrHash).returns( - T::Array[Scalar::Models::RegistryListAllAPIDocumentsResponseItem] + T::Array[Scalar::APIDocument] ) end def list_all_api_documents(request_options: {}) @@ -160,9 +157,7 @@ module Scalar params( namespace: String, request_options: Scalar::RequestOptions::OrHash - ).returns( - T::Array[Scalar::Models::RegistryListAPIDocumentsResponseItem] - ) + ).returns(T::Array[Scalar::APIDocument]) end def list_api_documents(namespace, request_options: {}) end @@ -220,7 +215,6 @@ module Scalar namespace: String, slug: String, document: String, - last_known_version_sha: String, request_options: Scalar::RequestOptions::OrHash ).returns(Scalar::Models::RegistryUpdateAPIDocumentVersionResponse) end @@ -233,8 +227,6 @@ module Scalar slug:, # Body param document:, - # Body param - last_known_version_sha: nil, request_options: {} ) end diff --git a/rbi/scalar-api-ruby/resources/rules.rbi b/rbi/scalar_api_ruby/resources/rules.rbi similarity index 97% rename from rbi/scalar-api-ruby/resources/rules.rbi rename to rbi/scalar_api_ruby/resources/rules.rbi index 7494f9d..cf45e95 100644 --- a/rbi/scalar-api-ruby/resources/rules.rbi +++ b/rbi/scalar_api_ruby/resources/rules.rbi @@ -83,7 +83,7 @@ module Scalar params( namespace: String, request_options: Scalar::RequestOptions::OrHash - ).returns(T::Array[Scalar::Models::RuleListRulesetsResponseItem]) + ).returns(T::Array[Scalar::Rule]) end def list_rulesets(namespace, request_options: {}) end diff --git a/rbi/scalar_api_ruby/resources/scalar_docs.rbi b/rbi/scalar_api_ruby/resources/scalar_docs.rbi new file mode 100644 index 0000000..22b3ea2 --- /dev/null +++ b/rbi/scalar_api_ruby/resources/scalar_docs.rbi @@ -0,0 +1,220 @@ +# typed: strong + +module Scalar + module Resources + # Scalar Docs + class ScalarDocs + # Create a guide project. + sig do + params( + allowed_domains: T::Array[String], + allowed_users: T::Array[String], + is_private: T::Boolean, + name: String, + slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(Scalar::Models::ScalarDocCreateGuideResponse) + end + def create_guide( + allowed_domains:, + allowed_users:, + is_private:, + name:, + slug: nil, + request_options: {} + ) + end + + # Create a docs project. Omit `provider` to have Scalar host the repository. + sig do + params( + name: String, + provider: Scalar::ScalarDocCreateProjectParams::Provider::OrSymbol, + bitbucket_repository: + Scalar::ScalarDocCreateProjectParams::BitbucketRepository::OrHash, + blank: T::Boolean, + github_repository: + Scalar::ScalarDocCreateProjectParams::GithubRepository::OrHash, + is_private: T::Boolean, + slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(Scalar::DocsProject) + end + def create_project( + name:, + provider:, + bitbucket_repository: nil, + blank: nil, + github_repository: nil, + is_private: nil, + slug: nil, + request_options: {} + ) + end + + # Delete a docs project, its deploys, its publish records and its cached builds. + sig do + params( + slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.anything) + end + def delete_project(slug, request_options: {}) + end + + # List all guide projects. + sig do + params(request_options: Scalar::RequestOptions::OrHash).returns( + T::Array[Scalar::GithubProject] + ) + end + def list_guides(request_options: {}) + end + + # Read `scalar.config.json` straight from the project repository, without cloning + # it. `baseToken` is the compare-and-swap handle for a later write. + sig do + params( + slug: String, + ref: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(Scalar::Models::ScalarDocListProjectConfigResponse) + end + def list_project_config(slug, ref: nil, request_options: {}) + end + + # The domains the project serves on — the Scalar-hosted one and the custom one, + # when set. + sig do + params( + slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(Scalar::Models::ScalarDocListProjectDomainResponse) + end + def list_project_domain(slug, request_options: {}) + end + + # Whether the project custom domain points at Scalar yet. `expected` is the CNAME + # record to create; `found` is what resolves today. A project with no custom + # domain reports `verified` with no expected record, because Scalar serves its own + # subdomain directly. + sig do + params( + slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(Scalar::Models::ScalarDocListProjectDomainStatusResponse) + end + def list_project_domain_status(slug, request_options: {}) + end + + # List every docs project on the team. + sig do + params( + limit: Integer, + request_options: Scalar::RequestOptions::OrHash + ).returns(Scalar::Models::ScalarDocListProjectsResponse) + end + def list_projects(limit: nil, request_options: {}) + end + + # Start a new publish process. + sig do + params( + slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(Scalar::Models::ScalarDocPublishGuideResponse) + end + def publish_guide(slug, request_options: {}) + end + + # Start a build and deploy. The returned `publishUid` identifies the publish + # record. + sig do + params( + slug: String, + commit_sha: String, + config_path: String, + preview: T::Boolean, + request_options: Scalar::RequestOptions::OrHash + ).returns(Scalar::Models::ScalarDocPublishProjectResponse) + end + def publish_project( + slug, + commit_sha: nil, + config_path: nil, + preview: nil, + request_options: {} + ) + end + + # Get a single docs project by its slug. + sig do + params( + slug: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(Scalar::DocsProject) + end + def retrieve_project(slug, request_options: {}) + end + + # Update project settings. Set `isPrivate` with `accessGroups` to put the site + # behind a login. + sig do + params( + slug: String, + access_groups: T::Array[String], + active_theme_id: String, + agent_enabled: T::Boolean, + analytics_enabled: T::Boolean, + is_private: T::Boolean, + login_portal_uid: + Scalar::ScalarDocUpdateProjectParams::LoginPortalUID::Variants, + name: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.anything) + end + def update_project( + slug, + access_groups: nil, + active_theme_id: nil, + agent_enabled: nil, + analytics_enabled: nil, + is_private: nil, + login_portal_uid: nil, + name: nil, + request_options: {} + ) + end + + # Commit `scalar.config.json` straight to the project repository. Pass the + # `baseToken` from the read this edit was based on; a conflict means the file + # moved underneath it. + sig do + params( + slug: String, + content: String, + base_token: String, + message: String, + path: String, + ref: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(Scalar::Models::ScalarDocUpdateProjectConfigResponse) + end + def update_project_config( + slug, + content:, + base_token: nil, + message: nil, + path: nil, + ref: nil, + request_options: {} + ) + end + + # @api private + sig { params(client: Scalar::Client).returns(T.attached_class) } + def self.new(client:) + end + end + end +end diff --git a/rbi/scalar-api-ruby/resources/schemas.rbi b/rbi/scalar_api_ruby/resources/schemas.rbi similarity index 96% rename from rbi/scalar-api-ruby/resources/schemas.rbi rename to rbi/scalar_api_ruby/resources/schemas.rbi index 09e5101..e4a2643 100644 --- a/rbi/scalar-api-ruby/resources/schemas.rbi +++ b/rbi/scalar_api_ruby/resources/schemas.rbi @@ -68,7 +68,7 @@ module Scalar params( namespace: String, request_options: Scalar::RequestOptions::OrHash - ).returns(T::Array[Scalar::Models::SchemaListResponseItem]) + ).returns(T::Array[Scalar::Schema]) end def list(namespace, request_options: {}) end diff --git a/rbi/scalar-api-ruby/resources/schemas/access_group.rbi b/rbi/scalar_api_ruby/resources/schemas/access_group.rbi similarity index 100% rename from rbi/scalar-api-ruby/resources/schemas/access_group.rbi rename to rbi/scalar_api_ruby/resources/schemas/access_group.rbi diff --git a/rbi/scalar-api-ruby/resources/schemas/version.rbi b/rbi/scalar_api_ruby/resources/schemas/version.rbi similarity index 91% rename from rbi/scalar-api-ruby/resources/schemas/version.rbi rename to rbi/scalar_api_ruby/resources/schemas/version.rbi index 28a6d50..7a13a2f 100644 --- a/rbi/scalar-api-ruby/resources/schemas/version.rbi +++ b/rbi/scalar_api_ruby/resources/schemas/version.rbi @@ -12,8 +12,9 @@ module Scalar namespace: String, document: String, version: String, + force: T::Boolean, request_options: Scalar::RequestOptions::OrHash - ).returns(Scalar::UID) + ).returns(Scalar::Models::Schemas::VersionCreateResponse) end def create( # Path param @@ -24,6 +25,8 @@ module Scalar document:, # Body param version:, + # Body param + force: nil, request_options: {} ) end diff --git a/rbi/scalar_api_ruby/resources/sdks.rbi b/rbi/scalar_api_ruby/resources/sdks.rbi new file mode 100644 index 0000000..25a3e18 --- /dev/null +++ b/rbi/scalar_api_ruby/resources/sdks.rbi @@ -0,0 +1,112 @@ +# typed: strong + +module Scalar + module Resources + # SDKs + class Sdks + # SDKs + sig { returns(Scalar::Resources::Sdks::Versions) } + attr_reader :versions + + # SDKs + sig { returns(Scalar::Resources::Sdks::Repositories) } + attr_reader :repositories + + # Create an SDK from an API document, targeting one or more languages. + sig do + params( + api_uid: String, + languages: T::Array[Scalar::SdkCreateParams::Language::OrSymbol], + class_name: String, + config: String, + slug: String, + title: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(Scalar::UID) + end + def create( + api_uid:, + languages:, + class_name: nil, + config: nil, + slug: nil, + title: nil, + request_options: {} + ) + end + + # Get a single SDK by its uid. + sig do + params( + uid: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(Scalar::Sdk) + end + def retrieve(uid, request_options: {}) + end + + # Update SDK metadata, its linked API, or its config. + sig do + params( + uid: String, + api_uid: T.nilable(String), + api_version: T.nilable(String), + config: String, + is_private: T::Boolean, + slug: String, + title: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.anything) + end + def update( + uid, + api_uid: nil, + api_version: nil, + config: nil, + is_private: nil, + slug: nil, + title: nil, + request_options: {} + ) + end + + # List every SDK on the team. + sig do + params( + limit: Integer, + request_options: Scalar::RequestOptions::OrHash + ).returns(Scalar::Models::SdkListResponse) + end + def list(limit: nil, request_options: {}) + end + + # Delete an SDK and every version it holds. + sig do + params( + uid: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.anything) + end + def delete(uid, request_options: {}) + end + + # Start a build. Omit `version` to build the current work — the open draft, else + # the latest version — and the resolved version comes back in the response. + sig do + params( + uid: String, + languages: T::Array[Scalar::SdkBuildParams::Language::OrSymbol], + version: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(Scalar::Models::SdkBuildResponse) + end + def build(uid, languages: nil, version: nil, request_options: {}) + end + + # @api private + sig { params(client: Scalar::Client).returns(T.attached_class) } + def self.new(client:) + end + end + end +end diff --git a/rbi/scalar_api_ruby/resources/sdks/repositories.rbi b/rbi/scalar_api_ruby/resources/sdks/repositories.rbi new file mode 100644 index 0000000..f38c45f --- /dev/null +++ b/rbi/scalar_api_ruby/resources/sdks/repositories.rbi @@ -0,0 +1,79 @@ +# typed: strong + +module Scalar + module Resources + class Sdks + # SDKs + class Repositories + # Link one language target to a GitHub repository, so builds sync there. + sig do + params( + uid: String, + base_branch: String, + language: Scalar::Sdks::RepositoryLinkParams::Language::OrSymbol, + repository_id: Integer, + prerelease_type: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(Scalar::Models::Sdks::RepositoryLinkResponse) + end + def link( + uid, + base_branch:, + language:, + repository_id:, + prerelease_type: nil, + request_options: {} + ) + end + + # Unlink one language target from its repository. + sig do + params( + language: Scalar::Sdks::RepositoryUnlinkParams::Language::OrSymbol, + uid: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.anything) + end + def unlink(language, uid:, request_options: {}) + end + + # Toggle publish-on-merge and the release settings for a linked target. + sig do + params( + language: + Scalar::Sdks::RepositoryUpdatePublishingParams::Language::OrSymbol, + uid: String, + publish_on_merge: T::Boolean, + access: + Scalar::Sdks::RepositoryUpdatePublishingParams::Access::OrSymbol, + auth_method: + Scalar::Sdks::RepositoryUpdatePublishingParams::AuthMethod::OrSymbol, + tag: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.anything) + end + def update_publishing( + # Path param + language, + # Path param + uid:, + # Body param + publish_on_merge:, + # Body param + access: nil, + # Body param + auth_method: nil, + # Body param + tag: nil, + request_options: {} + ) + end + + # @api private + sig { params(client: Scalar::Client).returns(T.attached_class) } + def self.new(client:) + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/resources/sdks/versions.rbi b/rbi/scalar_api_ruby/resources/sdks/versions.rbi new file mode 100644 index 0000000..26b4e6e --- /dev/null +++ b/rbi/scalar_api_ruby/resources/sdks/versions.rbi @@ -0,0 +1,38 @@ +# typed: strong + +module Scalar + module Resources + class Sdks + # SDKs + class Versions + # Create a new SDK version against a specific API version. + sig do + params( + uid: String, + api_version: String, + version: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.anything) + end + def create(uid, api_version:, version:, request_options: {}) + end + + # Permanently delete one version of an SDK. + sig do + params( + version: String, + uid: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.anything) + end + def delete(version, uid:, request_options: {}) + end + + # @api private + sig { params(client: Scalar::Client).returns(T.attached_class) } + def self.new(client:) + end + end + end + end +end diff --git a/rbi/scalar-api-ruby/resources/teams.rbi b/rbi/scalar_api_ruby/resources/teams.rbi similarity index 64% rename from rbi/scalar-api-ruby/resources/teams.rbi rename to rbi/scalar_api_ruby/resources/teams.rbi index 9e36d7b..3ecb071 100644 --- a/rbi/scalar-api-ruby/resources/teams.rbi +++ b/rbi/scalar_api_ruby/resources/teams.rbi @@ -4,10 +4,18 @@ module Scalar module Resources # Teams class Teams + # Teams + sig { returns(Scalar::Resources::Teams::Members) } + attr_reader :members + + # Teams + sig { returns(Scalar::Resources::Teams::Invites) } + attr_reader :invites + # List all available teams sig do params(request_options: Scalar::RequestOptions::OrHash).returns( - T::Array[Scalar::Models::TeamListResponseItem] + T::Array[Scalar::Team] ) end def list(request_options: {}) diff --git a/rbi/scalar_api_ruby/resources/teams/invites.rbi b/rbi/scalar_api_ruby/resources/teams/invites.rbi new file mode 100644 index 0000000..956f70d --- /dev/null +++ b/rbi/scalar_api_ruby/resources/teams/invites.rbi @@ -0,0 +1,46 @@ +# typed: strong + +module Scalar + module Resources + class Teams + # Teams + class Invites + # Withdraw an invite that has not been accepted. + sig do + params( + uid: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.anything) + end + def cancel(uid, request_options: {}) + end + + # Invite someone to the current team by email. + sig do + params( + email: String, + role: Scalar::Teams::Role::OrSymbol, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.anything) + end + def member(email:, role:, request_options: {}) + end + + # Send the invite email again. + sig do + params( + uid: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.anything) + end + def resend(uid, request_options: {}) + end + + # @api private + sig { params(client: Scalar::Client).returns(T.attached_class) } + def self.new(client:) + end + end + end + end +end diff --git a/rbi/scalar_api_ruby/resources/teams/members.rbi b/rbi/scalar_api_ruby/resources/teams/members.rbi new file mode 100644 index 0000000..bd9f981 --- /dev/null +++ b/rbi/scalar_api_ruby/resources/teams/members.rbi @@ -0,0 +1,45 @@ +# typed: strong + +module Scalar + module Resources + class Teams + # Teams + class Members + # Change what a member of the current team is allowed to do. + sig do + params( + uid: String, + role: Scalar::Teams::Role::OrSymbol, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.anything) + end + def update(uid, role:, request_options: {}) + end + + # List the members of the current team, along with the invites still outstanding. + sig do + params(request_options: Scalar::RequestOptions::OrHash).returns( + Scalar::Models::Teams::MemberListResponse + ) + end + def list(request_options: {}) + end + + # Remove someone from the current team. + sig do + params( + uid: String, + request_options: Scalar::RequestOptions::OrHash + ).returns(T.anything) + end + def delete(uid, request_options: {}) + end + + # @api private + sig { params(client: Scalar::Client).returns(T.attached_class) } + def self.new(client:) + end + end + end + end +end diff --git a/rbi/scalar-api-ruby/resources/themes.rbi b/rbi/scalar_api_ruby/resources/themes.rbi similarity index 96% rename from rbi/scalar-api-ruby/resources/themes.rbi rename to rbi/scalar_api_ruby/resources/themes.rbi index dffcf67..8194433 100644 --- a/rbi/scalar-api-ruby/resources/themes.rbi +++ b/rbi/scalar_api_ruby/resources/themes.rbi @@ -42,7 +42,7 @@ module Scalar # List all team themes. sig do params(request_options: Scalar::RequestOptions::OrHash).returns( - T::Array[Scalar::Models::ThemeListResponseItem] + T::Array[Scalar::Theme] ) end def list(request_options: {}) diff --git a/rbi/scalar-api-ruby/version.rbi b/rbi/scalar_api_ruby/version.rbi similarity index 100% rename from rbi/scalar-api-ruby/version.rbi rename to rbi/scalar_api_ruby/version.rbi diff --git a/reference.md b/reference.md index 1eca806..41c53e2 100644 --- a/reference.md +++ b/reference.md @@ -28,6 +28,12 @@ - `login_portals.update(...)` — `PATCH /v1/login-portals/{slug}` - `login_portals.list(...)` — `GET /v1/login-portals` - `login_portals.delete(...)` — `DELETE /v1/login-portals/{slug}` +- `access_groups.create(...)` — `POST /v1/access-groups` +- `access_groups.retrieve(...)` — `GET /v1/access-groups/{slug}` +- `access_groups.update(...)` — `PATCH /v1/access-groups/{slug}` +- `access_groups.delete(...)` — `DELETE /v1/access-groups/{slug}` +- `access_groups.domains.create(...)` — `POST /v1/access-groups/{slug}/domains` +- `access_groups.domains.delete(...)` — `DELETE /v1/access-groups/{slug}/domains` - `rules.create_ruleset(...)` — `POST /v1/rulesets/{namespace}` - `rules.create_ruleset_access_group(...)` — `POST /v1/rulesets/{namespace}/{slug}/access-group` - `rules.delete_ruleset(...)` — `DELETE /v1/rulesets/{namespace}/{slug}` @@ -42,9 +48,48 @@ - `themes.delete(...)` — `DELETE /v1/themes/{slug}` - `themes.replace_document(...)` — `PUT /v1/themes/{slug}` - `teams.list(...)` — `GET /v1/teams` +- `teams.members.update(...)` — `PATCH /v1/teams/members/{uid}` +- `teams.members.list(...)` — `GET /v1/teams/members` +- `teams.members.delete(...)` — `DELETE /v1/teams/members/{uid}` +- `teams.invites.cancel(...)` — `DELETE /v1/teams/invites/{uid}` +- `teams.invites.member(...)` — `POST /v1/teams/invites` +- `teams.invites.resend(...)` — `PATCH /v1/teams/invites/{uid}` - `scalar_docs.create_guide(...)` — `POST /v1/guides` +- `scalar_docs.create_project(...)` — `POST /v1/docs` +- `scalar_docs.delete_project(...)` — `DELETE /v1/docs/{slug}` - `scalar_docs.list_guides(...)` — `GET /v1/guides` +- `scalar_docs.list_project_config(...)` — `GET /v1/docs/{slug}/config` +- `scalar_docs.list_project_domain(...)` — `GET /v1/docs/{slug}/domain` +- `scalar_docs.list_project_domain_status(...)` — `GET /v1/docs/{slug}/domain/status` +- `scalar_docs.list_projects(...)` — `GET /v1/docs` - `scalar_docs.publish_guide(...)` — `POST /v1/guides/{slug}/publish` +- `scalar_docs.publish_project(...)` — `POST /v1/docs/{slug}/publish` +- `scalar_docs.retrieve_project(...)` — `GET /v1/docs/{slug}` +- `scalar_docs.update_project(...)` — `PATCH /v1/docs/{slug}` +- `scalar_docs.update_project_config(...)` — `PUT /v1/docs/{slug}/config` - `namespaces.list(...)` — `GET /v1/namespaces` - `authentication.exchange_personal_token(...)` — `POST /v1/auth/exchange` - `authentication.list_current_user(...)` — `GET /v1/auth/me` +- `sdks.create(...)` — `POST /v1/sdks` +- `sdks.retrieve(...)` — `GET /v1/sdks/{uid}` +- `sdks.update(...)` — `PATCH /v1/sdks/{uid}` +- `sdks.list(...)` — `GET /v1/sdks` +- `sdks.delete(...)` — `DELETE /v1/sdks/{uid}` +- `sdks.build(...)` — `POST /v1/sdks/{uid}/build` +- `sdks.versions.create(...)` — `POST /v1/sdks/{uid}/versions` +- `sdks.versions.delete(...)` — `DELETE /v1/sdks/{uid}/versions/{version}` +- `sdks.repositories.link(...)` — `POST /v1/sdks/{uid}/repositories` +- `sdks.repositories.unlink(...)` — `DELETE /v1/sdks/{uid}/repositories/{language}` +- `sdks.repositories.update_publishing(...)` — `POST /v1/sdks/{uid}/repositories/{language}/publishing` +- `mcp.servers.create(...)` — `POST /v1/mcp/servers` +- `mcp.servers.retrieve(...)` — `GET /v1/mcp/servers/{id}` +- `mcp.servers.update(...)` — `PATCH /v1/mcp/servers/{id}` +- `mcp.servers.list(...)` — `GET /v1/mcp/servers` +- `mcp.servers.delete(...)` — `DELETE /v1/mcp/servers/{id}` +- `mcp.servers.installations.create(...)` — `POST /v1/mcp/servers/{id}/installations` +- `mcp.servers.installations.retrieve(...)` — `GET /v1/mcp/servers/{id}/installations/{installationId}` +- `mcp.servers.installations.update(...)` — `PATCH /v1/mcp/servers/{id}/installations/{installationId}` +- `mcp.servers.installations.list(...)` — `GET /v1/mcp/servers/{id}/installations` +- `mcp.servers.installations.delete(...)` — `DELETE /v1/mcp/servers/{id}/installations/{installationId}` +- `mcp.servers.installations.create_access_group(...)` — `POST /v1/mcp/servers/{id}/installations/{installationId}/access-group` +- `mcp.servers.installations.delete_access_group(...)` — `DELETE /v1/mcp/servers/{id}/installations/{installationId}/access-group` diff --git a/scalar-sdk.manifest.json b/scalar-sdk.manifest.json index 7a423b0..541a2fa 100644 --- a/scalar-sdk.manifest.json +++ b/scalar-sdk.manifest.json @@ -1,7 +1,7 @@ { "name": "Scalar", "slug": "scalar", - "generatorVersion": "0.32.14", + "generatorVersion": "0.36.3", "servers": [ "https://access.scalar.com" ], @@ -12,13 +12,30 @@ "production" ], "auth": [ - "bearer" + "bearer", + "oauth2" ], "authDetails": [ { "kind": "bearer", "id": "BearerAuth", "bearerFormat": "JWT" + }, + { + "kind": "oauth2", + "id": "OAuth2", + "flows": [ + { + "kind": "authorizationCode", + "authorizationUrl": "https://auth.scalar.com/_scalar/oauth/authorize", + "tokenUrl": "https://auth.scalar.com/_scalar/oauth/token", + "scopes": [ + "platform:read", + "platform:write", + "platform:admin" + ] + } + ] } ], "clientHeaderParams": [], @@ -28,6 +45,15 @@ "source": "400", "publicAliases": [], "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": { + "message": "Invalid request parameters.", + "code": "bad-request" + } + }, "type": { "kind": "object", "properties": [ @@ -60,6 +86,15 @@ "source": "401", "publicAliases": [], "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": { + "message": "Invalid authentication token.", + "code": "unauthorized" + } + }, "type": { "kind": "object", "properties": [ @@ -92,6 +127,15 @@ "source": "403", "publicAliases": [], "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": { + "message": "You do not have permission to access this resource.", + "code": "forbidden" + } + }, "type": { "kind": "object", "properties": [ @@ -124,6 +168,15 @@ "source": "404", "publicAliases": [], "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": { + "message": "Resource not found.", + "code": "not-found" + } + }, "type": { "kind": "object", "properties": [ @@ -156,6 +209,15 @@ "source": "422", "publicAliases": [], "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": { + "message": "The request body contains invalid values.", + "code": "invalid-payload" + } + }, "type": { "kind": "object", "properties": [ @@ -188,6 +250,15 @@ "source": "500", "publicAliases": [], "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": { + "message": "An unexpected error occurred.", + "code": "unknown" + } + }, "type": { "kind": "object", "properties": [ @@ -228,6 +299,12 @@ "publicName": "uid", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "UakgbKJ5m9gl0JDMbcJqL" + }, "type": { "kind": "ref", "name": "nanoid" @@ -238,6 +315,12 @@ "publicName": "version", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "1.2.0" + }, "type": { "kind": "ref", "name": "version" @@ -248,6 +331,12 @@ "publicName": "title", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Acme API" + }, "type": { "kind": "primitive", "type": "string", @@ -261,6 +350,12 @@ "publicName": "slug", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "acme-api" + }, "type": { "kind": "ref", "name": "slug" @@ -271,6 +366,12 @@ "publicName": "description", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "API for managing Acme products and orders." + }, "type": { "kind": "primitive", "type": "string" @@ -281,6 +382,12 @@ "publicName": "namespace", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "acme" + }, "type": { "kind": "ref", "name": "namespace" @@ -291,6 +398,12 @@ "publicName": "isPrivate", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": false + }, "type": { "kind": "primitive", "type": "boolean" @@ -301,8 +414,18 @@ "publicName": "tags", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": [ + "products", + "orders" + ] + }, "type": { - "kind": "unknown" + "kind": "primitive", + "type": "string" } }, { @@ -327,6 +450,12 @@ "source": "nanoid", "publicAliases": [], "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "UakgbKJ5m9gl0JDMbcJqL" + }, "type": { "kind": "primitive", "type": "string", @@ -340,6 +469,12 @@ "source": "version", "publicAliases": [], "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "1.2.0" + }, "type": { "kind": "primitive", "type": "string", @@ -353,12 +488,18 @@ "source": "slug", "publicAliases": [], "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "acme-api" + }, "type": { "kind": "primitive", "type": "string", "validation": { "pattern": "^[a-z](?:[a-z0-9-]*[a-z0-9])?$", - "minLength": 3, + "minLength": 1, "maxLength": 60 } } @@ -368,12 +509,18 @@ "source": "namespace", "publicAliases": [], "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "acme" + }, "type": { "kind": "primitive", "type": "string", "validation": { "pattern": "^[a-zA-Z0-9-_]+$", - "minLength": 3, + "minLength": 2, "maxLength": 50 } } @@ -391,6 +538,12 @@ "publicName": "uid", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "UakgbKJ5m9gl0JDMbcJqL" + }, "type": { "kind": "ref", "name": "nanoid" @@ -401,6 +554,12 @@ "publicName": "createdAt", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": 1735689600000 + }, "type": { "kind": "primitive", "type": "number" @@ -411,6 +570,12 @@ "publicName": "version", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "1.2.0" + }, "type": { "kind": "ref", "name": "version" @@ -421,16 +586,56 @@ "publicName": "upgraded", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": false + }, "type": { "kind": "primitive", "type": "boolean" } }, + { + "name": "endpointCount", + "publicName": "endpointCount", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": 12 + }, + "type": { + "kind": "union", + "variants": [ + { + "kind": "primitive", + "type": "integer", + "validation": { + "minimum": -9007199254740991, + "maximum": 9007199254740991 + } + }, + { + "kind": "null" + } + ] + } + }, { "name": "embedStatus", "publicName": "embedStatus", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "complete" + }, "type": { "kind": "union", "variants": [ @@ -460,6 +665,15 @@ "publicName": "tags", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": [ + "products", + "orders" + ] + }, "type": { "kind": "array", "items": { @@ -483,6 +697,12 @@ "publicName": "path", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "/products" + }, "type": { "kind": "primitive", "type": "string" @@ -532,6 +752,12 @@ "publicName": "yamlSha", "required": false, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789" + }, "type": { "kind": "primitive", "type": "string" @@ -542,16 +768,12 @@ "publicName": "jsonSha", "required": false, "deprecated": false, - "type": { - "kind": "primitive", - "type": "string" - } - }, - { - "name": "versionSha", - "publicName": "versionSha", - "required": false, - "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef" + }, "type": { "kind": "primitive", "type": "string" @@ -567,37 +789,11 @@ "publicAliases": [], "deprecated": false, "type": { - "kind": "enum", - "values": [ - "delete", - "get", - "head", - "options", - "patch", - "post", - "put", - "trace" - ], - "names": [ - "Delete", - "Get", - "Head", - "Options", - "Patch", - "Post", - "Put", - "Trace" - ], - "deprecations": [ - false, - false, - false, - false, - false, - false, - false, - false - ] + "kind": "primitive", + "type": "string", + "validation": { + "pattern": "^[!#$%&'*+.^_`|~0-9A-Za-z-]+$" + } } }, { @@ -613,6 +809,12 @@ "publicName": "accessGroupSlug", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "acme-api" + }, "type": { "kind": "ref", "name": "slug" @@ -635,6 +837,12 @@ "publicName": "uid", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "UakgbKJ5m9gl0JDMbcJqL" + }, "type": { "kind": "ref", "name": "nanoid" @@ -645,6 +853,12 @@ "publicName": "title", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Acme API" + }, "type": { "kind": "primitive", "type": "string", @@ -658,6 +872,12 @@ "publicName": "description", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "API for managing Acme products and orders." + }, "type": { "kind": "primitive", "type": "string" @@ -668,6 +888,12 @@ "publicName": "slug", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "acme-api" + }, "type": { "kind": "ref", "name": "slug" @@ -678,6 +904,12 @@ "publicName": "namespace", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "acme" + }, "type": { "kind": "ref", "name": "namespace" @@ -688,6 +920,12 @@ "publicName": "isPrivate", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": false + }, "type": { "kind": "primitive", "type": "boolean" @@ -723,6 +961,12 @@ "publicName": "uid", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "UakgbKJ5m9gl0JDMbcJqL" + }, "type": { "kind": "ref", "name": "nanoid" @@ -733,6 +977,12 @@ "publicName": "createdAt", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": 1735689600 + }, "type": { "kind": "ref", "name": "timestamp" @@ -743,6 +993,12 @@ "publicName": "updatedAt", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": 1735689600 + }, "type": { "kind": "ref", "name": "timestamp" @@ -753,10 +1009,54 @@ "publicName": "version", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "1.2.0" + }, "type": { "kind": "ref", "name": "version" } + }, + { + "name": "yamlSha", + "publicName": "yamlSha", + "required": false, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789" + }, + "type": { + "kind": "primitive", + "type": "string", + "validation": { + "pattern": "^[a-f0-9]{64}$" + } + } + }, + { + "name": "jsonSha", + "publicName": "jsonSha", + "required": false, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef" + }, + "type": { + "kind": "primitive", + "type": "string", + "validation": { + "pattern": "^[a-f0-9]{64}$" + } + } } ], "additionalProperties": false @@ -767,6 +1067,12 @@ "source": "timestamp", "publicAliases": [], "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": 1735689600 + }, "type": { "kind": "primitive", "type": "integer", @@ -789,6 +1095,12 @@ "publicName": "uid", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "UakgbKJ5m9gl0JDMbcJqL" + }, "type": { "kind": "ref", "name": "nanoid" @@ -811,6 +1123,12 @@ "publicName": "logo", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "\"Acme\"" + }, "type": { "kind": "primitive", "type": "string" @@ -821,6 +1139,12 @@ "publicName": "logoSize", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "100" + }, "type": { "kind": "primitive", "type": "string" @@ -831,6 +1155,12 @@ "publicName": "buttonText", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Access documentation" + }, "type": { "kind": "primitive", "type": "string", @@ -844,6 +1174,12 @@ "publicName": "message", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Click to access Acme private API documentation." + }, "type": { "kind": "primitive", "type": "string", @@ -857,6 +1193,12 @@ "publicName": "title", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Acme API" + }, "type": { "kind": "primitive", "type": "string", @@ -870,6 +1212,12 @@ "publicName": "mainColor", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "#1f2937" + }, "type": { "kind": "primitive", "type": "string", @@ -883,6 +1231,12 @@ "publicName": "mainBackground", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "#f9fafb" + }, "type": { "kind": "primitive", "type": "string", @@ -896,6 +1250,12 @@ "publicName": "cardColor", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "#1f2937" + }, "type": { "kind": "primitive", "type": "string", @@ -909,6 +1269,12 @@ "publicName": "cardBackground", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "#ffffff" + }, "type": { "kind": "primitive", "type": "string", @@ -922,6 +1288,12 @@ "publicName": "buttonColor", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "#ffffff" + }, "type": { "kind": "primitive", "type": "string", @@ -935,6 +1307,12 @@ "publicName": "buttonBackground", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "#2563eb" + }, "type": { "kind": "primitive", "type": "string", @@ -960,6 +1338,12 @@ "publicName": "title", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Acme API" + }, "type": { "kind": "primitive", "type": "string", @@ -973,6 +1357,12 @@ "publicName": "description", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Sign in with your work email to access Acme documentation." + }, "type": { "kind": "primitive", "type": "string", @@ -986,6 +1376,12 @@ "publicName": "head", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "" + }, "type": { "kind": "primitive", "type": "string" @@ -996,6 +1392,12 @@ "publicName": "script", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "document.documentElement.dataset.company = \"acme\";" + }, "type": { "kind": "primitive", "type": "string" @@ -1006,6 +1408,12 @@ "publicName": "theme", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "TakgbKJ5m9gl0JDMbcJqL" + }, "type": { "kind": "primitive", "type": "string" @@ -1016,6 +1424,12 @@ "publicName": "companyName", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Acme" + }, "type": { "kind": "primitive", "type": "string", @@ -1029,6 +1443,12 @@ "publicName": "logo", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "\"Acme\"" + }, "type": { "kind": "primitive", "type": "string" @@ -1039,6 +1459,12 @@ "publicName": "logoURL", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "https://example.com" + }, "type": { "kind": "primitive", "type": "string" @@ -1049,6 +1475,12 @@ "publicName": "favicon", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "https://example.com/favicon.ico" + }, "type": { "kind": "primitive", "type": "string" @@ -1059,6 +1491,12 @@ "publicName": "termsLink", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "https://example.com/terms" + }, "type": { "kind": "primitive", "type": "string" @@ -1069,6 +1507,12 @@ "publicName": "privacyLink", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "https://example.com/privacy" + }, "type": { "kind": "primitive", "type": "string" @@ -1079,6 +1523,12 @@ "publicName": "formTitle", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Sign in to Acme Documentation" + }, "type": { "kind": "primitive", "type": "string", @@ -1092,6 +1542,12 @@ "publicName": "formDescription", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Sign in with your work email to access Acme documentation." + }, "type": { "kind": "primitive", "type": "string", @@ -1105,6 +1561,12 @@ "publicName": "formImage", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "https://example.com/login-banner.png" + }, "type": { "kind": "primitive", "type": "string" @@ -1127,6 +1589,12 @@ "publicName": "uid", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "UakgbKJ5m9gl0JDMbcJqL" + }, "type": { "kind": "ref", "name": "nanoid" @@ -1137,6 +1605,12 @@ "publicName": "title", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Acme API" + }, "type": { "kind": "primitive", "type": "string", @@ -1150,6 +1624,12 @@ "publicName": "slug", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "acme-api" + }, "type": { "kind": "ref", "name": "slug" @@ -1159,6 +1639,45 @@ "additionalProperties": false } }, + { + "name": "access_group_name", + "source": "access_group_name", + "publicAliases": [], + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Engineering" + }, + "type": { + "kind": "primitive", + "type": "string", + "validation": { + "maxLength": 40 + } + } + }, + { + "name": "email_domain", + "source": "email_domain", + "publicAliases": [], + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "example.com" + }, + "type": { + "kind": "primitive", + "type": "string", + "validation": { + "pattern": "^([A-Za-z0-9]+(-[A-Za-z0-9]+)*\\.)+[A-Za-z]{2,}$", + "maxLength": 253 + } + } + }, { "name": "rule", "source": "rule", @@ -1172,6 +1691,12 @@ "publicName": "uid", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "UakgbKJ5m9gl0JDMbcJqL" + }, "type": { "kind": "ref", "name": "nanoid" @@ -1182,6 +1707,12 @@ "publicName": "title", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Acme API" + }, "type": { "kind": "primitive", "type": "string", @@ -1195,6 +1726,12 @@ "publicName": "description", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "API for managing Acme products and orders." + }, "type": { "kind": "primitive", "type": "string" @@ -1205,6 +1742,12 @@ "publicName": "slug", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "acme-api" + }, "type": { "kind": "ref", "name": "slug" @@ -1215,6 +1758,12 @@ "publicName": "namespace", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "acme" + }, "type": { "kind": "ref", "name": "namespace" @@ -1225,6 +1774,12 @@ "publicName": "isPrivate", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": false + }, "type": { "kind": "primitive", "type": "boolean" @@ -1247,6 +1802,12 @@ "publicName": "uid", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "UakgbKJ5m9gl0JDMbcJqL" + }, "type": { "kind": "ref", "name": "nanoid" @@ -1257,6 +1818,12 @@ "publicName": "name", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Acme Theme" + }, "type": { "kind": "primitive", "type": "string" @@ -1267,6 +1834,12 @@ "publicName": "description", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Custom colors for Acme documentation." + }, "type": { "kind": "primitive", "type": "string" @@ -1277,6 +1850,12 @@ "publicName": "slug", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "acme-theme" + }, "type": { "kind": "ref", "name": "slug" @@ -1299,6 +1878,12 @@ "publicName": "uid", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "UakgbKJ5m9gl0JDMbcJqL" + }, "type": { "kind": "ref", "name": "nanoid" @@ -1309,6 +1894,12 @@ "publicName": "name", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Acme API" + }, "type": { "kind": "ref", "name": "team_name" @@ -1319,6 +1910,12 @@ "publicName": "imageUri", "required": false, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "https://example.com/alex.png" + }, "type": { "kind": "ref", "name": "team_image" @@ -1329,6 +1926,12 @@ "publicName": "slug", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "acme-api" + }, "type": { "kind": "ref", "name": "slug" @@ -1339,6 +1942,12 @@ "publicName": "theme", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "default" + }, "type": { "kind": "primitive", "type": "string" @@ -1353,6 +1962,12 @@ "source": "team_name", "publicAliases": [], "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Acme" + }, "type": { "kind": "primitive", "type": "string" @@ -1363,11 +1978,204 @@ "source": "team_image", "publicAliases": [], "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "https://example.com/logo.svg" + }, "type": { "kind": "primitive", "type": "string" } }, + { + "name": "team_member", + "source": "team_member", + "publicAliases": [], + "deprecated": false, + "type": { + "kind": "object", + "properties": [ + { + "name": "uid", + "publicName": "uid", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "UakgbKJ5m9gl0JDMbcJqL" + }, + "type": { + "kind": "ref", + "name": "nanoid" + } + }, + { + "name": "role", + "publicName": "role", + "required": true, + "deprecated": false, + "type": { + "kind": "ref", + "name": "role" + } + }, + { + "name": "displayName", + "publicName": "displayName", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Alex Morgan" + }, + "type": { + "kind": "primitive", + "type": "string" + } + }, + { + "name": "imageUri", + "publicName": "imageUri", + "required": false, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "https://example.com/alex.png" + }, + "type": { + "kind": "primitive", + "type": "string" + } + } + ], + "additionalProperties": false + } + }, + { + "name": "role", + "source": "role", + "publicAliases": [], + "deprecated": false, + "type": { + "kind": "enum", + "values": [ + "owner", + "admin", + "editor", + "viewer" + ], + "names": [ + "Owner", + "Admin", + "Editor", + "Viewer" + ], + "deprecations": [ + false, + false, + false, + false + ] + } + }, + { + "name": "team_invite", + "source": "team_invite", + "publicAliases": [], + "deprecated": false, + "type": { + "kind": "object", + "properties": [ + { + "name": "uid", + "publicName": "uid", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "UakgbKJ5m9gl0JDMbcJqL" + }, + "type": { + "kind": "ref", + "name": "nanoid" + } + }, + { + "name": "email", + "publicName": "email", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "alex@example.com" + }, + "type": { + "kind": "ref", + "name": "email" + } + }, + { + "name": "role", + "publicName": "role", + "required": true, + "deprecated": false, + "type": { + "kind": "ref", + "name": "role" + } + }, + { + "name": "expires", + "publicName": "expires", + "required": false, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": 1735776000 + }, + "type": { + "kind": "primitive", + "type": "number" + } + } + ], + "additionalProperties": false + } + }, + { + "name": "email", + "source": "email", + "publicAliases": [], + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "alex@example.com" + }, + "type": { + "kind": "primitive", + "type": "string", + "format": "email", + "validation": { + "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$" + } + } + }, { "name": "github_project", "source": "github_project", @@ -1381,6 +2189,12 @@ "publicName": "uid", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "UakgbKJ5m9gl0JDMbcJqL" + }, "type": { "kind": "ref", "name": "nanoid" @@ -1391,6 +2205,12 @@ "publicName": "createdAt", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": 1735689600 + }, "type": { "kind": "ref", "name": "timestamp" @@ -1401,6 +2221,12 @@ "publicName": "updatedAt", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": 1735689600 + }, "type": { "kind": "ref", "name": "timestamp" @@ -1411,6 +2237,12 @@ "publicName": "name", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Acme Documentation" + }, "type": { "kind": "primitive", "type": "string" @@ -1439,6 +2271,12 @@ "publicName": "lastPublished", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": 1735689600 + }, "type": { "kind": "union", "variants": [ @@ -1457,6 +2295,12 @@ "publicName": "lastPublishedUid", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "PakgbKJ5m9gl0JDMbcJqL" + }, "type": { "kind": "union", "variants": [ @@ -1475,26 +2319,60 @@ "publicName": "loginPortalUid", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "LakgbKJ5m9gl0JDMbcJqL" + }, "type": { "kind": "primitive", "type": "string" } }, { - "name": "activeThemeId", - "publicName": "activeThemeId", + "name": "userInfoHookUrl", + "publicName": "userInfoHookUrl", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "https://example.com/hooks/user-info" + }, "type": { "kind": "primitive", "type": "string" } }, { - "name": "typesenseId", + "name": "activeThemeId", + "publicName": "activeThemeId", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "TakgbKJ5m9gl0JDMbcJqL" + }, + "type": { + "kind": "primitive", + "type": "string" + } + }, + { + "name": "typesenseId", "publicName": "typesenseId", "required": false, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": 42 + }, "type": { "kind": "primitive", "type": "number" @@ -1505,6 +2383,12 @@ "publicName": "isPrivate", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": false + }, "type": { "kind": "primitive", "type": "boolean" @@ -1515,6 +2399,28 @@ "publicName": "agentEnabled", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": true + }, + "type": { + "kind": "primitive", + "type": "boolean" + } + }, + { + "name": "analyticsEnabled", + "publicName": "analyticsEnabled", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": true + }, "type": { "kind": "primitive", "type": "boolean" @@ -1525,8 +2431,17 @@ "publicName": "accessGroups", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": [ + "UakgbKJ5m9gl0JDMbcJqL" + ] + }, "type": { - "kind": "unknown" + "kind": "primitive", + "type": "string" } }, { @@ -1534,6 +2449,12 @@ "publicName": "slug", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "acme-api" + }, "type": { "kind": "ref", "name": "slug" @@ -1544,6 +2465,12 @@ "publicName": "publishStatus", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "published" + }, "type": { "kind": "primitive", "type": "string" @@ -1554,6 +2481,12 @@ "publicName": "publishMessage", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Documentation published successfully." + }, "type": { "kind": "primitive", "type": "string" @@ -1594,6 +2527,12 @@ "publicName": "uid", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "UakgbKJ5m9gl0JDMbcJqL" + }, "type": { "kind": "primitive", "type": "string" @@ -1604,6 +2543,12 @@ "publicName": "domain", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "docs.example.com" + }, "type": { "kind": "primitive", "type": "string" @@ -1614,6 +2559,12 @@ "publicName": "publishedAt", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": 1735689600 + }, "type": { "kind": "ref", "name": "timestamp" @@ -1636,6 +2587,12 @@ "publicName": "linkedBy", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "UakgbKJ5m9gl0JDMbcJqL" + }, "type": { "kind": "primitive", "type": "string" @@ -1646,6 +2603,12 @@ "publicName": "id", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": 123456789 + }, "type": { "kind": "primitive", "type": "number" @@ -1656,6 +2619,12 @@ "publicName": "name", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Acme Documentation" + }, "type": { "kind": "primitive", "type": "string", @@ -1669,6 +2638,12 @@ "publicName": "configPath", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "scalar.config.json" + }, "type": { "kind": "primitive", "type": "string" @@ -1679,6 +2654,12 @@ "publicName": "branch", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "main" + }, "type": { "kind": "primitive", "type": "string" @@ -1689,6 +2670,12 @@ "publicName": "publishOnMerge", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": true + }, "type": { "kind": "primitive", "type": "boolean" @@ -1699,6 +2686,12 @@ "publicName": "publishPreviews", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": true + }, "type": { "kind": "primitive", "type": "boolean" @@ -1709,6 +2702,12 @@ "publicName": "prComments", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": true + }, "type": { "kind": "primitive", "type": "boolean" @@ -1719,6 +2718,12 @@ "publicName": "expired", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": false + }, "type": { "kind": "primitive", "type": "boolean" @@ -1728,20 +2733,6 @@ "additionalProperties": false } }, - { - "name": "email", - "source": "email", - "publicAliases": [], - "deprecated": false, - "type": { - "kind": "primitive", - "type": "string", - "format": "email", - "validation": { - "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$" - } - } - }, { "name": "team_summary", "source": "team_summary", @@ -1755,6 +2746,12 @@ "publicName": "uid", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "UakgbKJ5m9gl0JDMbcJqL" + }, "type": { "kind": "ref", "name": "nanoid" @@ -1765,6 +2762,12 @@ "publicName": "name", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Acme API" + }, "type": { "kind": "ref", "name": "team_name" @@ -1775,6 +2778,12 @@ "publicName": "imageUri", "required": false, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "https://example.com/alex.png" + }, "type": { "kind": "ref", "name": "team_image" @@ -1797,6 +2806,12 @@ "publicName": "uid", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "UakgbKJ5m9gl0JDMbcJqL" + }, "type": { "kind": "ref", "name": "nanoid" @@ -1807,6 +2822,12 @@ "publicName": "createdAt", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": 1735689600 + }, "type": { "kind": "ref", "name": "timestamp" @@ -1817,6 +2838,12 @@ "publicName": "updatedAt", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": 1735689600 + }, "type": { "kind": "ref", "name": "timestamp" @@ -1827,6 +2854,12 @@ "publicName": "email", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "alex@example.com" + }, "type": { "kind": "ref", "name": "email" @@ -1837,6 +2870,12 @@ "publicName": "theme", "required": false, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "default" + }, "type": { "kind": "primitive", "type": "string" @@ -1847,6 +2886,12 @@ "publicName": "activeTeamId", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "GakgbKJ5m9gl0JDMbcJqL" + }, "type": { "kind": "union", "variants": [ @@ -1865,6 +2910,12 @@ "publicName": "hasGithub", "required": true, "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": true + }, "type": { "kind": "primitive", "type": "boolean" @@ -1886,43 +2937,8970 @@ ], "additionalProperties": false } - } - ], - "resources": [ - "registry", - "schemas", - "schemas.version", - "schemas.accessGroup", - "loginPortals", - "rules", - "themes", - "teams", - "scalarDocs", - "namespaces", - "authentication" - ], - "publicResources": [ - "registry", - "schemas", - "schemas.version", - "schemas.accessGroup", - "loginPortals", - "rules", - "themes", - "teams", - "scalarDocs", - "namespaces", - "authentication" - ], - "operations": [ + }, + { + "name": "sdk", + "source": "sdk", + "publicAliases": [], + "deprecated": false, + "type": { + "kind": "object", + "properties": [ + { + "name": "uid", + "publicName": "uid", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "UakgbKJ5m9gl0JDMbcJqL" + }, + "type": { + "kind": "ref", + "name": "nanoid" + } + }, + { + "name": "title", + "publicName": "title", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Acme API" + }, + "type": { + "kind": "primitive", + "type": "string", + "validation": { + "maxLength": 100 + } + } + }, + { + "name": "slug", + "publicName": "slug", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "acme-api" + }, + "type": { + "kind": "ref", + "name": "slug" + } + }, + { + "name": "namespace", + "publicName": "namespace", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "acme" + }, + "type": { + "kind": "ref", + "name": "namespace" + } + }, + { + "name": "description", + "publicName": "description", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "API for managing Acme products and orders." + }, + "type": { + "kind": "primitive", + "type": "string" + } + }, + { + "name": "isPrivate", + "publicName": "isPrivate", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": false + }, + "type": { + "kind": "primitive", + "type": "boolean" + } + }, + { + "name": "apiUid", + "publicName": "apiUid", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "UakgbKJ5m9gl0JDMbcJqL" + }, + "type": { + "kind": "union", + "variants": [ + { + "kind": "ref", + "name": "nanoid" + }, + { + "kind": "null" + } + ] + } + }, + { + "name": "apiVersion", + "publicName": "apiVersion", + "required": false, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "1.2.0" + }, + "type": { + "kind": "union", + "variants": [ + { + "kind": "ref", + "name": "version" + }, + { + "kind": "null" + } + ] + } + }, + { + "name": "currentVersion", + "publicName": "currentVersion", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "1.2.0" + }, + "type": { + "kind": "ref", + "name": "version" + } + }, + { + "name": "targets", + "publicName": "targets", + "required": true, + "deprecated": false, + "type": { + "kind": "array", + "items": { + "kind": "ref", + "name": "sdk_target_summary" + } + } + }, + { + "name": "versions", + "publicName": "versions", + "required": true, + "deprecated": false, + "type": { + "kind": "array", + "items": { + "kind": "ref", + "name": "sdk_version" + } + } + } + ], + "additionalProperties": false + } + }, + { + "name": "sdk_target_summary", + "source": "sdk_target_summary", + "publicAliases": [], + "deprecated": false, + "type": { + "kind": "object", + "properties": [ + { + "name": "language", + "publicName": "language", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "typescript" + }, + "type": { + "kind": "enum", + "values": [ + "typescript", + "python", + "cli", + "csharp", + "java", + "ruby", + "php", + "go", + "rust", + "kotlin", + "swift", + "cpp", + "dart" + ], + "names": [ + "Typescript", + "Python", + "Cli", + "Csharp", + "Java", + "Ruby", + "Php", + "Go", + "Rust", + "Kotlin", + "Swift", + "Cpp", + "Dart" + ], + "deprecations": [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ] + } + }, + { + "name": "slug", + "publicName": "slug", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "acme-sdk" + }, + "type": { + "kind": "ref", + "name": "slug" + } + } + ], + "additionalProperties": false + } + }, + { + "name": "sdk_version", + "source": "sdk_version", + "publicAliases": [], + "deprecated": false, + "type": { + "kind": "object", + "properties": [ + { + "name": "version", + "publicName": "version", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "1.2.0" + }, + "type": { + "kind": "ref", + "name": "version" + } + }, + { + "name": "apiVersion", + "publicName": "apiVersion", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "1.2.0" + }, + "type": { + "kind": "ref", + "name": "version" + } + }, + { + "name": "status", + "publicName": "status", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "published" + }, + "type": { + "kind": "enum", + "values": [ + "draft", + "published" + ], + "names": [ + "Draft", + "Published" + ], + "deprecations": [ + false, + false + ] + } + }, + { + "name": "languages", + "publicName": "languages", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": [ + "typescript" + ] + }, + "type": { + "kind": "array", + "items": { + "kind": "enum", + "values": [ + "typescript", + "python", + "cli", + "csharp", + "java", + "ruby", + "php", + "go", + "rust", + "kotlin", + "swift", + "cpp", + "dart" + ], + "names": [ + "Typescript", + "Python", + "Cli", + "Csharp", + "Java", + "Ruby", + "Php", + "Go", + "Rust", + "Kotlin", + "Swift", + "Cpp", + "Dart" + ], + "deprecations": [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ] + } + } + }, + { + "name": "publishedAt", + "publicName": "publishedAt", + "required": false, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": 1735689600 + }, + "type": { + "kind": "ref", + "name": "timestamp" + } + }, + { + "name": "createdAt", + "publicName": "createdAt", + "required": false, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": 1735689600 + }, + "type": { + "kind": "ref", + "name": "timestamp" + } + } + ], + "additionalProperties": false + } + }, + { + "name": "docs_project", + "source": "docs_project", + "publicAliases": [], + "deprecated": false, + "type": { + "kind": "object", + "properties": [ + { + "name": "uid", + "publicName": "uid", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "UakgbKJ5m9gl0JDMbcJqL" + }, + "type": { + "kind": "ref", + "name": "nanoid" + } + }, + { + "name": "name", + "publicName": "name", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Acme Documentation" + }, + "type": { + "kind": "primitive", + "type": "string" + } + }, + { + "name": "slug", + "publicName": "slug", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "acme-api" + }, + "type": { + "kind": "ref", + "name": "slug" + } + }, + { + "name": "isPrivate", + "publicName": "isPrivate", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": false + }, + "type": { + "kind": "primitive", + "type": "boolean" + } + }, + { + "name": "accessGroups", + "publicName": "accessGroups", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": [ + "UakgbKJ5m9gl0JDMbcJqL" + ] + }, + "type": { + "kind": "primitive", + "type": "string" + } + }, + { + "name": "loginPortalUid", + "publicName": "loginPortalUid", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "LakgbKJ5m9gl0JDMbcJqL" + }, + "type": { + "kind": "primitive", + "type": "string" + } + }, + { + "name": "activeThemeId", + "publicName": "activeThemeId", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "TakgbKJ5m9gl0JDMbcJqL" + }, + "type": { + "kind": "primitive", + "type": "string" + } + }, + { + "name": "agentEnabled", + "publicName": "agentEnabled", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": true + }, + "type": { + "kind": "primitive", + "type": "boolean" + } + }, + { + "name": "analyticsEnabled", + "publicName": "analyticsEnabled", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": true + }, + "type": { + "kind": "primitive", + "type": "boolean" + } + }, + { + "name": "lastPublished", + "publicName": "lastPublished", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": 1735689600 + }, + "type": { + "kind": "union", + "variants": [ + { + "kind": "ref", + "name": "timestamp" + }, + { + "kind": "null" + } + ] + } + }, + { + "name": "publishStatus", + "publicName": "publishStatus", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "published" + }, + "type": { + "kind": "primitive", + "type": "string" + } + } + ], + "additionalProperties": false + } + }, + { + "name": "mcp_server", + "source": "mcp_server", + "publicAliases": [], + "deprecated": false, + "type": { + "kind": "object", + "properties": [ + { + "name": "id", + "publicName": "id", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "42" + }, + "type": { + "kind": "primitive", + "type": "string" + } + }, + { + "name": "name", + "publicName": "name", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Acme API" + }, + "type": { + "kind": "primitive", + "type": "string" + } + }, + { + "name": "slug", + "publicName": "slug", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "acme-api" + }, + "type": { + "kind": "ref", + "name": "slug" + } + }, + { + "name": "autoAddOperations", + "publicName": "autoAddOperations", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": true + }, + "type": { + "kind": "primitive", + "type": "boolean" + } + }, + { + "name": "createdAt", + "publicName": "createdAt", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "2025-01-01T00:00:00.000Z" + }, + "type": { + "kind": "primitive", + "type": "string" + } + }, + { + "name": "updatedAt", + "publicName": "updatedAt", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "2025-01-01T00:00:00.000Z" + }, + "type": { + "kind": "primitive", + "type": "string" + } + } + ], + "additionalProperties": false + } + }, + { + "name": "mcp_installation", + "source": "mcp_installation", + "publicAliases": [], + "deprecated": false, + "type": { + "kind": "object", + "properties": [ + { + "name": "id", + "publicName": "id", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "42" + }, + "type": { + "kind": "primitive", + "type": "string" + } + }, + { + "name": "mcpServerId", + "publicName": "mcpServerId", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "42" + }, + "type": { + "kind": "primitive", + "type": "string" + } + }, + { + "name": "name", + "publicName": "name", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Acme API" + }, + "type": { + "kind": "primitive", + "type": "string" + } + }, + { + "name": "slug", + "publicName": "slug", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "acme-api" + }, + "type": { + "kind": "ref", + "name": "slug" + } + }, + { + "name": "isPrivate", + "publicName": "isPrivate", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": false + }, + "type": { + "kind": "primitive", + "type": "boolean" + } + }, + { + "name": "accessGroups", + "publicName": "accessGroups", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": [ + "UakgbKJ5m9gl0JDMbcJqL" + ] + }, + "type": { + "kind": "array", + "items": { + "kind": "primitive", + "type": "string" + } + } + }, + { + "name": "loginPortalUid", + "publicName": "loginPortalUid", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "LakgbKJ5m9gl0JDMbcJqL" + }, + "type": { + "kind": "union", + "variants": [ + { + "kind": "primitive", + "type": "string" + }, + { + "kind": "null" + } + ] + } + }, + { + "name": "mcpVersion", + "publicName": "mcpVersion", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "1.2.0" + }, + "type": { + "kind": "union", + "variants": [ + { + "kind": "primitive", + "type": "string" + }, + { + "kind": "null" + } + ] + } + }, + { + "name": "piiRedactionEnabled", + "publicName": "piiRedactionEnabled", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": true + }, + "type": { + "kind": "primitive", + "type": "boolean" + } + }, + { + "name": "credentialRedactionEnabled", + "publicName": "credentialRedactionEnabled", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": true + }, + "type": { + "kind": "primitive", + "type": "boolean" + } + } + ], + "additionalProperties": false + } + }, + { + "name": "mcp_installation_list_item", + "source": "mcp_installation_list_item", + "publicAliases": [], + "deprecated": false, + "type": { + "kind": "object", + "properties": [ + { + "name": "id", + "publicName": "id", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "42" + }, + "type": { + "kind": "primitive", + "type": "string" + } + }, + { + "name": "name", + "publicName": "name", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "Acme API" + }, + "type": { + "kind": "primitive", + "type": "string" + } + }, + { + "name": "slug", + "publicName": "slug", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "acme-api" + }, + "type": { + "kind": "ref", + "name": "slug" + } + }, + { + "name": "isPrivate", + "publicName": "isPrivate", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": false + }, + "type": { + "kind": "primitive", + "type": "boolean" + } + }, + { + "name": "mcpVersion", + "publicName": "mcpVersion", + "required": true, + "deprecated": false, + "extensions": { + "source": [ + "examples" + ], + "examples": "1.2.0" + }, + "type": { + "kind": "union", + "variants": [ + { + "kind": "primitive", + "type": "string" + }, + { + "kind": "null" + } + ] + } + } + ], + "additionalProperties": false + } + } + ], + "resources": [ + "registry", + "schemas", + "schemas.version", + "schemas.accessGroup", + "loginPortals", + "accessGroups", + "accessGroups.domains", + "rules", + "themes", + "teams", + "teams.members", + "teams.invites", + "scalarDocs", + "namespaces", + "authentication", + "sdks", + "sdks.versions", + "sdks.repositories", + "mcp", + "mcp.servers", + "mcp.servers.installations" + ], + "publicResources": [ + "registry", + "schemas", + "schemas.version", + "schemas.accessGroup", + "loginPortals", + "accessGroups", + "accessGroups.domains", + "rules", + "themes", + "teams", + "teams.members", + "teams.invites", + "scalarDocs", + "namespaces", + "authentication", + "sdks", + "sdks.versions", + "sdks.repositories", + "mcp", + "mcp.servers", + "mcp.servers.installations" + ], + "operations": [ + { + "resource": "registry", + "publicResource": "registry", + "operation": "listAllApiDocuments", + "publicOperation": "listAllApiDocuments", + "deprecated": false, + "method": "GET", + "path": "/v1/apis", + "pathParams": [], + "publicPathParams": [], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "registry", + "publicResource": "registry", + "operation": "listApiDocuments", + "publicOperation": "listApiDocuments", + "deprecated": false, + "method": "GET", + "path": "/v1/apis/{namespace}", + "pathParams": [ + "namespace" + ], + "publicPathParams": [ + "namespace" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "RegistryListApiDocumentsParams" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "registry", + "publicResource": "registry", + "operation": "createApiDocument", + "publicOperation": "createApiDocument", + "deprecated": false, + "method": "POST", + "path": "/v1/apis/{namespace}", + "pathParams": [ + "namespace" + ], + "publicPathParams": [ + "namespace" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [ + "title", + "description", + "version", + "slug", + "ruleset", + "isPrivate", + "document" + ], + "publicBodyParams": [ + "title", + "description", + "version", + "slug", + "ruleset", + "isPrivate", + "document" + ], + "bodyParamDetails": [ + { + "name": "title", + "required": true + }, + { + "name": "description", + "required": false + }, + { + "name": "version", + "required": true + }, + { + "name": "slug", + "required": true + }, + { + "name": "ruleset", + "required": false + }, + { + "name": "isPrivate", + "required": false + }, + { + "name": "document", + "required": true + } + ], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "RegistryCreateApiDocumentParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "registry", + "publicResource": "registry", + "operation": "updateApiDocument", + "publicOperation": "updateApiDocument", + "deprecated": false, + "method": "PATCH", + "path": "/v1/apis/{namespace}/{slug}", + "pathParams": [ + "namespace", + "slug" + ], + "publicPathParams": [ + "namespace", + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [ + "title", + "description", + "isPrivate", + "ruleset" + ], + "publicBodyParams": [ + "title", + "description", + "isPrivate", + "ruleset" + ], + "bodyParamDetails": [ + { + "name": "title", + "required": false + }, + { + "name": "description", + "required": false + }, + { + "name": "isPrivate", + "required": false + }, + { + "name": "ruleset", + "required": false + } + ], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "RegistryUpdateApiDocumentParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "registry", + "publicResource": "registry", + "operation": "deleteApiDocument", + "publicOperation": "deleteApiDocument", + "deprecated": false, + "method": "DELETE", + "path": "/v1/apis/{namespace}/{slug}", + "pathParams": [ + "namespace", + "slug" + ], + "publicPathParams": [ + "namespace", + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "RegistryDeleteApiDocumentParams" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "registry", + "publicResource": "registry", + "operation": "retrieveApiDocumentVersion", + "publicOperation": "retrieveApiDocumentVersion", + "deprecated": false, + "method": "GET", + "path": "/v1/apis/{namespace}/{slug}/version/{semver}", + "pathParams": [ + "namespace", + "slug", + "semver" + ], + "publicPathParams": [ + "namespace", + "slug", + "semver" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "semver", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "RegistryRetrieveApiDocumentVersionParams" + }, + "response": { + "status": "200", + "contentType": "text/plain", + "encoding": "text", + "contents": [ + { + "contentType": "text/plain", + "encoding": "text" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "registry", + "publicResource": "registry", + "operation": "updateApiDocumentVersion", + "publicOperation": "updateApiDocumentVersion", + "deprecated": false, + "method": "PATCH", + "path": "/v1/apis/{namespace}/{slug}/version/{semver}", + "pathParams": [ + "namespace", + "slug", + "semver" + ], + "publicPathParams": [ + "namespace", + "slug", + "semver" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [ + "document" + ], + "publicBodyParams": [ + "document" + ], + "bodyParamDetails": [ + { + "name": "document", + "required": true + } + ], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "semver", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "RegistryUpdateApiDocumentVersionParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "registry", + "publicResource": "registry", + "operation": "deleteApiDocumentVersion", + "publicOperation": "deleteApiDocumentVersion", + "deprecated": false, + "method": "DELETE", + "path": "/v1/apis/{namespace}/{slug}/version/{semver}", + "pathParams": [ + "namespace", + "slug", + "semver" + ], + "publicPathParams": [ + "namespace", + "slug", + "semver" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "semver", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "RegistryDeleteApiDocumentVersionParams" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "registry", + "publicResource": "registry", + "operation": "listApiDocumentVersionMetadata", + "publicOperation": "listApiDocumentVersionMetadata", + "deprecated": false, + "method": "GET", + "path": "/v1/apis/{namespace}/{slug}/version/{semver}/metadata", + "pathParams": [ + "namespace", + "slug", + "semver" + ], + "publicPathParams": [ + "namespace", + "slug", + "semver" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "semver", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "RegistryListApiDocumentVersionMetadataParams" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "responseModel": { + "name": "managed_doc_version", + "publicAliases": [] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "registry", + "publicResource": "registry", + "operation": "createApiDocumentVersion", + "publicOperation": "createApiDocumentVersion", + "deprecated": false, + "method": "POST", + "path": "/v1/apis/{namespace}/{slug}/version", + "pathParams": [ + "namespace", + "slug" + ], + "publicPathParams": [ + "namespace", + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [ + "version", + "document", + "force" + ], + "publicBodyParams": [ + "version", + "document", + "force" + ], + "bodyParamDetails": [ + { + "name": "version", + "required": true + }, + { + "name": "document", + "required": true + }, + { + "name": "force", + "required": false + } + ], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "RegistryCreateApiDocumentVersionParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "responseModel": { + "name": "managed_doc_version", + "publicAliases": [] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "registry", + "publicResource": "registry", + "operation": "createApiDocumentAccessGroup", + "publicOperation": "createApiDocumentAccessGroup", + "deprecated": false, + "method": "POST", + "path": "/v1/apis/{namespace}/{slug}/access-group", + "pathParams": [ + "namespace", + "slug" + ], + "publicPathParams": [ + "namespace", + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [ + "accessGroupSlug" + ], + "publicBodyParams": [ + "accessGroupSlug" + ], + "bodyParamDetails": [ + { + "name": "accessGroupSlug", + "required": true + } + ], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "RegistryCreateApiDocumentAccessGroupParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "registry", + "publicResource": "registry", + "operation": "deleteApiDocumentAccessGroup", + "publicOperation": "deleteApiDocumentAccessGroup", + "deprecated": false, + "method": "DELETE", + "path": "/v1/apis/{namespace}/{slug}/access-group", + "pathParams": [ + "namespace", + "slug" + ], + "publicPathParams": [ + "namespace", + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [ + "accessGroupSlug" + ], + "publicBodyParams": [ + "accessGroupSlug" + ], + "bodyParamDetails": [ + { + "name": "accessGroupSlug", + "required": true + } + ], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "RegistryDeleteApiDocumentAccessGroupParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "schemas", + "publicResource": "schemas", + "operation": "list", + "publicOperation": "list", + "deprecated": false, + "method": "GET", + "path": "/v1/schemas/{namespace}", + "pathParams": [ + "namespace" + ], + "publicPathParams": [ + "namespace" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "SchemaListParams" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "schemas", + "publicResource": "schemas", + "operation": "create", + "publicOperation": "create", + "deprecated": false, + "method": "POST", + "path": "/v1/schemas/{namespace}", + "pathParams": [ + "namespace" + ], + "publicPathParams": [ + "namespace" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [ + "title", + "description", + "version", + "slug", + "isPrivate", + "document" + ], + "publicBodyParams": [ + "title", + "description", + "version", + "slug", + "isPrivate", + "document" + ], + "bodyParamDetails": [ + { + "name": "title", + "required": true + }, + { + "name": "description", + "required": false + }, + { + "name": "version", + "required": true + }, + { + "name": "slug", + "required": true + }, + { + "name": "isPrivate", + "required": false + }, + { + "name": "document", + "required": true + } + ], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "SchemaCreateParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "responseModel": { + "name": "uid", + "publicAliases": [] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "schemas", + "publicResource": "schemas", + "operation": "update", + "publicOperation": "update", + "deprecated": false, + "method": "PATCH", + "path": "/v1/schemas/{namespace}/{slug}", + "pathParams": [ + "namespace", + "slug" + ], + "publicPathParams": [ + "namespace", + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [ + "title", + "description", + "isPrivate" + ], + "publicBodyParams": [ + "title", + "description", + "isPrivate" + ], + "bodyParamDetails": [ + { + "name": "title", + "required": false + }, + { + "name": "description", + "required": false + }, + { + "name": "isPrivate", + "required": false + } + ], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "SchemaUpdateParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "schemas", + "publicResource": "schemas", + "operation": "delete", + "publicOperation": "delete", + "deprecated": false, + "method": "DELETE", + "path": "/v1/schemas/{namespace}/{slug}", + "pathParams": [ + "namespace", + "slug" + ], + "publicPathParams": [ + "namespace", + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "SchemaDeleteParams" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "schemas.version", + "publicResource": "schemas.version", + "operation": "retrieve", + "publicOperation": "retrieve", + "deprecated": false, + "method": "GET", + "path": "/v1/schemas/{namespace}/{slug}/version/{semver}", + "pathParams": [ + "namespace", + "slug", + "semver" + ], + "publicPathParams": [ + "namespace", + "slug", + "semver" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "semver", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "VersionRetrieveParams" + }, + "response": { + "status": "200", + "contentType": "text/plain", + "encoding": "text", + "contents": [ + { + "contentType": "text/plain", + "encoding": "text" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "schemas.version", + "publicResource": "schemas.version", + "operation": "delete", + "publicOperation": "delete", + "deprecated": false, + "method": "DELETE", + "path": "/v1/schemas/{namespace}/{slug}/version/{semver}", + "pathParams": [ + "namespace", + "slug", + "semver" + ], + "publicPathParams": [ + "namespace", + "slug", + "semver" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "semver", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "VersionDeleteParams" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "schemas.version", + "publicResource": "schemas.version", + "operation": "create", + "publicOperation": "create", + "deprecated": false, + "method": "POST", + "path": "/v1/schemas/{namespace}/{slug}/version", + "pathParams": [ + "namespace", + "slug" + ], + "publicPathParams": [ + "namespace", + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [ + "version", + "document", + "force" + ], + "publicBodyParams": [ + "version", + "document", + "force" + ], + "bodyParamDetails": [ + { + "name": "version", + "required": true + }, + { + "name": "document", + "required": true + }, + { + "name": "force", + "required": false + } + ], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "VersionCreateParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "schemas.accessGroup", + "publicResource": "schemas.accessGroup", + "operation": "create", + "publicOperation": "create", + "deprecated": false, + "method": "POST", + "path": "/v1/schemas/{namespace}/{slug}/access-group", + "pathParams": [ + "namespace", + "slug" + ], + "publicPathParams": [ + "namespace", + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [ + "accessGroupSlug" + ], + "publicBodyParams": [ + "accessGroupSlug" + ], + "bodyParamDetails": [ + { + "name": "accessGroupSlug", + "required": true + } + ], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "AccessGroupCreateParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "schemas.accessGroup", + "publicResource": "schemas.accessGroup", + "operation": "delete", + "publicOperation": "delete", + "deprecated": false, + "method": "DELETE", + "path": "/v1/schemas/{namespace}/{slug}/access-group", + "pathParams": [ + "namespace", + "slug" + ], + "publicPathParams": [ + "namespace", + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [ + "accessGroupSlug" + ], + "publicBodyParams": [ + "accessGroupSlug" + ], + "bodyParamDetails": [ + { + "name": "accessGroupSlug", + "required": true + } + ], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "AccessGroupDeleteParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "loginPortals", + "publicResource": "loginPortals", + "operation": "retrieve", + "publicOperation": "retrieve", + "deprecated": false, + "method": "GET", + "path": "/v1/login-portals/{slug}", + "pathParams": [ + "slug" + ], + "publicPathParams": [ + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [ + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "LoginPortalRetrieveParams" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "loginPortals", + "publicResource": "loginPortals", + "operation": "update", + "publicOperation": "update", + "deprecated": false, + "method": "PATCH", + "path": "/v1/login-portals/{slug}", + "pathParams": [ + "slug" + ], + "publicPathParams": [ + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [ + "title" + ], + "publicBodyParams": [ + "title" + ], + "bodyParamDetails": [ + { + "name": "title", + "required": false + } + ], + "pathParamDetails": [ + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "LoginPortalUpdateParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "loginPortals", + "publicResource": "loginPortals", + "operation": "delete", + "publicOperation": "delete", + "deprecated": false, + "method": "DELETE", + "path": "/v1/login-portals/{slug}", + "pathParams": [ + "slug" + ], + "publicPathParams": [ + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [ + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "LoginPortalDeleteParams" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "loginPortals", + "publicResource": "loginPortals", + "operation": "create", + "publicOperation": "create", + "deprecated": false, + "method": "POST", + "path": "/v1/login-portals", + "pathParams": [], + "publicPathParams": [], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [ + "title", + "slug", + "email", + "page" + ], + "publicBodyParams": [ + "title", + "slug", + "email", + "page" + ], + "bodyParamDetails": [ + { + "name": "title", + "required": true + }, + { + "name": "slug", + "required": true + }, + { + "name": "email", + "required": true + }, + { + "name": "page", + "required": true + } + ], + "pathParamDetails": [], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "LoginPortalCreateParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "responseModel": { + "name": "uid", + "publicAliases": [] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "loginPortals", + "publicResource": "loginPortals", + "operation": "list", + "publicOperation": "list", + "deprecated": false, + "method": "GET", + "path": "/v1/login-portals", + "pathParams": [], + "publicPathParams": [], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "accessGroups", + "publicResource": "accessGroups", + "operation": "create", + "publicOperation": "create", + "deprecated": false, + "method": "POST", + "path": "/v1/access-groups", + "pathParams": [], + "publicPathParams": [], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [ + "name", + "slug", + "allowedDomains" + ], + "publicBodyParams": [ + "name", + "slug", + "allowedDomains" + ], + "bodyParamDetails": [ + { + "name": "name", + "required": false + }, + { + "name": "slug", + "required": false + }, + { + "name": "allowedDomains", + "required": false + } + ], + "pathParamDetails": [], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "AccessGroupCreateParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "accessGroups", + "publicResource": "accessGroups", + "operation": "retrieve", + "publicOperation": "retrieve", + "deprecated": false, + "method": "GET", + "path": "/v1/access-groups/{slug}", + "pathParams": [ + "slug" + ], + "publicPathParams": [ + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [ + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "AccessGroupRetrieveParams" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "accessGroups", + "publicResource": "accessGroups", + "operation": "update", + "publicOperation": "update", + "deprecated": false, + "method": "PATCH", + "path": "/v1/access-groups/{slug}", + "pathParams": [ + "slug" + ], + "publicPathParams": [ + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [ + "name", + "slug" + ], + "publicBodyParams": [ + "name", + "slug" + ], + "bodyParamDetails": [ + { + "name": "name", + "required": false + }, + { + "name": "slug", + "required": false + } + ], + "pathParamDetails": [ + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "AccessGroupUpdateParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "accessGroups", + "publicResource": "accessGroups", + "operation": "delete", + "publicOperation": "delete", + "deprecated": false, + "method": "DELETE", + "path": "/v1/access-groups/{slug}", + "pathParams": [ + "slug" + ], + "publicPathParams": [ + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [ + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "AccessGroupDeleteParams" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "accessGroups.domains", + "publicResource": "accessGroups.domains", + "operation": "create", + "publicOperation": "create", + "deprecated": false, + "method": "POST", + "path": "/v1/access-groups/{slug}/domains", + "pathParams": [ + "slug" + ], + "publicPathParams": [ + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [ + "domain" + ], + "publicBodyParams": [ + "domain" + ], + "bodyParamDetails": [ + { + "name": "domain", + "required": true + } + ], + "pathParamDetails": [ + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "DomainCreateParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "accessGroups.domains", + "publicResource": "accessGroups.domains", + "operation": "delete", + "publicOperation": "delete", + "deprecated": false, + "method": "DELETE", + "path": "/v1/access-groups/{slug}/domains", + "pathParams": [ + "slug" + ], + "publicPathParams": [ + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [ + "domain" + ], + "publicBodyParams": [ + "domain" + ], + "bodyParamDetails": [ + { + "name": "domain", + "required": true + } + ], + "pathParamDetails": [ + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "DomainDeleteParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "rules", + "publicResource": "rules", + "operation": "listRulesets", + "publicOperation": "listRulesets", + "deprecated": false, + "method": "GET", + "path": "/v1/rulesets/{namespace}", + "pathParams": [ + "namespace" + ], + "publicPathParams": [ + "namespace" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "RuleListRulesetsParams" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "rules", + "publicResource": "rules", + "operation": "createRuleset", + "publicOperation": "createRuleset", + "deprecated": false, + "method": "POST", + "path": "/v1/rulesets/{namespace}", + "pathParams": [ + "namespace" + ], + "publicPathParams": [ + "namespace" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [ + "title", + "description", + "slug", + "isPrivate", + "document" + ], + "publicBodyParams": [ + "title", + "description", + "slug", + "isPrivate", + "document" + ], + "bodyParamDetails": [ + { + "name": "title", + "required": true + }, + { + "name": "description", + "required": false + }, + { + "name": "slug", + "required": true + }, + { + "name": "isPrivate", + "required": false + }, + { + "name": "document", + "required": true + } + ], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "RuleCreateRulesetParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "responseModel": { + "name": "uid", + "publicAliases": [] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "rules", + "publicResource": "rules", + "operation": "updateRuleset", + "publicOperation": "updateRuleset", + "deprecated": false, + "method": "PATCH", + "path": "/v1/rulesets/{namespace}/{slug}", + "pathParams": [ + "namespace", + "slug" + ], + "publicPathParams": [ + "namespace", + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [ + "namespace", + "slug", + "title", + "description", + "isPrivate" + ], + "publicBodyParams": [ + "namespace", + "slug", + "title", + "description", + "isPrivate" + ], + "bodyParamDetails": [ + { + "name": "namespace", + "required": false + }, + { + "name": "slug", + "required": false + }, + { + "name": "title", + "required": false + }, + { + "name": "description", + "required": false + }, + { + "name": "isPrivate", + "required": false + } + ], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "RuleUpdateRulesetParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "rules", + "publicResource": "rules", + "operation": "deleteRuleset", + "publicOperation": "deleteRuleset", + "deprecated": false, + "method": "DELETE", + "path": "/v1/rulesets/{namespace}/{slug}", + "pathParams": [ + "namespace", + "slug" + ], + "publicPathParams": [ + "namespace", + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "RuleDeleteRulesetParams" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "rules", + "publicResource": "rules", + "operation": "retrieveRulesetDocument", + "publicOperation": "retrieveRulesetDocument", + "deprecated": false, + "method": "GET", + "path": "/v1/rulesets/{namespace}/{slug}", + "pathParams": [ + "namespace", + "slug" + ], + "publicPathParams": [ + "namespace", + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "RuleRetrieveRulesetDocumentParams" + }, + "response": { + "status": "200", + "contentType": "text/plain", + "encoding": "text", + "contents": [ + { + "contentType": "text/plain", + "encoding": "text" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "rules", + "publicResource": "rules", + "operation": "createRulesetAccessGroup", + "publicOperation": "createRulesetAccessGroup", + "deprecated": false, + "method": "POST", + "path": "/v1/rulesets/{namespace}/{slug}/access-group", + "pathParams": [ + "namespace", + "slug" + ], + "publicPathParams": [ + "namespace", + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [ + "accessGroupSlug" + ], + "publicBodyParams": [ + "accessGroupSlug" + ], + "bodyParamDetails": [ + { + "name": "accessGroupSlug", + "required": true + } + ], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "RuleCreateRulesetAccessGroupParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "rules", + "publicResource": "rules", + "operation": "deleteRulesetAccessGroup", + "publicOperation": "deleteRulesetAccessGroup", + "deprecated": false, + "method": "DELETE", + "path": "/v1/rulesets/{namespace}/{slug}/access-group", + "pathParams": [ + "namespace", + "slug" + ], + "publicPathParams": [ + "namespace", + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [ + "accessGroupSlug" + ], + "publicBodyParams": [ + "accessGroupSlug" + ], + "bodyParamDetails": [ + { + "name": "accessGroupSlug", + "required": true + } + ], + "pathParamDetails": [ + { + "name": "namespace", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "RuleDeleteRulesetAccessGroupParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "themes", + "publicResource": "themes", + "operation": "list", + "publicOperation": "list", + "deprecated": false, + "method": "GET", + "path": "/v1/themes", + "pathParams": [], + "publicPathParams": [], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "themes", + "publicResource": "themes", + "operation": "create", + "publicOperation": "create", + "deprecated": false, + "method": "POST", + "path": "/v1/themes", + "pathParams": [], + "publicPathParams": [], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [ + "name", + "description", + "slug", + "document" + ], + "publicBodyParams": [ + "name", + "description", + "slug", + "document" + ], + "bodyParamDetails": [ + { + "name": "name", + "required": true + }, + { + "name": "description", + "required": false + }, + { + "name": "slug", + "required": true + }, + { + "name": "document", + "required": true + } + ], + "pathParamDetails": [], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "ThemeCreateParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "responseModel": { + "name": "uid", + "publicAliases": [] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "themes", + "publicResource": "themes", + "operation": "update", + "publicOperation": "update", + "deprecated": false, + "method": "PATCH", + "path": "/v1/themes/{slug}", + "pathParams": [ + "slug" + ], + "publicPathParams": [ + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [ + "name", + "description" + ], + "publicBodyParams": [ + "name", + "description" + ], + "bodyParamDetails": [ + { + "name": "name", + "required": false + }, + { + "name": "description", + "required": false + } + ], + "pathParamDetails": [ + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "ThemeUpdateParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "themes", + "publicResource": "themes", + "operation": "replaceDocument", + "publicOperation": "replaceDocument", + "deprecated": false, + "method": "PUT", + "path": "/v1/themes/{slug}", + "pathParams": [ + "slug" + ], + "publicPathParams": [ + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [ + "document" + ], + "publicBodyParams": [ + "document" + ], + "bodyParamDetails": [ + { + "name": "document", + "required": true + } + ], + "pathParamDetails": [ + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "ThemeReplaceDocumentParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "themes", + "publicResource": "themes", + "operation": "delete", + "publicOperation": "delete", + "deprecated": false, + "method": "DELETE", + "path": "/v1/themes/{slug}", + "pathParams": [ + "slug" + ], + "publicPathParams": [ + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [ + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "ThemeDeleteParams" + }, + "response": { + "status": "200", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "themes", + "publicResource": "themes", + "operation": "retrieve", + "publicOperation": "retrieve", + "deprecated": false, + "method": "GET", + "path": "/v1/themes/{slug}", + "pathParams": [ + "slug" + ], + "publicPathParams": [ + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [ + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "ThemeRetrieveParams" + }, + "response": { + "status": "200", + "contentType": "text/plain", + "encoding": "text", + "contents": [ + { + "contentType": "text/plain", + "encoding": "text" + } + ] + }, + "result": { + "successStatus": "200", + "errorStatuses": [ + "400", + "401", + "403", + "404", + "422", + "500" + ] + }, + "errorResponses": [ + { + "status": "400", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "400", + "publicAliases": [] + } + }, + { + "status": "401", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "401", + "publicAliases": [] + } + }, + { + "status": "403", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "403", + "publicAliases": [] + } + }, + { + "status": "404", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "404", + "publicAliases": [] + } + }, + { + "status": "422", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "422", + "publicAliases": [] + } + }, + { + "status": "500", + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "model": { + "name": "500", + "publicAliases": [] + } + } + ], + "responseLinks": [], + "transport": "http" + }, { - "resource": "registry", - "publicResource": "registry", - "operation": "listAllApiDocuments", - "publicOperation": "listAllApiDocuments", + "resource": "teams", + "publicResource": "teams", + "operation": "list", + "publicOperation": "list", "deprecated": false, "method": "GET", - "path": "/v1/apis", + "path": "/v1/teams", "pathParams": [], "publicPathParams": [], "queryParams": [], @@ -2056,19 +12034,15 @@ "transport": "http" }, { - "resource": "registry", - "publicResource": "registry", - "operation": "listApiDocuments", - "publicOperation": "listApiDocuments", + "resource": "teams.members", + "publicResource": "teams.members", + "operation": "list", + "publicOperation": "list", "deprecated": false, "method": "GET", - "path": "/v1/apis/{namespace}", - "pathParams": [ - "namespace" - ], - "publicPathParams": [ - "namespace" - ], + "path": "/v1/teams/members", + "pathParams": [], + "publicPathParams": [], "queryParams": [], "publicQueryParams": [], "headerParams": [], @@ -2076,22 +12050,12 @@ "bodyParams": [], "publicBodyParams": [], "bodyParamDetails": [], - "pathParamDetails": [ - { - "name": "namespace", - "required": true, - "style": "simple", - "explode": false - } - ], + "pathParamDetails": [], "queryParamDetails": [], "headerParamDetails": [], "cookieParams": [], "publicCookieParams": [], "cookieParamDetails": [], - "paramsModel": { - "publicName": "RegistryListApiDocumentsParams" - }, "response": { "status": "200", "contentType": "application/json", @@ -2210,74 +12174,38 @@ "transport": "http" }, { - "resource": "registry", - "publicResource": "registry", - "operation": "createApiDocument", - "publicOperation": "createApiDocument", + "resource": "teams.members", + "publicResource": "teams.members", + "operation": "update", + "publicOperation": "update", "deprecated": false, - "method": "POST", - "path": "/v1/apis/{namespace}", + "method": "PATCH", + "path": "/v1/teams/members/{uid}", "pathParams": [ - "namespace" + "uid" ], "publicPathParams": [ - "namespace" + "uid" ], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], "bodyParams": [ - "title", - "description", - "version", - "slug", - "ruleset", - "isPrivate", - "document" + "role" ], "publicBodyParams": [ - "title", - "description", - "version", - "slug", - "ruleset", - "isPrivate", - "document" + "role" ], "bodyParamDetails": [ { - "name": "title", - "required": true - }, - { - "name": "description", - "required": false - }, - { - "name": "version", - "required": true - }, - { - "name": "slug", - "required": true - }, - { - "name": "ruleset", - "required": false - }, - { - "name": "isPrivate", - "required": false - }, - { - "name": "document", + "name": "role", "required": true } ], "pathParamDetails": [ { - "name": "namespace", + "name": "uid", "required": true, "style": "simple", "explode": false @@ -2289,7 +12217,7 @@ "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "RegistryCreateApiDocumentParams" + "publicName": "MemberUpdateParams" }, "requestBody": { "contentType": "application/json", @@ -2422,64 +12350,29 @@ "transport": "http" }, { - "resource": "registry", - "publicResource": "registry", - "operation": "updateApiDocument", - "publicOperation": "updateApiDocument", + "resource": "teams.members", + "publicResource": "teams.members", + "operation": "delete", + "publicOperation": "delete", "deprecated": false, - "method": "PATCH", - "path": "/v1/apis/{namespace}/{slug}", + "method": "DELETE", + "path": "/v1/teams/members/{uid}", "pathParams": [ - "namespace", - "slug" + "uid" ], "publicPathParams": [ - "namespace", - "slug" + "uid" ], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [ - "title", - "description", - "isPrivate", - "ruleset" - ], - "publicBodyParams": [ - "title", - "description", - "isPrivate", - "ruleset" - ], - "bodyParamDetails": [ - { - "name": "title", - "required": false - }, - { - "name": "description", - "required": false - }, - { - "name": "isPrivate", - "required": false - }, - { - "name": "ruleset", - "required": false - } - ], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], "pathParamDetails": [ { - "name": "namespace", - "required": true, - "style": "simple", - "explode": false - }, - { - "name": "slug", + "name": "uid", "required": true, "style": "simple", "explode": false @@ -2491,20 +12384,7 @@ "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "RegistryUpdateApiDocumentParams" - }, - "requestBody": { - "contentType": "application/json", - "encoding": "json", - "contents": [ - { - "contentType": "application/json", - "encoding": "json" - } - ], - "required": true, - "publicName": "body", - "publicIdentifier": "body" + "publicName": "MemberDeleteParams" }, "response": { "status": "200", @@ -2624,49 +12504,58 @@ "transport": "http" }, { - "resource": "registry", - "publicResource": "registry", - "operation": "deleteApiDocument", - "publicOperation": "deleteApiDocument", + "resource": "teams.invites", + "publicResource": "teams.invites", + "operation": "member", + "publicOperation": "member", "deprecated": false, - "method": "DELETE", - "path": "/v1/apis/{namespace}/{slug}", - "pathParams": [ - "namespace", - "slug" - ], - "publicPathParams": [ - "namespace", - "slug" - ], + "method": "POST", + "path": "/v1/teams/invites", + "pathParams": [], + "publicPathParams": [], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [], - "publicBodyParams": [], - "bodyParamDetails": [], - "pathParamDetails": [ + "bodyParams": [ + "email", + "role" + ], + "publicBodyParams": [ + "email", + "role" + ], + "bodyParamDetails": [ { - "name": "namespace", - "required": true, - "style": "simple", - "explode": false + "name": "email", + "required": true }, { - "name": "slug", - "required": true, - "style": "simple", - "explode": false + "name": "role", + "required": true } ], + "pathParamDetails": [], "queryParamDetails": [], "headerParamDetails": [], "cookieParams": [], "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "RegistryDeleteApiDocumentParams" + "publicName": "InviteMemberParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" }, "response": { "status": "200", @@ -2786,22 +12675,18 @@ "transport": "http" }, { - "resource": "registry", - "publicResource": "registry", - "operation": "retrieveApiDocumentVersion", - "publicOperation": "retrieveApiDocumentVersion", + "resource": "teams.invites", + "publicResource": "teams.invites", + "operation": "resend", + "publicOperation": "resend", "deprecated": false, - "method": "GET", - "path": "/v1/apis/{namespace}/{slug}/version/{semver}", + "method": "PATCH", + "path": "/v1/teams/invites/{uid}", "pathParams": [ - "namespace", - "slug", - "semver" + "uid" ], "publicPathParams": [ - "namespace", - "slug", - "semver" + "uid" ], "queryParams": [], "publicQueryParams": [], @@ -2812,19 +12697,7 @@ "bodyParamDetails": [], "pathParamDetails": [ { - "name": "namespace", - "required": true, - "style": "simple", - "explode": false - }, - { - "name": "slug", - "required": true, - "style": "simple", - "explode": false - }, - { - "name": "semver", + "name": "uid", "required": true, "style": "simple", "explode": false @@ -2836,16 +12709,16 @@ "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "RegistryRetrieveApiDocumentVersionParams" + "publicName": "InviteResendParams" }, "response": { "status": "200", - "contentType": "text/plain", - "encoding": "text", + "contentType": "application/json", + "encoding": "json", "contents": [ { - "contentType": "text/plain", - "encoding": "text" + "contentType": "application/json", + "encoding": "json" } ] }, @@ -2956,60 +12829,29 @@ "transport": "http" }, { - "resource": "registry", - "publicResource": "registry", - "operation": "updateApiDocumentVersion", - "publicOperation": "updateApiDocumentVersion", + "resource": "teams.invites", + "publicResource": "teams.invites", + "operation": "cancel", + "publicOperation": "cancel", "deprecated": false, - "method": "PATCH", - "path": "/v1/apis/{namespace}/{slug}/version/{semver}", + "method": "DELETE", + "path": "/v1/teams/invites/{uid}", "pathParams": [ - "namespace", - "slug", - "semver" + "uid" ], "publicPathParams": [ - "namespace", - "slug", - "semver" + "uid" ], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [ - "document", - "lastKnownVersionSha" - ], - "publicBodyParams": [ - "document", - "lastKnownVersionSha" - ], - "bodyParamDetails": [ - { - "name": "document", - "required": true - }, - { - "name": "lastKnownVersionSha", - "required": false - } - ], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], "pathParamDetails": [ { - "name": "namespace", - "required": true, - "style": "simple", - "explode": false - }, - { - "name": "slug", - "required": true, - "style": "simple", - "explode": false - }, - { - "name": "semver", + "name": "uid", "required": true, "style": "simple", "explode": false @@ -3021,20 +12863,7 @@ "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "RegistryUpdateApiDocumentVersionParams" - }, - "requestBody": { - "contentType": "application/json", - "encoding": "json", - "contents": [ - { - "contentType": "application/json", - "encoding": "json" - } - ], - "required": true, - "publicName": "body", - "publicIdentifier": "body" + "publicName": "InviteCancelParams" }, "response": { "status": "200", @@ -3154,23 +12983,15 @@ "transport": "http" }, { - "resource": "registry", - "publicResource": "registry", - "operation": "deleteApiDocumentVersion", - "publicOperation": "deleteApiDocumentVersion", + "resource": "scalarDocs", + "publicResource": "scalarDocs", + "operation": "listGuides", + "publicOperation": "listGuides", "deprecated": false, - "method": "DELETE", - "path": "/v1/apis/{namespace}/{slug}/version/{semver}", - "pathParams": [ - "namespace", - "slug", - "semver" - ], - "publicPathParams": [ - "namespace", - "slug", - "semver" - ], + "method": "GET", + "path": "/v1/guides", + "pathParams": [], + "publicPathParams": [], "queryParams": [], "publicQueryParams": [], "headerParams": [], @@ -3178,34 +12999,12 @@ "bodyParams": [], "publicBodyParams": [], "bodyParamDetails": [], - "pathParamDetails": [ - { - "name": "namespace", - "required": true, - "style": "simple", - "explode": false - }, - { - "name": "slug", - "required": true, - "style": "simple", - "explode": false - }, - { - "name": "semver", - "required": true, - "style": "simple", - "explode": false - } - ], + "pathParamDetails": [], "queryParamDetails": [], "headerParamDetails": [], "cookieParams": [], "publicCookieParams": [], "cookieParamDetails": [], - "paramsModel": { - "publicName": "RegistryDeleteApiDocumentVersionParams" - }, "response": { "status": "200", "contentType": "application/json", @@ -3324,57 +13123,76 @@ "transport": "http" }, { - "resource": "registry", - "publicResource": "registry", - "operation": "listApiDocumentVersionMetadata", - "publicOperation": "listApiDocumentVersionMetadata", + "resource": "scalarDocs", + "publicResource": "scalarDocs", + "operation": "createGuide", + "publicOperation": "createGuide", "deprecated": false, - "method": "GET", - "path": "/v1/apis/{namespace}/{slug}/version/{semver}/metadata", - "pathParams": [ - "namespace", - "slug", - "semver" - ], - "publicPathParams": [ - "namespace", - "slug", - "semver" - ], + "method": "POST", + "path": "/v1/guides", + "pathParams": [], + "publicPathParams": [], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [], - "publicBodyParams": [], - "bodyParamDetails": [], - "pathParamDetails": [ + "bodyParams": [ + "name", + "slug", + "isPrivate", + "allowedUsers", + "allowedDomains" + ], + "publicBodyParams": [ + "name", + "slug", + "isPrivate", + "allowedUsers", + "allowedDomains" + ], + "bodyParamDetails": [ { - "name": "namespace", - "required": true, - "style": "simple", - "explode": false + "name": "name", + "required": true }, { "name": "slug", - "required": true, - "style": "simple", - "explode": false + "required": false }, { - "name": "semver", - "required": true, - "style": "simple", - "explode": false + "name": "isPrivate", + "required": true + }, + { + "name": "allowedUsers", + "required": true + }, + { + "name": "allowedDomains", + "required": true } ], + "pathParamDetails": [], "queryParamDetails": [], "headerParamDetails": [], "cookieParams": [], "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "RegistryListApiDocumentVersionMetadataParams" + "publicName": "ScalarDocCreateGuideParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" }, "response": { "status": "200", @@ -3387,10 +13205,6 @@ } ] }, - "responseModel": { - "name": "managed_doc_version", - "publicAliases": [] - }, "result": { "successStatus": "200", "errorStatuses": [ @@ -3498,89 +13312,41 @@ "transport": "http" }, { - "resource": "registry", - "publicResource": "registry", - "operation": "createApiDocumentVersion", - "publicOperation": "createApiDocumentVersion", + "resource": "scalarDocs", + "publicResource": "scalarDocs", + "operation": "publishGuide", + "publicOperation": "publishGuide", "deprecated": false, "method": "POST", - "path": "/v1/apis/{namespace}/{slug}/version", + "path": "/v1/guides/{slug}/publish", "pathParams": [ - "namespace", "slug" ], "publicPathParams": [ - "namespace", "slug" ], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [ - "version", - "document", - "force", - "lastKnownVersionSha" - ], - "publicBodyParams": [ - "version", - "document", - "force", - "lastKnownVersionSha" - ], - "bodyParamDetails": [ - { - "name": "version", - "required": true - }, - { - "name": "document", - "required": true - }, - { - "name": "force", - "required": false - }, - { - "name": "lastKnownVersionSha", - "required": false - } - ], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], "pathParamDetails": [ - { - "name": "namespace", - "required": true, - "style": "simple", - "explode": false - }, - { - "name": "slug", - "required": true, - "style": "simple", - "explode": false - } - ], - "queryParamDetails": [], - "headerParamDetails": [], - "cookieParams": [], - "publicCookieParams": [], - "cookieParamDetails": [], - "paramsModel": { - "publicName": "RegistryCreateApiDocumentVersionParams" - }, - "requestBody": { - "contentType": "application/json", - "encoding": "json", - "contents": [ - { - "contentType": "application/json", - "encoding": "json" - } - ], - "required": true, - "publicName": "body", - "publicIdentifier": "body" + { + "name": "slug", + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "ScalarDocPublishGuideParams" }, "response": { "status": "200", @@ -3593,10 +13359,6 @@ } ] }, - "responseModel": { - "name": "managed_doc_version", - "publicAliases": [] - }, "result": { "successStatus": "200", "errorStatuses": [ @@ -3704,71 +13466,41 @@ "transport": "http" }, { - "resource": "registry", - "publicResource": "registry", - "operation": "createApiDocumentAccessGroup", - "publicOperation": "createApiDocumentAccessGroup", + "resource": "scalarDocs", + "publicResource": "scalarDocs", + "operation": "listProjects", + "publicOperation": "listProjects", "deprecated": false, - "method": "POST", - "path": "/v1/apis/{namespace}/{slug}/access-group", - "pathParams": [ - "namespace", - "slug" + "method": "GET", + "path": "/v1/docs", + "pathParams": [], + "publicPathParams": [], + "queryParams": [ + "limit" ], - "publicPathParams": [ - "namespace", - "slug" + "publicQueryParams": [ + "limit" ], - "queryParams": [], - "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [ - "accessGroupSlug" - ], - "publicBodyParams": [ - "accessGroupSlug" - ], - "bodyParamDetails": [ - { - "name": "accessGroupSlug", - "required": true - } - ], - "pathParamDetails": [ - { - "name": "namespace", - "required": true, - "style": "simple", - "explode": false - }, + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [], + "queryParamDetails": [ { - "name": "slug", - "required": true, - "style": "simple", - "explode": false + "name": "limit", + "required": false, + "style": "form", + "explode": true } ], - "queryParamDetails": [], "headerParamDetails": [], "cookieParams": [], "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "RegistryCreateApiDocumentAccessGroupParams" - }, - "requestBody": { - "contentType": "application/json", - "encoding": "json", - "contents": [ - { - "contentType": "application/json", - "encoding": "json" - } - ], - "required": true, - "publicName": "body", - "publicIdentifier": "body" + "publicName": "ScalarDocListProjectsParams" }, "response": { "status": "200", @@ -3888,58 +13620,75 @@ "transport": "http" }, { - "resource": "registry", - "publicResource": "registry", - "operation": "deleteApiDocumentAccessGroup", - "publicOperation": "deleteApiDocumentAccessGroup", + "resource": "scalarDocs", + "publicResource": "scalarDocs", + "operation": "createProject", + "publicOperation": "createProject", "deprecated": false, - "method": "DELETE", - "path": "/v1/apis/{namespace}/{slug}/access-group", - "pathParams": [ - "namespace", - "slug" - ], - "publicPathParams": [ - "namespace", - "slug" - ], + "method": "POST", + "path": "/v1/docs", + "pathParams": [], + "publicPathParams": [], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], "bodyParams": [ - "accessGroupSlug" + "name", + "slug", + "isPrivate", + "blank", + "provider", + "githubRepository", + "bitbucketRepository" ], "publicBodyParams": [ - "accessGroupSlug" + "name", + "slug", + "isPrivate", + "blank", + "provider", + "githubRepository", + "bitbucketRepository" ], "bodyParamDetails": [ { - "name": "accessGroupSlug", + "name": "name", "required": true - } - ], - "pathParamDetails": [ - { - "name": "namespace", - "required": true, - "style": "simple", - "explode": false }, { "name": "slug", - "required": true, - "style": "simple", - "explode": false + "required": false + }, + { + "name": "isPrivate", + "required": false + }, + { + "name": "blank", + "required": false + }, + { + "name": "provider", + "required": true + }, + { + "name": "githubRepository", + "required": false + }, + { + "name": "bitbucketRepository", + "required": false } ], + "pathParamDetails": [], "queryParamDetails": [], "headerParamDetails": [], "cookieParams": [], "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "RegistryDeleteApiDocumentAccessGroupParams" + "publicName": "ScalarDocCreateProjectParams" }, "requestBody": { "contentType": "application/json", @@ -3965,6 +13714,10 @@ } ] }, + "responseModel": { + "name": "docs_project", + "publicAliases": [] + }, "result": { "successStatus": "200", "errorStatuses": [ @@ -4072,18 +13825,18 @@ "transport": "http" }, { - "resource": "schemas", - "publicResource": "schemas", - "operation": "list", - "publicOperation": "list", + "resource": "scalarDocs", + "publicResource": "scalarDocs", + "operation": "retrieveProject", + "publicOperation": "retrieveProject", "deprecated": false, "method": "GET", - "path": "/v1/schemas/{namespace}", + "path": "/v1/docs/{slug}", "pathParams": [ - "namespace" + "slug" ], "publicPathParams": [ - "namespace" + "slug" ], "queryParams": [], "publicQueryParams": [], @@ -4094,7 +13847,7 @@ "bodyParamDetails": [], "pathParamDetails": [ { - "name": "namespace", + "name": "slug", "required": true, "style": "simple", "explode": false @@ -4106,7 +13859,7 @@ "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "SchemaListParams" + "publicName": "ScalarDocRetrieveProjectParams" }, "response": { "status": "200", @@ -4119,6 +13872,10 @@ } ] }, + "responseModel": { + "name": "docs_project", + "publicAliases": [] + }, "result": { "successStatus": "200", "errorStatuses": [ @@ -4226,68 +13983,74 @@ "transport": "http" }, { - "resource": "schemas", - "publicResource": "schemas", - "operation": "create", - "publicOperation": "create", + "resource": "scalarDocs", + "publicResource": "scalarDocs", + "operation": "updateProject", + "publicOperation": "updateProject", "deprecated": false, - "method": "POST", - "path": "/v1/schemas/{namespace}", + "method": "PATCH", + "path": "/v1/docs/{slug}", "pathParams": [ - "namespace" + "slug" ], "publicPathParams": [ - "namespace" + "slug" ], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], "bodyParams": [ - "title", - "description", - "version", - "slug", + "name", "isPrivate", - "document" + "accessGroups", + "loginPortalUid", + "activeThemeId", + "agentEnabled", + "analyticsEnabled" ], "publicBodyParams": [ - "title", - "description", - "version", - "slug", + "name", "isPrivate", - "document" + "accessGroups", + "loginPortalUid", + "activeThemeId", + "agentEnabled", + "analyticsEnabled" ], "bodyParamDetails": [ { - "name": "title", - "required": true + "name": "name", + "required": false }, { - "name": "description", + "name": "isPrivate", "required": false }, { - "name": "version", - "required": true + "name": "accessGroups", + "required": false }, { - "name": "slug", - "required": true + "name": "loginPortalUid", + "required": false }, { - "name": "isPrivate", + "name": "activeThemeId", "required": false }, { - "name": "document", - "required": true + "name": "agentEnabled", + "required": false + }, + { + "name": "analyticsEnabled", + "required": false } ], "pathParamDetails": [ { - "name": "namespace", + "name": "slug", "required": true, "style": "simple", "explode": false @@ -4299,7 +14062,7 @@ "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "SchemaCreateParams" + "publicName": "ScalarDocUpdateProjectParams" }, "requestBody": { "contentType": "application/json", @@ -4325,10 +14088,6 @@ } ] }, - "responseModel": { - "name": "uid", - "publicAliases": [] - }, "result": { "successStatus": "200", "errorStatuses": [ @@ -4432,60 +14191,31 @@ } } ], - "responseLinks": [], - "transport": "http" - }, - { - "resource": "schemas", - "publicResource": "schemas", - "operation": "update", - "publicOperation": "update", - "deprecated": false, - "method": "PATCH", - "path": "/v1/schemas/{namespace}/{slug}", - "pathParams": [ - "namespace", - "slug" - ], - "publicPathParams": [ - "namespace", - "slug" - ], - "queryParams": [], - "publicQueryParams": [], - "headerParams": [], - "publicHeaderParams": [], - "bodyParams": [ - "title", - "description", - "isPrivate" - ], - "publicBodyParams": [ - "title", - "description", - "isPrivate" - ], - "bodyParamDetails": [ - { - "name": "title", - "required": false - }, - { - "name": "description", - "required": false - }, - { - "name": "isPrivate", - "required": false - } - ], + "responseLinks": [], + "transport": "http" + }, + { + "resource": "scalarDocs", + "publicResource": "scalarDocs", + "operation": "deleteProject", + "publicOperation": "deleteProject", + "deprecated": false, + "method": "DELETE", + "path": "/v1/docs/{slug}", + "pathParams": [ + "slug" + ], + "publicPathParams": [ + "slug" + ], + "queryParams": [], + "publicQueryParams": [], + "headerParams": [], + "publicHeaderParams": [], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], "pathParamDetails": [ - { - "name": "namespace", - "required": true, - "style": "simple", - "explode": false - }, { "name": "slug", "required": true, @@ -4499,20 +14229,7 @@ "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "SchemaUpdateParams" - }, - "requestBody": { - "contentType": "application/json", - "encoding": "json", - "contents": [ - { - "contentType": "application/json", - "encoding": "json" - } - ], - "required": true, - "publicName": "body", - "publicIdentifier": "body" + "publicName": "ScalarDocDeleteProjectParams" }, "response": { "status": "200", @@ -4632,35 +14349,48 @@ "transport": "http" }, { - "resource": "schemas", - "publicResource": "schemas", - "operation": "delete", - "publicOperation": "delete", + "resource": "scalarDocs", + "publicResource": "scalarDocs", + "operation": "publishProject", + "publicOperation": "publishProject", "deprecated": false, - "method": "DELETE", - "path": "/v1/schemas/{namespace}/{slug}", + "method": "POST", + "path": "/v1/docs/{slug}/publish", "pathParams": [ - "namespace", "slug" ], "publicPathParams": [ - "namespace", "slug" ], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [], - "publicBodyParams": [], - "bodyParamDetails": [], - "pathParamDetails": [ + "bodyParams": [ + "commitSha", + "preview", + "configPath" + ], + "publicBodyParams": [ + "commitSha", + "preview", + "configPath" + ], + "bodyParamDetails": [ { - "name": "namespace", - "required": true, - "style": "simple", - "explode": false + "name": "commitSha", + "required": false + }, + { + "name": "preview", + "required": false }, + { + "name": "configPath", + "required": false + } + ], + "pathParamDetails": [ { "name": "slug", "required": true, @@ -4674,7 +14404,20 @@ "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "SchemaDeleteParams" + "publicName": "ScalarDocPublishProjectParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" }, "response": { "status": "200", @@ -4794,66 +14537,61 @@ "transport": "http" }, { - "resource": "schemas.version", - "publicResource": "schemas.version", - "operation": "retrieve", - "publicOperation": "retrieve", + "resource": "scalarDocs", + "publicResource": "scalarDocs", + "operation": "listProjectConfig", + "publicOperation": "listProjectConfig", "deprecated": false, "method": "GET", - "path": "/v1/schemas/{namespace}/{slug}/version/{semver}", + "path": "/v1/docs/{slug}/config", "pathParams": [ - "namespace", - "slug", - "semver" + "slug" ], "publicPathParams": [ - "namespace", - "slug", - "semver" + "slug" + ], + "queryParams": [ + "ref" + ], + "publicQueryParams": [ + "ref" ], - "queryParams": [], - "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], "bodyParams": [], "publicBodyParams": [], "bodyParamDetails": [], "pathParamDetails": [ - { - "name": "namespace", - "required": true, - "style": "simple", - "explode": false - }, { "name": "slug", "required": true, "style": "simple", "explode": false - }, + } + ], + "queryParamDetails": [ { - "name": "semver", - "required": true, - "style": "simple", - "explode": false + "name": "ref", + "required": false, + "style": "form", + "explode": true } ], - "queryParamDetails": [], "headerParamDetails": [], "cookieParams": [], "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "VersionRetrieveParams" + "publicName": "ScalarDocListProjectConfigParams" }, "response": { "status": "200", - "contentType": "text/plain", - "encoding": "text", + "contentType": "application/json", + "encoding": "json", "contents": [ { - "contentType": "text/plain", - "encoding": "text" + "contentType": "application/json", + "encoding": "json" } ] }, @@ -4964,45 +14702,62 @@ "transport": "http" }, { - "resource": "schemas.version", - "publicResource": "schemas.version", - "operation": "delete", - "publicOperation": "delete", + "resource": "scalarDocs", + "publicResource": "scalarDocs", + "operation": "updateProjectConfig", + "publicOperation": "updateProjectConfig", "deprecated": false, - "method": "DELETE", - "path": "/v1/schemas/{namespace}/{slug}/version/{semver}", + "method": "PUT", + "path": "/v1/docs/{slug}/config", "pathParams": [ - "namespace", - "slug", - "semver" + "slug" ], "publicPathParams": [ - "namespace", - "slug", - "semver" + "slug" ], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [], - "publicBodyParams": [], - "bodyParamDetails": [], - "pathParamDetails": [ + "bodyParams": [ + "content", + "ref", + "baseToken", + "message", + "path" + ], + "publicBodyParams": [ + "content", + "ref", + "baseToken", + "message", + "path" + ], + "bodyParamDetails": [ { - "name": "namespace", - "required": true, - "style": "simple", - "explode": false + "name": "content", + "required": true }, { - "name": "slug", - "required": true, - "style": "simple", - "explode": false + "name": "ref", + "required": false }, { - "name": "semver", + "name": "baseToken", + "required": false + }, + { + "name": "message", + "required": false + }, + { + "name": "path", + "required": false + } + ], + "pathParamDetails": [ + { + "name": "slug", "required": true, "style": "simple", "explode": false @@ -5014,7 +14769,20 @@ "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "VersionDeleteParams" + "publicName": "ScalarDocUpdateProjectConfigParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" }, "response": { "status": "200", @@ -5134,77 +14902,41 @@ "transport": "http" }, { - "resource": "schemas.version", - "publicResource": "schemas.version", - "operation": "create", - "publicOperation": "create", + "resource": "scalarDocs", + "publicResource": "scalarDocs", + "operation": "listProjectDomain", + "publicOperation": "listProjectDomain", "deprecated": false, - "method": "POST", - "path": "/v1/schemas/{namespace}/{slug}/version", + "method": "GET", + "path": "/v1/docs/{slug}/domain", "pathParams": [ - "namespace", "slug" ], "publicPathParams": [ - "namespace", "slug" ], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [ - "version", - "document" - ], - "publicBodyParams": [ - "version", - "document" - ], - "bodyParamDetails": [ - { - "name": "version", - "required": true - }, - { - "name": "document", - "required": true - } - ], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], "pathParamDetails": [ - { - "name": "namespace", - "required": true, - "style": "simple", - "explode": false - }, { "name": "slug", - "required": true, - "style": "simple", - "explode": false - } - ], - "queryParamDetails": [], - "headerParamDetails": [], - "cookieParams": [], - "publicCookieParams": [], - "cookieParamDetails": [], - "paramsModel": { - "publicName": "VersionCreateParams" - }, - "requestBody": { - "contentType": "application/json", - "encoding": "json", - "contents": [ - { - "contentType": "application/json", - "encoding": "json" - } - ], - "required": true, - "publicName": "body", - "publicIdentifier": "body" + "required": true, + "style": "simple", + "explode": false + } + ], + "queryParamDetails": [], + "headerParamDetails": [], + "cookieParams": [], + "publicCookieParams": [], + "cookieParamDetails": [], + "paramsModel": { + "publicName": "ScalarDocListProjectDomainParams" }, "response": { "status": "200", @@ -5217,10 +14949,6 @@ } ] }, - "responseModel": { - "name": "uid", - "publicAliases": [] - }, "result": { "successStatus": "200", "errorStatuses": [ @@ -5328,44 +15056,27 @@ "transport": "http" }, { - "resource": "schemas.accessGroup", - "publicResource": "schemas.accessGroup", - "operation": "create", - "publicOperation": "create", + "resource": "scalarDocs", + "publicResource": "scalarDocs", + "operation": "listProjectDomainStatus", + "publicOperation": "listProjectDomainStatus", "deprecated": false, - "method": "POST", - "path": "/v1/schemas/{namespace}/{slug}/access-group", + "method": "GET", + "path": "/v1/docs/{slug}/domain/status", "pathParams": [ - "namespace", "slug" ], "publicPathParams": [ - "namespace", "slug" ], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [ - "accessGroupSlug" - ], - "publicBodyParams": [ - "accessGroupSlug" - ], - "bodyParamDetails": [ - { - "name": "accessGroupSlug", - "required": true - } - ], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], "pathParamDetails": [ - { - "name": "namespace", - "required": true, - "style": "simple", - "explode": false - }, { "name": "slug", "required": true, @@ -5379,20 +15090,7 @@ "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "AccessGroupCreateParams" - }, - "requestBody": { - "contentType": "application/json", - "encoding": "json", - "contents": [ - { - "contentType": "application/json", - "encoding": "json" - } - ], - "required": true, - "publicName": "body", - "publicIdentifier": "body" + "publicName": "ScalarDocListProjectDomainStatusParams" }, "response": { "status": "200", @@ -5512,72 +15210,28 @@ "transport": "http" }, { - "resource": "schemas.accessGroup", - "publicResource": "schemas.accessGroup", - "operation": "delete", - "publicOperation": "delete", + "resource": "namespaces", + "publicResource": "namespaces", + "operation": "list", + "publicOperation": "list", "deprecated": false, - "method": "DELETE", - "path": "/v1/schemas/{namespace}/{slug}/access-group", - "pathParams": [ - "namespace", - "slug" - ], - "publicPathParams": [ - "namespace", - "slug" - ], + "method": "GET", + "path": "/v1/namespaces", + "pathParams": [], + "publicPathParams": [], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [ - "accessGroupSlug" - ], - "publicBodyParams": [ - "accessGroupSlug" - ], - "bodyParamDetails": [ - { - "name": "accessGroupSlug", - "required": true - } - ], - "pathParamDetails": [ - { - "name": "namespace", - "required": true, - "style": "simple", - "explode": false - }, - { - "name": "slug", - "required": true, - "style": "simple", - "explode": false - } - ], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [], "queryParamDetails": [], "headerParamDetails": [], "cookieParams": [], "publicCookieParams": [], "cookieParamDetails": [], - "paramsModel": { - "publicName": "AccessGroupDeleteParams" - }, - "requestBody": { - "contentType": "application/json", - "encoding": "json", - "contents": [ - { - "contentType": "application/json", - "encoding": "json" - } - ], - "required": true, - "publicName": "body", - "publicIdentifier": "body" - }, "response": { "status": "200", "contentType": "application/json", @@ -5696,41 +15350,52 @@ "transport": "http" }, { - "resource": "loginPortals", - "publicResource": "loginPortals", - "operation": "retrieve", - "publicOperation": "retrieve", + "resource": "authentication", + "publicResource": "authentication", + "operation": "exchangePersonalToken", + "publicOperation": "exchangePersonalToken", "deprecated": false, - "method": "GET", - "path": "/v1/login-portals/{slug}", - "pathParams": [ - "slug" - ], - "publicPathParams": [ - "slug" - ], + "method": "POST", + "path": "/v1/auth/exchange", + "pathParams": [], + "publicPathParams": [], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [], - "publicBodyParams": [], - "bodyParamDetails": [], - "pathParamDetails": [ + "bodyParams": [ + "personalToken" + ], + "publicBodyParams": [ + "personalToken" + ], + "bodyParamDetails": [ { - "name": "slug", - "required": true, - "style": "simple", - "explode": false + "name": "personalToken", + "required": true } ], + "pathParamDetails": [], "queryParamDetails": [], "headerParamDetails": [], "cookieParams": [], "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "LoginPortalRetrieveParams" + "publicName": "AuthenticationExchangePersonalTokenParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" }, "response": { "status": "200", @@ -5850,64 +15515,28 @@ "transport": "http" }, { - "resource": "loginPortals", - "publicResource": "loginPortals", - "operation": "update", - "publicOperation": "update", + "resource": "authentication", + "publicResource": "authentication", + "operation": "listCurrentUser", + "publicOperation": "listCurrentUser", "deprecated": false, - "method": "PATCH", - "path": "/v1/login-portals/{slug}", - "pathParams": [ - "slug" - ], - "publicPathParams": [ - "slug" - ], + "method": "GET", + "path": "/v1/auth/me", + "pathParams": [], + "publicPathParams": [], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [ - "title" - ], - "publicBodyParams": [ - "title" - ], - "bodyParamDetails": [ - { - "name": "title", - "required": false - } - ], - "pathParamDetails": [ - { - "name": "slug", - "required": true, - "style": "simple", - "explode": false - } - ], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [], "queryParamDetails": [], "headerParamDetails": [], "cookieParams": [], "publicCookieParams": [], "cookieParamDetails": [], - "paramsModel": { - "publicName": "LoginPortalUpdateParams" - }, - "requestBody": { - "contentType": "application/json", - "encoding": "json", - "contents": [ - { - "contentType": "application/json", - "encoding": "json" - } - ], - "required": true, - "publicName": "body", - "publicIdentifier": "body" - }, "response": { "status": "200", "contentType": "application/json", @@ -5919,6 +15548,10 @@ } ] }, + "responseModel": { + "name": "user", + "publicAliases": [] + }, "result": { "successStatus": "200", "errorStatuses": [ @@ -6026,41 +15659,41 @@ "transport": "http" }, { - "resource": "loginPortals", - "publicResource": "loginPortals", - "operation": "delete", - "publicOperation": "delete", + "resource": "sdks", + "publicResource": "sdks", + "operation": "list", + "publicOperation": "list", "deprecated": false, - "method": "DELETE", - "path": "/v1/login-portals/{slug}", - "pathParams": [ - "slug" + "method": "GET", + "path": "/v1/sdks", + "pathParams": [], + "publicPathParams": [], + "queryParams": [ + "limit" ], - "publicPathParams": [ - "slug" + "publicQueryParams": [ + "limit" ], - "queryParams": [], - "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], "bodyParams": [], "publicBodyParams": [], "bodyParamDetails": [], - "pathParamDetails": [ + "pathParamDetails": [], + "queryParamDetails": [ { - "name": "slug", - "required": true, - "style": "simple", - "explode": false + "name": "limit", + "required": false, + "style": "form", + "explode": true } ], - "queryParamDetails": [], "headerParamDetails": [], "cookieParams": [], "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "LoginPortalDeleteParams" + "publicName": "SdkListParams" }, "response": { "status": "200", @@ -6180,13 +15813,13 @@ "transport": "http" }, { - "resource": "loginPortals", - "publicResource": "loginPortals", + "resource": "sdks", + "publicResource": "sdks", "operation": "create", "publicOperation": "create", "deprecated": false, "method": "POST", - "path": "/v1/login-portals", + "path": "/v1/sdks", "pathParams": [], "publicPathParams": [], "queryParams": [], @@ -6194,33 +15827,45 @@ "headerParams": [], "publicHeaderParams": [], "bodyParams": [ + "apiUid", + "languages", "title", "slug", - "email", - "page" + "className", + "config" ], "publicBodyParams": [ + "apiUid", + "languages", "title", "slug", - "email", - "page" + "className", + "config" ], "bodyParamDetails": [ { - "name": "title", + "name": "apiUid", "required": true }, { - "name": "slug", + "name": "languages", "required": true }, { - "name": "email", - "required": true + "name": "title", + "required": false }, { - "name": "page", - "required": true + "name": "slug", + "required": false + }, + { + "name": "className", + "required": false + }, + { + "name": "config", + "required": false } ], "pathParamDetails": [], @@ -6230,7 +15875,7 @@ "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "LoginPortalCreateParams" + "publicName": "SdkCreateParams" }, "requestBody": { "contentType": "application/json", @@ -6367,15 +16012,19 @@ "transport": "http" }, { - "resource": "loginPortals", - "publicResource": "loginPortals", - "operation": "list", - "publicOperation": "list", + "resource": "sdks", + "publicResource": "sdks", + "operation": "retrieve", + "publicOperation": "retrieve", "deprecated": false, "method": "GET", - "path": "/v1/login-portals", - "pathParams": [], - "publicPathParams": [], + "path": "/v1/sdks/{uid}", + "pathParams": [ + "uid" + ], + "publicPathParams": [ + "uid" + ], "queryParams": [], "publicQueryParams": [], "headerParams": [], @@ -6383,12 +16032,22 @@ "bodyParams": [], "publicBodyParams": [], "bodyParamDetails": [], - "pathParamDetails": [], + "pathParamDetails": [ + { + "name": "uid", + "required": true, + "style": "simple", + "explode": false + } + ], "queryParamDetails": [], "headerParamDetails": [], "cookieParams": [], "publicCookieParams": [], "cookieParamDetails": [], + "paramsModel": { + "publicName": "SdkRetrieveParams" + }, "response": { "status": "200", "contentType": "application/json", @@ -6400,6 +16059,10 @@ } ] }, + "responseModel": { + "name": "sdk", + "publicAliases": [] + }, "result": { "successStatus": "200", "errorStatuses": [ @@ -6507,29 +16170,68 @@ "transport": "http" }, { - "resource": "rules", - "publicResource": "rules", - "operation": "listRulesets", - "publicOperation": "listRulesets", + "resource": "sdks", + "publicResource": "sdks", + "operation": "update", + "publicOperation": "update", "deprecated": false, - "method": "GET", - "path": "/v1/rulesets/{namespace}", + "method": "PATCH", + "path": "/v1/sdks/{uid}", "pathParams": [ - "namespace" + "uid" ], "publicPathParams": [ - "namespace" + "uid" ], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [], - "publicBodyParams": [], - "bodyParamDetails": [], + "bodyParams": [ + "title", + "slug", + "isPrivate", + "config", + "apiUid", + "apiVersion" + ], + "publicBodyParams": [ + "title", + "slug", + "isPrivate", + "config", + "apiUid", + "apiVersion" + ], + "bodyParamDetails": [ + { + "name": "title", + "required": false + }, + { + "name": "slug", + "required": false + }, + { + "name": "isPrivate", + "required": false + }, + { + "name": "config", + "required": false + }, + { + "name": "apiUid", + "required": false + }, + { + "name": "apiVersion", + "required": false + } + ], "pathParamDetails": [ { - "name": "namespace", + "name": "uid", "required": true, "style": "simple", "explode": false @@ -6541,7 +16243,20 @@ "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "RuleListRulesetsParams" + "publicName": "SdkUpdateParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" }, "response": { "status": "200", @@ -6661,62 +16376,29 @@ "transport": "http" }, { - "resource": "rules", - "publicResource": "rules", - "operation": "createRuleset", - "publicOperation": "createRuleset", + "resource": "sdks", + "publicResource": "sdks", + "operation": "delete", + "publicOperation": "delete", "deprecated": false, - "method": "POST", - "path": "/v1/rulesets/{namespace}", + "method": "DELETE", + "path": "/v1/sdks/{uid}", "pathParams": [ - "namespace" + "uid" ], "publicPathParams": [ - "namespace" + "uid" ], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [ - "title", - "description", - "slug", - "isPrivate", - "document" - ], - "publicBodyParams": [ - "title", - "description", - "slug", - "isPrivate", - "document" - ], - "bodyParamDetails": [ - { - "name": "title", - "required": true - }, - { - "name": "description", - "required": false - }, - { - "name": "slug", - "required": true - }, - { - "name": "isPrivate", - "required": false - }, - { - "name": "document", - "required": true - } - ], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], "pathParamDetails": [ { - "name": "namespace", + "name": "uid", "required": true, "style": "simple", "explode": false @@ -6728,20 +16410,7 @@ "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "RuleCreateRulesetParams" - }, - "requestBody": { - "contentType": "application/json", - "encoding": "json", - "contents": [ - { - "contentType": "application/json", - "encoding": "json" - } - ], - "required": true, - "publicName": "body", - "publicIdentifier": "body" + "publicName": "SdkDeleteParams" }, "response": { "status": "200", @@ -6754,10 +16423,6 @@ } ] }, - "responseModel": { - "name": "uid", - "publicAliases": [] - }, "result": { "successStatus": "200", "errorStatuses": [ @@ -6865,70 +16530,44 @@ "transport": "http" }, { - "resource": "rules", - "publicResource": "rules", - "operation": "updateRuleset", - "publicOperation": "updateRuleset", + "resource": "sdks", + "publicResource": "sdks", + "operation": "build", + "publicOperation": "build", "deprecated": false, - "method": "PATCH", - "path": "/v1/rulesets/{namespace}/{slug}", + "method": "POST", + "path": "/v1/sdks/{uid}/build", "pathParams": [ - "namespace", - "slug" + "uid" ], "publicPathParams": [ - "namespace", - "slug" + "uid" ], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], "bodyParams": [ - "namespace", - "slug", - "title", - "description", - "isPrivate" + "version", + "languages" ], "publicBodyParams": [ - "namespace", - "slug", - "title", - "description", - "isPrivate" + "version", + "languages" ], "bodyParamDetails": [ { - "name": "namespace", - "required": false - }, - { - "name": "slug", - "required": false - }, - { - "name": "title", - "required": false - }, - { - "name": "description", + "name": "version", "required": false }, { - "name": "isPrivate", + "name": "languages", "required": false } ], "pathParamDetails": [ { - "name": "namespace", - "required": true, - "style": "simple", - "explode": false - }, - { - "name": "slug", + "name": "uid", "required": true, "style": "simple", "explode": false @@ -6940,7 +16579,7 @@ "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "RuleUpdateRulesetParams" + "publicName": "SdkBuildParams" }, "requestBody": { "contentType": "application/json", @@ -7073,37 +16712,44 @@ "transport": "http" }, { - "resource": "rules", - "publicResource": "rules", - "operation": "deleteRuleset", - "publicOperation": "deleteRuleset", + "resource": "sdks.versions", + "publicResource": "sdks.versions", + "operation": "create", + "publicOperation": "create", "deprecated": false, - "method": "DELETE", - "path": "/v1/rulesets/{namespace}/{slug}", + "method": "POST", + "path": "/v1/sdks/{uid}/versions", "pathParams": [ - "namespace", - "slug" + "uid" ], - "publicPathParams": [ - "namespace", - "slug" + "publicPathParams": [ + "uid" ], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [], - "publicBodyParams": [], - "bodyParamDetails": [], - "pathParamDetails": [ + "bodyParams": [ + "version", + "apiVersion" + ], + "publicBodyParams": [ + "version", + "apiVersion" + ], + "bodyParamDetails": [ { - "name": "namespace", - "required": true, - "style": "simple", - "explode": false + "name": "version", + "required": true }, { - "name": "slug", + "name": "apiVersion", + "required": true + } + ], + "pathParamDetails": [ + { + "name": "uid", "required": true, "style": "simple", "explode": false @@ -7115,7 +16761,20 @@ "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "RuleDeleteRulesetParams" + "publicName": "VersionCreateParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" }, "response": { "status": "200", @@ -7235,20 +16894,20 @@ "transport": "http" }, { - "resource": "rules", - "publicResource": "rules", - "operation": "retrieveRulesetDocument", - "publicOperation": "retrieveRulesetDocument", + "resource": "sdks.versions", + "publicResource": "sdks.versions", + "operation": "delete", + "publicOperation": "delete", "deprecated": false, - "method": "GET", - "path": "/v1/rulesets/{namespace}/{slug}", + "method": "DELETE", + "path": "/v1/sdks/{uid}/versions/{version}", "pathParams": [ - "namespace", - "slug" + "uid", + "version" ], "publicPathParams": [ - "namespace", - "slug" + "uid", + "version" ], "queryParams": [], "publicQueryParams": [], @@ -7259,13 +16918,13 @@ "bodyParamDetails": [], "pathParamDetails": [ { - "name": "namespace", + "name": "uid", "required": true, "style": "simple", "explode": false }, { - "name": "slug", + "name": "version", "required": true, "style": "simple", "explode": false @@ -7277,16 +16936,16 @@ "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "RuleRetrieveRulesetDocumentParams" + "publicName": "VersionDeleteParams" }, "response": { "status": "200", - "contentType": "text/plain", - "encoding": "text", + "contentType": "application/json", + "encoding": "json", "contents": [ { - "contentType": "text/plain", - "encoding": "text" + "contentType": "application/json", + "encoding": "json" } ] }, @@ -7397,46 +17056,56 @@ "transport": "http" }, { - "resource": "rules", - "publicResource": "rules", - "operation": "createRulesetAccessGroup", - "publicOperation": "createRulesetAccessGroup", + "resource": "sdks.repositories", + "publicResource": "sdks.repositories", + "operation": "link", + "publicOperation": "link", "deprecated": false, "method": "POST", - "path": "/v1/rulesets/{namespace}/{slug}/access-group", + "path": "/v1/sdks/{uid}/repositories", "pathParams": [ - "namespace", - "slug" + "uid" ], "publicPathParams": [ - "namespace", - "slug" + "uid" ], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], "bodyParams": [ - "accessGroupSlug" + "language", + "repositoryId", + "baseBranch", + "prereleaseType" ], "publicBodyParams": [ - "accessGroupSlug" + "language", + "repositoryId", + "baseBranch", + "prereleaseType" ], "bodyParamDetails": [ { - "name": "accessGroupSlug", + "name": "language", + "required": true + }, + { + "name": "repositoryId", "required": true + }, + { + "name": "baseBranch", + "required": true + }, + { + "name": "prereleaseType", + "required": false } ], "pathParamDetails": [ { - "name": "namespace", - "required": true, - "style": "simple", - "explode": false - }, - { - "name": "slug", + "name": "uid", "required": true, "style": "simple", "explode": false @@ -7448,7 +17117,7 @@ "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "RuleCreateRulesetAccessGroupParams" + "publicName": "RepositoryLinkParams" }, "requestBody": { "contentType": "application/json", @@ -7581,46 +17250,37 @@ "transport": "http" }, { - "resource": "rules", - "publicResource": "rules", - "operation": "deleteRulesetAccessGroup", - "publicOperation": "deleteRulesetAccessGroup", + "resource": "sdks.repositories", + "publicResource": "sdks.repositories", + "operation": "unlink", + "publicOperation": "unlink", "deprecated": false, "method": "DELETE", - "path": "/v1/rulesets/{namespace}/{slug}/access-group", + "path": "/v1/sdks/{uid}/repositories/{language}", "pathParams": [ - "namespace", - "slug" + "uid", + "language" ], "publicPathParams": [ - "namespace", - "slug" + "uid", + "language" ], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [ - "accessGroupSlug" - ], - "publicBodyParams": [ - "accessGroupSlug" - ], - "bodyParamDetails": [ - { - "name": "accessGroupSlug", - "required": true - } - ], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], "pathParamDetails": [ { - "name": "namespace", + "name": "uid", "required": true, "style": "simple", "explode": false }, { - "name": "slug", + "name": "language", "required": true, "style": "simple", "explode": false @@ -7632,20 +17292,7 @@ "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "RuleDeleteRulesetAccessGroupParams" - }, - "requestBody": { - "contentType": "application/json", - "encoding": "json", - "contents": [ - { - "contentType": "application/json", - "encoding": "json" - } - ], - "required": true, - "publicName": "body", - "publicIdentifier": "body" + "publicName": "RepositoryUnlinkParams" }, "response": { "status": "200", @@ -7765,28 +17412,90 @@ "transport": "http" }, { - "resource": "themes", - "publicResource": "themes", - "operation": "list", - "publicOperation": "list", + "resource": "sdks.repositories", + "publicResource": "sdks.repositories", + "operation": "updatePublishing", + "publicOperation": "updatePublishing", "deprecated": false, - "method": "GET", - "path": "/v1/themes", - "pathParams": [], - "publicPathParams": [], + "method": "POST", + "path": "/v1/sdks/{uid}/repositories/{language}/publishing", + "pathParams": [ + "uid", + "language" + ], + "publicPathParams": [ + "uid", + "language" + ], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [], - "publicBodyParams": [], - "bodyParamDetails": [], - "pathParamDetails": [], + "bodyParams": [ + "publishOnMerge", + "authMethod", + "access", + "tag" + ], + "publicBodyParams": [ + "publishOnMerge", + "authMethod", + "access", + "tag" + ], + "bodyParamDetails": [ + { + "name": "publishOnMerge", + "required": true + }, + { + "name": "authMethod", + "required": false + }, + { + "name": "access", + "required": false + }, + { + "name": "tag", + "required": false + } + ], + "pathParamDetails": [ + { + "name": "uid", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "language", + "required": true, + "style": "simple", + "explode": false + } + ], "queryParamDetails": [], "headerParamDetails": [], "cookieParams": [], "publicCookieParams": [], "cookieParamDetails": [], + "paramsModel": { + "publicName": "RepositoryUpdatePublishingParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, "response": { "status": "200", "contentType": "application/json", @@ -7905,71 +17614,28 @@ "transport": "http" }, { - "resource": "themes", - "publicResource": "themes", - "operation": "create", - "publicOperation": "create", + "resource": "mcp.servers", + "publicResource": "mcp.servers", + "operation": "list", + "publicOperation": "list", "deprecated": false, - "method": "POST", - "path": "/v1/themes", + "method": "GET", + "path": "/v1/mcp/servers", "pathParams": [], "publicPathParams": [], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [ - "name", - "description", - "slug", - "document" - ], - "publicBodyParams": [ - "name", - "description", - "slug", - "document" - ], - "bodyParamDetails": [ - { - "name": "name", - "required": true - }, - { - "name": "description", - "required": false - }, - { - "name": "slug", - "required": true - }, - { - "name": "document", - "required": true - } - ], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], "pathParamDetails": [], "queryParamDetails": [], "headerParamDetails": [], "cookieParams": [], - "publicCookieParams": [], - "cookieParamDetails": [], - "paramsModel": { - "publicName": "ThemeCreateParams" - }, - "requestBody": { - "contentType": "application/json", - "encoding": "json", - "contents": [ - { - "contentType": "application/json", - "encoding": "json" - } - ], - "required": true, - "publicName": "body", - "publicIdentifier": "body" - }, + "publicCookieParams": [], + "cookieParamDetails": [], "response": { "status": "200", "contentType": "application/json", @@ -7981,10 +17647,6 @@ } ] }, - "responseModel": { - "name": "uid", - "publicAliases": [] - }, "result": { "successStatus": "200", "errorStatuses": [ @@ -8092,56 +17754,57 @@ "transport": "http" }, { - "resource": "themes", - "publicResource": "themes", - "operation": "update", - "publicOperation": "update", + "resource": "mcp.servers", + "publicResource": "mcp.servers", + "operation": "create", + "publicOperation": "create", "deprecated": false, - "method": "PATCH", - "path": "/v1/themes/{slug}", - "pathParams": [ - "slug" - ], - "publicPathParams": [ - "slug" - ], + "method": "POST", + "path": "/v1/mcp/servers", + "pathParams": [], + "publicPathParams": [], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], "bodyParams": [ "name", - "description" + "slug", + "versionUids", + "projectUids" ], "publicBodyParams": [ "name", - "description" + "slug", + "versionUids", + "projectUids" ], "bodyParamDetails": [ { "name": "name", + "required": true + }, + { + "name": "slug", "required": false }, { - "name": "description", + "name": "versionUids", "required": false - } - ], - "pathParamDetails": [ + }, { - "name": "slug", - "required": true, - "style": "simple", - "explode": false + "name": "projectUids", + "required": false } ], + "pathParamDetails": [], "queryParamDetails": [], "headerParamDetails": [], "cookieParams": [], "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "ThemeUpdateParams" + "publicName": "ServerCreateParams" }, "requestBody": { "contentType": "application/json", @@ -8274,38 +17937,29 @@ "transport": "http" }, { - "resource": "themes", - "publicResource": "themes", - "operation": "replaceDocument", - "publicOperation": "replaceDocument", + "resource": "mcp.servers", + "publicResource": "mcp.servers", + "operation": "retrieve", + "publicOperation": "retrieve", "deprecated": false, - "method": "PUT", - "path": "/v1/themes/{slug}", + "method": "GET", + "path": "/v1/mcp/servers/{id}", "pathParams": [ - "slug" + "id" ], "publicPathParams": [ - "slug" + "id" ], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [ - "document" - ], - "publicBodyParams": [ - "document" - ], - "bodyParamDetails": [ - { - "name": "document", - "required": true - } - ], + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], "pathParamDetails": [ { - "name": "slug", + "name": "id", "required": true, "style": "simple", "explode": false @@ -8317,20 +17971,7 @@ "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "ThemeReplaceDocumentParams" - }, - "requestBody": { - "contentType": "application/json", - "encoding": "json", - "contents": [ - { - "contentType": "application/json", - "encoding": "json" - } - ], - "required": true, - "publicName": "body", - "publicIdentifier": "body" + "publicName": "ServerRetrieveParams" }, "response": { "status": "200", @@ -8343,6 +17984,10 @@ } ] }, + "responseModel": { + "name": "mcp_server", + "publicAliases": [] + }, "result": { "successStatus": "200", "errorStatuses": [ @@ -8450,29 +18095,62 @@ "transport": "http" }, { - "resource": "themes", - "publicResource": "themes", - "operation": "delete", - "publicOperation": "delete", + "resource": "mcp.servers", + "publicResource": "mcp.servers", + "operation": "update", + "publicOperation": "update", "deprecated": false, - "method": "DELETE", - "path": "/v1/themes/{slug}", + "method": "PATCH", + "path": "/v1/mcp/servers/{id}", "pathParams": [ - "slug" + "id" ], "publicPathParams": [ - "slug" + "id" ], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [], - "publicBodyParams": [], - "bodyParamDetails": [], - "pathParamDetails": [ + "bodyParams": [ + "name", + "slug", + "autoAddOperations", + "operations", + "docsPages" + ], + "publicBodyParams": [ + "name", + "slug", + "autoAddOperations", + "operations", + "docsPages" + ], + "bodyParamDetails": [ + { + "name": "name", + "required": false + }, { "name": "slug", + "required": false + }, + { + "name": "autoAddOperations", + "required": false + }, + { + "name": "operations", + "required": false + }, + { + "name": "docsPages", + "required": false + } + ], + "pathParamDetails": [ + { + "name": "id", "required": true, "style": "simple", "explode": false @@ -8484,7 +18162,20 @@ "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "ThemeDeleteParams" + "publicName": "ServerUpdateParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" }, "response": { "status": "200", @@ -8497,6 +18188,10 @@ } ] }, + "responseModel": { + "name": "mcp_server", + "publicAliases": [] + }, "result": { "successStatus": "200", "errorStatuses": [ @@ -8604,18 +18299,18 @@ "transport": "http" }, { - "resource": "themes", - "publicResource": "themes", - "operation": "retrieve", - "publicOperation": "retrieve", + "resource": "mcp.servers", + "publicResource": "mcp.servers", + "operation": "delete", + "publicOperation": "delete", "deprecated": false, - "method": "GET", - "path": "/v1/themes/{slug}", + "method": "DELETE", + "path": "/v1/mcp/servers/{id}", "pathParams": [ - "slug" + "id" ], "publicPathParams": [ - "slug" + "id" ], "queryParams": [], "publicQueryParams": [], @@ -8626,7 +18321,7 @@ "bodyParamDetails": [], "pathParamDetails": [ { - "name": "slug", + "name": "id", "required": true, "style": "simple", "explode": false @@ -8638,16 +18333,16 @@ "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "ThemeRetrieveParams" + "publicName": "ServerDeleteParams" }, "response": { "status": "200", - "contentType": "text/plain", - "encoding": "text", + "contentType": "application/json", + "encoding": "json", "contents": [ { - "contentType": "text/plain", - "encoding": "text" + "contentType": "application/json", + "encoding": "json" } ] }, @@ -8758,15 +18453,19 @@ "transport": "http" }, { - "resource": "teams", - "publicResource": "teams", + "resource": "mcp.servers.installations", + "publicResource": "mcp.servers.installations", "operation": "list", "publicOperation": "list", "deprecated": false, "method": "GET", - "path": "/v1/teams", - "pathParams": [], - "publicPathParams": [], + "path": "/v1/mcp/servers/{id}/installations", + "pathParams": [ + "id" + ], + "publicPathParams": [ + "id" + ], "queryParams": [], "publicQueryParams": [], "headerParams": [], @@ -8774,12 +18473,22 @@ "bodyParams": [], "publicBodyParams": [], "bodyParamDetails": [], - "pathParamDetails": [], + "pathParamDetails": [ + { + "name": "id", + "required": true, + "style": "simple", + "explode": false + } + ], "queryParamDetails": [], "headerParamDetails": [], "cookieParams": [], "publicCookieParams": [], "cookieParamDetails": [], + "paramsModel": { + "publicName": "InstallationListParams" + }, "response": { "status": "200", "contentType": "application/json", @@ -8898,28 +18607,76 @@ "transport": "http" }, { - "resource": "scalarDocs", - "publicResource": "scalarDocs", - "operation": "listGuides", - "publicOperation": "listGuides", + "resource": "mcp.servers.installations", + "publicResource": "mcp.servers.installations", + "operation": "create", + "publicOperation": "create", "deprecated": false, - "method": "GET", - "path": "/v1/guides", - "pathParams": [], - "publicPathParams": [], + "method": "POST", + "path": "/v1/mcp/servers/{id}/installations", + "pathParams": [ + "id" + ], + "publicPathParams": [ + "id" + ], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [], - "publicBodyParams": [], - "bodyParamDetails": [], - "pathParamDetails": [], + "bodyParams": [ + "name", + "slug", + "documentAuth" + ], + "publicBodyParams": [ + "name", + "slug", + "documentAuth" + ], + "bodyParamDetails": [ + { + "name": "name", + "required": true + }, + { + "name": "slug", + "required": false + }, + { + "name": "documentAuth", + "required": true + } + ], + "pathParamDetails": [ + { + "name": "id", + "required": true, + "style": "simple", + "explode": false + } + ], "queryParamDetails": [], "headerParamDetails": [], "cookieParams": [], "publicCookieParams": [], "cookieParamDetails": [], + "paramsModel": { + "publicName": "InstallationCreateParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, "response": { "status": "200", "contentType": "application/json", @@ -8931,6 +18688,10 @@ } ] }, + "responseModel": { + "name": "mcp_installation", + "publicAliases": [] + }, "result": { "successStatus": "200", "errorStatuses": [ @@ -9037,77 +18798,50 @@ "responseLinks": [], "transport": "http" }, - { - "resource": "scalarDocs", - "publicResource": "scalarDocs", - "operation": "createGuide", - "publicOperation": "createGuide", + { + "resource": "mcp.servers.installations", + "publicResource": "mcp.servers.installations", + "operation": "retrieve", + "publicOperation": "retrieve", "deprecated": false, - "method": "POST", - "path": "/v1/guides", - "pathParams": [], - "publicPathParams": [], + "method": "GET", + "path": "/v1/mcp/servers/{id}/installations/{installationId}", + "pathParams": [ + "id", + "installationId" + ], + "publicPathParams": [ + "id", + "installationId" + ], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [ - "name", - "slug", - "isPrivate", - "allowedUsers", - "allowedDomains" - ], - "publicBodyParams": [ - "name", - "slug", - "isPrivate", - "allowedUsers", - "allowedDomains" - ], - "bodyParamDetails": [ - { - "name": "name", - "required": true - }, - { - "name": "slug", - "required": false - }, - { - "name": "isPrivate", - "required": true - }, + "bodyParams": [], + "publicBodyParams": [], + "bodyParamDetails": [], + "pathParamDetails": [ { - "name": "allowedUsers", - "required": true + "name": "id", + "required": true, + "style": "simple", + "explode": false }, { - "name": "allowedDomains", - "required": true + "name": "installationId", + "required": true, + "style": "simple", + "explode": false } ], - "pathParamDetails": [], "queryParamDetails": [], "headerParamDetails": [], "cookieParams": [], "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "ScalarDocCreateGuideParams" - }, - "requestBody": { - "contentType": "application/json", - "encoding": "json", - "contents": [ - { - "contentType": "application/json", - "encoding": "json" - } - ], - "required": true, - "publicName": "body", - "publicIdentifier": "body" + "publicName": "InstallationRetrieveParams" }, "response": { "status": "200", @@ -9120,6 +18854,10 @@ } ] }, + "responseModel": { + "name": "mcp_installation", + "publicAliases": [] + }, "result": { "successStatus": "200", "errorStatuses": [ @@ -9227,29 +18965,76 @@ "transport": "http" }, { - "resource": "scalarDocs", - "publicResource": "scalarDocs", - "operation": "publishGuide", - "publicOperation": "publishGuide", + "resource": "mcp.servers.installations", + "publicResource": "mcp.servers.installations", + "operation": "update", + "publicOperation": "update", "deprecated": false, - "method": "POST", - "path": "/v1/guides/{slug}/publish", + "method": "PATCH", + "path": "/v1/mcp/servers/{id}/installations/{installationId}", "pathParams": [ - "slug" + "id", + "installationId" ], "publicPathParams": [ - "slug" + "id", + "installationId" ], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [], - "publicBodyParams": [], - "bodyParamDetails": [], - "pathParamDetails": [ + "bodyParams": [ + "name", + "slug", + "isPrivate", + "loginPortalUid", + "documentAuth", + "mcpVersion" + ], + "publicBodyParams": [ + "name", + "slug", + "isPrivate", + "loginPortalUid", + "documentAuth", + "mcpVersion" + ], + "bodyParamDetails": [ + { + "name": "name", + "required": false + }, { "name": "slug", + "required": false + }, + { + "name": "isPrivate", + "required": false + }, + { + "name": "loginPortalUid", + "required": false + }, + { + "name": "documentAuth", + "required": false + }, + { + "name": "mcpVersion", + "required": false + } + ], + "pathParamDetails": [ + { + "name": "id", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "installationId", "required": true, "style": "simple", "explode": false @@ -9261,7 +19046,20 @@ "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "ScalarDocPublishGuideParams" + "publicName": "InstallationUpdateParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" }, "response": { "status": "200", @@ -9274,6 +19072,10 @@ } ] }, + "responseModel": { + "name": "mcp_installation", + "publicAliases": [] + }, "result": { "successStatus": "200", "errorStatuses": [ @@ -9381,15 +19183,21 @@ "transport": "http" }, { - "resource": "namespaces", - "publicResource": "namespaces", - "operation": "list", - "publicOperation": "list", + "resource": "mcp.servers.installations", + "publicResource": "mcp.servers.installations", + "operation": "delete", + "publicOperation": "delete", "deprecated": false, - "method": "GET", - "path": "/v1/namespaces", - "pathParams": [], - "publicPathParams": [], + "method": "DELETE", + "path": "/v1/mcp/servers/{id}/installations/{installationId}", + "pathParams": [ + "id", + "installationId" + ], + "publicPathParams": [ + "id", + "installationId" + ], "queryParams": [], "publicQueryParams": [], "headerParams": [], @@ -9397,12 +19205,28 @@ "bodyParams": [], "publicBodyParams": [], "bodyParamDetails": [], - "pathParamDetails": [], + "pathParamDetails": [ + { + "name": "id", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "installationId", + "required": true, + "style": "simple", + "explode": false + } + ], "queryParamDetails": [], "headerParamDetails": [], "cookieParams": [], "publicCookieParams": [], "cookieParamDetails": [], + "paramsModel": { + "publicName": "InstallationDeleteParams" + }, "response": { "status": "200", "contentType": "application/json", @@ -9521,39 +19345,58 @@ "transport": "http" }, { - "resource": "authentication", - "publicResource": "authentication", - "operation": "exchangePersonalToken", - "publicOperation": "exchangePersonalToken", + "resource": "mcp.servers.installations", + "publicResource": "mcp.servers.installations", + "operation": "createAccessGroup", + "publicOperation": "createAccessGroup", "deprecated": false, "method": "POST", - "path": "/v1/auth/exchange", - "pathParams": [], - "publicPathParams": [], + "path": "/v1/mcp/servers/{id}/installations/{installationId}/access-group", + "pathParams": [ + "id", + "installationId" + ], + "publicPathParams": [ + "id", + "installationId" + ], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], "bodyParams": [ - "personalToken" + "accessGroupUid" ], "publicBodyParams": [ - "personalToken" + "accessGroupUid" ], "bodyParamDetails": [ { - "name": "personalToken", + "name": "accessGroupUid", "required": true } ], - "pathParamDetails": [], + "pathParamDetails": [ + { + "name": "id", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "installationId", + "required": true, + "style": "simple", + "explode": false + } + ], "queryParamDetails": [], "headerParamDetails": [], "cookieParams": [], "publicCookieParams": [], "cookieParamDetails": [], "paramsModel": { - "publicName": "AuthenticationExchangePersonalTokenParams" + "publicName": "InstallationCreateAccessGroupParams" }, "requestBody": { "contentType": "application/json", @@ -9686,28 +19529,72 @@ "transport": "http" }, { - "resource": "authentication", - "publicResource": "authentication", - "operation": "listCurrentUser", - "publicOperation": "listCurrentUser", + "resource": "mcp.servers.installations", + "publicResource": "mcp.servers.installations", + "operation": "deleteAccessGroup", + "publicOperation": "deleteAccessGroup", "deprecated": false, - "method": "GET", - "path": "/v1/auth/me", - "pathParams": [], - "publicPathParams": [], + "method": "DELETE", + "path": "/v1/mcp/servers/{id}/installations/{installationId}/access-group", + "pathParams": [ + "id", + "installationId" + ], + "publicPathParams": [ + "id", + "installationId" + ], "queryParams": [], "publicQueryParams": [], "headerParams": [], "publicHeaderParams": [], - "bodyParams": [], - "publicBodyParams": [], - "bodyParamDetails": [], - "pathParamDetails": [], + "bodyParams": [ + "accessGroupUid" + ], + "publicBodyParams": [ + "accessGroupUid" + ], + "bodyParamDetails": [ + { + "name": "accessGroupUid", + "required": true + } + ], + "pathParamDetails": [ + { + "name": "id", + "required": true, + "style": "simple", + "explode": false + }, + { + "name": "installationId", + "required": true, + "style": "simple", + "explode": false + } + ], "queryParamDetails": [], "headerParamDetails": [], "cookieParams": [], "publicCookieParams": [], "cookieParamDetails": [], + "paramsModel": { + "publicName": "InstallationDeleteAccessGroupParams" + }, + "requestBody": { + "contentType": "application/json", + "encoding": "json", + "contents": [ + { + "contentType": "application/json", + "encoding": "json" + } + ], + "required": true, + "publicName": "body", + "publicIdentifier": "body" + }, "response": { "status": "200", "contentType": "application/json", @@ -9719,10 +19606,6 @@ } ] }, - "responseModel": { - "name": "user", - "publicAliases": [] - }, "result": { "successStatus": "200", "errorStatuses": [ diff --git a/scalar-api-ruby.gemspec b/scalar_api_ruby.gemspec similarity index 91% rename from scalar-api-ruby.gemspec rename to scalar_api_ruby.gemspec index a884a2e..c627b90 100644 --- a/scalar-api-ruby.gemspec +++ b/scalar_api_ruby.gemspec @@ -1,9 +1,9 @@ # frozen_string_literal: true -require_relative "lib/scalar-api-ruby/version" +require_relative "lib/scalar_api_ruby/version" Gem::Specification.new do |spec| - spec.name = "scalar-api-ruby" + spec.name = "scalar_api_ruby" spec.version = Scalar::VERSION spec.summary = "Ruby library to access the Scalar API" spec.authors = ["Scalar"] diff --git a/sig/scalar-api-ruby/models/login_portal_list_response.rbs b/sig/scalar-api-ruby/models/login_portal_list_response.rbs deleted file mode 100644 index 3b1c061..0000000 --- a/sig/scalar-api-ruby/models/login_portal_list_response.rbs +++ /dev/null @@ -1,23 +0,0 @@ -module Scalar - module Models - type login_portal_list_response_item = - { slug: String, title: String, uid: String } - - class LoginPortalListResponseItem < Scalar::Internal::Type::BaseModel - attr_accessor slug: String - - attr_accessor title: String - - attr_accessor uid: String - - def initialize: (slug: String, title: String, uid: String) -> void - - def to_hash: -> { slug: String, title: String, uid: String } - end - - type login_portal_list_response = - ::Array[Scalar::Models::LoginPortalListResponseItem] - - LoginPortalListResponse: Scalar::Internal::Type::Converter - end -end diff --git a/sig/scalar-api-ruby/models/registry_update_api_document_version_response.rbs b/sig/scalar-api-ruby/models/registry_update_api_document_version_response.rbs deleted file mode 100644 index c843cb8..0000000 --- a/sig/scalar-api-ruby/models/registry_update_api_document_version_response.rbs +++ /dev/null @@ -1,26 +0,0 @@ -module Scalar - module Models - type registry_update_api_document_version_response = - { json_sha: String, version_sha: String, yaml_sha: String } - - class RegistryUpdateAPIDocumentVersionResponse < Scalar::Internal::Type::BaseModel - attr_accessor json_sha: String - - attr_accessor version_sha: String - - attr_accessor yaml_sha: String - - def initialize: ( - json_sha: String, - version_sha: String, - yaml_sha: String - ) -> void - - def to_hash: -> { - json_sha: String, - version_sha: String, - yaml_sha: String - } - end - end -end diff --git a/sig/scalar-api-ruby/models/scalar_doc_list_guides_response.rbs b/sig/scalar-api-ruby/models/scalar_doc_list_guides_response.rbs deleted file mode 100644 index 3549edb..0000000 --- a/sig/scalar-api-ruby/models/scalar_doc_list_guides_response.rbs +++ /dev/null @@ -1,183 +0,0 @@ -module Scalar - module Models - type scalar_doc_list_guides_response_item = - { - access_groups: top, - active_deployment: Scalar::Models::ScalarDocListGuidesResponseItem::ActiveDeployment?, - active_theme_id: String, - agent_enabled: bool, - created_at: Integer, - is_private: bool, - last_published: Integer?, - last_published_uid: String?, - login_portal_uid: String, - name: String, - publish_message: String, - publish_status: String, - slug: String, - uid: String, - updated_at: Integer, - repository: Scalar::Models::ScalarDocListGuidesResponseItem::Repository?, - typesense_id: Float - } - - class ScalarDocListGuidesResponseItem < Scalar::Internal::Type::BaseModel - attr_accessor access_groups: top - - attr_accessor active_deployment: Scalar::Models::ScalarDocListGuidesResponseItem::ActiveDeployment? - - attr_accessor active_theme_id: String - - attr_accessor agent_enabled: bool - - attr_accessor created_at: Integer - - attr_accessor is_private: bool - - attr_accessor last_published: Integer? - - attr_accessor last_published_uid: String? - - attr_accessor login_portal_uid: String - - attr_accessor name: String - - attr_accessor publish_message: String - - attr_accessor publish_status: String - - attr_accessor slug: String - - attr_accessor uid: String - - attr_accessor updated_at: Integer - - attr_accessor repository: Scalar::Models::ScalarDocListGuidesResponseItem::Repository? - - attr_reader typesense_id: Float? - - def typesense_id=: (Float) -> Float - - def initialize: ( - access_groups: top, - active_deployment: Scalar::Models::ScalarDocListGuidesResponseItem::ActiveDeployment?, - active_theme_id: String, - agent_enabled: bool, - created_at: Integer, - is_private: bool, - last_published: Integer?, - last_published_uid: String?, - login_portal_uid: String, - name: String, - publish_message: String, - publish_status: String, - slug: String, - uid: String, - updated_at: Integer, - ?repository: Scalar::Models::ScalarDocListGuidesResponseItem::Repository?, - ?typesense_id: Float - ) -> void - - def to_hash: -> { - access_groups: top, - active_deployment: Scalar::Models::ScalarDocListGuidesResponseItem::ActiveDeployment?, - active_theme_id: String, - agent_enabled: bool, - created_at: Integer, - is_private: bool, - last_published: Integer?, - last_published_uid: String?, - login_portal_uid: String, - name: String, - publish_message: String, - publish_status: String, - slug: String, - uid: String, - updated_at: Integer, - repository: Scalar::Models::ScalarDocListGuidesResponseItem::Repository?, - typesense_id: Float - } - - type active_deployment = - { domain: String, published_at: Integer, uid: String } - - class ActiveDeployment < Scalar::Internal::Type::BaseModel - attr_accessor domain: String - - attr_accessor published_at: Integer - - attr_accessor uid: String - - def initialize: ( - domain: String, - published_at: Integer, - uid: String - ) -> void - - def to_hash: -> { domain: String, published_at: Integer, uid: String } - end - - type repository = - { - id: Float, - branch: String, - config_path: String, - expired: bool, - linked_by: String, - name: String, - pr_comments: bool, - publish_on_merge: bool, - publish_previews: bool - } - - class Repository < Scalar::Internal::Type::BaseModel - attr_accessor id: Float - - attr_accessor branch: String - - attr_accessor config_path: String - - attr_accessor expired: bool - - attr_accessor linked_by: String - - attr_accessor name: String - - attr_accessor pr_comments: bool - - attr_accessor publish_on_merge: bool - - attr_accessor publish_previews: bool - - def initialize: ( - id: Float, - branch: String, - config_path: String, - expired: bool, - linked_by: String, - name: String, - pr_comments: bool, - publish_on_merge: bool, - publish_previews: bool - ) -> void - - def to_hash: -> { - id: Float, - branch: String, - config_path: String, - expired: bool, - linked_by: String, - name: String, - pr_comments: bool, - publish_on_merge: bool, - publish_previews: bool - } - end - end - - type scalar_doc_list_guides_response = - ::Array[Scalar::Models::ScalarDocListGuidesResponseItem] - - ScalarDocListGuidesResponse: Scalar::Internal::Type::Converter - end -end diff --git a/sig/scalar-api-ruby/models/schema_list_response.rbs b/sig/scalar-api-ruby/models/schema_list_response.rbs deleted file mode 100644 index fff9e26..0000000 --- a/sig/scalar-api-ruby/models/schema_list_response.rbs +++ /dev/null @@ -1,86 +0,0 @@ -module Scalar - module Models - type schema_list_response_item = - { - description: String, - is_private: bool, - namespace: String, - slug: String, - title: String, - uid: String, - versions: ::Array[Scalar::Models::SchemaListResponseItem::Version] - } - - class SchemaListResponseItem < Scalar::Internal::Type::BaseModel - attr_accessor description: String - - attr_accessor is_private: bool - - attr_accessor namespace: String - - attr_accessor slug: String - - attr_accessor title: String - - attr_accessor uid: String - - attr_accessor versions: ::Array[Scalar::Models::SchemaListResponseItem::Version] - - def initialize: ( - description: String, - is_private: bool, - namespace: String, - slug: String, - title: String, - uid: String, - versions: ::Array[Scalar::Models::SchemaListResponseItem::Version] - ) -> void - - def to_hash: -> { - description: String, - is_private: bool, - namespace: String, - slug: String, - title: String, - uid: String, - versions: ::Array[Scalar::Models::SchemaListResponseItem::Version] - } - - type version = - { - created_at: Integer, - uid: String, - updated_at: Integer, - version: String - } - - class Version < Scalar::Internal::Type::BaseModel - attr_accessor created_at: Integer - - attr_accessor uid: String - - attr_accessor updated_at: Integer - - attr_accessor version: String - - def initialize: ( - created_at: Integer, - uid: String, - updated_at: Integer, - version: String - ) -> void - - def to_hash: -> { - created_at: Integer, - uid: String, - updated_at: Integer, - version: String - } - end - end - - type schema_list_response = ::Array[Scalar::Models::SchemaListResponseItem] - - SchemaListResponse: Scalar::Internal::Type::Converter - end -end diff --git a/sig/scalar-api-ruby/resources/scalar_docs.rbs b/sig/scalar-api-ruby/resources/scalar_docs.rbs deleted file mode 100644 index b2113e6..0000000 --- a/sig/scalar-api-ruby/resources/scalar_docs.rbs +++ /dev/null @@ -1,25 +0,0 @@ -module Scalar - module Resources - class ScalarDocs - def create_guide: ( - allowed_domains: ::Array[String], - allowed_users: ::Array[String], - is_private: bool, - name: String, - ?slug: String, - ?request_options: Scalar::request_opts - ) -> Scalar::Models::ScalarDocCreateGuideResponse - - def list_guides: ( - ?request_options: Scalar::request_opts - ) -> ::Array[Scalar::Models::ScalarDocListGuidesResponseItem] - - def publish_guide: ( - String slug, - ?request_options: Scalar::request_opts - ) -> Scalar::Models::ScalarDocPublishGuideResponse - - def initialize: (client: Scalar::Client) -> void - end - end -end diff --git a/sig/scalar-api-ruby/client.rbs b/sig/scalar_api_ruby/client.rbs similarity index 79% rename from sig/scalar-api-ruby/client.rbs rename to sig/scalar_api_ruby/client.rbs index 35b5137..62a044a 100644 --- a/sig/scalar-api-ruby/client.rbs +++ b/sig/scalar_api_ruby/client.rbs @@ -8,7 +8,9 @@ module Scalar DEFAULT_MAX_RETRY_DELAY: Float - attr_reader bearer_auth: String + attr_reader bearer_auth: String? + + attr_reader o_auth2: String? attr_reader registry: Scalar::Resources::Registry @@ -16,6 +18,8 @@ module Scalar attr_reader login_portals: Scalar::Resources::LoginPortals + attr_reader access_groups: Scalar::Resources::AccessGroups + attr_reader rules: Scalar::Resources::Rules attr_reader themes: Scalar::Resources::Themes @@ -28,10 +32,15 @@ module Scalar attr_reader authentication: Scalar::Resources::Authentication + attr_reader sdks: Scalar::Resources::Sdks + + attr_reader mcp: Scalar::Resources::Mcp + private def auth_headers: -> ::Hash[String, String] def initialize: ( ?bearer_auth: String?, + ?o_auth2: String?, ?base_url: String?, ?max_retries: Integer, ?timeout: Float, diff --git a/sig/scalar-api-ruby/errors.rbs b/sig/scalar_api_ruby/errors.rbs similarity index 100% rename from sig/scalar-api-ruby/errors.rbs rename to sig/scalar_api_ruby/errors.rbs diff --git a/sig/scalar-api-ruby/file_part.rbs b/sig/scalar_api_ruby/file_part.rbs similarity index 100% rename from sig/scalar-api-ruby/file_part.rbs rename to sig/scalar_api_ruby/file_part.rbs diff --git a/sig/scalar-api-ruby/internal.rbs b/sig/scalar_api_ruby/internal.rbs similarity index 100% rename from sig/scalar-api-ruby/internal.rbs rename to sig/scalar_api_ruby/internal.rbs diff --git a/sig/scalar-api-ruby/internal/transport/base_client.rbs b/sig/scalar_api_ruby/internal/transport/base_client.rbs similarity index 100% rename from sig/scalar-api-ruby/internal/transport/base_client.rbs rename to sig/scalar_api_ruby/internal/transport/base_client.rbs diff --git a/sig/scalar-api-ruby/internal/transport/pooled_net_requester.rbs b/sig/scalar_api_ruby/internal/transport/pooled_net_requester.rbs similarity index 100% rename from sig/scalar-api-ruby/internal/transport/pooled_net_requester.rbs rename to sig/scalar_api_ruby/internal/transport/pooled_net_requester.rbs diff --git a/sig/scalar-api-ruby/internal/type/array_of.rbs b/sig/scalar_api_ruby/internal/type/array_of.rbs similarity index 100% rename from sig/scalar-api-ruby/internal/type/array_of.rbs rename to sig/scalar_api_ruby/internal/type/array_of.rbs diff --git a/sig/scalar-api-ruby/internal/type/base_model.rbs b/sig/scalar_api_ruby/internal/type/base_model.rbs similarity index 100% rename from sig/scalar-api-ruby/internal/type/base_model.rbs rename to sig/scalar_api_ruby/internal/type/base_model.rbs diff --git a/sig/scalar-api-ruby/internal/type/base_page.rbs b/sig/scalar_api_ruby/internal/type/base_page.rbs similarity index 100% rename from sig/scalar-api-ruby/internal/type/base_page.rbs rename to sig/scalar_api_ruby/internal/type/base_page.rbs diff --git a/sig/scalar-api-ruby/internal/type/boolean.rbs b/sig/scalar_api_ruby/internal/type/boolean.rbs similarity index 100% rename from sig/scalar-api-ruby/internal/type/boolean.rbs rename to sig/scalar_api_ruby/internal/type/boolean.rbs diff --git a/sig/scalar-api-ruby/internal/type/converter.rbs b/sig/scalar_api_ruby/internal/type/converter.rbs similarity index 100% rename from sig/scalar-api-ruby/internal/type/converter.rbs rename to sig/scalar_api_ruby/internal/type/converter.rbs diff --git a/sig/scalar-api-ruby/internal/type/enum.rbs b/sig/scalar_api_ruby/internal/type/enum.rbs similarity index 100% rename from sig/scalar-api-ruby/internal/type/enum.rbs rename to sig/scalar_api_ruby/internal/type/enum.rbs diff --git a/sig/scalar-api-ruby/internal/type/file_input.rbs b/sig/scalar_api_ruby/internal/type/file_input.rbs similarity index 100% rename from sig/scalar-api-ruby/internal/type/file_input.rbs rename to sig/scalar_api_ruby/internal/type/file_input.rbs diff --git a/sig/scalar-api-ruby/internal/type/hash_of.rbs b/sig/scalar_api_ruby/internal/type/hash_of.rbs similarity index 100% rename from sig/scalar-api-ruby/internal/type/hash_of.rbs rename to sig/scalar_api_ruby/internal/type/hash_of.rbs diff --git a/sig/scalar-api-ruby/internal/type/request_parameters.rbs b/sig/scalar_api_ruby/internal/type/request_parameters.rbs similarity index 100% rename from sig/scalar-api-ruby/internal/type/request_parameters.rbs rename to sig/scalar_api_ruby/internal/type/request_parameters.rbs diff --git a/sig/scalar-api-ruby/internal/type/union.rbs b/sig/scalar_api_ruby/internal/type/union.rbs similarity index 100% rename from sig/scalar-api-ruby/internal/type/union.rbs rename to sig/scalar_api_ruby/internal/type/union.rbs diff --git a/sig/scalar-api-ruby/internal/type/unknown.rbs b/sig/scalar_api_ruby/internal/type/unknown.rbs similarity index 100% rename from sig/scalar-api-ruby/internal/type/unknown.rbs rename to sig/scalar_api_ruby/internal/type/unknown.rbs diff --git a/sig/scalar-api-ruby/internal/util.rbs b/sig/scalar_api_ruby/internal/util.rbs similarity index 100% rename from sig/scalar-api-ruby/internal/util.rbs rename to sig/scalar_api_ruby/internal/util.rbs diff --git a/sig/scalar-api-ruby/models.rbs b/sig/scalar_api_ruby/models.rbs similarity index 60% rename from sig/scalar-api-ruby/models.rbs rename to sig/scalar_api_ruby/models.rbs index 15aa69a..5ae80b6 100644 --- a/sig/scalar-api-ruby/models.rbs +++ b/sig/scalar_api_ruby/models.rbs @@ -1,10 +1,34 @@ module Scalar class AccessGroup = Scalar::Models::AccessGroup + class AccessGroupCreateParams = Scalar::Models::AccessGroupCreateParams + + class AccessGroupDeleteParams = Scalar::Models::AccessGroupDeleteParams + + class AccessGroupName = Scalar::Models::AccessGroupName + + class AccessGroupRetrieveParams = Scalar::Models::AccessGroupRetrieveParams + + module AccessGroups = Scalar::Models::AccessGroups + + class AccessGroupUpdateParams = Scalar::Models::AccessGroupUpdateParams + + class ActiveDeployment = Scalar::Models::ActiveDeployment + + class APIDocument = Scalar::Models::APIDocument + class AuthenticationExchangePersonalTokenParams = Scalar::Models::AuthenticationExchangePersonalTokenParams class AuthenticationListCurrentUserParams = Scalar::Models::AuthenticationListCurrentUserParams + class DocsProject = Scalar::Models::DocsProject + + class GithubProject = Scalar::Models::GithubProject + + class GithubProjectRepository = Scalar::Models::GithubProjectRepository + + class LoginPortal = Scalar::Models::LoginPortal + class LoginPortalCreateParams = Scalar::Models::LoginPortalCreateParams class LoginPortalDeleteParams = Scalar::Models::LoginPortalDeleteParams @@ -21,6 +45,12 @@ module Scalar class ManagedDocVersion = Scalar::Models::ManagedDocVersion + class ManagedSchemaVersion = Scalar::Models::ManagedSchemaVersion + + module Mcp = Scalar::Models::Mcp + + class Method = Scalar::Models::Method + class Namespace = Scalar::Models::Namespace class NamespaceListParams = Scalar::Models::NamespaceListParams @@ -51,6 +81,8 @@ module Scalar class RegistryUpdateAPIDocumentVersionParams = Scalar::Models::RegistryUpdateAPIDocumentVersionParams + class Rule = Scalar::Models::Rule + class RuleCreateRulesetAccessGroupParams = Scalar::Models::RuleCreateRulesetAccessGroupParams class RuleCreateRulesetParams = Scalar::Models::RuleCreateRulesetParams @@ -67,10 +99,32 @@ module Scalar class ScalarDocCreateGuideParams = Scalar::Models::ScalarDocCreateGuideParams + class ScalarDocCreateProjectParams = Scalar::Models::ScalarDocCreateProjectParams + + class ScalarDocDeleteProjectParams = Scalar::Models::ScalarDocDeleteProjectParams + class ScalarDocListGuidesParams = Scalar::Models::ScalarDocListGuidesParams + class ScalarDocListProjectConfigParams = Scalar::Models::ScalarDocListProjectConfigParams + + class ScalarDocListProjectDomainParams = Scalar::Models::ScalarDocListProjectDomainParams + + class ScalarDocListProjectDomainStatusParams = Scalar::Models::ScalarDocListProjectDomainStatusParams + + class ScalarDocListProjectsParams = Scalar::Models::ScalarDocListProjectsParams + class ScalarDocPublishGuideParams = Scalar::Models::ScalarDocPublishGuideParams + class ScalarDocPublishProjectParams = Scalar::Models::ScalarDocPublishProjectParams + + class ScalarDocRetrieveProjectParams = Scalar::Models::ScalarDocRetrieveProjectParams + + class ScalarDocUpdateProjectConfigParams = Scalar::Models::ScalarDocUpdateProjectConfigParams + + class ScalarDocUpdateProjectParams = Scalar::Models::ScalarDocUpdateProjectParams + + class Schema = Scalar::Models::Schema + class SchemaCreateParams = Scalar::Models::SchemaCreateParams class SchemaDeleteParams = Scalar::Models::SchemaDeleteParams @@ -81,10 +135,42 @@ module Scalar class SchemaUpdateParams = Scalar::Models::SchemaUpdateParams + class Sdk = Scalar::Models::Sdk + + class SdkBuildParams = Scalar::Models::SdkBuildParams + + class SdkCreateParams = Scalar::Models::SdkCreateParams + + class SdkDeleteParams = Scalar::Models::SdkDeleteParams + + class SdkListParams = Scalar::Models::SdkListParams + + class SdkRetrieveParams = Scalar::Models::SdkRetrieveParams + + module Sdks = Scalar::Models::Sdks + + class SdkTargetSummary = Scalar::Models::SdkTargetSummary + + class SdkUpdateParams = Scalar::Models::SdkUpdateParams + + class SdkVersion = Scalar::Models::SdkVersion + class Slug = Scalar::Models::Slug + class Team = Scalar::Models::Team + + class TeamImage = Scalar::Models::TeamImage + class TeamListParams = Scalar::Models::TeamListParams + class TeamName = Scalar::Models::TeamName + + module Teams = Scalar::Models::Teams + + class TeamSummary = Scalar::Models::TeamSummary + + class Theme = Scalar::Models::Theme + class ThemeCreateParams = Scalar::Models::ThemeCreateParams class ThemeDeleteParams = Scalar::Models::ThemeDeleteParams @@ -101,6 +187,8 @@ module Scalar class UID = Scalar::Models::UID + class User = Scalar::Models::User + class Value400 = Scalar::Models::Value400 class Value401 = Scalar::Models::Value401 diff --git a/sig/scalar-api-ruby/models/400.rbs b/sig/scalar_api_ruby/models/400.rbs similarity index 100% rename from sig/scalar-api-ruby/models/400.rbs rename to sig/scalar_api_ruby/models/400.rbs diff --git a/sig/scalar-api-ruby/models/401.rbs b/sig/scalar_api_ruby/models/401.rbs similarity index 100% rename from sig/scalar-api-ruby/models/401.rbs rename to sig/scalar_api_ruby/models/401.rbs diff --git a/sig/scalar-api-ruby/models/403.rbs b/sig/scalar_api_ruby/models/403.rbs similarity index 100% rename from sig/scalar-api-ruby/models/403.rbs rename to sig/scalar_api_ruby/models/403.rbs diff --git a/sig/scalar-api-ruby/models/404.rbs b/sig/scalar_api_ruby/models/404.rbs similarity index 100% rename from sig/scalar-api-ruby/models/404.rbs rename to sig/scalar_api_ruby/models/404.rbs diff --git a/sig/scalar-api-ruby/models/422.rbs b/sig/scalar_api_ruby/models/422.rbs similarity index 100% rename from sig/scalar-api-ruby/models/422.rbs rename to sig/scalar_api_ruby/models/422.rbs diff --git a/sig/scalar-api-ruby/models/500.rbs b/sig/scalar_api_ruby/models/500.rbs similarity index 100% rename from sig/scalar-api-ruby/models/500.rbs rename to sig/scalar_api_ruby/models/500.rbs diff --git a/sig/scalar-api-ruby/models/access_group.rbs b/sig/scalar_api_ruby/models/access_group.rbs similarity index 100% rename from sig/scalar-api-ruby/models/access_group.rbs rename to sig/scalar_api_ruby/models/access_group.rbs diff --git a/sig/scalar_api_ruby/models/access_group_create_params.rbs b/sig/scalar_api_ruby/models/access_group_create_params.rbs new file mode 100644 index 0000000..c0a1918 --- /dev/null +++ b/sig/scalar_api_ruby/models/access_group_create_params.rbs @@ -0,0 +1,38 @@ +module Scalar + module Models + type access_group_create_params = + { allowed_domains: String, name: String, slug: String } + & Scalar::Internal::Type::request_parameters + + class AccessGroupCreateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_reader allowed_domains: String? + + def allowed_domains=: (String) -> String + + attr_reader name: String? + + def name=: (String) -> String + + attr_reader slug: String? + + def slug=: (String) -> String + + def initialize: ( + ?allowed_domains: String, + ?name: String, + ?slug: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + allowed_domains: String, + name: String, + slug: String, + request_options: Scalar::RequestOptions + } + end + end +end diff --git a/sig/scalar_api_ruby/models/access_group_create_response.rbs b/sig/scalar_api_ruby/models/access_group_create_response.rbs new file mode 100644 index 0000000..42a7f63 --- /dev/null +++ b/sig/scalar_api_ruby/models/access_group_create_response.rbs @@ -0,0 +1,40 @@ +module Scalar + module Models + type access_group_create_response = + { + allowed_domains: String, + allowed_emails: String, + name: String, + slug: String, + uid: String + } + + class AccessGroupCreateResponse < Scalar::Internal::Type::BaseModel + attr_accessor allowed_domains: String + + attr_accessor allowed_emails: String + + attr_accessor name: String + + attr_accessor slug: String + + attr_accessor uid: String + + def initialize: ( + allowed_domains: String, + allowed_emails: String, + name: String, + slug: String, + uid: String + ) -> void + + def to_hash: -> { + allowed_domains: String, + allowed_emails: String, + name: String, + slug: String, + uid: String + } + end + end +end diff --git a/sig/scalar_api_ruby/models/access_group_delete_params.rbs b/sig/scalar_api_ruby/models/access_group_delete_params.rbs new file mode 100644 index 0000000..4178d94 --- /dev/null +++ b/sig/scalar_api_ruby/models/access_group_delete_params.rbs @@ -0,0 +1,20 @@ +module Scalar + module Models + type access_group_delete_params = + { slug: String } & Scalar::Internal::Type::request_parameters + + class AccessGroupDeleteParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor slug: String + + def initialize: ( + slug: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { slug: String, request_options: Scalar::RequestOptions } + end + end +end diff --git a/sig/scalar_api_ruby/models/access_group_name.rbs b/sig/scalar_api_ruby/models/access_group_name.rbs new file mode 100644 index 0000000..01f011e --- /dev/null +++ b/sig/scalar_api_ruby/models/access_group_name.rbs @@ -0,0 +1,5 @@ +module Scalar + module Models + class AccessGroupName = String + end +end diff --git a/sig/scalar_api_ruby/models/access_group_retrieve_params.rbs b/sig/scalar_api_ruby/models/access_group_retrieve_params.rbs new file mode 100644 index 0000000..395f9be --- /dev/null +++ b/sig/scalar_api_ruby/models/access_group_retrieve_params.rbs @@ -0,0 +1,20 @@ +module Scalar + module Models + type access_group_retrieve_params = + { slug: String } & Scalar::Internal::Type::request_parameters + + class AccessGroupRetrieveParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor slug: String + + def initialize: ( + slug: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { slug: String, request_options: Scalar::RequestOptions } + end + end +end diff --git a/sig/scalar_api_ruby/models/access_group_retrieve_response.rbs b/sig/scalar_api_ruby/models/access_group_retrieve_response.rbs new file mode 100644 index 0000000..602b990 --- /dev/null +++ b/sig/scalar_api_ruby/models/access_group_retrieve_response.rbs @@ -0,0 +1,40 @@ +module Scalar + module Models + type access_group_retrieve_response = + { + allowed_domains: String, + allowed_emails: String, + name: String, + slug: String, + uid: String + } + + class AccessGroupRetrieveResponse < Scalar::Internal::Type::BaseModel + attr_accessor allowed_domains: String + + attr_accessor allowed_emails: String + + attr_accessor name: String + + attr_accessor slug: String + + attr_accessor uid: String + + def initialize: ( + allowed_domains: String, + allowed_emails: String, + name: String, + slug: String, + uid: String + ) -> void + + def to_hash: -> { + allowed_domains: String, + allowed_emails: String, + name: String, + slug: String, + uid: String + } + end + end +end diff --git a/sig/scalar_api_ruby/models/access_group_update_params.rbs b/sig/scalar_api_ruby/models/access_group_update_params.rbs new file mode 100644 index 0000000..e284d23 --- /dev/null +++ b/sig/scalar_api_ruby/models/access_group_update_params.rbs @@ -0,0 +1,36 @@ +module Scalar + module Models + type access_group_update_params = + { path_slug: String, name: String, body_slug: String } + & Scalar::Internal::Type::request_parameters + + class AccessGroupUpdateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor path_slug: String + + attr_reader name: String? + + def name=: (String) -> String + + attr_reader body_slug: String? + + def body_slug=: (String) -> String + + def initialize: ( + path_slug: String, + ?name: String, + ?body_slug: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + path_slug: String, + name: String, + body_slug: String, + request_options: Scalar::RequestOptions + } + end + end +end diff --git a/sig/scalar_api_ruby/models/access_groups/domain_create_params.rbs b/sig/scalar_api_ruby/models/access_groups/domain_create_params.rbs new file mode 100644 index 0000000..f6d54ba --- /dev/null +++ b/sig/scalar_api_ruby/models/access_groups/domain_create_params.rbs @@ -0,0 +1,30 @@ +module Scalar + module Models + module AccessGroups + type domain_create_params = + { slug: String, domain: String } + & Scalar::Internal::Type::request_parameters + + class DomainCreateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor slug: String + + attr_accessor domain: String + + def initialize: ( + slug: String, + domain: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + slug: String, + domain: String, + request_options: Scalar::RequestOptions + } + end + end + end +end diff --git a/sig/scalar_api_ruby/models/access_groups/domain_delete_params.rbs b/sig/scalar_api_ruby/models/access_groups/domain_delete_params.rbs new file mode 100644 index 0000000..d595f27 --- /dev/null +++ b/sig/scalar_api_ruby/models/access_groups/domain_delete_params.rbs @@ -0,0 +1,30 @@ +module Scalar + module Models + module AccessGroups + type domain_delete_params = + { slug: String, domain: String } + & Scalar::Internal::Type::request_parameters + + class DomainDeleteParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor slug: String + + attr_accessor domain: String + + def initialize: ( + slug: String, + domain: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + slug: String, + domain: String, + request_options: Scalar::RequestOptions + } + end + end + end +end diff --git a/sig/scalar_api_ruby/models/access_groups/email_domain.rbs b/sig/scalar_api_ruby/models/access_groups/email_domain.rbs new file mode 100644 index 0000000..90bc2fa --- /dev/null +++ b/sig/scalar_api_ruby/models/access_groups/email_domain.rbs @@ -0,0 +1,7 @@ +module Scalar + module Models + module AccessGroups + class EmailDomain = String + end + end +end diff --git a/sig/scalar_api_ruby/models/active_deployment.rbs b/sig/scalar_api_ruby/models/active_deployment.rbs new file mode 100644 index 0000000..9238426 --- /dev/null +++ b/sig/scalar_api_ruby/models/active_deployment.rbs @@ -0,0 +1,22 @@ +module Scalar + module Models + type active_deployment = + { domain: String, published_at: Integer, uid: String } + + class ActiveDeployment < Scalar::Internal::Type::BaseModel + attr_accessor domain: String + + attr_accessor published_at: Integer + + attr_accessor uid: String + + def initialize: ( + domain: String, + published_at: Integer, + uid: String + ) -> void + + def to_hash: -> { domain: String, published_at: Integer, uid: String } + end + end +end diff --git a/sig/scalar-api-ruby/models/registry_list_api_documents_response.rbs b/sig/scalar_api_ruby/models/api_document.rbs similarity index 73% rename from sig/scalar-api-ruby/models/registry_list_api_documents_response.rbs rename to sig/scalar_api_ruby/models/api_document.rbs index b5f9a10..e5d8a7d 100644 --- a/sig/scalar-api-ruby/models/registry_list_api_documents_response.rbs +++ b/sig/scalar_api_ruby/models/api_document.rbs @@ -1,19 +1,19 @@ module Scalar module Models - type registry_list_api_documents_response_item = + type api_document = { description: String, is_private: bool, namespace: String, slug: String, - tags: top, + tags: String, title: String, uid: String, version: String, versions: ::Array[Scalar::ManagedDocVersion] } - class RegistryListAPIDocumentsResponseItem < Scalar::Internal::Type::BaseModel + class APIDocument < Scalar::Internal::Type::BaseModel attr_accessor description: String attr_accessor is_private: bool @@ -22,7 +22,7 @@ module Scalar attr_accessor slug: String - attr_accessor tags: top + attr_accessor tags: String attr_accessor title: String @@ -37,7 +37,7 @@ module Scalar is_private: bool, namespace: String, slug: String, - tags: top, + tags: String, title: String, uid: String, version: String, @@ -49,17 +49,12 @@ module Scalar is_private: bool, namespace: String, slug: String, - tags: top, + tags: String, title: String, uid: String, version: String, versions: ::Array[Scalar::ManagedDocVersion] } end - - type registry_list_api_documents_response = - ::Array[Scalar::Models::RegistryListAPIDocumentsResponseItem] - - RegistryListAPIDocumentsResponse: Scalar::Internal::Type::Converter end end diff --git a/sig/scalar-api-ruby/models/authentication_exchange_personal_token_params.rbs b/sig/scalar_api_ruby/models/authentication_exchange_personal_token_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/authentication_exchange_personal_token_params.rbs rename to sig/scalar_api_ruby/models/authentication_exchange_personal_token_params.rbs diff --git a/sig/scalar-api-ruby/models/authentication_exchange_personal_token_response.rbs b/sig/scalar_api_ruby/models/authentication_exchange_personal_token_response.rbs similarity index 100% rename from sig/scalar-api-ruby/models/authentication_exchange_personal_token_response.rbs rename to sig/scalar_api_ruby/models/authentication_exchange_personal_token_response.rbs diff --git a/sig/scalar-api-ruby/models/authentication_list_current_user_params.rbs b/sig/scalar_api_ruby/models/authentication_list_current_user_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/authentication_list_current_user_params.rbs rename to sig/scalar_api_ruby/models/authentication_list_current_user_params.rbs diff --git a/sig/scalar_api_ruby/models/docs_project.rbs b/sig/scalar_api_ruby/models/docs_project.rbs new file mode 100644 index 0000000..f387435 --- /dev/null +++ b/sig/scalar_api_ruby/models/docs_project.rbs @@ -0,0 +1,70 @@ +module Scalar + module Models + type docs_project = + { + access_groups: String, + active_theme_id: String, + agent_enabled: bool, + analytics_enabled: bool, + is_private: bool, + last_published: Integer?, + login_portal_uid: String, + name: String, + publish_status: String, + slug: String, + uid: String + } + + class DocsProject < Scalar::Internal::Type::BaseModel + attr_accessor access_groups: String + + attr_accessor active_theme_id: String + + attr_accessor agent_enabled: bool + + attr_accessor analytics_enabled: bool + + attr_accessor is_private: bool + + attr_accessor last_published: Integer? + + attr_accessor login_portal_uid: String + + attr_accessor name: String + + attr_accessor publish_status: String + + attr_accessor slug: String + + attr_accessor uid: String + + def initialize: ( + access_groups: String, + active_theme_id: String, + agent_enabled: bool, + analytics_enabled: bool, + is_private: bool, + last_published: Integer?, + login_portal_uid: String, + name: String, + publish_status: String, + slug: String, + uid: String + ) -> void + + def to_hash: -> { + access_groups: String, + active_theme_id: String, + agent_enabled: bool, + analytics_enabled: bool, + is_private: bool, + last_published: Integer?, + login_portal_uid: String, + name: String, + publish_status: String, + slug: String, + uid: String + } + end + end +end diff --git a/sig/scalar_api_ruby/models/github_project.rbs b/sig/scalar_api_ruby/models/github_project.rbs new file mode 100644 index 0000000..d3b404f --- /dev/null +++ b/sig/scalar_api_ruby/models/github_project.rbs @@ -0,0 +1,112 @@ +module Scalar + module Models + type github_project = + { + access_groups: String, + active_deployment: Scalar::ActiveDeployment?, + active_theme_id: String, + agent_enabled: bool, + analytics_enabled: bool, + created_at: Integer, + is_private: bool, + last_published: Integer?, + last_published_uid: String?, + login_portal_uid: String, + name: String, + publish_message: String, + publish_status: String, + slug: String, + uid: String, + updated_at: Integer, + user_info_hook_url: String, + repository: Scalar::GithubProjectRepository?, + typesense_id: Float + } + + class GithubProject < Scalar::Internal::Type::BaseModel + attr_accessor access_groups: String + + attr_accessor active_deployment: Scalar::ActiveDeployment? + + attr_accessor active_theme_id: String + + attr_accessor agent_enabled: bool + + attr_accessor analytics_enabled: bool + + attr_accessor created_at: Integer + + attr_accessor is_private: bool + + attr_accessor last_published: Integer? + + attr_accessor last_published_uid: String? + + attr_accessor login_portal_uid: String + + attr_accessor name: String + + attr_accessor publish_message: String + + attr_accessor publish_status: String + + attr_accessor slug: String + + attr_accessor uid: String + + attr_accessor updated_at: Integer + + attr_accessor user_info_hook_url: String + + attr_accessor repository: Scalar::GithubProjectRepository? + + attr_reader typesense_id: Float? + + def typesense_id=: (Float) -> Float + + def initialize: ( + access_groups: String, + active_deployment: Scalar::ActiveDeployment?, + active_theme_id: String, + agent_enabled: bool, + analytics_enabled: bool, + created_at: Integer, + is_private: bool, + last_published: Integer?, + last_published_uid: String?, + login_portal_uid: String, + name: String, + publish_message: String, + publish_status: String, + slug: String, + uid: String, + updated_at: Integer, + user_info_hook_url: String, + ?repository: Scalar::GithubProjectRepository?, + ?typesense_id: Float + ) -> void + + def to_hash: -> { + access_groups: String, + active_deployment: Scalar::ActiveDeployment?, + active_theme_id: String, + agent_enabled: bool, + analytics_enabled: bool, + created_at: Integer, + is_private: bool, + last_published: Integer?, + last_published_uid: String?, + login_portal_uid: String, + name: String, + publish_message: String, + publish_status: String, + slug: String, + uid: String, + updated_at: Integer, + user_info_hook_url: String, + repository: Scalar::GithubProjectRepository?, + typesense_id: Float + } + end + end +end diff --git a/sig/scalar_api_ruby/models/github_project_repository.rbs b/sig/scalar_api_ruby/models/github_project_repository.rbs new file mode 100644 index 0000000..8c32435 --- /dev/null +++ b/sig/scalar_api_ruby/models/github_project_repository.rbs @@ -0,0 +1,60 @@ +module Scalar + module Models + type github_project_repository = + { + id: Float, + branch: String, + config_path: String, + expired: bool, + linked_by: String, + name: String, + pr_comments: bool, + publish_on_merge: bool, + publish_previews: bool + } + + class GithubProjectRepository < Scalar::Internal::Type::BaseModel + attr_accessor id: Float + + attr_accessor branch: String + + attr_accessor config_path: String + + attr_accessor expired: bool + + attr_accessor linked_by: String + + attr_accessor name: String + + attr_accessor pr_comments: bool + + attr_accessor publish_on_merge: bool + + attr_accessor publish_previews: bool + + def initialize: ( + id: Float, + branch: String, + config_path: String, + expired: bool, + linked_by: String, + name: String, + pr_comments: bool, + publish_on_merge: bool, + publish_previews: bool + ) -> void + + def to_hash: -> { + id: Float, + branch: String, + config_path: String, + expired: bool, + linked_by: String, + name: String, + pr_comments: bool, + publish_on_merge: bool, + publish_previews: bool + } + end + end +end diff --git a/sig/scalar_api_ruby/models/login_portal.rbs b/sig/scalar_api_ruby/models/login_portal.rbs new file mode 100644 index 0000000..fc43f8b --- /dev/null +++ b/sig/scalar_api_ruby/models/login_portal.rbs @@ -0,0 +1,17 @@ +module Scalar + module Models + type login_portal = { slug: String, title: String, uid: String } + + class LoginPortal < Scalar::Internal::Type::BaseModel + attr_accessor slug: String + + attr_accessor title: String + + attr_accessor uid: String + + def initialize: (slug: String, title: String, uid: String) -> void + + def to_hash: -> { slug: String, title: String, uid: String } + end + end +end diff --git a/sig/scalar-api-ruby/models/login_portal_create_params.rbs b/sig/scalar_api_ruby/models/login_portal_create_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/login_portal_create_params.rbs rename to sig/scalar_api_ruby/models/login_portal_create_params.rbs diff --git a/sig/scalar-api-ruby/models/login_portal_delete_params.rbs b/sig/scalar_api_ruby/models/login_portal_delete_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/login_portal_delete_params.rbs rename to sig/scalar_api_ruby/models/login_portal_delete_params.rbs diff --git a/sig/scalar-api-ruby/models/login_portal_email.rbs b/sig/scalar_api_ruby/models/login_portal_email.rbs similarity index 100% rename from sig/scalar-api-ruby/models/login_portal_email.rbs rename to sig/scalar_api_ruby/models/login_portal_email.rbs diff --git a/sig/scalar-api-ruby/models/login_portal_list_params.rbs b/sig/scalar_api_ruby/models/login_portal_list_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/login_portal_list_params.rbs rename to sig/scalar_api_ruby/models/login_portal_list_params.rbs diff --git a/sig/scalar_api_ruby/models/login_portal_list_response.rbs b/sig/scalar_api_ruby/models/login_portal_list_response.rbs new file mode 100644 index 0000000..dadbd1d --- /dev/null +++ b/sig/scalar_api_ruby/models/login_portal_list_response.rbs @@ -0,0 +1,7 @@ +module Scalar + module Models + type login_portal_list_response = ::Array[Scalar::LoginPortal] + + LoginPortalListResponse: Scalar::Internal::Type::Converter + end +end diff --git a/sig/scalar-api-ruby/models/login_portal_page.rbs b/sig/scalar_api_ruby/models/login_portal_page.rbs similarity index 100% rename from sig/scalar-api-ruby/models/login_portal_page.rbs rename to sig/scalar_api_ruby/models/login_portal_page.rbs diff --git a/sig/scalar-api-ruby/models/login_portal_retrieve_params.rbs b/sig/scalar_api_ruby/models/login_portal_retrieve_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/login_portal_retrieve_params.rbs rename to sig/scalar_api_ruby/models/login_portal_retrieve_params.rbs diff --git a/sig/scalar-api-ruby/models/login_portal_retrieve_response.rbs b/sig/scalar_api_ruby/models/login_portal_retrieve_response.rbs similarity index 100% rename from sig/scalar-api-ruby/models/login_portal_retrieve_response.rbs rename to sig/scalar_api_ruby/models/login_portal_retrieve_response.rbs diff --git a/sig/scalar-api-ruby/models/login_portal_update_params.rbs b/sig/scalar_api_ruby/models/login_portal_update_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/login_portal_update_params.rbs rename to sig/scalar_api_ruby/models/login_portal_update_params.rbs diff --git a/sig/scalar-api-ruby/models/managed_doc_version.rbs b/sig/scalar_api_ruby/models/managed_doc_version.rbs similarity index 76% rename from sig/scalar-api-ruby/models/managed_doc_version.rbs rename to sig/scalar_api_ruby/models/managed_doc_version.rbs index bfd21bd..aef9ab8 100644 --- a/sig/scalar-api-ruby/models/managed_doc_version.rbs +++ b/sig/scalar_api_ruby/models/managed_doc_version.rbs @@ -4,13 +4,13 @@ module Scalar { created_at: Float, embed_status: Scalar::Models::ManagedDocVersion::embed_status?, + endpoint_count: Integer?, tags: ::Array[String], uid: String, upgraded: bool, version: String, json_sha: String, tools: ::Array[Scalar::ManagedDocVersion::Tool], - version_sha: String, yaml_sha: String } @@ -19,6 +19,8 @@ module Scalar attr_accessor embed_status: Scalar::Models::ManagedDocVersion::embed_status? + attr_accessor endpoint_count: Integer? + attr_accessor tags: ::Array[String] attr_accessor uid: String @@ -37,10 +39,6 @@ module Scalar ::Array[Scalar::ManagedDocVersion::Tool] ) -> ::Array[Scalar::ManagedDocVersion::Tool] - attr_reader version_sha: String? - - def version_sha=: (String) -> String - attr_reader yaml_sha: String? def yaml_sha=: (String) -> String @@ -48,26 +46,26 @@ module Scalar def initialize: ( created_at: Float, embed_status: Scalar::Models::ManagedDocVersion::embed_status?, + endpoint_count: Integer?, tags: ::Array[String], uid: String, upgraded: bool, version: String, ?json_sha: String, ?tools: ::Array[Scalar::ManagedDocVersion::Tool], - ?version_sha: String, ?yaml_sha: String ) -> void def to_hash: -> { created_at: Float, embed_status: Scalar::Models::ManagedDocVersion::embed_status?, + endpoint_count: Integer?, tags: ::Array[String], uid: String, upgraded: bool, version: String, json_sha: String, tools: ::Array[Scalar::ManagedDocVersion::Tool], - version_sha: String, yaml_sha: String } @@ -85,26 +83,26 @@ module Scalar type tool = { enabled_tools: ::Array[Scalar::Models::ManagedDocVersion::Tool::enabled_tool], - method_: Scalar::Models::ManagedDocVersion::Tool::method_, + method_: String, path: String } class Tool < Scalar::Internal::Type::BaseModel attr_accessor enabled_tools: ::Array[Scalar::Models::ManagedDocVersion::Tool::enabled_tool] - attr_accessor method_: Scalar::Models::ManagedDocVersion::Tool::method_ + attr_accessor method_: String attr_accessor path: String def initialize: ( enabled_tools: ::Array[Scalar::Models::ManagedDocVersion::Tool::enabled_tool], - method_: Scalar::Models::ManagedDocVersion::Tool::method_, + method_: String, path: String ) -> void def to_hash: -> { enabled_tools: ::Array[Scalar::Models::ManagedDocVersion::Tool::enabled_tool], - method_: Scalar::Models::ManagedDocVersion::Tool::method_, + method_: String, path: String } @@ -118,24 +116,6 @@ module Scalar def self?.values: -> ::Array[Scalar::Models::ManagedDocVersion::Tool::enabled_tool] end - - type method_ = - :delete | :get | :head | :options | :patch | :post | :put | :trace - - module Method - extend Scalar::Internal::Type::Enum - - DELETE: :delete - GET: :get - HEAD: :head - OPTIONS: :options - PATCH: :patch - POST: :post - PUT: :put - TRACE: :trace - - def self?.values: -> ::Array[Scalar::Models::ManagedDocVersion::Tool::method_] - end end end end diff --git a/sig/scalar_api_ruby/models/managed_schema_version.rbs b/sig/scalar_api_ruby/models/managed_schema_version.rbs new file mode 100644 index 0000000..bb3ec94 --- /dev/null +++ b/sig/scalar_api_ruby/models/managed_schema_version.rbs @@ -0,0 +1,49 @@ +module Scalar + module Models + type managed_schema_version = + { + created_at: Integer, + uid: String, + updated_at: Integer, + version: String, + json_sha: String, + yaml_sha: String + } + + class ManagedSchemaVersion < Scalar::Internal::Type::BaseModel + attr_accessor created_at: Integer + + attr_accessor uid: String + + attr_accessor updated_at: Integer + + attr_accessor version: String + + attr_reader json_sha: String? + + def json_sha=: (String) -> String + + attr_reader yaml_sha: String? + + def yaml_sha=: (String) -> String + + def initialize: ( + created_at: Integer, + uid: String, + updated_at: Integer, + version: String, + ?json_sha: String, + ?yaml_sha: String + ) -> void + + def to_hash: -> { + created_at: Integer, + uid: String, + updated_at: Integer, + version: String, + json_sha: String, + yaml_sha: String + } + end + end +end diff --git a/sig/scalar_api_ruby/models/mcp/mcp_installation.rbs b/sig/scalar_api_ruby/models/mcp/mcp_installation.rbs new file mode 100644 index 0000000..f516682 --- /dev/null +++ b/sig/scalar_api_ruby/models/mcp/mcp_installation.rbs @@ -0,0 +1,69 @@ +module Scalar + module Models + class McpInstallation = Mcp::McpInstallation + + module Mcp + type mcp_installation = + { + id: String, + access_groups: ::Array[String], + credential_redaction_enabled: bool, + is_private: bool, + login_portal_uid: String?, + mcp_server_id: String, + mcp_version: String?, + name: String, + pii_redaction_enabled: bool, + slug: String + } + + class McpInstallation < Scalar::Internal::Type::BaseModel + attr_accessor id: String + + attr_accessor access_groups: ::Array[String] + + attr_accessor credential_redaction_enabled: bool + + attr_accessor is_private: bool + + attr_accessor login_portal_uid: String? + + attr_accessor mcp_server_id: String + + attr_accessor mcp_version: String? + + attr_accessor name: String + + attr_accessor pii_redaction_enabled: bool + + attr_accessor slug: String + + def initialize: ( + id: String, + access_groups: ::Array[String], + credential_redaction_enabled: bool, + is_private: bool, + login_portal_uid: String?, + mcp_server_id: String, + mcp_version: String?, + name: String, + pii_redaction_enabled: bool, + slug: String + ) -> void + + def to_hash: -> { + id: String, + access_groups: ::Array[String], + credential_redaction_enabled: bool, + is_private: bool, + login_portal_uid: String?, + mcp_server_id: String, + mcp_version: String?, + name: String, + pii_redaction_enabled: bool, + slug: String + } + end + end + end +end diff --git a/sig/scalar_api_ruby/models/mcp/mcp_server.rbs b/sig/scalar_api_ruby/models/mcp/mcp_server.rbs new file mode 100644 index 0000000..8dd9ffc --- /dev/null +++ b/sig/scalar_api_ruby/models/mcp/mcp_server.rbs @@ -0,0 +1,49 @@ +module Scalar + module Models + class McpServer = Mcp::McpServer + + module Mcp + type mcp_server = + { + id: String, + auto_add_operations: bool, + created_at: String, + name: String, + slug: String, + updated_at: String + } + + class McpServer < Scalar::Internal::Type::BaseModel + attr_accessor id: String + + attr_accessor auto_add_operations: bool + + attr_accessor created_at: String + + attr_accessor name: String + + attr_accessor slug: String + + attr_accessor updated_at: String + + def initialize: ( + id: String, + auto_add_operations: bool, + created_at: String, + name: String, + slug: String, + updated_at: String + ) -> void + + def to_hash: -> { + id: String, + auto_add_operations: bool, + created_at: String, + name: String, + slug: String, + updated_at: String + } + end + end + end +end diff --git a/sig/scalar_api_ruby/models/mcp/server_create_params.rbs b/sig/scalar_api_ruby/models/mcp/server_create_params.rbs new file mode 100644 index 0000000..f364cbe --- /dev/null +++ b/sig/scalar_api_ruby/models/mcp/server_create_params.rbs @@ -0,0 +1,49 @@ +module Scalar + module Models + module Mcp + type server_create_params = + { + name: String, + project_uids: ::Array[String], + slug: String, + version_uids: ::Array[String] + } + & Scalar::Internal::Type::request_parameters + + class ServerCreateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor name: String + + attr_reader project_uids: ::Array[String]? + + def project_uids=: (::Array[String]) -> ::Array[String] + + attr_reader slug: String? + + def slug=: (String) -> String + + attr_reader version_uids: ::Array[String]? + + def version_uids=: (::Array[String]) -> ::Array[String] + + def initialize: ( + name: String, + ?project_uids: ::Array[String], + ?slug: String, + ?version_uids: ::Array[String], + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + name: String, + project_uids: ::Array[String], + slug: String, + version_uids: ::Array[String], + request_options: Scalar::RequestOptions + } + end + end + end +end diff --git a/sig/scalar_api_ruby/models/mcp/server_create_response.rbs b/sig/scalar_api_ruby/models/mcp/server_create_response.rbs new file mode 100644 index 0000000..e697105 --- /dev/null +++ b/sig/scalar_api_ruby/models/mcp/server_create_response.rbs @@ -0,0 +1,27 @@ +module Scalar + module Models + module Mcp + type server_create_response = + { + installation: Scalar::Mcp::McpInstallation, + server: Scalar::Mcp::McpServer + } + + class ServerCreateResponse < Scalar::Internal::Type::BaseModel + attr_accessor installation: Scalar::Mcp::McpInstallation + + attr_accessor server: Scalar::Mcp::McpServer + + def initialize: ( + installation: Scalar::Mcp::McpInstallation, + server: Scalar::Mcp::McpServer + ) -> void + + def to_hash: -> { + installation: Scalar::Mcp::McpInstallation, + server: Scalar::Mcp::McpServer + } + end + end + end +end diff --git a/sig/scalar_api_ruby/models/mcp/server_delete_params.rbs b/sig/scalar_api_ruby/models/mcp/server_delete_params.rbs new file mode 100644 index 0000000..5ae964d --- /dev/null +++ b/sig/scalar_api_ruby/models/mcp/server_delete_params.rbs @@ -0,0 +1,22 @@ +module Scalar + module Models + module Mcp + type server_delete_params = + { id: String } & Scalar::Internal::Type::request_parameters + + class ServerDeleteParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor id: String + + def initialize: ( + id: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { id: String, request_options: Scalar::RequestOptions } + end + end + end +end diff --git a/sig/scalar_api_ruby/models/mcp/server_list_params.rbs b/sig/scalar_api_ruby/models/mcp/server_list_params.rbs new file mode 100644 index 0000000..181ec95 --- /dev/null +++ b/sig/scalar_api_ruby/models/mcp/server_list_params.rbs @@ -0,0 +1,17 @@ +module Scalar + module Models + module Mcp + type server_list_params = + { } & Scalar::Internal::Type::request_parameters + + class ServerListParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + def initialize: (?request_options: Scalar::request_opts) -> void + + def to_hash: -> { request_options: Scalar::RequestOptions } + end + end + end +end diff --git a/sig/scalar_api_ruby/models/mcp/server_list_response.rbs b/sig/scalar_api_ruby/models/mcp/server_list_response.rbs new file mode 100644 index 0000000..96a40fc --- /dev/null +++ b/sig/scalar_api_ruby/models/mcp/server_list_response.rbs @@ -0,0 +1,9 @@ +module Scalar + module Models + module Mcp + type server_list_response = ::Array[Scalar::Mcp::McpServer] + + ServerListResponse: Scalar::Internal::Type::Converter + end + end +end diff --git a/sig/scalar_api_ruby/models/mcp/server_retrieve_params.rbs b/sig/scalar_api_ruby/models/mcp/server_retrieve_params.rbs new file mode 100644 index 0000000..9173496 --- /dev/null +++ b/sig/scalar_api_ruby/models/mcp/server_retrieve_params.rbs @@ -0,0 +1,22 @@ +module Scalar + module Models + module Mcp + type server_retrieve_params = + { id: String } & Scalar::Internal::Type::request_parameters + + class ServerRetrieveParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor id: String + + def initialize: ( + id: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { id: String, request_options: Scalar::RequestOptions } + end + end + end +end diff --git a/sig/scalar_api_ruby/models/mcp/server_update_params.rbs b/sig/scalar_api_ruby/models/mcp/server_update_params.rbs new file mode 100644 index 0000000..d8d2184 --- /dev/null +++ b/sig/scalar_api_ruby/models/mcp/server_update_params.rbs @@ -0,0 +1,63 @@ +module Scalar + module Models + module Mcp + type server_update_params = + { + id: String, + auto_add_operations: bool, + docs_pages: ::Array[String], + name: String, + operations: ::Array[String], + slug: String + } + & Scalar::Internal::Type::request_parameters + + class ServerUpdateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor id: String + + attr_reader auto_add_operations: bool? + + def auto_add_operations=: (bool) -> bool + + attr_reader docs_pages: ::Array[String]? + + def docs_pages=: (::Array[String]) -> ::Array[String] + + attr_reader name: String? + + def name=: (String) -> String + + attr_reader operations: ::Array[String]? + + def operations=: (::Array[String]) -> ::Array[String] + + attr_reader slug: String? + + def slug=: (String) -> String + + def initialize: ( + id: String, + ?auto_add_operations: bool, + ?docs_pages: ::Array[String], + ?name: String, + ?operations: ::Array[String], + ?slug: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + id: String, + auto_add_operations: bool, + docs_pages: ::Array[String], + name: String, + operations: ::Array[String], + slug: String, + request_options: Scalar::RequestOptions + } + end + end + end +end diff --git a/sig/scalar_api_ruby/models/mcp/servers/installation_create_access_group_params.rbs b/sig/scalar_api_ruby/models/mcp/servers/installation_create_access_group_params.rbs new file mode 100644 index 0000000..2c730d6 --- /dev/null +++ b/sig/scalar_api_ruby/models/mcp/servers/installation_create_access_group_params.rbs @@ -0,0 +1,36 @@ +module Scalar + module Models + module Mcp + module Servers + type installation_create_access_group_params = + { id: String, installation_id: String, access_group_uid: String } + & Scalar::Internal::Type::request_parameters + + class InstallationCreateAccessGroupParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor id: String + + attr_accessor installation_id: String + + attr_accessor access_group_uid: String + + def initialize: ( + id: String, + installation_id: String, + access_group_uid: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + id: String, + installation_id: String, + access_group_uid: String, + request_options: Scalar::RequestOptions + } + end + end + end + end +end diff --git a/sig/scalar_api_ruby/models/mcp/servers/installation_create_params.rbs b/sig/scalar_api_ruby/models/mcp/servers/installation_create_params.rbs new file mode 100644 index 0000000..de2bc59 --- /dev/null +++ b/sig/scalar_api_ruby/models/mcp/servers/installation_create_params.rbs @@ -0,0 +1,47 @@ +module Scalar + module Models + module Mcp + module Servers + type installation_create_params = + { + id: String, + document_auth: ::Hash[Symbol, top], + name: String, + slug: String + } + & Scalar::Internal::Type::request_parameters + + class InstallationCreateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor id: String + + attr_accessor document_auth: ::Hash[Symbol, top] + + attr_accessor name: String + + attr_reader slug: String? + + def slug=: (String) -> String + + def initialize: ( + id: String, + document_auth: ::Hash[Symbol, top], + name: String, + ?slug: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + id: String, + document_auth: ::Hash[Symbol, top], + name: String, + slug: String, + request_options: Scalar::RequestOptions + } + end + end + end + end +end diff --git a/sig/scalar_api_ruby/models/mcp/servers/installation_delete_access_group_params.rbs b/sig/scalar_api_ruby/models/mcp/servers/installation_delete_access_group_params.rbs new file mode 100644 index 0000000..5d8ec11 --- /dev/null +++ b/sig/scalar_api_ruby/models/mcp/servers/installation_delete_access_group_params.rbs @@ -0,0 +1,36 @@ +module Scalar + module Models + module Mcp + module Servers + type installation_delete_access_group_params = + { id: String, installation_id: String, access_group_uid: String } + & Scalar::Internal::Type::request_parameters + + class InstallationDeleteAccessGroupParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor id: String + + attr_accessor installation_id: String + + attr_accessor access_group_uid: String + + def initialize: ( + id: String, + installation_id: String, + access_group_uid: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + id: String, + installation_id: String, + access_group_uid: String, + request_options: Scalar::RequestOptions + } + end + end + end + end +end diff --git a/sig/scalar_api_ruby/models/mcp/servers/installation_delete_params.rbs b/sig/scalar_api_ruby/models/mcp/servers/installation_delete_params.rbs new file mode 100644 index 0000000..c0427ee --- /dev/null +++ b/sig/scalar_api_ruby/models/mcp/servers/installation_delete_params.rbs @@ -0,0 +1,32 @@ +module Scalar + module Models + module Mcp + module Servers + type installation_delete_params = + { id: String, installation_id: String } + & Scalar::Internal::Type::request_parameters + + class InstallationDeleteParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor id: String + + attr_accessor installation_id: String + + def initialize: ( + id: String, + installation_id: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + id: String, + installation_id: String, + request_options: Scalar::RequestOptions + } + end + end + end + end +end diff --git a/sig/scalar_api_ruby/models/mcp/servers/installation_list_params.rbs b/sig/scalar_api_ruby/models/mcp/servers/installation_list_params.rbs new file mode 100644 index 0000000..540fbf3 --- /dev/null +++ b/sig/scalar_api_ruby/models/mcp/servers/installation_list_params.rbs @@ -0,0 +1,27 @@ +module Scalar + module Models + module Mcp + module Servers + type installation_list_params = + { id: String } & Scalar::Internal::Type::request_parameters + + class InstallationListParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor id: String + + def initialize: ( + id: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + id: String, + request_options: Scalar::RequestOptions + } + end + end + end + end +end diff --git a/sig/scalar_api_ruby/models/mcp/servers/installation_list_response.rbs b/sig/scalar_api_ruby/models/mcp/servers/installation_list_response.rbs new file mode 100644 index 0000000..a071df9 --- /dev/null +++ b/sig/scalar_api_ruby/models/mcp/servers/installation_list_response.rbs @@ -0,0 +1,12 @@ +module Scalar + module Models + module Mcp + module Servers + type installation_list_response = + ::Array[Scalar::Mcp::Servers::McpInstallationListItem] + + InstallationListResponse: Scalar::Internal::Type::Converter + end + end + end +end diff --git a/sig/scalar_api_ruby/models/mcp/servers/installation_retrieve_params.rbs b/sig/scalar_api_ruby/models/mcp/servers/installation_retrieve_params.rbs new file mode 100644 index 0000000..580ed87 --- /dev/null +++ b/sig/scalar_api_ruby/models/mcp/servers/installation_retrieve_params.rbs @@ -0,0 +1,32 @@ +module Scalar + module Models + module Mcp + module Servers + type installation_retrieve_params = + { id: String, installation_id: String } + & Scalar::Internal::Type::request_parameters + + class InstallationRetrieveParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor id: String + + attr_accessor installation_id: String + + def initialize: ( + id: String, + installation_id: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + id: String, + installation_id: String, + request_options: Scalar::RequestOptions + } + end + end + end + end +end diff --git a/sig/scalar_api_ruby/models/mcp/servers/installation_update_params.rbs b/sig/scalar_api_ruby/models/mcp/servers/installation_update_params.rbs new file mode 100644 index 0000000..125f2cb --- /dev/null +++ b/sig/scalar_api_ruby/models/mcp/servers/installation_update_params.rbs @@ -0,0 +1,73 @@ +module Scalar + module Models + module Mcp + module Servers + type installation_update_params = + { + id: String, + installation_id: String, + document_auth: ::Hash[Symbol, top], + is_private: bool, + login_portal_uid: String?, + mcp_version: String?, + name: String, + slug: String + } + & Scalar::Internal::Type::request_parameters + + class InstallationUpdateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor id: String + + attr_accessor installation_id: String + + attr_reader document_auth: ::Hash[Symbol, top]? + + def document_auth=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] + + attr_reader is_private: bool? + + def is_private=: (bool) -> bool + + attr_accessor login_portal_uid: String? + + attr_accessor mcp_version: String? + + attr_reader name: String? + + def name=: (String) -> String + + attr_reader slug: String? + + def slug=: (String) -> String + + def initialize: ( + id: String, + installation_id: String, + ?document_auth: ::Hash[Symbol, top], + ?is_private: bool, + ?login_portal_uid: String?, + ?mcp_version: String?, + ?name: String, + ?slug: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + id: String, + installation_id: String, + document_auth: ::Hash[Symbol, top], + is_private: bool, + login_portal_uid: String?, + mcp_version: String?, + name: String, + slug: String, + request_options: Scalar::RequestOptions + } + end + end + end + end +end diff --git a/sig/scalar_api_ruby/models/mcp/servers/mcp_installation_list_item.rbs b/sig/scalar_api_ruby/models/mcp/servers/mcp_installation_list_item.rbs new file mode 100644 index 0000000..1c4071d --- /dev/null +++ b/sig/scalar_api_ruby/models/mcp/servers/mcp_installation_list_item.rbs @@ -0,0 +1,44 @@ +module Scalar + module Models + module Mcp + module Servers + type mcp_installation_list_item = + { + id: String, + is_private: bool, + mcp_version: String?, + name: String, + slug: String + } + + class McpInstallationListItem < Scalar::Internal::Type::BaseModel + attr_accessor id: String + + attr_accessor is_private: bool + + attr_accessor mcp_version: String? + + attr_accessor name: String + + attr_accessor slug: String + + def initialize: ( + id: String, + is_private: bool, + mcp_version: String?, + name: String, + slug: String + ) -> void + + def to_hash: -> { + id: String, + is_private: bool, + mcp_version: String?, + name: String, + slug: String + } + end + end + end + end +end diff --git a/sig/scalar_api_ruby/models/method.rbs b/sig/scalar_api_ruby/models/method.rbs new file mode 100644 index 0000000..92f2ff0 --- /dev/null +++ b/sig/scalar_api_ruby/models/method.rbs @@ -0,0 +1,5 @@ +module Scalar + module Models + class Method = String + end +end diff --git a/sig/scalar-api-ruby/models/namespace.rbs b/sig/scalar_api_ruby/models/namespace.rbs similarity index 100% rename from sig/scalar-api-ruby/models/namespace.rbs rename to sig/scalar_api_ruby/models/namespace.rbs diff --git a/sig/scalar-api-ruby/models/namespace_list_params.rbs b/sig/scalar_api_ruby/models/namespace_list_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/namespace_list_params.rbs rename to sig/scalar_api_ruby/models/namespace_list_params.rbs diff --git a/sig/scalar-api-ruby/models/namespace_list_response.rbs b/sig/scalar_api_ruby/models/namespace_list_response.rbs similarity index 100% rename from sig/scalar-api-ruby/models/namespace_list_response.rbs rename to sig/scalar_api_ruby/models/namespace_list_response.rbs diff --git a/sig/scalar-api-ruby/models/nanoid.rbs b/sig/scalar_api_ruby/models/nanoid.rbs similarity index 100% rename from sig/scalar-api-ruby/models/nanoid.rbs rename to sig/scalar_api_ruby/models/nanoid.rbs diff --git a/sig/scalar-api-ruby/models/registry_create_api_document_access_group_params.rbs b/sig/scalar_api_ruby/models/registry_create_api_document_access_group_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/registry_create_api_document_access_group_params.rbs rename to sig/scalar_api_ruby/models/registry_create_api_document_access_group_params.rbs diff --git a/sig/scalar-api-ruby/models/registry_create_api_document_params.rbs b/sig/scalar_api_ruby/models/registry_create_api_document_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/registry_create_api_document_params.rbs rename to sig/scalar_api_ruby/models/registry_create_api_document_params.rbs diff --git a/sig/scalar-api-ruby/models/registry_create_api_document_response.rbs b/sig/scalar_api_ruby/models/registry_create_api_document_response.rbs similarity index 86% rename from sig/scalar-api-ruby/models/registry_create_api_document_response.rbs rename to sig/scalar_api_ruby/models/registry_create_api_document_response.rbs index 5ba1273..9fc41a5 100644 --- a/sig/scalar-api-ruby/models/registry_create_api_document_response.rbs +++ b/sig/scalar_api_ruby/models/registry_create_api_document_response.rbs @@ -5,7 +5,6 @@ module Scalar json_sha: String, title: String, uid: String, - version_sha: String, version_uid: String, yaml_sha: String } @@ -17,8 +16,6 @@ module Scalar attr_accessor uid: String - attr_accessor version_sha: String - attr_accessor version_uid: String attr_accessor yaml_sha: String @@ -27,7 +24,6 @@ module Scalar json_sha: String, title: String, uid: String, - version_sha: String, version_uid: String, yaml_sha: String ) -> void @@ -36,7 +32,6 @@ module Scalar json_sha: String, title: String, uid: String, - version_sha: String, version_uid: String, yaml_sha: String } diff --git a/sig/scalar-api-ruby/models/registry_create_api_document_version_params.rbs b/sig/scalar_api_ruby/models/registry_create_api_document_version_params.rbs similarity index 81% rename from sig/scalar-api-ruby/models/registry_create_api_document_version_params.rbs rename to sig/scalar_api_ruby/models/registry_create_api_document_version_params.rbs index ff10156..75c4843 100644 --- a/sig/scalar-api-ruby/models/registry_create_api_document_version_params.rbs +++ b/sig/scalar_api_ruby/models/registry_create_api_document_version_params.rbs @@ -6,8 +6,7 @@ module Scalar slug: String, document: String, version: String, - force: bool, - last_known_version_sha: String + force: bool } & Scalar::Internal::Type::request_parameters @@ -27,17 +26,12 @@ module Scalar def force=: (bool) -> bool - attr_reader last_known_version_sha: String? - - def last_known_version_sha=: (String) -> String - def initialize: ( namespace: String, slug: String, document: String, version: String, ?force: bool, - ?last_known_version_sha: String, ?request_options: Scalar::request_opts ) -> void @@ -47,7 +41,6 @@ module Scalar document: String, version: String, force: bool, - last_known_version_sha: String, request_options: Scalar::RequestOptions } end diff --git a/sig/scalar-api-ruby/models/registry_delete_api_document_access_group_params.rbs b/sig/scalar_api_ruby/models/registry_delete_api_document_access_group_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/registry_delete_api_document_access_group_params.rbs rename to sig/scalar_api_ruby/models/registry_delete_api_document_access_group_params.rbs diff --git a/sig/scalar-api-ruby/models/registry_delete_api_document_params.rbs b/sig/scalar_api_ruby/models/registry_delete_api_document_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/registry_delete_api_document_params.rbs rename to sig/scalar_api_ruby/models/registry_delete_api_document_params.rbs diff --git a/sig/scalar-api-ruby/models/registry_delete_api_document_version_params.rbs b/sig/scalar_api_ruby/models/registry_delete_api_document_version_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/registry_delete_api_document_version_params.rbs rename to sig/scalar_api_ruby/models/registry_delete_api_document_version_params.rbs diff --git a/sig/scalar-api-ruby/models/registry_list_all_api_documents_params.rbs b/sig/scalar_api_ruby/models/registry_list_all_api_documents_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/registry_list_all_api_documents_params.rbs rename to sig/scalar_api_ruby/models/registry_list_all_api_documents_params.rbs diff --git a/sig/scalar_api_ruby/models/registry_list_all_api_documents_response.rbs b/sig/scalar_api_ruby/models/registry_list_all_api_documents_response.rbs new file mode 100644 index 0000000..2db2542 --- /dev/null +++ b/sig/scalar_api_ruby/models/registry_list_all_api_documents_response.rbs @@ -0,0 +1,7 @@ +module Scalar + module Models + type registry_list_all_api_documents_response = ::Array[Scalar::APIDocument] + + RegistryListAllAPIDocumentsResponse: Scalar::Internal::Type::Converter + end +end diff --git a/sig/scalar-api-ruby/models/registry_list_api_document_version_metadata_params.rbs b/sig/scalar_api_ruby/models/registry_list_api_document_version_metadata_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/registry_list_api_document_version_metadata_params.rbs rename to sig/scalar_api_ruby/models/registry_list_api_document_version_metadata_params.rbs diff --git a/sig/scalar-api-ruby/models/registry_list_api_documents_params.rbs b/sig/scalar_api_ruby/models/registry_list_api_documents_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/registry_list_api_documents_params.rbs rename to sig/scalar_api_ruby/models/registry_list_api_documents_params.rbs diff --git a/sig/scalar_api_ruby/models/registry_list_api_documents_response.rbs b/sig/scalar_api_ruby/models/registry_list_api_documents_response.rbs new file mode 100644 index 0000000..8349daa --- /dev/null +++ b/sig/scalar_api_ruby/models/registry_list_api_documents_response.rbs @@ -0,0 +1,7 @@ +module Scalar + module Models + type registry_list_api_documents_response = ::Array[Scalar::APIDocument] + + RegistryListAPIDocumentsResponse: Scalar::Internal::Type::Converter + end +end diff --git a/sig/scalar-api-ruby/models/registry_retrieve_api_document_version_params.rbs b/sig/scalar_api_ruby/models/registry_retrieve_api_document_version_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/registry_retrieve_api_document_version_params.rbs rename to sig/scalar_api_ruby/models/registry_retrieve_api_document_version_params.rbs diff --git a/sig/scalar-api-ruby/models/registry_retrieve_api_document_version_response.rbs b/sig/scalar_api_ruby/models/registry_retrieve_api_document_version_response.rbs similarity index 100% rename from sig/scalar-api-ruby/models/registry_retrieve_api_document_version_response.rbs rename to sig/scalar_api_ruby/models/registry_retrieve_api_document_version_response.rbs diff --git a/sig/scalar-api-ruby/models/registry_update_api_document_params.rbs b/sig/scalar_api_ruby/models/registry_update_api_document_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/registry_update_api_document_params.rbs rename to sig/scalar_api_ruby/models/registry_update_api_document_params.rbs diff --git a/sig/scalar-api-ruby/models/registry_update_api_document_version_params.rbs b/sig/scalar_api_ruby/models/registry_update_api_document_version_params.rbs similarity index 71% rename from sig/scalar-api-ruby/models/registry_update_api_document_version_params.rbs rename to sig/scalar_api_ruby/models/registry_update_api_document_version_params.rbs index 7999e6d..5cd9761 100644 --- a/sig/scalar-api-ruby/models/registry_update_api_document_version_params.rbs +++ b/sig/scalar_api_ruby/models/registry_update_api_document_version_params.rbs @@ -1,13 +1,7 @@ module Scalar module Models type registry_update_api_document_version_params = - { - namespace: String, - slug: String, - semver: String, - document: String, - last_known_version_sha: String - } + { namespace: String, slug: String, semver: String, document: String } & Scalar::Internal::Type::request_parameters class RegistryUpdateAPIDocumentVersionParams < Scalar::Internal::Type::BaseModel @@ -22,16 +16,11 @@ module Scalar attr_accessor document: String - attr_reader last_known_version_sha: String? - - def last_known_version_sha=: (String) -> String - def initialize: ( namespace: String, slug: String, semver: String, document: String, - ?last_known_version_sha: String, ?request_options: Scalar::request_opts ) -> void @@ -40,7 +29,6 @@ module Scalar slug: String, semver: String, document: String, - last_known_version_sha: String, request_options: Scalar::RequestOptions } end diff --git a/sig/scalar_api_ruby/models/registry_update_api_document_version_response.rbs b/sig/scalar_api_ruby/models/registry_update_api_document_version_response.rbs new file mode 100644 index 0000000..0e0f30c --- /dev/null +++ b/sig/scalar_api_ruby/models/registry_update_api_document_version_response.rbs @@ -0,0 +1,16 @@ +module Scalar + module Models + type registry_update_api_document_version_response = + { json_sha: String, yaml_sha: String } + + class RegistryUpdateAPIDocumentVersionResponse < Scalar::Internal::Type::BaseModel + attr_accessor json_sha: String + + attr_accessor yaml_sha: String + + def initialize: (json_sha: String, yaml_sha: String) -> void + + def to_hash: -> { json_sha: String, yaml_sha: String } + end + end +end diff --git a/sig/scalar-api-ruby/models/rule_list_rulesets_response.rbs b/sig/scalar_api_ruby/models/rule.rbs similarity index 73% rename from sig/scalar-api-ruby/models/rule_list_rulesets_response.rbs rename to sig/scalar_api_ruby/models/rule.rbs index fc65878..f360472 100644 --- a/sig/scalar-api-ruby/models/rule_list_rulesets_response.rbs +++ b/sig/scalar_api_ruby/models/rule.rbs @@ -1,6 +1,6 @@ module Scalar module Models - type rule_list_rulesets_response_item = + type rule = { description: String, is_private: bool, @@ -10,7 +10,7 @@ module Scalar uid: String } - class RuleListRulesetsResponseItem < Scalar::Internal::Type::BaseModel + class Rule < Scalar::Internal::Type::BaseModel attr_accessor description: String attr_accessor is_private: bool @@ -41,10 +41,5 @@ module Scalar uid: String } end - - type rule_list_rulesets_response = - ::Array[Scalar::Models::RuleListRulesetsResponseItem] - - RuleListRulesetsResponse: Scalar::Internal::Type::Converter end end diff --git a/sig/scalar-api-ruby/models/rule_create_ruleset_access_group_params.rbs b/sig/scalar_api_ruby/models/rule_create_ruleset_access_group_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/rule_create_ruleset_access_group_params.rbs rename to sig/scalar_api_ruby/models/rule_create_ruleset_access_group_params.rbs diff --git a/sig/scalar-api-ruby/models/rule_create_ruleset_params.rbs b/sig/scalar_api_ruby/models/rule_create_ruleset_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/rule_create_ruleset_params.rbs rename to sig/scalar_api_ruby/models/rule_create_ruleset_params.rbs diff --git a/sig/scalar-api-ruby/models/rule_delete_ruleset_access_group_params.rbs b/sig/scalar_api_ruby/models/rule_delete_ruleset_access_group_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/rule_delete_ruleset_access_group_params.rbs rename to sig/scalar_api_ruby/models/rule_delete_ruleset_access_group_params.rbs diff --git a/sig/scalar-api-ruby/models/rule_delete_ruleset_params.rbs b/sig/scalar_api_ruby/models/rule_delete_ruleset_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/rule_delete_ruleset_params.rbs rename to sig/scalar_api_ruby/models/rule_delete_ruleset_params.rbs diff --git a/sig/scalar-api-ruby/models/rule_list_rulesets_params.rbs b/sig/scalar_api_ruby/models/rule_list_rulesets_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/rule_list_rulesets_params.rbs rename to sig/scalar_api_ruby/models/rule_list_rulesets_params.rbs diff --git a/sig/scalar_api_ruby/models/rule_list_rulesets_response.rbs b/sig/scalar_api_ruby/models/rule_list_rulesets_response.rbs new file mode 100644 index 0000000..3dbc15e --- /dev/null +++ b/sig/scalar_api_ruby/models/rule_list_rulesets_response.rbs @@ -0,0 +1,7 @@ +module Scalar + module Models + type rule_list_rulesets_response = ::Array[Scalar::Rule] + + RuleListRulesetsResponse: Scalar::Internal::Type::Converter + end +end diff --git a/sig/scalar-api-ruby/models/rule_retrieve_ruleset_document_params.rbs b/sig/scalar_api_ruby/models/rule_retrieve_ruleset_document_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/rule_retrieve_ruleset_document_params.rbs rename to sig/scalar_api_ruby/models/rule_retrieve_ruleset_document_params.rbs diff --git a/sig/scalar-api-ruby/models/rule_retrieve_ruleset_document_response.rbs b/sig/scalar_api_ruby/models/rule_retrieve_ruleset_document_response.rbs similarity index 100% rename from sig/scalar-api-ruby/models/rule_retrieve_ruleset_document_response.rbs rename to sig/scalar_api_ruby/models/rule_retrieve_ruleset_document_response.rbs diff --git a/sig/scalar-api-ruby/models/rule_update_ruleset_params.rbs b/sig/scalar_api_ruby/models/rule_update_ruleset_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/rule_update_ruleset_params.rbs rename to sig/scalar_api_ruby/models/rule_update_ruleset_params.rbs diff --git a/sig/scalar-api-ruby/models/scalar_doc_create_guide_params.rbs b/sig/scalar_api_ruby/models/scalar_doc_create_guide_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/scalar_doc_create_guide_params.rbs rename to sig/scalar_api_ruby/models/scalar_doc_create_guide_params.rbs diff --git a/sig/scalar-api-ruby/models/scalar_doc_create_guide_response.rbs b/sig/scalar_api_ruby/models/scalar_doc_create_guide_response.rbs similarity index 100% rename from sig/scalar-api-ruby/models/scalar_doc_create_guide_response.rbs rename to sig/scalar_api_ruby/models/scalar_doc_create_guide_response.rbs diff --git a/sig/scalar_api_ruby/models/scalar_doc_create_project_params.rbs b/sig/scalar_api_ruby/models/scalar_doc_create_project_params.rbs new file mode 100644 index 0000000..fd546d9 --- /dev/null +++ b/sig/scalar_api_ruby/models/scalar_doc_create_project_params.rbs @@ -0,0 +1,106 @@ +module Scalar + module Models + type scalar_doc_create_project_params = + { + name: String, + provider: Scalar::Models::ScalarDocCreateProjectParams::provider, + bitbucket_repository: Scalar::ScalarDocCreateProjectParams::BitbucketRepository, + blank: bool, + github_repository: Scalar::ScalarDocCreateProjectParams::GithubRepository, + is_private: bool, + slug: String + } + & Scalar::Internal::Type::request_parameters + + class ScalarDocCreateProjectParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor name: String + + attr_accessor provider: Scalar::Models::ScalarDocCreateProjectParams::provider + + attr_reader bitbucket_repository: Scalar::ScalarDocCreateProjectParams::BitbucketRepository? + + def bitbucket_repository=: ( + Scalar::ScalarDocCreateProjectParams::BitbucketRepository + ) -> Scalar::ScalarDocCreateProjectParams::BitbucketRepository + + attr_reader blank: bool? + + def blank=: (bool) -> bool + + attr_reader github_repository: Scalar::ScalarDocCreateProjectParams::GithubRepository? + + def github_repository=: ( + Scalar::ScalarDocCreateProjectParams::GithubRepository + ) -> Scalar::ScalarDocCreateProjectParams::GithubRepository + + attr_reader is_private: bool? + + def is_private=: (bool) -> bool + + attr_reader slug: String? + + def slug=: (String) -> String + + def initialize: ( + name: String, + provider: Scalar::Models::ScalarDocCreateProjectParams::provider, + ?bitbucket_repository: Scalar::ScalarDocCreateProjectParams::BitbucketRepository, + ?blank: bool, + ?github_repository: Scalar::ScalarDocCreateProjectParams::GithubRepository, + ?is_private: bool, + ?slug: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + name: String, + provider: Scalar::Models::ScalarDocCreateProjectParams::provider, + bitbucket_repository: Scalar::ScalarDocCreateProjectParams::BitbucketRepository, + blank: bool, + github_repository: Scalar::ScalarDocCreateProjectParams::GithubRepository, + is_private: bool, + slug: String, + request_options: Scalar::RequestOptions + } + + type provider = :forgejo | :github | :bitbucket + + module Provider + extend Scalar::Internal::Type::Enum + + FORGEJO: :forgejo + GITHUB: :github + BITBUCKET: :bitbucket + + def self?.values: -> ::Array[Scalar::Models::ScalarDocCreateProjectParams::provider] + end + + type bitbucket_repository = { repo_uuid: String, workspace_uuid: String } + + class BitbucketRepository < Scalar::Internal::Type::BaseModel + attr_accessor repo_uuid: String + + attr_accessor workspace_uuid: String + + def initialize: (repo_uuid: String, workspace_uuid: String) -> void + + def to_hash: -> { repo_uuid: String, workspace_uuid: String } + end + + type github_repository = { installation_id: Integer, repo_id: Integer } + + class GithubRepository < Scalar::Internal::Type::BaseModel + attr_accessor installation_id: Integer + + attr_accessor repo_id: Integer + + def initialize: (installation_id: Integer, repo_id: Integer) -> void + + def to_hash: -> { installation_id: Integer, repo_id: Integer } + end + end + end +end diff --git a/sig/scalar_api_ruby/models/scalar_doc_delete_project_params.rbs b/sig/scalar_api_ruby/models/scalar_doc_delete_project_params.rbs new file mode 100644 index 0000000..a10e62e --- /dev/null +++ b/sig/scalar_api_ruby/models/scalar_doc_delete_project_params.rbs @@ -0,0 +1,20 @@ +module Scalar + module Models + type scalar_doc_delete_project_params = + { slug: String } & Scalar::Internal::Type::request_parameters + + class ScalarDocDeleteProjectParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor slug: String + + def initialize: ( + slug: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { slug: String, request_options: Scalar::RequestOptions } + end + end +end diff --git a/sig/scalar-api-ruby/models/scalar_doc_list_guides_params.rbs b/sig/scalar_api_ruby/models/scalar_doc_list_guides_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/scalar_doc_list_guides_params.rbs rename to sig/scalar_api_ruby/models/scalar_doc_list_guides_params.rbs diff --git a/sig/scalar_api_ruby/models/scalar_doc_list_guides_response.rbs b/sig/scalar_api_ruby/models/scalar_doc_list_guides_response.rbs new file mode 100644 index 0000000..af1d56c --- /dev/null +++ b/sig/scalar_api_ruby/models/scalar_doc_list_guides_response.rbs @@ -0,0 +1,7 @@ +module Scalar + module Models + type scalar_doc_list_guides_response = ::Array[Scalar::GithubProject] + + ScalarDocListGuidesResponse: Scalar::Internal::Type::Converter + end +end diff --git a/sig/scalar_api_ruby/models/scalar_doc_list_project_config_params.rbs b/sig/scalar_api_ruby/models/scalar_doc_list_project_config_params.rbs new file mode 100644 index 0000000..24f0539 --- /dev/null +++ b/sig/scalar_api_ruby/models/scalar_doc_list_project_config_params.rbs @@ -0,0 +1,29 @@ +module Scalar + module Models + type scalar_doc_list_project_config_params = + { slug: String, ref: String } & Scalar::Internal::Type::request_parameters + + class ScalarDocListProjectConfigParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor slug: String + + attr_reader ref: String? + + def ref=: (String) -> String + + def initialize: ( + slug: String, + ?ref: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + slug: String, + ref: String, + request_options: Scalar::RequestOptions + } + end + end +end diff --git a/sig/scalar_api_ruby/models/scalar_doc_list_project_config_response.rbs b/sig/scalar_api_ruby/models/scalar_doc_list_project_config_response.rbs new file mode 100644 index 0000000..3481867 --- /dev/null +++ b/sig/scalar_api_ruby/models/scalar_doc_list_project_config_response.rbs @@ -0,0 +1,30 @@ +module Scalar + module Models + type scalar_doc_list_project_config_response = + { base_token: String, content: String, path: String, ref: String } + + class ScalarDocListProjectConfigResponse < Scalar::Internal::Type::BaseModel + attr_accessor base_token: String + + attr_accessor content: String + + attr_accessor path: String + + attr_accessor ref: String + + def initialize: ( + base_token: String, + content: String, + path: String, + ref: String + ) -> void + + def to_hash: -> { + base_token: String, + content: String, + path: String, + ref: String + } + end + end +end diff --git a/sig/scalar_api_ruby/models/scalar_doc_list_project_domain_params.rbs b/sig/scalar_api_ruby/models/scalar_doc_list_project_domain_params.rbs new file mode 100644 index 0000000..65bf36e --- /dev/null +++ b/sig/scalar_api_ruby/models/scalar_doc_list_project_domain_params.rbs @@ -0,0 +1,20 @@ +module Scalar + module Models + type scalar_doc_list_project_domain_params = + { slug: String } & Scalar::Internal::Type::request_parameters + + class ScalarDocListProjectDomainParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor slug: String + + def initialize: ( + slug: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { slug: String, request_options: Scalar::RequestOptions } + end + end +end diff --git a/sig/scalar_api_ruby/models/scalar_doc_list_project_domain_response.rbs b/sig/scalar_api_ruby/models/scalar_doc_list_project_domain_response.rbs new file mode 100644 index 0000000..23ec83c --- /dev/null +++ b/sig/scalar_api_ruby/models/scalar_doc_list_project_domain_response.rbs @@ -0,0 +1,16 @@ +module Scalar + module Models + type scalar_doc_list_project_domain_response = + { custom_domain: String?, scalar_domain: String? } + + class ScalarDocListProjectDomainResponse < Scalar::Internal::Type::BaseModel + attr_accessor custom_domain: String? + + attr_accessor scalar_domain: String? + + def initialize: (custom_domain: String?, scalar_domain: String?) -> void + + def to_hash: -> { custom_domain: String?, scalar_domain: String? } + end + end +end diff --git a/sig/scalar_api_ruby/models/scalar_doc_list_project_domain_status_params.rbs b/sig/scalar_api_ruby/models/scalar_doc_list_project_domain_status_params.rbs new file mode 100644 index 0000000..694155c --- /dev/null +++ b/sig/scalar_api_ruby/models/scalar_doc_list_project_domain_status_params.rbs @@ -0,0 +1,20 @@ +module Scalar + module Models + type scalar_doc_list_project_domain_status_params = + { slug: String } & Scalar::Internal::Type::request_parameters + + class ScalarDocListProjectDomainStatusParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor slug: String + + def initialize: ( + slug: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { slug: String, request_options: Scalar::RequestOptions } + end + end +end diff --git a/sig/scalar_api_ruby/models/scalar_doc_list_project_domain_status_response.rbs b/sig/scalar_api_ruby/models/scalar_doc_list_project_domain_status_response.rbs new file mode 100644 index 0000000..8c4925b --- /dev/null +++ b/sig/scalar_api_ruby/models/scalar_doc_list_project_domain_status_response.rbs @@ -0,0 +1,59 @@ +module Scalar + module Models + type scalar_doc_list_project_domain_status_response = + { + domain: String?, + expected: Scalar::Models::ScalarDocListProjectDomainStatusResponse::Expected?, + found: ::Array[String], + status: Scalar::Models::ScalarDocListProjectDomainStatusResponse::status + } + + class ScalarDocListProjectDomainStatusResponse < Scalar::Internal::Type::BaseModel + attr_accessor domain: String? + + attr_accessor expected: Scalar::Models::ScalarDocListProjectDomainStatusResponse::Expected? + + attr_accessor found: ::Array[String] + + attr_accessor status: Scalar::Models::ScalarDocListProjectDomainStatusResponse::status + + def initialize: ( + domain: String?, + expected: Scalar::Models::ScalarDocListProjectDomainStatusResponse::Expected?, + found: ::Array[String], + status: Scalar::Models::ScalarDocListProjectDomainStatusResponse::status + ) -> void + + def to_hash: -> { + domain: String?, + expected: Scalar::Models::ScalarDocListProjectDomainStatusResponse::Expected?, + found: ::Array[String], + status: Scalar::Models::ScalarDocListProjectDomainStatusResponse::status + } + + type expected = { target: String, type: :CNAME } + + class Expected < Scalar::Internal::Type::BaseModel + attr_accessor target: String + + attr_accessor type: :CNAME + + def initialize: (target: String, ?type: :CNAME) -> void + + def to_hash: -> { target: String, type: :CNAME } + end + + type status = :verified | :pending | :misconfigured + + module Status + extend Scalar::Internal::Type::Enum + + VERIFIED: :verified + PENDING: :pending + MISCONFIGURED: :misconfigured + + def self?.values: -> ::Array[Scalar::Models::ScalarDocListProjectDomainStatusResponse::status] + end + end + end +end diff --git a/sig/scalar_api_ruby/models/scalar_doc_list_projects_params.rbs b/sig/scalar_api_ruby/models/scalar_doc_list_projects_params.rbs new file mode 100644 index 0000000..6103467 --- /dev/null +++ b/sig/scalar_api_ruby/models/scalar_doc_list_projects_params.rbs @@ -0,0 +1,25 @@ +module Scalar + module Models + type scalar_doc_list_projects_params = + { limit: Integer } & Scalar::Internal::Type::request_parameters + + class ScalarDocListProjectsParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_reader limit: Integer? + + def limit=: (Integer) -> Integer + + def initialize: ( + ?limit: Integer, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + limit: Integer, + request_options: Scalar::RequestOptions + } + end + end +end diff --git a/sig/scalar_api_ruby/models/scalar_doc_list_projects_response.rbs b/sig/scalar_api_ruby/models/scalar_doc_list_projects_response.rbs new file mode 100644 index 0000000..ba587e8 --- /dev/null +++ b/sig/scalar_api_ruby/models/scalar_doc_list_projects_response.rbs @@ -0,0 +1,19 @@ +module Scalar + module Models + type scalar_doc_list_projects_response = + { data: ::Array[Scalar::DocsProject], has_more: bool } + + class ScalarDocListProjectsResponse < Scalar::Internal::Type::BaseModel + attr_accessor data: ::Array[Scalar::DocsProject] + + attr_accessor has_more: bool + + def initialize: ( + data: ::Array[Scalar::DocsProject], + has_more: bool + ) -> void + + def to_hash: -> { data: ::Array[Scalar::DocsProject], has_more: bool } + end + end +end diff --git a/sig/scalar-api-ruby/models/scalar_doc_publish_guide_params.rbs b/sig/scalar_api_ruby/models/scalar_doc_publish_guide_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/scalar_doc_publish_guide_params.rbs rename to sig/scalar_api_ruby/models/scalar_doc_publish_guide_params.rbs diff --git a/sig/scalar-api-ruby/models/scalar_doc_publish_guide_response.rbs b/sig/scalar_api_ruby/models/scalar_doc_publish_guide_response.rbs similarity index 100% rename from sig/scalar-api-ruby/models/scalar_doc_publish_guide_response.rbs rename to sig/scalar_api_ruby/models/scalar_doc_publish_guide_response.rbs diff --git a/sig/scalar_api_ruby/models/scalar_doc_publish_project_params.rbs b/sig/scalar_api_ruby/models/scalar_doc_publish_project_params.rbs new file mode 100644 index 0000000..bf30763 --- /dev/null +++ b/sig/scalar_api_ruby/models/scalar_doc_publish_project_params.rbs @@ -0,0 +1,42 @@ +module Scalar + module Models + type scalar_doc_publish_project_params = + { slug: String, commit_sha: String, config_path: String, preview: bool } + & Scalar::Internal::Type::request_parameters + + class ScalarDocPublishProjectParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor slug: String + + attr_reader commit_sha: String? + + def commit_sha=: (String) -> String + + attr_reader config_path: String? + + def config_path=: (String) -> String + + attr_reader preview: bool? + + def preview=: (bool) -> bool + + def initialize: ( + slug: String, + ?commit_sha: String, + ?config_path: String, + ?preview: bool, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + slug: String, + commit_sha: String, + config_path: String, + preview: bool, + request_options: Scalar::RequestOptions + } + end + end +end diff --git a/sig/scalar_api_ruby/models/scalar_doc_publish_project_response.rbs b/sig/scalar_api_ruby/models/scalar_doc_publish_project_response.rbs new file mode 100644 index 0000000..cd90da2 --- /dev/null +++ b/sig/scalar_api_ruby/models/scalar_doc_publish_project_response.rbs @@ -0,0 +1,13 @@ +module Scalar + module Models + type scalar_doc_publish_project_response = { publish_uid: String } + + class ScalarDocPublishProjectResponse < Scalar::Internal::Type::BaseModel + attr_accessor publish_uid: String + + def initialize: (publish_uid: String) -> void + + def to_hash: -> { publish_uid: String } + end + end +end diff --git a/sig/scalar_api_ruby/models/scalar_doc_retrieve_project_params.rbs b/sig/scalar_api_ruby/models/scalar_doc_retrieve_project_params.rbs new file mode 100644 index 0000000..7875bfb --- /dev/null +++ b/sig/scalar_api_ruby/models/scalar_doc_retrieve_project_params.rbs @@ -0,0 +1,20 @@ +module Scalar + module Models + type scalar_doc_retrieve_project_params = + { slug: String } & Scalar::Internal::Type::request_parameters + + class ScalarDocRetrieveProjectParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor slug: String + + def initialize: ( + slug: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { slug: String, request_options: Scalar::RequestOptions } + end + end +end diff --git a/sig/scalar_api_ruby/models/scalar_doc_update_project_config_params.rbs b/sig/scalar_api_ruby/models/scalar_doc_update_project_config_params.rbs new file mode 100644 index 0000000..67eb6eb --- /dev/null +++ b/sig/scalar_api_ruby/models/scalar_doc_update_project_config_params.rbs @@ -0,0 +1,59 @@ +module Scalar + module Models + type scalar_doc_update_project_config_params = + { + slug: String, + content: String, + base_token: String, + message: String, + path: String, + ref: String + } + & Scalar::Internal::Type::request_parameters + + class ScalarDocUpdateProjectConfigParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor slug: String + + attr_accessor content: String + + attr_reader base_token: String? + + def base_token=: (String) -> String + + attr_reader message: String? + + def message=: (String) -> String + + attr_reader path: String? + + def path=: (String) -> String + + attr_reader ref: String? + + def ref=: (String) -> String + + def initialize: ( + slug: String, + content: String, + ?base_token: String, + ?message: String, + ?path: String, + ?ref: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + slug: String, + content: String, + base_token: String, + message: String, + path: String, + ref: String, + request_options: Scalar::RequestOptions + } + end + end +end diff --git a/sig/scalar_api_ruby/models/scalar_doc_update_project_config_response.rbs b/sig/scalar_api_ruby/models/scalar_doc_update_project_config_response.rbs new file mode 100644 index 0000000..e7ba845 --- /dev/null +++ b/sig/scalar_api_ruby/models/scalar_doc_update_project_config_response.rbs @@ -0,0 +1,22 @@ +module Scalar + module Models + type scalar_doc_update_project_config_response = + { base_token: String, commit_sha: String?, ref: String } + + class ScalarDocUpdateProjectConfigResponse < Scalar::Internal::Type::BaseModel + attr_accessor base_token: String + + attr_accessor commit_sha: String? + + attr_accessor ref: String + + def initialize: ( + base_token: String, + commit_sha: String?, + ref: String + ) -> void + + def to_hash: -> { base_token: String, commit_sha: String?, ref: String } + end + end +end diff --git a/sig/scalar_api_ruby/models/scalar_doc_update_project_params.rbs b/sig/scalar_api_ruby/models/scalar_doc_update_project_params.rbs new file mode 100644 index 0000000..15ce9be --- /dev/null +++ b/sig/scalar_api_ruby/models/scalar_doc_update_project_params.rbs @@ -0,0 +1,85 @@ +module Scalar + module Models + type scalar_doc_update_project_params = + { + slug: String, + access_groups: ::Array[String], + active_theme_id: String, + agent_enabled: bool, + analytics_enabled: bool, + is_private: bool, + login_portal_uid: Scalar::Models::ScalarDocUpdateProjectParams::login_portal_uid, + name: String + } + & Scalar::Internal::Type::request_parameters + + class ScalarDocUpdateProjectParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor slug: String + + attr_reader access_groups: ::Array[String]? + + def access_groups=: (::Array[String]) -> ::Array[String] + + attr_reader active_theme_id: String? + + def active_theme_id=: (String) -> String + + attr_reader agent_enabled: bool? + + def agent_enabled=: (bool) -> bool + + attr_reader analytics_enabled: bool? + + def analytics_enabled=: (bool) -> bool + + attr_reader is_private: bool? + + def is_private=: (bool) -> bool + + attr_reader login_portal_uid: Scalar::Models::ScalarDocUpdateProjectParams::login_portal_uid? + + def login_portal_uid=: ( + Scalar::Models::ScalarDocUpdateProjectParams::login_portal_uid + ) -> Scalar::Models::ScalarDocUpdateProjectParams::login_portal_uid + + attr_reader name: String? + + def name=: (String) -> String + + def initialize: ( + slug: String, + ?access_groups: ::Array[String], + ?active_theme_id: String, + ?agent_enabled: bool, + ?analytics_enabled: bool, + ?is_private: bool, + ?login_portal_uid: Scalar::Models::ScalarDocUpdateProjectParams::login_portal_uid, + ?name: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + slug: String, + access_groups: ::Array[String], + active_theme_id: String, + agent_enabled: bool, + analytics_enabled: bool, + is_private: bool, + login_portal_uid: Scalar::Models::ScalarDocUpdateProjectParams::login_portal_uid, + name: String, + request_options: Scalar::RequestOptions + } + + type login_portal_uid = String | :"" + + module LoginPortalUID + extend Scalar::Internal::Type::Union + + def self?.variants: -> ::Array[Scalar::Models::ScalarDocUpdateProjectParams::login_portal_uid] + end + end + end +end diff --git a/sig/scalar-api-ruby/models/registry_list_all_api_documents_response.rbs b/sig/scalar_api_ruby/models/schema.rbs similarity index 51% rename from sig/scalar-api-ruby/models/registry_list_all_api_documents_response.rbs rename to sig/scalar_api_ruby/models/schema.rbs index c39623f..cdb6556 100644 --- a/sig/scalar-api-ruby/models/registry_list_all_api_documents_response.rbs +++ b/sig/scalar_api_ruby/models/schema.rbs @@ -1,19 +1,17 @@ module Scalar module Models - type registry_list_all_api_documents_response_item = + type schema = { description: String, is_private: bool, namespace: String, slug: String, - tags: top, title: String, uid: String, - version: String, - versions: ::Array[Scalar::ManagedDocVersion] + versions: ::Array[Scalar::ManagedSchemaVersion] } - class RegistryListAllAPIDocumentsResponseItem < Scalar::Internal::Type::BaseModel + class Schema < Scalar::Internal::Type::BaseModel attr_accessor description: String attr_accessor is_private: bool @@ -22,26 +20,20 @@ module Scalar attr_accessor slug: String - attr_accessor tags: top - attr_accessor title: String attr_accessor uid: String - attr_accessor version: String - - attr_accessor versions: ::Array[Scalar::ManagedDocVersion] + attr_accessor versions: ::Array[Scalar::ManagedSchemaVersion] def initialize: ( description: String, is_private: bool, namespace: String, slug: String, - tags: top, title: String, uid: String, - version: String, - versions: ::Array[Scalar::ManagedDocVersion] + versions: ::Array[Scalar::ManagedSchemaVersion] ) -> void def to_hash: -> { @@ -49,17 +41,10 @@ module Scalar is_private: bool, namespace: String, slug: String, - tags: top, title: String, uid: String, - version: String, - versions: ::Array[Scalar::ManagedDocVersion] + versions: ::Array[Scalar::ManagedSchemaVersion] } end - - type registry_list_all_api_documents_response = - ::Array[Scalar::Models::RegistryListAllAPIDocumentsResponseItem] - - RegistryListAllAPIDocumentsResponse: Scalar::Internal::Type::Converter end end diff --git a/sig/scalar-api-ruby/models/schema_create_params.rbs b/sig/scalar_api_ruby/models/schema_create_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/schema_create_params.rbs rename to sig/scalar_api_ruby/models/schema_create_params.rbs diff --git a/sig/scalar-api-ruby/models/schema_delete_params.rbs b/sig/scalar_api_ruby/models/schema_delete_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/schema_delete_params.rbs rename to sig/scalar_api_ruby/models/schema_delete_params.rbs diff --git a/sig/scalar-api-ruby/models/schema_list_params.rbs b/sig/scalar_api_ruby/models/schema_list_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/schema_list_params.rbs rename to sig/scalar_api_ruby/models/schema_list_params.rbs diff --git a/sig/scalar_api_ruby/models/schema_list_response.rbs b/sig/scalar_api_ruby/models/schema_list_response.rbs new file mode 100644 index 0000000..c3d9e8a --- /dev/null +++ b/sig/scalar_api_ruby/models/schema_list_response.rbs @@ -0,0 +1,7 @@ +module Scalar + module Models + type schema_list_response = ::Array[Scalar::Schema] + + SchemaListResponse: Scalar::Internal::Type::Converter + end +end diff --git a/sig/scalar-api-ruby/models/schema_update_params.rbs b/sig/scalar_api_ruby/models/schema_update_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/schema_update_params.rbs rename to sig/scalar_api_ruby/models/schema_update_params.rbs diff --git a/sig/scalar-api-ruby/models/schemas/access_group_create_params.rbs b/sig/scalar_api_ruby/models/schemas/access_group_create_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/schemas/access_group_create_params.rbs rename to sig/scalar_api_ruby/models/schemas/access_group_create_params.rbs diff --git a/sig/scalar-api-ruby/models/schemas/access_group_delete_params.rbs b/sig/scalar_api_ruby/models/schemas/access_group_delete_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/schemas/access_group_delete_params.rbs rename to sig/scalar_api_ruby/models/schemas/access_group_delete_params.rbs diff --git a/sig/scalar-api-ruby/models/schemas/version_create_params.rbs b/sig/scalar_api_ruby/models/schemas/version_create_params.rbs similarity index 77% rename from sig/scalar-api-ruby/models/schemas/version_create_params.rbs rename to sig/scalar_api_ruby/models/schemas/version_create_params.rbs index fa9f9e8..2116adc 100644 --- a/sig/scalar-api-ruby/models/schemas/version_create_params.rbs +++ b/sig/scalar_api_ruby/models/schemas/version_create_params.rbs @@ -2,7 +2,13 @@ module Scalar module Models module Schemas type version_create_params = - { namespace: String, slug: String, document: String, version: String } + { + namespace: String, + slug: String, + document: String, + version: String, + force: bool + } & Scalar::Internal::Type::request_parameters class VersionCreateParams < Scalar::Internal::Type::BaseModel @@ -17,11 +23,16 @@ module Scalar attr_accessor version: String + attr_reader force: bool? + + def force=: (bool) -> bool + def initialize: ( namespace: String, slug: String, document: String, version: String, + ?force: bool, ?request_options: Scalar::request_opts ) -> void @@ -30,6 +41,7 @@ module Scalar slug: String, document: String, version: String, + force: bool, request_options: Scalar::RequestOptions } end diff --git a/sig/scalar_api_ruby/models/schemas/version_create_response.rbs b/sig/scalar_api_ruby/models/schemas/version_create_response.rbs new file mode 100644 index 0000000..eca61f8 --- /dev/null +++ b/sig/scalar_api_ruby/models/schemas/version_create_response.rbs @@ -0,0 +1,15 @@ +module Scalar + module Models + module Schemas + type version_create_response = { uid: String } + + class VersionCreateResponse < Scalar::Internal::Type::BaseModel + attr_accessor uid: String + + def initialize: (uid: String) -> void + + def to_hash: -> { uid: String } + end + end + end +end diff --git a/sig/scalar-api-ruby/models/schemas/version_delete_params.rbs b/sig/scalar_api_ruby/models/schemas/version_delete_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/schemas/version_delete_params.rbs rename to sig/scalar_api_ruby/models/schemas/version_delete_params.rbs diff --git a/sig/scalar-api-ruby/models/schemas/version_retrieve_params.rbs b/sig/scalar_api_ruby/models/schemas/version_retrieve_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/schemas/version_retrieve_params.rbs rename to sig/scalar_api_ruby/models/schemas/version_retrieve_params.rbs diff --git a/sig/scalar-api-ruby/models/schemas/version_retrieve_response.rbs b/sig/scalar_api_ruby/models/schemas/version_retrieve_response.rbs similarity index 100% rename from sig/scalar-api-ruby/models/schemas/version_retrieve_response.rbs rename to sig/scalar_api_ruby/models/schemas/version_retrieve_response.rbs diff --git a/sig/scalar_api_ruby/models/sdk.rbs b/sig/scalar_api_ruby/models/sdk.rbs new file mode 100644 index 0000000..396ea78 --- /dev/null +++ b/sig/scalar_api_ruby/models/sdk.rbs @@ -0,0 +1,70 @@ +module Scalar + module Models + type sdk = + { + api_uid: String?, + current_version: String, + description: String, + is_private: bool, + namespace: String, + slug: String, + targets: ::Array[Scalar::SdkTargetSummary], + title: String, + uid: String, + versions: ::Array[Scalar::SdkVersion], + api_version: String? + } + + class Sdk < Scalar::Internal::Type::BaseModel + attr_accessor api_uid: String? + + attr_accessor current_version: String + + attr_accessor description: String + + attr_accessor is_private: bool + + attr_accessor namespace: String + + attr_accessor slug: String + + attr_accessor targets: ::Array[Scalar::SdkTargetSummary] + + attr_accessor title: String + + attr_accessor uid: String + + attr_accessor versions: ::Array[Scalar::SdkVersion] + + attr_accessor api_version: String? + + def initialize: ( + api_uid: String?, + current_version: String, + description: String, + is_private: bool, + namespace: String, + slug: String, + targets: ::Array[Scalar::SdkTargetSummary], + title: String, + uid: String, + versions: ::Array[Scalar::SdkVersion], + ?api_version: String? + ) -> void + + def to_hash: -> { + api_uid: String?, + current_version: String, + description: String, + is_private: bool, + namespace: String, + slug: String, + targets: ::Array[Scalar::SdkTargetSummary], + title: String, + uid: String, + versions: ::Array[Scalar::SdkVersion], + api_version: String? + } + end + end +end diff --git a/sig/scalar_api_ruby/models/sdk_build_params.rbs b/sig/scalar_api_ruby/models/sdk_build_params.rbs new file mode 100644 index 0000000..b719c15 --- /dev/null +++ b/sig/scalar_api_ruby/models/sdk_build_params.rbs @@ -0,0 +1,77 @@ +module Scalar + module Models + type sdk_build_params = + { + uid: String, + languages: ::Array[Scalar::Models::SdkBuildParams::language], + version: String + } + & Scalar::Internal::Type::request_parameters + + class SdkBuildParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor uid: String + + attr_reader languages: ::Array[Scalar::Models::SdkBuildParams::language]? + + def languages=: ( + ::Array[Scalar::Models::SdkBuildParams::language] + ) -> ::Array[Scalar::Models::SdkBuildParams::language] + + attr_reader version: String? + + def version=: (String) -> String + + def initialize: ( + uid: String, + ?languages: ::Array[Scalar::Models::SdkBuildParams::language], + ?version: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + uid: String, + languages: ::Array[Scalar::Models::SdkBuildParams::language], + version: String, + request_options: Scalar::RequestOptions + } + + type language = + :typescript + | :python + | :cli + | :csharp + | :java + | :ruby + | :php + | :go + | :rust + | :kotlin + | :swift + | :cpp + | :dart + + module Language + extend Scalar::Internal::Type::Enum + + TYPESCRIPT: :typescript + PYTHON: :python + CLI: :cli + CSHARP: :csharp + JAVA: :java + RUBY: :ruby + PHP: :php + GO: :go + RUST: :rust + KOTLIN: :kotlin + SWIFT: :swift + CPP: :cpp + DART: :dart + + def self?.values: -> ::Array[Scalar::Models::SdkBuildParams::language] + end + end + end +end diff --git a/sig/scalar_api_ruby/models/sdk_build_response.rbs b/sig/scalar_api_ruby/models/sdk_build_response.rbs new file mode 100644 index 0000000..ff0e401 --- /dev/null +++ b/sig/scalar_api_ruby/models/sdk_build_response.rbs @@ -0,0 +1,13 @@ +module Scalar + module Models + type sdk_build_response = { version: String } + + class SdkBuildResponse < Scalar::Internal::Type::BaseModel + attr_accessor version: String + + def initialize: (version: String) -> void + + def to_hash: -> { version: String } + end + end +end diff --git a/sig/scalar_api_ruby/models/sdk_create_params.rbs b/sig/scalar_api_ruby/models/sdk_create_params.rbs new file mode 100644 index 0000000..e8f68f3 --- /dev/null +++ b/sig/scalar_api_ruby/models/sdk_create_params.rbs @@ -0,0 +1,94 @@ +module Scalar + module Models + type sdk_create_params = + { + api_uid: String, + languages: ::Array[Scalar::Models::SdkCreateParams::language], + class_name: String, + config: String, + slug: String, + title: String + } + & Scalar::Internal::Type::request_parameters + + class SdkCreateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor api_uid: String + + attr_accessor languages: ::Array[Scalar::Models::SdkCreateParams::language] + + attr_reader class_name: String? + + def class_name=: (String) -> String + + attr_reader config: String? + + def config=: (String) -> String + + attr_reader slug: String? + + def slug=: (String) -> String + + attr_reader title: String? + + def title=: (String) -> String + + def initialize: ( + api_uid: String, + languages: ::Array[Scalar::Models::SdkCreateParams::language], + ?class_name: String, + ?config: String, + ?slug: String, + ?title: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + api_uid: String, + languages: ::Array[Scalar::Models::SdkCreateParams::language], + class_name: String, + config: String, + slug: String, + title: String, + request_options: Scalar::RequestOptions + } + + type language = + :typescript + | :python + | :cli + | :csharp + | :java + | :ruby + | :php + | :go + | :rust + | :kotlin + | :swift + | :cpp + | :dart + + module Language + extend Scalar::Internal::Type::Enum + + TYPESCRIPT: :typescript + PYTHON: :python + CLI: :cli + CSHARP: :csharp + JAVA: :java + RUBY: :ruby + PHP: :php + GO: :go + RUST: :rust + KOTLIN: :kotlin + SWIFT: :swift + CPP: :cpp + DART: :dart + + def self?.values: -> ::Array[Scalar::Models::SdkCreateParams::language] + end + end + end +end diff --git a/sig/scalar_api_ruby/models/sdk_delete_params.rbs b/sig/scalar_api_ruby/models/sdk_delete_params.rbs new file mode 100644 index 0000000..8d12e99 --- /dev/null +++ b/sig/scalar_api_ruby/models/sdk_delete_params.rbs @@ -0,0 +1,20 @@ +module Scalar + module Models + type sdk_delete_params = + { uid: String } & Scalar::Internal::Type::request_parameters + + class SdkDeleteParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor uid: String + + def initialize: ( + uid: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { uid: String, request_options: Scalar::RequestOptions } + end + end +end diff --git a/sig/scalar_api_ruby/models/sdk_list_params.rbs b/sig/scalar_api_ruby/models/sdk_list_params.rbs new file mode 100644 index 0000000..a0ad5f4 --- /dev/null +++ b/sig/scalar_api_ruby/models/sdk_list_params.rbs @@ -0,0 +1,25 @@ +module Scalar + module Models + type sdk_list_params = + { limit: Integer } & Scalar::Internal::Type::request_parameters + + class SdkListParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_reader limit: Integer? + + def limit=: (Integer) -> Integer + + def initialize: ( + ?limit: Integer, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + limit: Integer, + request_options: Scalar::RequestOptions + } + end + end +end diff --git a/sig/scalar_api_ruby/models/sdk_list_response.rbs b/sig/scalar_api_ruby/models/sdk_list_response.rbs new file mode 100644 index 0000000..574bdcc --- /dev/null +++ b/sig/scalar_api_ruby/models/sdk_list_response.rbs @@ -0,0 +1,15 @@ +module Scalar + module Models + type sdk_list_response = { data: ::Array[Scalar::Sdk], has_more: bool } + + class SdkListResponse < Scalar::Internal::Type::BaseModel + attr_accessor data: ::Array[Scalar::Sdk] + + attr_accessor has_more: bool + + def initialize: (data: ::Array[Scalar::Sdk], has_more: bool) -> void + + def to_hash: -> { data: ::Array[Scalar::Sdk], has_more: bool } + end + end +end diff --git a/sig/scalar_api_ruby/models/sdk_retrieve_params.rbs b/sig/scalar_api_ruby/models/sdk_retrieve_params.rbs new file mode 100644 index 0000000..8761391 --- /dev/null +++ b/sig/scalar_api_ruby/models/sdk_retrieve_params.rbs @@ -0,0 +1,20 @@ +module Scalar + module Models + type sdk_retrieve_params = + { uid: String } & Scalar::Internal::Type::request_parameters + + class SdkRetrieveParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor uid: String + + def initialize: ( + uid: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { uid: String, request_options: Scalar::RequestOptions } + end + end +end diff --git a/sig/scalar_api_ruby/models/sdk_target_summary.rbs b/sig/scalar_api_ruby/models/sdk_target_summary.rbs new file mode 100644 index 0000000..6895b56 --- /dev/null +++ b/sig/scalar_api_ruby/models/sdk_target_summary.rbs @@ -0,0 +1,57 @@ +module Scalar + module Models + type sdk_target_summary = + { language: Scalar::Models::SdkTargetSummary::language, slug: String } + + class SdkTargetSummary < Scalar::Internal::Type::BaseModel + attr_accessor language: Scalar::Models::SdkTargetSummary::language + + attr_accessor slug: String + + def initialize: ( + language: Scalar::Models::SdkTargetSummary::language, + slug: String + ) -> void + + def to_hash: -> { + language: Scalar::Models::SdkTargetSummary::language, + slug: String + } + + type language = + :typescript + | :python + | :cli + | :csharp + | :java + | :ruby + | :php + | :go + | :rust + | :kotlin + | :swift + | :cpp + | :dart + + module Language + extend Scalar::Internal::Type::Enum + + TYPESCRIPT: :typescript + PYTHON: :python + CLI: :cli + CSHARP: :csharp + JAVA: :java + RUBY: :ruby + PHP: :php + GO: :go + RUST: :rust + KOTLIN: :kotlin + SWIFT: :swift + CPP: :cpp + DART: :dart + + def self?.values: -> ::Array[Scalar::Models::SdkTargetSummary::language] + end + end + end +end diff --git a/sig/scalar_api_ruby/models/sdk_update_params.rbs b/sig/scalar_api_ruby/models/sdk_update_params.rbs new file mode 100644 index 0000000..d2782af --- /dev/null +++ b/sig/scalar_api_ruby/models/sdk_update_params.rbs @@ -0,0 +1,64 @@ +module Scalar + module Models + type sdk_update_params = + { + uid: String, + api_uid: String?, + api_version: String?, + config: String, + is_private: bool, + slug: String, + title: String + } + & Scalar::Internal::Type::request_parameters + + class SdkUpdateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor uid: String + + attr_accessor api_uid: String? + + attr_accessor api_version: String? + + attr_reader config: String? + + def config=: (String) -> String + + attr_reader is_private: bool? + + def is_private=: (bool) -> bool + + attr_reader slug: String? + + def slug=: (String) -> String + + attr_reader title: String? + + def title=: (String) -> String + + def initialize: ( + uid: String, + ?api_uid: String?, + ?api_version: String?, + ?config: String, + ?is_private: bool, + ?slug: String, + ?title: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + uid: String, + api_uid: String?, + api_version: String?, + config: String, + is_private: bool, + slug: String, + title: String, + request_options: Scalar::RequestOptions + } + end + end +end diff --git a/sig/scalar_api_ruby/models/sdk_version.rbs b/sig/scalar_api_ruby/models/sdk_version.rbs new file mode 100644 index 0000000..0b8f756 --- /dev/null +++ b/sig/scalar_api_ruby/models/sdk_version.rbs @@ -0,0 +1,95 @@ +module Scalar + module Models + type sdk_version = + { + api_version: String, + languages: ::Array[Scalar::Models::SdkVersion::language], + status: Scalar::Models::SdkVersion::status, + version: String, + created_at: Integer, + published_at: Integer + } + + class SdkVersion < Scalar::Internal::Type::BaseModel + attr_accessor api_version: String + + attr_accessor languages: ::Array[Scalar::Models::SdkVersion::language] + + attr_accessor status: Scalar::Models::SdkVersion::status + + attr_accessor version: String + + attr_reader created_at: Integer? + + def created_at=: (Integer) -> Integer + + attr_reader published_at: Integer? + + def published_at=: (Integer) -> Integer + + def initialize: ( + api_version: String, + languages: ::Array[Scalar::Models::SdkVersion::language], + status: Scalar::Models::SdkVersion::status, + version: String, + ?created_at: Integer, + ?published_at: Integer + ) -> void + + def to_hash: -> { + api_version: String, + languages: ::Array[Scalar::Models::SdkVersion::language], + status: Scalar::Models::SdkVersion::status, + version: String, + created_at: Integer, + published_at: Integer + } + + type language = + :typescript + | :python + | :cli + | :csharp + | :java + | :ruby + | :php + | :go + | :rust + | :kotlin + | :swift + | :cpp + | :dart + + module Language + extend Scalar::Internal::Type::Enum + + TYPESCRIPT: :typescript + PYTHON: :python + CLI: :cli + CSHARP: :csharp + JAVA: :java + RUBY: :ruby + PHP: :php + GO: :go + RUST: :rust + KOTLIN: :kotlin + SWIFT: :swift + CPP: :cpp + DART: :dart + + def self?.values: -> ::Array[Scalar::Models::SdkVersion::language] + end + + type status = :draft | :published + + module Status + extend Scalar::Internal::Type::Enum + + DRAFT: :draft + PUBLISHED: :published + + def self?.values: -> ::Array[Scalar::Models::SdkVersion::status] + end + end + end +end diff --git a/sig/scalar_api_ruby/models/sdks/repository_link_params.rbs b/sig/scalar_api_ruby/models/sdks/repository_link_params.rbs new file mode 100644 index 0000000..2857891 --- /dev/null +++ b/sig/scalar_api_ruby/models/sdks/repository_link_params.rbs @@ -0,0 +1,85 @@ +module Scalar + module Models + module Sdks + type repository_link_params = + { + uid: String, + base_branch: String, + language: Scalar::Models::Sdks::RepositoryLinkParams::language, + repository_id: Integer, + prerelease_type: String + } + & Scalar::Internal::Type::request_parameters + + class RepositoryLinkParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor uid: String + + attr_accessor base_branch: String + + attr_accessor language: Scalar::Models::Sdks::RepositoryLinkParams::language + + attr_accessor repository_id: Integer + + attr_reader prerelease_type: String? + + def prerelease_type=: (String) -> String + + def initialize: ( + uid: String, + base_branch: String, + language: Scalar::Models::Sdks::RepositoryLinkParams::language, + repository_id: Integer, + ?prerelease_type: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + uid: String, + base_branch: String, + language: Scalar::Models::Sdks::RepositoryLinkParams::language, + repository_id: Integer, + prerelease_type: String, + request_options: Scalar::RequestOptions + } + + type language = + :typescript + | :python + | :cli + | :csharp + | :java + | :ruby + | :php + | :go + | :rust + | :kotlin + | :swift + | :cpp + | :dart + + module Language + extend Scalar::Internal::Type::Enum + + TYPESCRIPT: :typescript + PYTHON: :python + CLI: :cli + CSHARP: :csharp + JAVA: :java + RUBY: :ruby + PHP: :php + GO: :go + RUST: :rust + KOTLIN: :kotlin + SWIFT: :swift + CPP: :cpp + DART: :dart + + def self?.values: -> ::Array[Scalar::Models::Sdks::RepositoryLinkParams::language] + end + end + end + end +end diff --git a/sig/scalar_api_ruby/models/sdks/repository_link_response.rbs b/sig/scalar_api_ruby/models/sdks/repository_link_response.rbs new file mode 100644 index 0000000..df6d88b --- /dev/null +++ b/sig/scalar_api_ruby/models/sdks/repository_link_response.rbs @@ -0,0 +1,17 @@ +module Scalar + module Models + module Sdks + type repository_link_response = { branch: String, repo: String } + + class RepositoryLinkResponse < Scalar::Internal::Type::BaseModel + attr_accessor branch: String + + attr_accessor repo: String + + def initialize: (branch: String, repo: String) -> void + + def to_hash: -> { branch: String, repo: String } + end + end + end +end diff --git a/sig/scalar_api_ruby/models/sdks/repository_unlink_params.rbs b/sig/scalar_api_ruby/models/sdks/repository_unlink_params.rbs new file mode 100644 index 0000000..6920178 --- /dev/null +++ b/sig/scalar_api_ruby/models/sdks/repository_unlink_params.rbs @@ -0,0 +1,68 @@ +module Scalar + module Models + module Sdks + type repository_unlink_params = + { + uid: String, + language: Scalar::Models::Sdks::RepositoryUnlinkParams::language + } + & Scalar::Internal::Type::request_parameters + + class RepositoryUnlinkParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor uid: String + + attr_accessor language: Scalar::Models::Sdks::RepositoryUnlinkParams::language + + def initialize: ( + uid: String, + language: Scalar::Models::Sdks::RepositoryUnlinkParams::language, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + uid: String, + language: Scalar::Models::Sdks::RepositoryUnlinkParams::language, + request_options: Scalar::RequestOptions + } + + type language = + :typescript + | :python + | :cli + | :csharp + | :java + | :ruby + | :php + | :go + | :rust + | :kotlin + | :swift + | :cpp + | :dart + + module Language + extend Scalar::Internal::Type::Enum + + TYPESCRIPT: :typescript + PYTHON: :python + CLI: :cli + CSHARP: :csharp + JAVA: :java + RUBY: :ruby + PHP: :php + GO: :go + RUST: :rust + KOTLIN: :kotlin + SWIFT: :swift + CPP: :cpp + DART: :dart + + def self?.values: -> ::Array[Scalar::Models::Sdks::RepositoryUnlinkParams::language] + end + end + end + end +end diff --git a/sig/scalar_api_ruby/models/sdks/repository_update_publishing_params.rbs b/sig/scalar_api_ruby/models/sdks/repository_update_publishing_params.rbs new file mode 100644 index 0000000..9c30dc6 --- /dev/null +++ b/sig/scalar_api_ruby/models/sdks/repository_update_publishing_params.rbs @@ -0,0 +1,120 @@ +module Scalar + module Models + module Sdks + type repository_update_publishing_params = + { + uid: String, + language: Scalar::Models::Sdks::RepositoryUpdatePublishingParams::language, + publish_on_merge: bool, + access: Scalar::Models::Sdks::RepositoryUpdatePublishingParams::access, + auth_method: Scalar::Models::Sdks::RepositoryUpdatePublishingParams::auth_method, + tag: String + } + & Scalar::Internal::Type::request_parameters + + class RepositoryUpdatePublishingParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor uid: String + + attr_accessor language: Scalar::Models::Sdks::RepositoryUpdatePublishingParams::language + + attr_accessor publish_on_merge: bool + + attr_reader access: Scalar::Models::Sdks::RepositoryUpdatePublishingParams::access? + + def access=: ( + Scalar::Models::Sdks::RepositoryUpdatePublishingParams::access + ) -> Scalar::Models::Sdks::RepositoryUpdatePublishingParams::access + + attr_reader auth_method: Scalar::Models::Sdks::RepositoryUpdatePublishingParams::auth_method? + + def auth_method=: ( + Scalar::Models::Sdks::RepositoryUpdatePublishingParams::auth_method + ) -> Scalar::Models::Sdks::RepositoryUpdatePublishingParams::auth_method + + attr_reader tag: String? + + def tag=: (String) -> String + + def initialize: ( + uid: String, + language: Scalar::Models::Sdks::RepositoryUpdatePublishingParams::language, + publish_on_merge: bool, + ?access: Scalar::Models::Sdks::RepositoryUpdatePublishingParams::access, + ?auth_method: Scalar::Models::Sdks::RepositoryUpdatePublishingParams::auth_method, + ?tag: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + uid: String, + language: Scalar::Models::Sdks::RepositoryUpdatePublishingParams::language, + publish_on_merge: bool, + access: Scalar::Models::Sdks::RepositoryUpdatePublishingParams::access, + auth_method: Scalar::Models::Sdks::RepositoryUpdatePublishingParams::auth_method, + tag: String, + request_options: Scalar::RequestOptions + } + + type language = + :typescript + | :python + | :cli + | :csharp + | :java + | :ruby + | :php + | :go + | :rust + | :kotlin + | :swift + | :cpp + | :dart + + module Language + extend Scalar::Internal::Type::Enum + + TYPESCRIPT: :typescript + PYTHON: :python + CLI: :cli + CSHARP: :csharp + JAVA: :java + RUBY: :ruby + PHP: :php + GO: :go + RUST: :rust + KOTLIN: :kotlin + SWIFT: :swift + CPP: :cpp + DART: :dart + + def self?.values: -> ::Array[Scalar::Models::Sdks::RepositoryUpdatePublishingParams::language] + end + + type access = :public | :restricted + + module Access + extend Scalar::Internal::Type::Enum + + PUBLIC: :public + RESTRICTED: :restricted + + def self?.values: -> ::Array[Scalar::Models::Sdks::RepositoryUpdatePublishingParams::access] + end + + type auth_method = :oidc | :"access-token" + + module AuthMethod + extend Scalar::Internal::Type::Enum + + OIDC: :oidc + ACCESS_TOKEN: :"access-token" + + def self?.values: -> ::Array[Scalar::Models::Sdks::RepositoryUpdatePublishingParams::auth_method] + end + end + end + end +end diff --git a/sig/scalar_api_ruby/models/sdks/version_create_params.rbs b/sig/scalar_api_ruby/models/sdks/version_create_params.rbs new file mode 100644 index 0000000..307df39 --- /dev/null +++ b/sig/scalar_api_ruby/models/sdks/version_create_params.rbs @@ -0,0 +1,34 @@ +module Scalar + module Models + module Sdks + type version_create_params = + { uid: String, api_version: String, version: String } + & Scalar::Internal::Type::request_parameters + + class VersionCreateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor uid: String + + attr_accessor api_version: String + + attr_accessor version: String + + def initialize: ( + uid: String, + api_version: String, + version: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + uid: String, + api_version: String, + version: String, + request_options: Scalar::RequestOptions + } + end + end + end +end diff --git a/sig/scalar_api_ruby/models/sdks/version_delete_params.rbs b/sig/scalar_api_ruby/models/sdks/version_delete_params.rbs new file mode 100644 index 0000000..e928d58 --- /dev/null +++ b/sig/scalar_api_ruby/models/sdks/version_delete_params.rbs @@ -0,0 +1,30 @@ +module Scalar + module Models + module Sdks + type version_delete_params = + { uid: String, version: String } + & Scalar::Internal::Type::request_parameters + + class VersionDeleteParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor uid: String + + attr_accessor version: String + + def initialize: ( + uid: String, + version: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + uid: String, + version: String, + request_options: Scalar::RequestOptions + } + end + end + end +end diff --git a/sig/scalar-api-ruby/models/slug.rbs b/sig/scalar_api_ruby/models/slug.rbs similarity index 100% rename from sig/scalar-api-ruby/models/slug.rbs rename to sig/scalar_api_ruby/models/slug.rbs diff --git a/sig/scalar-api-ruby/models/team_list_response.rbs b/sig/scalar_api_ruby/models/team.rbs similarity index 74% rename from sig/scalar-api-ruby/models/team_list_response.rbs rename to sig/scalar_api_ruby/models/team.rbs index b2bc21d..aa9e746 100644 --- a/sig/scalar-api-ruby/models/team_list_response.rbs +++ b/sig/scalar_api_ruby/models/team.rbs @@ -1,6 +1,6 @@ module Scalar module Models - type team_list_response_item = + type team = { name: String, slug: String, @@ -9,7 +9,7 @@ module Scalar image_uri: String } - class TeamListResponseItem < Scalar::Internal::Type::BaseModel + class Team < Scalar::Internal::Type::BaseModel attr_accessor name: String attr_accessor slug: String @@ -38,9 +38,5 @@ module Scalar image_uri: String } end - - type team_list_response = ::Array[Scalar::Models::TeamListResponseItem] - - TeamListResponse: Scalar::Internal::Type::Converter end end diff --git a/sig/scalar_api_ruby/models/team_image.rbs b/sig/scalar_api_ruby/models/team_image.rbs new file mode 100644 index 0000000..5ec6f4a --- /dev/null +++ b/sig/scalar_api_ruby/models/team_image.rbs @@ -0,0 +1,5 @@ +module Scalar + module Models + class TeamImage = String + end +end diff --git a/sig/scalar-api-ruby/models/team_list_params.rbs b/sig/scalar_api_ruby/models/team_list_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/team_list_params.rbs rename to sig/scalar_api_ruby/models/team_list_params.rbs diff --git a/sig/scalar_api_ruby/models/team_list_response.rbs b/sig/scalar_api_ruby/models/team_list_response.rbs new file mode 100644 index 0000000..97882c1 --- /dev/null +++ b/sig/scalar_api_ruby/models/team_list_response.rbs @@ -0,0 +1,7 @@ +module Scalar + module Models + type team_list_response = ::Array[Scalar::Team] + + TeamListResponse: Scalar::Internal::Type::Converter + end +end diff --git a/sig/scalar_api_ruby/models/team_name.rbs b/sig/scalar_api_ruby/models/team_name.rbs new file mode 100644 index 0000000..300f2be --- /dev/null +++ b/sig/scalar_api_ruby/models/team_name.rbs @@ -0,0 +1,5 @@ +module Scalar + module Models + class TeamName = String + end +end diff --git a/sig/scalar_api_ruby/models/team_summary.rbs b/sig/scalar_api_ruby/models/team_summary.rbs new file mode 100644 index 0000000..bce8e0d --- /dev/null +++ b/sig/scalar_api_ruby/models/team_summary.rbs @@ -0,0 +1,19 @@ +module Scalar + module Models + type team_summary = { name: String, uid: String, image_uri: String } + + class TeamSummary < Scalar::Internal::Type::BaseModel + attr_accessor name: String + + attr_accessor uid: String + + attr_reader image_uri: String? + + def image_uri=: (String) -> String + + def initialize: (name: String, uid: String, ?image_uri: String) -> void + + def to_hash: -> { name: String, uid: String, image_uri: String } + end + end +end diff --git a/sig/scalar_api_ruby/models/teams/email.rbs b/sig/scalar_api_ruby/models/teams/email.rbs new file mode 100644 index 0000000..1e47a34 --- /dev/null +++ b/sig/scalar_api_ruby/models/teams/email.rbs @@ -0,0 +1,7 @@ +module Scalar + module Models + module Teams + class Email = String + end + end +end diff --git a/sig/scalar_api_ruby/models/teams/invite_cancel_params.rbs b/sig/scalar_api_ruby/models/teams/invite_cancel_params.rbs new file mode 100644 index 0000000..90d6cb1 --- /dev/null +++ b/sig/scalar_api_ruby/models/teams/invite_cancel_params.rbs @@ -0,0 +1,22 @@ +module Scalar + module Models + module Teams + type invite_cancel_params = + { uid: String } & Scalar::Internal::Type::request_parameters + + class InviteCancelParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor uid: String + + def initialize: ( + uid: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { uid: String, request_options: Scalar::RequestOptions } + end + end + end +end diff --git a/sig/scalar_api_ruby/models/teams/invite_member_params.rbs b/sig/scalar_api_ruby/models/teams/invite_member_params.rbs new file mode 100644 index 0000000..f354476 --- /dev/null +++ b/sig/scalar_api_ruby/models/teams/invite_member_params.rbs @@ -0,0 +1,30 @@ +module Scalar + module Models + module Teams + type invite_member_params = + { email: String, role: Scalar::Models::Teams::role } + & Scalar::Internal::Type::request_parameters + + class InviteMemberParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor email: String + + attr_accessor role: Scalar::Models::Teams::role + + def initialize: ( + email: String, + role: Scalar::Models::Teams::role, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + email: String, + role: Scalar::Models::Teams::role, + request_options: Scalar::RequestOptions + } + end + end + end +end diff --git a/sig/scalar_api_ruby/models/teams/invite_resend_params.rbs b/sig/scalar_api_ruby/models/teams/invite_resend_params.rbs new file mode 100644 index 0000000..e5e97ad --- /dev/null +++ b/sig/scalar_api_ruby/models/teams/invite_resend_params.rbs @@ -0,0 +1,22 @@ +module Scalar + module Models + module Teams + type invite_resend_params = + { uid: String } & Scalar::Internal::Type::request_parameters + + class InviteResendParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor uid: String + + def initialize: ( + uid: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { uid: String, request_options: Scalar::RequestOptions } + end + end + end +end diff --git a/sig/scalar_api_ruby/models/teams/member_delete_params.rbs b/sig/scalar_api_ruby/models/teams/member_delete_params.rbs new file mode 100644 index 0000000..4e3b384 --- /dev/null +++ b/sig/scalar_api_ruby/models/teams/member_delete_params.rbs @@ -0,0 +1,22 @@ +module Scalar + module Models + module Teams + type member_delete_params = + { uid: String } & Scalar::Internal::Type::request_parameters + + class MemberDeleteParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor uid: String + + def initialize: ( + uid: String, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { uid: String, request_options: Scalar::RequestOptions } + end + end + end +end diff --git a/sig/scalar_api_ruby/models/teams/member_list_params.rbs b/sig/scalar_api_ruby/models/teams/member_list_params.rbs new file mode 100644 index 0000000..6afd8b4 --- /dev/null +++ b/sig/scalar_api_ruby/models/teams/member_list_params.rbs @@ -0,0 +1,17 @@ +module Scalar + module Models + module Teams + type member_list_params = + { } & Scalar::Internal::Type::request_parameters + + class MemberListParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + def initialize: (?request_options: Scalar::request_opts) -> void + + def to_hash: -> { request_options: Scalar::RequestOptions } + end + end + end +end diff --git a/sig/scalar_api_ruby/models/teams/member_list_response.rbs b/sig/scalar_api_ruby/models/teams/member_list_response.rbs new file mode 100644 index 0000000..41c12cd --- /dev/null +++ b/sig/scalar_api_ruby/models/teams/member_list_response.rbs @@ -0,0 +1,27 @@ +module Scalar + module Models + module Teams + type member_list_response = + { + members: ::Array[Scalar::Teams::TeamMember], + pending_invites: ::Array[Scalar::Teams::TeamInvite] + } + + class MemberListResponse < Scalar::Internal::Type::BaseModel + attr_accessor members: ::Array[Scalar::Teams::TeamMember] + + attr_accessor pending_invites: ::Array[Scalar::Teams::TeamInvite] + + def initialize: ( + members: ::Array[Scalar::Teams::TeamMember], + pending_invites: ::Array[Scalar::Teams::TeamInvite] + ) -> void + + def to_hash: -> { + members: ::Array[Scalar::Teams::TeamMember], + pending_invites: ::Array[Scalar::Teams::TeamInvite] + } + end + end + end +end diff --git a/sig/scalar_api_ruby/models/teams/member_update_params.rbs b/sig/scalar_api_ruby/models/teams/member_update_params.rbs new file mode 100644 index 0000000..d86682a --- /dev/null +++ b/sig/scalar_api_ruby/models/teams/member_update_params.rbs @@ -0,0 +1,30 @@ +module Scalar + module Models + module Teams + type member_update_params = + { uid: String, role: Scalar::Models::Teams::role } + & Scalar::Internal::Type::request_parameters + + class MemberUpdateParams < Scalar::Internal::Type::BaseModel + extend Scalar::Internal::Type::RequestParameters::Converter + include Scalar::Internal::Type::RequestParameters + + attr_accessor uid: String + + attr_accessor role: Scalar::Models::Teams::role + + def initialize: ( + uid: String, + role: Scalar::Models::Teams::role, + ?request_options: Scalar::request_opts + ) -> void + + def to_hash: -> { + uid: String, + role: Scalar::Models::Teams::role, + request_options: Scalar::RequestOptions + } + end + end + end +end diff --git a/sig/scalar_api_ruby/models/teams/role.rbs b/sig/scalar_api_ruby/models/teams/role.rbs new file mode 100644 index 0000000..66a25c0 --- /dev/null +++ b/sig/scalar_api_ruby/models/teams/role.rbs @@ -0,0 +1,18 @@ +module Scalar + module Models + module Teams + type role = :owner | :admin | :editor | :viewer + + module Role + extend Scalar::Internal::Type::Enum + + OWNER: :owner + ADMIN: :admin + EDITOR: :editor + VIEWER: :viewer + + def self?.values: -> ::Array[Scalar::Models::Teams::role] + end + end + end +end diff --git a/sig/scalar_api_ruby/models/teams/team_invite.rbs b/sig/scalar_api_ruby/models/teams/team_invite.rbs new file mode 100644 index 0000000..41b6767 --- /dev/null +++ b/sig/scalar_api_ruby/models/teams/team_invite.rbs @@ -0,0 +1,41 @@ +module Scalar + module Models + class TeamInvite = Teams::TeamInvite + + module Teams + type team_invite = + { + email: String, + role: Scalar::Models::Teams::role, + uid: String, + expires: Float + } + + class TeamInvite < Scalar::Internal::Type::BaseModel + attr_accessor email: String + + attr_accessor role: Scalar::Models::Teams::role + + attr_accessor uid: String + + attr_reader expires: Float? + + def expires=: (Float) -> Float + + def initialize: ( + email: String, + role: Scalar::Models::Teams::role, + uid: String, + ?expires: Float + ) -> void + + def to_hash: -> { + email: String, + role: Scalar::Models::Teams::role, + uid: String, + expires: Float + } + end + end + end +end diff --git a/sig/scalar_api_ruby/models/teams/team_member.rbs b/sig/scalar_api_ruby/models/teams/team_member.rbs new file mode 100644 index 0000000..5792fda --- /dev/null +++ b/sig/scalar_api_ruby/models/teams/team_member.rbs @@ -0,0 +1,41 @@ +module Scalar + module Models + class TeamMember = Teams::TeamMember + + module Teams + type team_member = + { + display_name: String, + role: Scalar::Models::Teams::role, + uid: String, + image_uri: String + } + + class TeamMember < Scalar::Internal::Type::BaseModel + attr_accessor display_name: String + + attr_accessor role: Scalar::Models::Teams::role + + attr_accessor uid: String + + attr_reader image_uri: String? + + def image_uri=: (String) -> String + + def initialize: ( + display_name: String, + role: Scalar::Models::Teams::role, + uid: String, + ?image_uri: String + ) -> void + + def to_hash: -> { + display_name: String, + role: Scalar::Models::Teams::role, + uid: String, + image_uri: String + } + end + end + end +end diff --git a/sig/scalar-api-ruby/models/theme_list_response.rbs b/sig/scalar_api_ruby/models/theme.rbs similarity index 68% rename from sig/scalar-api-ruby/models/theme_list_response.rbs rename to sig/scalar_api_ruby/models/theme.rbs index 85f4f66..b5a91fb 100644 --- a/sig/scalar-api-ruby/models/theme_list_response.rbs +++ b/sig/scalar_api_ruby/models/theme.rbs @@ -1,9 +1,9 @@ module Scalar module Models - type theme_list_response_item = + type theme = { description: String, name: String, slug: String, uid: String } - class ThemeListResponseItem < Scalar::Internal::Type::BaseModel + class Theme < Scalar::Internal::Type::BaseModel attr_accessor description: String attr_accessor name: String @@ -26,9 +26,5 @@ module Scalar uid: String } end - - type theme_list_response = ::Array[Scalar::Models::ThemeListResponseItem] - - ThemeListResponse: Scalar::Internal::Type::Converter end end diff --git a/sig/scalar-api-ruby/models/theme_create_params.rbs b/sig/scalar_api_ruby/models/theme_create_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/theme_create_params.rbs rename to sig/scalar_api_ruby/models/theme_create_params.rbs diff --git a/sig/scalar-api-ruby/models/theme_delete_params.rbs b/sig/scalar_api_ruby/models/theme_delete_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/theme_delete_params.rbs rename to sig/scalar_api_ruby/models/theme_delete_params.rbs diff --git a/sig/scalar-api-ruby/models/theme_list_params.rbs b/sig/scalar_api_ruby/models/theme_list_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/theme_list_params.rbs rename to sig/scalar_api_ruby/models/theme_list_params.rbs diff --git a/sig/scalar_api_ruby/models/theme_list_response.rbs b/sig/scalar_api_ruby/models/theme_list_response.rbs new file mode 100644 index 0000000..29f1f18 --- /dev/null +++ b/sig/scalar_api_ruby/models/theme_list_response.rbs @@ -0,0 +1,7 @@ +module Scalar + module Models + type theme_list_response = ::Array[Scalar::Theme] + + ThemeListResponse: Scalar::Internal::Type::Converter + end +end diff --git a/sig/scalar-api-ruby/models/theme_replace_document_params.rbs b/sig/scalar_api_ruby/models/theme_replace_document_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/theme_replace_document_params.rbs rename to sig/scalar_api_ruby/models/theme_replace_document_params.rbs diff --git a/sig/scalar-api-ruby/models/theme_retrieve_params.rbs b/sig/scalar_api_ruby/models/theme_retrieve_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/theme_retrieve_params.rbs rename to sig/scalar_api_ruby/models/theme_retrieve_params.rbs diff --git a/sig/scalar-api-ruby/models/theme_retrieve_response.rbs b/sig/scalar_api_ruby/models/theme_retrieve_response.rbs similarity index 100% rename from sig/scalar-api-ruby/models/theme_retrieve_response.rbs rename to sig/scalar_api_ruby/models/theme_retrieve_response.rbs diff --git a/sig/scalar-api-ruby/models/theme_update_params.rbs b/sig/scalar_api_ruby/models/theme_update_params.rbs similarity index 100% rename from sig/scalar-api-ruby/models/theme_update_params.rbs rename to sig/scalar_api_ruby/models/theme_update_params.rbs diff --git a/sig/scalar-api-ruby/models/timestamp.rbs b/sig/scalar_api_ruby/models/timestamp.rbs similarity index 100% rename from sig/scalar-api-ruby/models/timestamp.rbs rename to sig/scalar_api_ruby/models/timestamp.rbs diff --git a/sig/scalar-api-ruby/models/uid.rbs b/sig/scalar_api_ruby/models/uid.rbs similarity index 100% rename from sig/scalar-api-ruby/models/uid.rbs rename to sig/scalar_api_ruby/models/uid.rbs diff --git a/sig/scalar-api-ruby/models/authentication_list_current_user_response.rbs b/sig/scalar_api_ruby/models/user.rbs similarity index 51% rename from sig/scalar-api-ruby/models/authentication_list_current_user_response.rbs rename to sig/scalar_api_ruby/models/user.rbs index 1f54a50..ba4b289 100644 --- a/sig/scalar-api-ruby/models/authentication_list_current_user_response.rbs +++ b/sig/scalar_api_ruby/models/user.rbs @@ -1,18 +1,18 @@ module Scalar module Models - type authentication_list_current_user_response = + type user = { active_team_id: String?, created_at: Integer, email: String, has_github: bool, - teams: ::Array[Scalar::Models::AuthenticationListCurrentUserResponse::Team], + teams: ::Array[Scalar::TeamSummary], uid: String, updated_at: Integer, theme: String } - class AuthenticationListCurrentUserResponse < Scalar::Internal::Type::BaseModel + class User < Scalar::Internal::Type::BaseModel attr_accessor active_team_id: String? attr_accessor created_at: Integer @@ -21,7 +21,7 @@ module Scalar attr_accessor has_github: bool - attr_accessor teams: ::Array[Scalar::Models::AuthenticationListCurrentUserResponse::Team] + attr_accessor teams: ::Array[Scalar::TeamSummary] attr_accessor uid: String @@ -36,7 +36,7 @@ module Scalar created_at: Integer, email: String, has_github: bool, - teams: ::Array[Scalar::Models::AuthenticationListCurrentUserResponse::Team], + teams: ::Array[Scalar::TeamSummary], uid: String, updated_at: Integer, ?theme: String @@ -47,27 +47,11 @@ module Scalar created_at: Integer, email: String, has_github: bool, - teams: ::Array[Scalar::Models::AuthenticationListCurrentUserResponse::Team], + teams: ::Array[Scalar::TeamSummary], uid: String, updated_at: Integer, theme: String } - - type team = { name: String, uid: String, image_uri: String } - - class Team < Scalar::Internal::Type::BaseModel - attr_accessor name: String - - attr_accessor uid: String - - attr_reader image_uri: String? - - def image_uri=: (String) -> String - - def initialize: (name: String, uid: String, ?image_uri: String) -> void - - def to_hash: -> { name: String, uid: String, image_uri: String } - end end end end diff --git a/sig/scalar-api-ruby/models/version.rbs b/sig/scalar_api_ruby/models/version.rbs similarity index 100% rename from sig/scalar-api-ruby/models/version.rbs rename to sig/scalar_api_ruby/models/version.rbs diff --git a/sig/scalar-api-ruby/request_options.rbs b/sig/scalar_api_ruby/request_options.rbs similarity index 100% rename from sig/scalar-api-ruby/request_options.rbs rename to sig/scalar_api_ruby/request_options.rbs diff --git a/sig/scalar_api_ruby/resources/access_groups.rbs b/sig/scalar_api_ruby/resources/access_groups.rbs new file mode 100644 index 0000000..8908807 --- /dev/null +++ b/sig/scalar_api_ruby/resources/access_groups.rbs @@ -0,0 +1,30 @@ +module Scalar + module Resources + class AccessGroups + attr_reader domains: Scalar::Resources::AccessGroups::Domains + + def create: ( + ?allowed_domains: String, + ?name: String, + ?slug: String, + ?request_options: Scalar::request_opts + ) -> Scalar::Models::AccessGroupCreateResponse + + def retrieve: ( + String slug, + ?request_options: Scalar::request_opts + ) -> Scalar::Models::AccessGroupRetrieveResponse + + def update: ( + String path_slug, + ?name: String, + ?body_slug: String, + ?request_options: Scalar::request_opts + ) -> top + + def delete: (String slug, ?request_options: Scalar::request_opts) -> top + + def initialize: (client: Scalar::Client) -> void + end + end +end diff --git a/sig/scalar_api_ruby/resources/access_groups/domains.rbs b/sig/scalar_api_ruby/resources/access_groups/domains.rbs new file mode 100644 index 0000000..1c0dccc --- /dev/null +++ b/sig/scalar_api_ruby/resources/access_groups/domains.rbs @@ -0,0 +1,21 @@ +module Scalar + module Resources + class AccessGroups + class Domains + def create: ( + String slug, + domain: String, + ?request_options: Scalar::request_opts + ) -> top + + def delete: ( + String slug, + domain: String, + ?request_options: Scalar::request_opts + ) -> top + + def initialize: (client: Scalar::Client) -> void + end + end + end +end diff --git a/sig/scalar-api-ruby/resources/authentication.rbs b/sig/scalar_api_ruby/resources/authentication.rbs similarity index 85% rename from sig/scalar-api-ruby/resources/authentication.rbs rename to sig/scalar_api_ruby/resources/authentication.rbs index b4adf04..7e36a2f 100644 --- a/sig/scalar-api-ruby/resources/authentication.rbs +++ b/sig/scalar_api_ruby/resources/authentication.rbs @@ -8,7 +8,7 @@ module Scalar def list_current_user: ( ?request_options: Scalar::request_opts - ) -> Scalar::Models::AuthenticationListCurrentUserResponse + ) -> Scalar::User def initialize: (client: Scalar::Client) -> void end diff --git a/sig/scalar-api-ruby/resources/login_portals.rbs b/sig/scalar_api_ruby/resources/login_portals.rbs similarity index 92% rename from sig/scalar-api-ruby/resources/login_portals.rbs rename to sig/scalar_api_ruby/resources/login_portals.rbs index 4b477f4..5c97900 100644 --- a/sig/scalar-api-ruby/resources/login_portals.rbs +++ b/sig/scalar_api_ruby/resources/login_portals.rbs @@ -22,7 +22,7 @@ module Scalar def list: ( ?request_options: Scalar::request_opts - ) -> ::Array[Scalar::Models::LoginPortalListResponseItem] + ) -> ::Array[Scalar::LoginPortal] def delete: (String slug, ?request_options: Scalar::request_opts) -> top diff --git a/sig/scalar_api_ruby/resources/mcp.rbs b/sig/scalar_api_ruby/resources/mcp.rbs new file mode 100644 index 0000000..e0b4b08 --- /dev/null +++ b/sig/scalar_api_ruby/resources/mcp.rbs @@ -0,0 +1,9 @@ +module Scalar + module Resources + class Mcp + attr_reader servers: Scalar::Resources::Mcp::Servers + + def initialize: (client: Scalar::Client) -> void + end + end +end diff --git a/sig/scalar_api_ruby/resources/mcp/servers.rbs b/sig/scalar_api_ruby/resources/mcp/servers.rbs new file mode 100644 index 0000000..c8cfa8e --- /dev/null +++ b/sig/scalar_api_ruby/resources/mcp/servers.rbs @@ -0,0 +1,40 @@ +module Scalar + module Resources + class Mcp + class Servers + attr_reader installations: Scalar::Resources::Mcp::Servers::Installations + + def create: ( + name: String, + ?project_uids: ::Array[String], + ?slug: String, + ?version_uids: ::Array[String], + ?request_options: Scalar::request_opts + ) -> Scalar::Models::Mcp::ServerCreateResponse + + def retrieve: ( + String id, + ?request_options: Scalar::request_opts + ) -> Scalar::Mcp::McpServer + + def update: ( + String id, + ?auto_add_operations: bool, + ?docs_pages: ::Array[String], + ?name: String, + ?operations: ::Array[String], + ?slug: String, + ?request_options: Scalar::request_opts + ) -> Scalar::Mcp::McpServer + + def list: ( + ?request_options: Scalar::request_opts + ) -> ::Array[Scalar::Mcp::McpServer] + + def delete: (String id, ?request_options: Scalar::request_opts) -> top + + def initialize: (client: Scalar::Client) -> void + end + end + end +end diff --git a/sig/scalar_api_ruby/resources/mcp/servers/installations.rbs b/sig/scalar_api_ruby/resources/mcp/servers/installations.rbs new file mode 100644 index 0000000..494a7e2 --- /dev/null +++ b/sig/scalar_api_ruby/resources/mcp/servers/installations.rbs @@ -0,0 +1,62 @@ +module Scalar + module Resources + class Mcp + class Servers + class Installations + def create: ( + String id, + document_auth: ::Hash[Symbol, top], + name: String, + ?slug: String, + ?request_options: Scalar::request_opts + ) -> Scalar::Mcp::McpInstallation + + def retrieve: ( + String installation_id, + id: String, + ?request_options: Scalar::request_opts + ) -> Scalar::Mcp::McpInstallation + + def update: ( + String installation_id, + id: String, + ?document_auth: ::Hash[Symbol, top], + ?is_private: bool, + ?login_portal_uid: String?, + ?mcp_version: String?, + ?name: String, + ?slug: String, + ?request_options: Scalar::request_opts + ) -> Scalar::Mcp::McpInstallation + + def list: ( + String id, + ?request_options: Scalar::request_opts + ) -> ::Array[Scalar::Mcp::Servers::McpInstallationListItem] + + def delete: ( + String installation_id, + id: String, + ?request_options: Scalar::request_opts + ) -> top + + def create_access_group: ( + String installation_id, + id: String, + access_group_uid: String, + ?request_options: Scalar::request_opts + ) -> top + + def delete_access_group: ( + String installation_id, + id: String, + access_group_uid: String, + ?request_options: Scalar::request_opts + ) -> top + + def initialize: (client: Scalar::Client) -> void + end + end + end + end +end diff --git a/sig/scalar-api-ruby/resources/namespaces.rbs b/sig/scalar_api_ruby/resources/namespaces.rbs similarity index 100% rename from sig/scalar-api-ruby/resources/namespaces.rbs rename to sig/scalar_api_ruby/resources/namespaces.rbs diff --git a/sig/scalar-api-ruby/resources/registry.rbs b/sig/scalar_api_ruby/resources/registry.rbs similarity index 91% rename from sig/scalar-api-ruby/resources/registry.rbs rename to sig/scalar_api_ruby/resources/registry.rbs index 038f041..d635aed 100644 --- a/sig/scalar-api-ruby/resources/registry.rbs +++ b/sig/scalar_api_ruby/resources/registry.rbs @@ -26,7 +26,6 @@ module Scalar document: String, version: String, ?force: bool, - ?last_known_version_sha: String, ?request_options: Scalar::request_opts ) -> Scalar::ManagedDocVersion @@ -52,7 +51,7 @@ module Scalar def list_all_api_documents: ( ?request_options: Scalar::request_opts - ) -> ::Array[Scalar::Models::RegistryListAllAPIDocumentsResponseItem] + ) -> ::Array[Scalar::APIDocument] def list_api_document_version_metadata: ( String semver, @@ -64,7 +63,7 @@ module Scalar def list_api_documents: ( String namespace, ?request_options: Scalar::request_opts - ) -> ::Array[Scalar::Models::RegistryListAPIDocumentsResponseItem] + ) -> ::Array[Scalar::APIDocument] def retrieve_api_document_version: ( String semver, @@ -88,7 +87,6 @@ module Scalar namespace: String, slug: String, document: String, - ?last_known_version_sha: String, ?request_options: Scalar::request_opts ) -> Scalar::Models::RegistryUpdateAPIDocumentVersionResponse diff --git a/sig/scalar-api-ruby/resources/rules.rbs b/sig/scalar_api_ruby/resources/rules.rbs similarity index 95% rename from sig/scalar-api-ruby/resources/rules.rbs rename to sig/scalar_api_ruby/resources/rules.rbs index 2c6c627..7e5dac3 100644 --- a/sig/scalar-api-ruby/resources/rules.rbs +++ b/sig/scalar_api_ruby/resources/rules.rbs @@ -34,7 +34,7 @@ module Scalar def list_rulesets: ( String namespace, ?request_options: Scalar::request_opts - ) -> ::Array[Scalar::Models::RuleListRulesetsResponseItem] + ) -> ::Array[Scalar::Rule] def retrieve_ruleset_document: ( String slug, diff --git a/sig/scalar_api_ruby/resources/scalar_docs.rbs b/sig/scalar_api_ruby/resources/scalar_docs.rbs new file mode 100644 index 0000000..6113254 --- /dev/null +++ b/sig/scalar_api_ruby/resources/scalar_docs.rbs @@ -0,0 +1,97 @@ +module Scalar + module Resources + class ScalarDocs + def create_guide: ( + allowed_domains: ::Array[String], + allowed_users: ::Array[String], + is_private: bool, + name: String, + ?slug: String, + ?request_options: Scalar::request_opts + ) -> Scalar::Models::ScalarDocCreateGuideResponse + + def create_project: ( + name: String, + provider: Scalar::Models::ScalarDocCreateProjectParams::provider, + ?bitbucket_repository: Scalar::ScalarDocCreateProjectParams::BitbucketRepository, + ?blank: bool, + ?github_repository: Scalar::ScalarDocCreateProjectParams::GithubRepository, + ?is_private: bool, + ?slug: String, + ?request_options: Scalar::request_opts + ) -> Scalar::DocsProject + + def delete_project: ( + String slug, + ?request_options: Scalar::request_opts + ) -> top + + def list_guides: ( + ?request_options: Scalar::request_opts + ) -> ::Array[Scalar::GithubProject] + + def list_project_config: ( + String slug, + ?ref: String, + ?request_options: Scalar::request_opts + ) -> Scalar::Models::ScalarDocListProjectConfigResponse + + def list_project_domain: ( + String slug, + ?request_options: Scalar::request_opts + ) -> Scalar::Models::ScalarDocListProjectDomainResponse + + def list_project_domain_status: ( + String slug, + ?request_options: Scalar::request_opts + ) -> Scalar::Models::ScalarDocListProjectDomainStatusResponse + + def list_projects: ( + ?limit: Integer, + ?request_options: Scalar::request_opts + ) -> Scalar::Models::ScalarDocListProjectsResponse + + def publish_guide: ( + String slug, + ?request_options: Scalar::request_opts + ) -> Scalar::Models::ScalarDocPublishGuideResponse + + def publish_project: ( + String slug, + ?commit_sha: String, + ?config_path: String, + ?preview: bool, + ?request_options: Scalar::request_opts + ) -> Scalar::Models::ScalarDocPublishProjectResponse + + def retrieve_project: ( + String slug, + ?request_options: Scalar::request_opts + ) -> Scalar::DocsProject + + def update_project: ( + String slug, + ?access_groups: ::Array[String], + ?active_theme_id: String, + ?agent_enabled: bool, + ?analytics_enabled: bool, + ?is_private: bool, + ?login_portal_uid: Scalar::Models::ScalarDocUpdateProjectParams::login_portal_uid, + ?name: String, + ?request_options: Scalar::request_opts + ) -> top + + def update_project_config: ( + String slug, + content: String, + ?base_token: String, + ?message: String, + ?path: String, + ?ref: String, + ?request_options: Scalar::request_opts + ) -> Scalar::Models::ScalarDocUpdateProjectConfigResponse + + def initialize: (client: Scalar::Client) -> void + end + end +end diff --git a/sig/scalar-api-ruby/resources/schemas.rbs b/sig/scalar_api_ruby/resources/schemas.rbs similarity index 94% rename from sig/scalar-api-ruby/resources/schemas.rbs rename to sig/scalar_api_ruby/resources/schemas.rbs index acd6892..e44e87e 100644 --- a/sig/scalar-api-ruby/resources/schemas.rbs +++ b/sig/scalar_api_ruby/resources/schemas.rbs @@ -28,7 +28,7 @@ module Scalar def list: ( String namespace, ?request_options: Scalar::request_opts - ) -> ::Array[Scalar::Models::SchemaListResponseItem] + ) -> ::Array[Scalar::Schema] def delete: ( String slug, diff --git a/sig/scalar-api-ruby/resources/schemas/access_group.rbs b/sig/scalar_api_ruby/resources/schemas/access_group.rbs similarity index 100% rename from sig/scalar-api-ruby/resources/schemas/access_group.rbs rename to sig/scalar_api_ruby/resources/schemas/access_group.rbs diff --git a/sig/scalar-api-ruby/resources/schemas/version.rbs b/sig/scalar_api_ruby/resources/schemas/version.rbs similarity index 88% rename from sig/scalar-api-ruby/resources/schemas/version.rbs rename to sig/scalar_api_ruby/resources/schemas/version.rbs index 817fbac..53a6566 100644 --- a/sig/scalar-api-ruby/resources/schemas/version.rbs +++ b/sig/scalar_api_ruby/resources/schemas/version.rbs @@ -7,8 +7,9 @@ module Scalar namespace: String, document: String, version: String, + ?force: bool, ?request_options: Scalar::request_opts - ) -> Scalar::UID + ) -> Scalar::Models::Schemas::VersionCreateResponse def retrieve: ( String semver, diff --git a/sig/scalar_api_ruby/resources/sdks.rbs b/sig/scalar_api_ruby/resources/sdks.rbs new file mode 100644 index 0000000..99253e0 --- /dev/null +++ b/sig/scalar_api_ruby/resources/sdks.rbs @@ -0,0 +1,51 @@ +module Scalar + module Resources + class Sdks + attr_reader versions: Scalar::Resources::Sdks::Versions + + attr_reader repositories: Scalar::Resources::Sdks::Repositories + + def create: ( + api_uid: String, + languages: ::Array[Scalar::Models::SdkCreateParams::language], + ?class_name: String, + ?config: String, + ?slug: String, + ?title: String, + ?request_options: Scalar::request_opts + ) -> Scalar::UID + + def retrieve: ( + String uid, + ?request_options: Scalar::request_opts + ) -> Scalar::Sdk + + def update: ( + String uid, + ?api_uid: String?, + ?api_version: String?, + ?config: String, + ?is_private: bool, + ?slug: String, + ?title: String, + ?request_options: Scalar::request_opts + ) -> top + + def list: ( + ?limit: Integer, + ?request_options: Scalar::request_opts + ) -> Scalar::Models::SdkListResponse + + def delete: (String uid, ?request_options: Scalar::request_opts) -> top + + def build: ( + String uid, + ?languages: ::Array[Scalar::Models::SdkBuildParams::language], + ?version: String, + ?request_options: Scalar::request_opts + ) -> Scalar::Models::SdkBuildResponse + + def initialize: (client: Scalar::Client) -> void + end + end +end diff --git a/sig/scalar_api_ruby/resources/sdks/repositories.rbs b/sig/scalar_api_ruby/resources/sdks/repositories.rbs new file mode 100644 index 0000000..9c11f96 --- /dev/null +++ b/sig/scalar_api_ruby/resources/sdks/repositories.rbs @@ -0,0 +1,34 @@ +module Scalar + module Resources + class Sdks + class Repositories + def link: ( + String uid, + base_branch: String, + language: Scalar::Models::Sdks::RepositoryLinkParams::language, + repository_id: Integer, + ?prerelease_type: String, + ?request_options: Scalar::request_opts + ) -> Scalar::Models::Sdks::RepositoryLinkResponse + + def unlink: ( + Scalar::Models::Sdks::RepositoryUnlinkParams::language language, + uid: String, + ?request_options: Scalar::request_opts + ) -> top + + def update_publishing: ( + Scalar::Models::Sdks::RepositoryUpdatePublishingParams::language language, + uid: String, + publish_on_merge: bool, + ?access: Scalar::Models::Sdks::RepositoryUpdatePublishingParams::access, + ?auth_method: Scalar::Models::Sdks::RepositoryUpdatePublishingParams::auth_method, + ?tag: String, + ?request_options: Scalar::request_opts + ) -> top + + def initialize: (client: Scalar::Client) -> void + end + end + end +end diff --git a/sig/scalar_api_ruby/resources/sdks/versions.rbs b/sig/scalar_api_ruby/resources/sdks/versions.rbs new file mode 100644 index 0000000..b9fb2f2 --- /dev/null +++ b/sig/scalar_api_ruby/resources/sdks/versions.rbs @@ -0,0 +1,22 @@ +module Scalar + module Resources + class Sdks + class Versions + def create: ( + String uid, + api_version: String, + version: String, + ?request_options: Scalar::request_opts + ) -> top + + def delete: ( + String version, + uid: String, + ?request_options: Scalar::request_opts + ) -> top + + def initialize: (client: Scalar::Client) -> void + end + end + end +end diff --git a/sig/scalar-api-ruby/resources/teams.rbs b/sig/scalar_api_ruby/resources/teams.rbs similarity index 54% rename from sig/scalar-api-ruby/resources/teams.rbs rename to sig/scalar_api_ruby/resources/teams.rbs index 8fcaae5..76555b1 100644 --- a/sig/scalar-api-ruby/resources/teams.rbs +++ b/sig/scalar_api_ruby/resources/teams.rbs @@ -1,9 +1,13 @@ module Scalar module Resources class Teams + attr_reader members: Scalar::Resources::Teams::Members + + attr_reader invites: Scalar::Resources::Teams::Invites + def list: ( ?request_options: Scalar::request_opts - ) -> ::Array[Scalar::Models::TeamListResponseItem] + ) -> ::Array[Scalar::Team] def initialize: (client: Scalar::Client) -> void end diff --git a/sig/scalar_api_ruby/resources/teams/invites.rbs b/sig/scalar_api_ruby/resources/teams/invites.rbs new file mode 100644 index 0000000..6b23e60 --- /dev/null +++ b/sig/scalar_api_ruby/resources/teams/invites.rbs @@ -0,0 +1,19 @@ +module Scalar + module Resources + class Teams + class Invites + def cancel: (String uid, ?request_options: Scalar::request_opts) -> top + + def member: ( + email: String, + role: Scalar::Models::Teams::role, + ?request_options: Scalar::request_opts + ) -> top + + def resend: (String uid, ?request_options: Scalar::request_opts) -> top + + def initialize: (client: Scalar::Client) -> void + end + end + end +end diff --git a/sig/scalar_api_ruby/resources/teams/members.rbs b/sig/scalar_api_ruby/resources/teams/members.rbs new file mode 100644 index 0000000..87181b2 --- /dev/null +++ b/sig/scalar_api_ruby/resources/teams/members.rbs @@ -0,0 +1,21 @@ +module Scalar + module Resources + class Teams + class Members + def update: ( + String uid, + role: Scalar::Models::Teams::role, + ?request_options: Scalar::request_opts + ) -> top + + def list: ( + ?request_options: Scalar::request_opts + ) -> Scalar::Models::Teams::MemberListResponse + + def delete: (String uid, ?request_options: Scalar::request_opts) -> top + + def initialize: (client: Scalar::Client) -> void + end + end + end +end diff --git a/sig/scalar-api-ruby/resources/themes.rbs b/sig/scalar_api_ruby/resources/themes.rbs similarity index 93% rename from sig/scalar-api-ruby/resources/themes.rbs rename to sig/scalar_api_ruby/resources/themes.rbs index de89cff..f84fa0e 100644 --- a/sig/scalar-api-ruby/resources/themes.rbs +++ b/sig/scalar_api_ruby/resources/themes.rbs @@ -23,7 +23,7 @@ module Scalar def list: ( ?request_options: Scalar::request_opts - ) -> ::Array[Scalar::Models::ThemeListResponseItem] + ) -> ::Array[Scalar::Theme] def delete: (String slug, ?request_options: Scalar::request_opts) -> top diff --git a/sig/scalar-api-ruby/version.rbs b/sig/scalar_api_ruby/version.rbs similarity index 100% rename from sig/scalar-api-ruby/version.rbs rename to sig/scalar_api_ruby/version.rbs diff --git a/tests/smoke-test.rb b/tests/smoke-test.rb index 5b3e774..f2853a9 100644 --- a/tests/smoke-test.rb +++ b/tests/smoke-test.rb @@ -6,14 +6,14 @@ require "time" root = - File.exist?(File.join(__dir__, "lib", "scalar-api-ruby.rb")) ? __dir__ : File.expand_path("..", __dir__) + File.exist?(File.join(__dir__, "lib", "scalar_api_ruby.rb")) ? __dir__ : File.expand_path("..", __dir__) $LOAD_PATH.unshift(File.join(root, "lib")) -require "scalar-api-ruby" +require "scalar_api_ruby" # Smoke test: calls every generated operation once to confirm the SDK can reach each endpoint. # Run it from this repo with `ruby tests/smoke-test.rb`. The generator also runs this file # against a mock server and reads the JSON report produced via SCALAR_SMOKE_REPORT. -client = Scalar::Client.new(max_retries: 2, timeout: 30) +client = Scalar::Client.new(max_retries: 2, timeout: 10) cases = [ { @@ -22,7 +22,16 @@ path: "/v1/apis/{namespace}", label: "required params", run: -> do - client.registry.create_api_document("namespace", {document: "", slug: "", title: "", version: "x"}) + client.registry.create_api_document( + "acme", + { + document: + "{\"openapi\":\"3.1.0\",\"info\":{\"title\":\"Acme API\",\"version\":\"1.2.0\"},\"paths\":{}}", + slug: "acme-api", + title: "Acme API", + version: "1.2.0" + } + ) end }, { @@ -32,8 +41,17 @@ label: "all params", run: -> do client.registry.create_api_document( - "namespace", - {document: "", slug: "", title: "", version: "x", description: "", is_private: false, ruleset: ""} + "acme", + { + document: + "{\"openapi\":\"3.1.0\",\"info\":{\"title\":\"Acme API\",\"version\":\"1.2.0\"},\"paths\":{}}", + slug: "acme-api", + title: "Acme API", + version: "1.2.0", + description: "API for managing Acme products and orders.", + is_private: false, + ruleset: "extends: [\"spectral:oas\"]" + } ) end }, @@ -43,8 +61,8 @@ path: "/v1/apis/{namespace}/{slug}/access-group", run: -> do client.registry.create_api_document_access_group( - "slug", - {access_group_slug: "xxx", namespace: "namespace"} + "acme-api", + {access_group_slug: "acme-api", namespace: "acme"} ) end }, @@ -55,8 +73,13 @@ label: "required params", run: -> do client.registry.create_api_document_version( - "slug", - {namespace: "namespace", document: "", version: "x"} + "acme-api", + { + namespace: "acme", + document: + "{\"openapi\":\"3.1.0\",\"info\":{\"title\":\"Acme API\",\"version\":\"1.2.0\"},\"paths\":{}}", + version: "1.2.0" + } ) end }, @@ -67,8 +90,14 @@ label: "all params", run: -> do client.registry.create_api_document_version( - "slug", - {namespace: "namespace", document: "", version: "x", force: false, last_known_version_sha: ""} + "acme-api", + { + namespace: "acme", + document: + "{\"openapi\":\"3.1.0\",\"info\":{\"title\":\"Acme API\",\"version\":\"1.2.0\"},\"paths\":{}}", + version: "1.2.0", + force: false + } ) end }, @@ -76,7 +105,7 @@ operation: "deleteApiDocument", method: "DELETE", path: "/v1/apis/{namespace}/{slug}", - run: -> { client.registry.delete_api_document("slug", {namespace: "namespace"}) } + run: -> { client.registry.delete_api_document("acme-api", {namespace: "acme"}) } }, { operation: "deleteApiDocumentAccessGroup", @@ -84,8 +113,8 @@ path: "/v1/apis/{namespace}/{slug}/access-group", run: -> do client.registry.delete_api_document_access_group( - "slug", - {access_group_slug: "xxx", namespace: "namespace"} + "acme-api", + {access_group_slug: "acme-api", namespace: "acme"} ) end }, @@ -93,9 +122,7 @@ operation: "deleteApiDocumentVersion", method: "DELETE", path: "/v1/apis/{namespace}/{slug}/version/{semver}", - run: -> do - client.registry.delete_api_document_version("semver", {namespace: "namespace", slug: "slug"}) - end + run: -> { client.registry.delete_api_document_version("1.2.0", {namespace: "acme", slug: "acme-api"}) } }, { operation: "listAllApiDocuments", @@ -108,21 +135,21 @@ method: "GET", path: "/v1/apis/{namespace}/{slug}/version/{semver}/metadata", run: -> do - client.registry.list_api_document_version_metadata("semver", {namespace: "namespace", slug: "slug"}) + client.registry.list_api_document_version_metadata("1.2.0", {namespace: "acme", slug: "acme-api"}) end }, { operation: "listApiDocuments", method: "GET", path: "/v1/apis/{namespace}", - run: -> { client.registry.list_api_documents("namespace") } + run: -> { client.registry.list_api_documents("acme") } }, { operation: "retrieveApiDocumentVersion", method: "GET", path: "/v1/apis/{namespace}/{slug}/version/{semver}", run: -> do - client.registry.retrieve_api_document_version("semver", {namespace: "namespace", slug: "slug"}) + client.registry.retrieve_api_document_version("1.2.0", {namespace: "acme", slug: "acme-api"}) end }, { @@ -130,7 +157,7 @@ method: "PATCH", path: "/v1/apis/{namespace}/{slug}", label: "required params", - run: -> { client.registry.update_api_document("slug", {namespace: "namespace"}) } + run: -> { client.registry.update_api_document("acme-api", {namespace: "acme"}) } }, { operation: "updateApiDocument", @@ -139,20 +166,14 @@ label: "all params", run: -> do client.registry.update_api_document( - "slug", - {namespace: "namespace", description: "", is_private: false, ruleset: "", title: ""} - ) - end - }, - { - operation: "updateApiDocumentVersion", - method: "PATCH", - path: "/v1/apis/{namespace}/{slug}/version/{semver}", - label: "required params", - run: -> do - client.registry.update_api_document_version( - "semver", - {namespace: "namespace", slug: "slug", document: ""} + "acme-api", + { + namespace: "acme", + description: "API for managing Acme products and orders.", + is_private: false, + ruleset: "extends: [\"spectral:oas\"]", + title: "Acme API" + } ) end }, @@ -160,11 +181,15 @@ operation: "updateApiDocumentVersion", method: "PATCH", path: "/v1/apis/{namespace}/{slug}/version/{semver}", - label: "all params", run: -> do client.registry.update_api_document_version( - "semver", - {namespace: "namespace", slug: "slug", document: "", last_known_version_sha: ""} + "1.2.0", + { + namespace: "acme", + slug: "acme-api", + document: + "{\"openapi\":\"3.1.0\",\"info\":{\"title\":\"Acme API\",\"version\":\"1.2.0\"},\"paths\":{}}" + } ) end }, @@ -173,7 +198,18 @@ method: "POST", path: "/v1/schemas/{namespace}", label: "required params", - run: -> { client.schemas.create("namespace", {document: "", slug: "", title: "", version: "x"}) } + run: -> do + client.schemas.create( + "acme", + { + document: + "{\"type\":\"object\",\"properties\":{\"name\":{\"type\":\"string\",\"examples\":[\"Acme\"]}}}", + slug: "customer", + title: "Customer", + version: "1.2.0" + } + ) + end }, { operation: "create", @@ -182,8 +218,16 @@ label: "all params", run: -> do client.schemas.create( - "namespace", - {document: "", slug: "", title: "", version: "x", description: "", is_private: false} + "acme", + { + document: + "{\"type\":\"object\",\"properties\":{\"name\":{\"type\":\"string\",\"examples\":[\"Acme\"]}}}", + slug: "customer", + title: "Customer", + version: "1.2.0", + description: "API for managing Acme products and orders.", + is_private: false + } ) end }, @@ -192,7 +236,7 @@ method: "PATCH", path: "/v1/schemas/{namespace}/{slug}", label: "required params", - run: -> { client.schemas.update("slug", {namespace: "namespace"}) } + run: -> { client.schemas.update("customer", {namespace: "acme"}) } }, { operation: "update", @@ -200,45 +244,82 @@ path: "/v1/schemas/{namespace}/{slug}", label: "all params", run: -> do - client.schemas.update("slug", {namespace: "namespace", description: "", is_private: false, title: ""}) + client.schemas.update( + "customer", + { + namespace: "acme", + description: "API for managing Acme products and orders.", + is_private: false, + title: "Customer" + } + ) end }, { operation: "list", method: "GET", path: "/v1/schemas/{namespace}", - run: -> { client.schemas.list("namespace") } + run: -> { client.schemas.list("acme") } }, { operation: "delete", method: "DELETE", path: "/v1/schemas/{namespace}/{slug}", - run: -> { client.schemas.delete("slug", {namespace: "namespace"}) } + run: -> { client.schemas.delete("customer", {namespace: "acme"}) } + }, + { + operation: "create", + method: "POST", + path: "/v1/schemas/{namespace}/{slug}/version", + label: "required params", + run: -> do + client.schemas.version.create( + "customer", + { + namespace: "acme", + document: + "{\"type\":\"object\",\"properties\":{\"name\":{\"type\":\"string\",\"examples\":[\"Acme\"]}}}", + version: "1.2.0" + } + ) + end }, { operation: "create", method: "POST", path: "/v1/schemas/{namespace}/{slug}/version", - run: -> { client.schemas.version.create("slug", {namespace: "namespace", document: "", version: "x"}) } + label: "all params", + run: -> do + client.schemas.version.create( + "customer", + { + namespace: "acme", + document: + "{\"type\":\"object\",\"properties\":{\"name\":{\"type\":\"string\",\"examples\":[\"Acme\"]}}}", + version: "1.2.0", + force: false + } + ) + end }, { operation: "retrieve", method: "GET", path: "/v1/schemas/{namespace}/{slug}/version/{semver}", - run: -> { client.schemas.version.retrieve("semver", {namespace: "namespace", slug: "slug"}) } + run: -> { client.schemas.version.retrieve("1.2.0", {namespace: "acme", slug: "customer"}) } }, { operation: "delete", method: "DELETE", path: "/v1/schemas/{namespace}/{slug}/version/{semver}", - run: -> { client.schemas.version.delete("semver", {namespace: "namespace", slug: "slug"}) } + run: -> { client.schemas.version.delete("1.2.0", {namespace: "acme", slug: "customer"}) } }, { operation: "create", method: "POST", path: "/v1/schemas/{namespace}/{slug}/access-group", run: -> do - client.schemas.access_group.create("slug", {access_group_slug: "xxx", namespace: "namespace"}) + client.schemas.access_group.create("customer", {access_group_slug: "acme-api", namespace: "acme"}) end }, { @@ -246,7 +327,7 @@ method: "DELETE", path: "/v1/schemas/{namespace}/{slug}/access-group", run: -> do - client.schemas.access_group.delete("slug", {access_group_slug: "xxx", namespace: "namespace"}) + client.schemas.access_group.delete("customer", {access_group_slug: "acme-api", namespace: "acme"}) end }, { @@ -264,7 +345,7 @@ "title" => "Private Docs", "mainColor" => "\#2a2f45", "mainBackground" => "\#f6f6f6", - "cardColor" => "2a2f45", + "cardColor" => "\#2a2f45", "cardBackground" => "\#fff", "buttonColor" => "\#fff", "buttonBackground" => "\#0f0f0f" @@ -285,8 +366,8 @@ "formDescription" => "Login to access your documentation", "formImage" => "" }, - slug: "", - title: "" + slug: "acme-login", + title: "Acme Private Documentation" } ) end @@ -295,35 +376,98 @@ operation: "retrieve", method: "GET", path: "/v1/login-portals/{slug}", - run: -> { client.login_portals.retrieve("slug") } + run: -> { client.login_portals.retrieve("acme-login") } }, { operation: "update", method: "PATCH", path: "/v1/login-portals/{slug}", label: "required params", - run: -> { client.login_portals.update("slug") } + run: -> { client.login_portals.update("acme-login") } }, { operation: "update", method: "PATCH", path: "/v1/login-portals/{slug}", label: "all params", - run: -> { client.login_portals.update("slug", {title: ""}) } + run: -> { client.login_portals.update("acme-login", {title: "Acme Private Documentation"}) } }, {operation: "list", method: "GET", path: "/v1/login-portals", run: -> { client.login_portals.list }}, { operation: "delete", method: "DELETE", path: "/v1/login-portals/{slug}", - run: -> { client.login_portals.delete("slug") } + run: -> { client.login_portals.delete("acme-login") } + }, + { + operation: "create", + method: "POST", + path: "/v1/access-groups", + label: "required params", + run: -> { client.access_groups.create } + }, + { + operation: "create", + method: "POST", + path: "/v1/access-groups", + label: "all params", + run: -> do + client.access_groups.create({allowed_domains: "example.com", name: "Engineering", slug: "acme-api"}) + end + }, + { + operation: "retrieve", + method: "GET", + path: "/v1/access-groups/{slug}", + run: -> { client.access_groups.retrieve("acme-api") } + }, + { + operation: "update", + method: "PATCH", + path: "/v1/access-groups/{slug}", + label: "required params", + run: -> { client.access_groups.update("acme-api") } + }, + { + operation: "update", + method: "PATCH", + path: "/v1/access-groups/{slug}", + label: "all params", + run: -> { client.access_groups.update("acme-api", {name: "Engineering", body_slug: "acme-api"}) } + }, + { + operation: "delete", + method: "DELETE", + path: "/v1/access-groups/{slug}", + run: -> { client.access_groups.delete("acme-api") } + }, + { + operation: "create", + method: "POST", + path: "/v1/access-groups/{slug}/domains", + run: -> { client.access_groups.domains.create("acme-api", {domain: "example.com"}) } + }, + { + operation: "delete", + method: "DELETE", + path: "/v1/access-groups/{slug}/domains", + run: -> { client.access_groups.domains.delete("acme-api", {domain: "example.com"}) } }, { operation: "createRuleset", method: "POST", path: "/v1/rulesets/{namespace}", label: "required params", - run: -> { client.rules.create_ruleset("namespace", {document: "", slug: "", title: ""}) } + run: -> do + client.rules.create_ruleset( + "acme", + { + document: "extends: [\"spectral:oas\"]\nrules:\n info-contact: warn\n", + slug: "acme-rules", + title: "Acme API Rules" + } + ) + end }, { operation: "createRuleset", @@ -332,8 +476,14 @@ label: "all params", run: -> do client.rules.create_ruleset( - "namespace", - {document: "", slug: "", title: "", description: "", is_private: false} + "acme", + { + document: "extends: [\"spectral:oas\"]\nrules:\n info-contact: warn\n", + slug: "acme-rules", + title: "Acme API Rules", + description: "API for managing Acme products and orders.", + is_private: false + } ) end }, @@ -342,41 +492,47 @@ method: "POST", path: "/v1/rulesets/{namespace}/{slug}/access-group", run: -> do - client.rules.create_ruleset_access_group("slug", {access_group_slug: "xxx", namespace: "namespace"}) + client.rules.create_ruleset_access_group( + "acme-rules", + {access_group_slug: "acme-api", namespace: "acme"} + ) end }, { operation: "deleteRuleset", method: "DELETE", path: "/v1/rulesets/{namespace}/{slug}", - run: -> { client.rules.delete_ruleset("slug", {namespace: "namespace"}) } + run: -> { client.rules.delete_ruleset("acme-rules", {namespace: "acme"}) } }, { operation: "deleteRulesetAccessGroup", method: "DELETE", path: "/v1/rulesets/{namespace}/{slug}/access-group", run: -> do - client.rules.delete_ruleset_access_group("slug", {access_group_slug: "xxx", namespace: "namespace"}) + client.rules.delete_ruleset_access_group( + "acme-rules", + {access_group_slug: "acme-api", namespace: "acme"} + ) end }, { operation: "listRulesets", method: "GET", path: "/v1/rulesets/{namespace}", - run: -> { client.rules.list_rulesets("namespace") } + run: -> { client.rules.list_rulesets("acme") } }, { operation: "retrieveRulesetDocument", method: "GET", path: "/v1/rulesets/{namespace}/{slug}", - run: -> { client.rules.retrieve_ruleset_document("slug", {namespace: "namespace"}) } + run: -> { client.rules.retrieve_ruleset_document("acme-rules", {namespace: "acme"}) } }, { operation: "updateRuleset", method: "PATCH", path: "/v1/rulesets/{namespace}/{slug}", label: "required params", - run: -> { client.rules.update_ruleset("path_slug", {path_namespace: "path_namespace"}) } + run: -> { client.rules.update_ruleset("acme-rules", {path_namespace: "acme"}) } }, { operation: "updateRuleset", @@ -385,14 +541,14 @@ label: "all params", run: -> do client.rules.update_ruleset( - "path_slug", + "acme-rules", { - path_namespace: "path_namespace", - description: "", + path_namespace: "acme", + description: "API for managing Acme products and orders.", is_private: false, - body_namespace: "", - body_slug: "", - title: "" + body_namespace: "acme", + body_slug: "acme-rules", + title: "Acme API Rules" } ) end @@ -402,56 +558,109 @@ method: "POST", path: "/v1/themes", label: "required params", - run: -> { client.themes.create({document: "", name: "", slug: ""}) } + run: -> do + client.themes.create( + {document: ":root { --scalar-color-1: \#1f2937; }", name: "Acme Theme", slug: "acme-theme"} + ) + end }, { operation: "create", method: "POST", path: "/v1/themes", label: "all params", - run: -> { client.themes.create({document: "", name: "", slug: "", description: ""}) } + run: -> do + client.themes.create( + { + document: ":root { --scalar-color-1: \#1f2937; }", + name: "Acme Theme", + slug: "acme-theme", + description: "API for managing Acme products and orders." + } + ) + end }, { operation: "retrieve", method: "GET", path: "/v1/themes/{slug}", - run: -> { client.themes.retrieve("slug") } + run: -> { client.themes.retrieve("acme-theme") } }, { operation: "update", method: "PATCH", path: "/v1/themes/{slug}", label: "required params", - run: -> { client.themes.update("slug") } + run: -> { client.themes.update("acme-theme") } }, { operation: "update", method: "PATCH", path: "/v1/themes/{slug}", label: "all params", - run: -> { client.themes.update("slug", {description: "", name: ""}) } + run: -> do + client.themes.update( + "acme-theme", + {description: "API for managing Acme products and orders.", name: "Acme Theme"} + ) + end }, {operation: "list", method: "GET", path: "/v1/themes", run: -> { client.themes.list }}, { operation: "delete", method: "DELETE", path: "/v1/themes/{slug}", - run: -> { client.themes.delete("slug") } + run: -> { client.themes.delete("acme-theme") } }, { operation: "replaceDocument", method: "PUT", path: "/v1/themes/{slug}", - run: -> { client.themes.replace_document("slug", {document: ""}) } + run: -> do + client.themes.replace_document("acme-theme", {document: ":root { --scalar-color-1: \#1f2937; }"}) + end }, {operation: "list", method: "GET", path: "/v1/teams", run: -> { client.teams.list }}, + { + operation: "update", + method: "PATCH", + path: "/v1/teams/members/{uid}", + run: -> { client.teams.members.update("UakgbKJ5m9gl0JDMbcJqL", {role: "owner"}) } + }, + {operation: "list", method: "GET", path: "/v1/teams/members", run: -> { client.teams.members.list }}, + { + operation: "delete", + method: "DELETE", + path: "/v1/teams/members/{uid}", + run: -> { client.teams.members.delete("UakgbKJ5m9gl0JDMbcJqL") } + }, + { + operation: "cancel", + method: "DELETE", + path: "/v1/teams/invites/{uid}", + run: -> { client.teams.invites.cancel("UakgbKJ5m9gl0JDMbcJqL") } + }, + { + operation: "member", + method: "POST", + path: "/v1/teams/invites", + run: -> { client.teams.invites.member({email: "alex@example.com", role: "owner"}) } + }, + { + operation: "resend", + method: "PATCH", + path: "/v1/teams/invites/{uid}", + run: -> { client.teams.invites.resend("UakgbKJ5m9gl0JDMbcJqL") } + }, { operation: "createGuide", method: "POST", path: "/v1/guides", label: "required params", run: -> do - client.scalar_docs.create_guide({allowed_domains: [], allowed_users: [], is_private: false, name: ""}) + client.scalar_docs.create_guide( + {allowed_domains: [], allowed_users: [], is_private: false, name: "Acme Documentation"} + ) end }, { @@ -461,29 +670,496 @@ label: "all params", run: -> do client.scalar_docs.create_guide( - {allowed_domains: [], allowed_users: [], is_private: false, name: "", slug: "xxx"} + { + allowed_domains: [], + allowed_users: [], + is_private: false, + name: "Acme Documentation", + slug: "acme-api" + } + ) + end + }, + { + operation: "createProject", + method: "POST", + path: "/v1/docs", + label: "required params", + run: -> { client.scalar_docs.create_project({name: "Acme Documentation", provider: "forgejo"}) } + }, + { + operation: "createProject", + method: "POST", + path: "/v1/docs", + label: "all params", + run: -> do + client.scalar_docs.create_project( + { + name: "Acme Documentation", + provider: "forgejo", + bitbucket_repository: { + "workspaceUuid" => "{12345678-1234-4234-8234-123456789abc}", + "repoUuid" => "{abcdef01-1234-4234-8234-123456789abc}" + }, + blank: true, + github_repository: { + "installationId" => 84, + "repoId" => 123_456_789 + }, + is_private: false, + slug: "acme-api" + } ) end }, + { + operation: "deleteProject", + method: "DELETE", + path: "/v1/docs/{slug}", + run: -> { client.scalar_docs.delete_project("acme-docs") } + }, {operation: "listGuides", method: "GET", path: "/v1/guides", run: -> { client.scalar_docs.list_guides }}, + { + operation: "listProjectConfig", + method: "GET", + path: "/v1/docs/{slug}/config", + label: "required params", + run: -> { client.scalar_docs.list_project_config("acme-docs") } + }, + { + operation: "listProjectConfig", + method: "GET", + path: "/v1/docs/{slug}/config", + label: "all params", + run: -> { client.scalar_docs.list_project_config("acme-docs", {ref: "main"}) } + }, + { + operation: "listProjectDomain", + method: "GET", + path: "/v1/docs/{slug}/domain", + run: -> { client.scalar_docs.list_project_domain("acme-docs") } + }, + { + operation: "listProjectDomainStatus", + method: "GET", + path: "/v1/docs/{slug}/domain/status", + run: -> { client.scalar_docs.list_project_domain_status("acme-docs") } + }, + { + operation: "listProjects", + method: "GET", + path: "/v1/docs", + label: "required params", + run: -> { client.scalar_docs.list_projects } + }, + { + operation: "listProjects", + method: "GET", + path: "/v1/docs", + label: "all params", + run: -> { client.scalar_docs.list_projects({limit: 20}) } + }, { operation: "publishGuide", method: "POST", path: "/v1/guides/{slug}/publish", - run: -> { client.scalar_docs.publish_guide("slug") } + run: -> { client.scalar_docs.publish_guide("acme-docs") } + }, + { + operation: "publishProject", + method: "POST", + path: "/v1/docs/{slug}/publish", + label: "required params", + run: -> { client.scalar_docs.publish_project("acme-docs") } + }, + { + operation: "publishProject", + method: "POST", + path: "/v1/docs/{slug}/publish", + label: "all params", + run: -> do + client.scalar_docs.publish_project( + "acme-docs", + { + commit_sha: "0123456789abcdef0123456789abcdef01234567", + config_path: "scalar.config.json", + preview: false + } + ) + end + }, + { + operation: "retrieveProject", + method: "GET", + path: "/v1/docs/{slug}", + run: -> { client.scalar_docs.retrieve_project("acme-docs") } + }, + { + operation: "updateProject", + method: "PATCH", + path: "/v1/docs/{slug}", + label: "required params", + run: -> { client.scalar_docs.update_project("acme-docs") } + }, + { + operation: "updateProject", + method: "PATCH", + path: "/v1/docs/{slug}", + label: "all params", + run: -> do + client.scalar_docs.update_project( + "acme-docs", + { + access_groups: ["xxxxx"], + active_theme_id: "UakgbKJ5m9gl0JDMbcJqL", + agent_enabled: true, + analytics_enabled: true, + is_private: false, + login_portal_uid: "xxxxx", + name: "Acme Documentation" + } + ) + end + }, + { + operation: "updateProjectConfig", + method: "PUT", + path: "/v1/docs/{slug}/config", + label: "required params", + run: -> do + client.scalar_docs.update_project_config("acme-docs", {content: "{\"name\":\"Acme Documentation\"}"}) + end + }, + { + operation: "updateProjectConfig", + method: "PUT", + path: "/v1/docs/{slug}/config", + label: "all params", + run: -> do + client.scalar_docs.update_project_config( + "acme-docs", + { + content: "{\"name\":\"Acme Documentation\"}", + base_token: "example-edit-token", + message: "Update documentation configuration", + path: "scalar.config.json", + ref: "main" + } + ) + end }, {operation: "list", method: "GET", path: "/v1/namespaces", run: -> { client.namespaces.list }}, { operation: "exchangePersonalToken", method: "POST", path: "/v1/auth/exchange", - run: -> { client.authentication.exchange_personal_token({personal_token: ""}) } + run: -> do + client.authentication.exchange_personal_token({personal_token: "scalar_example_personal_token"}) + end }, { operation: "listCurrentUser", method: "GET", path: "/v1/auth/me", run: -> { client.authentication.list_current_user } + }, + { + operation: "create", + method: "POST", + path: "/v1/sdks", + label: "required params", + run: -> { client.sdks.create({api_uid: "UakgbKJ5m9gl0JDMbcJqL", languages: ["typescript"]}) } + }, + { + operation: "create", + method: "POST", + path: "/v1/sdks", + label: "all params", + run: -> do + client.sdks.create( + { + api_uid: "UakgbKJ5m9gl0JDMbcJqL", + languages: ["typescript"], + class_name: "Acme", + config: "{\"targets\":{\"typescript\":{\"packageName\":\"@acme/sdk\"}}}", + slug: "acme-api", + title: "Acme SDK" + } + ) + end + }, + { + operation: "retrieve", + method: "GET", + path: "/v1/sdks/{uid}", + run: -> { client.sdks.retrieve("UakgbKJ5m9gl0JDMbcJqL") } + }, + { + operation: "update", + method: "PATCH", + path: "/v1/sdks/{uid}", + label: "required params", + run: -> { client.sdks.update("UakgbKJ5m9gl0JDMbcJqL") } + }, + { + operation: "update", + method: "PATCH", + path: "/v1/sdks/{uid}", + label: "all params", + run: -> do + client.sdks.update( + "UakgbKJ5m9gl0JDMbcJqL", + { + api_uid: "UakgbKJ5m9gl0JDMbcJqL", + api_version: "", + config: "{\"targets\":{\"typescript\":{\"packageName\":\"@acme/sdk\"}}}", + is_private: false, + slug: "acme-api", + title: "Acme SDK" + } + ) + end + }, + { + operation: "list", + method: "GET", + path: "/v1/sdks", + label: "required params", + run: -> { client.sdks.list } + }, + { + operation: "list", + method: "GET", + path: "/v1/sdks", + label: "all params", + run: -> { client.sdks.list({limit: 20}) } + }, + { + operation: "delete", + method: "DELETE", + path: "/v1/sdks/{uid}", + run: -> { client.sdks.delete("UakgbKJ5m9gl0JDMbcJqL") } + }, + { + operation: "build", + method: "POST", + path: "/v1/sdks/{uid}/build", + label: "required params", + run: -> { client.sdks.build("UakgbKJ5m9gl0JDMbcJqL") } + }, + { + operation: "build", + method: "POST", + path: "/v1/sdks/{uid}/build", + label: "all params", + run: -> { client.sdks.build("UakgbKJ5m9gl0JDMbcJqL", {languages: ["typescript"], version: "1.2.0"}) } + }, + { + operation: "create", + method: "POST", + path: "/v1/sdks/{uid}/versions", + run: -> do + client.sdks.versions.create("UakgbKJ5m9gl0JDMbcJqL", {api_version: "1.2.0", version: "1.2.0"}) + end + }, + { + operation: "delete", + method: "DELETE", + path: "/v1/sdks/{uid}/versions/{version}", + run: -> { client.sdks.versions.delete("1.2.0", {uid: "UakgbKJ5m9gl0JDMbcJqL"}) } + }, + { + operation: "link", + method: "POST", + path: "/v1/sdks/{uid}/repositories", + label: "required params", + run: -> do + client.sdks.repositories.link( + "UakgbKJ5m9gl0JDMbcJqL", + {base_branch: "main", language: "typescript", repository_id: 123_456_789} + ) + end + }, + { + operation: "link", + method: "POST", + path: "/v1/sdks/{uid}/repositories", + label: "all params", + run: -> do + client.sdks.repositories.link( + "UakgbKJ5m9gl0JDMbcJqL", + {base_branch: "main", language: "typescript", repository_id: 123_456_789, prerelease_type: "beta"} + ) + end + }, + { + operation: "unlink", + method: "DELETE", + path: "/v1/sdks/{uid}/repositories/{language}", + run: -> { client.sdks.repositories.unlink("typescript", {uid: "UakgbKJ5m9gl0JDMbcJqL"}) } + }, + { + operation: "updatePublishing", + method: "POST", + path: "/v1/sdks/{uid}/repositories/{language}/publishing", + label: "required params", + run: -> do + client.sdks.repositories.update_publishing( + "typescript", + {uid: "UakgbKJ5m9gl0JDMbcJqL", publish_on_merge: true} + ) + end + }, + { + operation: "updatePublishing", + method: "POST", + path: "/v1/sdks/{uid}/repositories/{language}/publishing", + label: "all params", + run: -> do + client.sdks.repositories.update_publishing( + "typescript", + { + uid: "UakgbKJ5m9gl0JDMbcJqL", + publish_on_merge: true, + access: "public", + auth_method: "oidc", + tag: "latest" + } + ) + end + }, + { + operation: "create", + method: "POST", + path: "/v1/mcp/servers", + label: "required params", + run: -> { client.mcp.servers.create({name: "Acme MCP"}) } + }, + { + operation: "create", + method: "POST", + path: "/v1/mcp/servers", + label: "all params", + run: -> do + client.mcp.servers.create( + {name: "Acme MCP", project_uids: [""], slug: "acme-api", version_uids: [""]} + ) + end + }, + { + operation: "retrieve", + method: "GET", + path: "/v1/mcp/servers/{id}", + run: -> { client.mcp.servers.retrieve("42") } + }, + { + operation: "update", + method: "PATCH", + path: "/v1/mcp/servers/{id}", + label: "required params", + run: -> { client.mcp.servers.update("42") } + }, + { + operation: "update", + method: "PATCH", + path: "/v1/mcp/servers/{id}", + label: "all params", + run: -> do + client.mcp.servers.update( + "42", + {auto_add_operations: true, docs_pages: [""], name: "Acme MCP", operations: [""], slug: "acme-api"} + ) + end + }, + {operation: "list", method: "GET", path: "/v1/mcp/servers", run: -> { client.mcp.servers.list }}, + { + operation: "delete", + method: "DELETE", + path: "/v1/mcp/servers/{id}", + run: -> { client.mcp.servers.delete("42") } + }, + { + operation: "create", + method: "POST", + path: "/v1/mcp/servers/{id}/installations", + label: "required params", + run: -> { client.mcp.servers.installations.create("42", {document_auth: {}, name: "Acme MCP"}) } + }, + { + operation: "create", + method: "POST", + path: "/v1/mcp/servers/{id}/installations", + label: "all params", + run: -> do + client.mcp.servers.installations.create("42", {document_auth: {}, name: "Acme MCP", slug: "acme-api"}) + end + }, + { + operation: "retrieve", + method: "GET", + path: "/v1/mcp/servers/{id}/installations/{installationId}", + run: -> { client.mcp.servers.installations.retrieve("84", {id: "42"}) } + }, + { + operation: "update", + method: "PATCH", + path: "/v1/mcp/servers/{id}/installations/{installationId}", + label: "required params", + run: -> { client.mcp.servers.installations.update("84", {id: "42"}) } + }, + { + operation: "update", + method: "PATCH", + path: "/v1/mcp/servers/{id}/installations/{installationId}", + label: "all params", + run: -> do + client.mcp.servers.installations.update( + "84", + { + id: "42", + document_auth: {}, + is_private: false, + login_portal_uid: "", + mcp_version: "", + name: "Acme MCP", + slug: "acme-api" + } + ) + end + }, + { + operation: "list", + method: "GET", + path: "/v1/mcp/servers/{id}/installations", + run: -> { client.mcp.servers.installations.list("42") } + }, + { + operation: "delete", + method: "DELETE", + path: "/v1/mcp/servers/{id}/installations/{installationId}", + run: -> { client.mcp.servers.installations.delete("84", {id: "42"}) } + }, + { + operation: "createAccessGroup", + method: "POST", + path: "/v1/mcp/servers/{id}/installations/{installationId}/access-group", + run: -> do + client.mcp.servers.installations.create_access_group( + "84", + {id: "42", access_group_uid: "UakgbKJ5m9gl0JDMbcJqL"} + ) + end + }, + { + operation: "deleteAccessGroup", + method: "DELETE", + path: "/v1/mcp/servers/{id}/installations/{installationId}/access-group", + run: -> do + client.mcp.servers.installations.delete_access_group( + "84", + {id: "42", access_group_uid: "UakgbKJ5m9gl0JDMbcJqL"} + ) + end } ]