Class: Shipeasy::Admin::Generated::ProjectsApi
- Inherits:
-
Object
- Object
- Shipeasy::Admin::Generated::ProjectsApi
- Defined in:
- lib/shipeasy_admin/api/projects_api.rb
Instance Attribute Summary collapse
-
#api_client ⇒ Object
Returns the value of attribute api_client.
Instance Method Summary collapse
-
#get_current_project(opts = {}) ⇒ GetCurrentProjectResponse
Show the current project Returns the project the caller's auth header resolves to — plan, status, billing, and which modules are enabled.
-
#get_current_project_with_http_info(opts = {}) ⇒ Array<(GetCurrentProjectResponse, Integer, Hash)>
Show the current project Returns the project the caller's auth header resolves to — plan, status, billing, and which modules are enabled.
-
#initialize(api_client = ApiClient.default) ⇒ ProjectsApi
constructor
A new instance of ProjectsApi.
-
#search_resources(opts = {}) ⇒ SearchResponse
Search project resources Universal substring search across the project's primary resources — feature gates, experiments, dynamic configs, killswitches, metrics, and team members.
-
#search_resources_with_http_info(opts = {}) ⇒ Array<(SearchResponse, Integer, Hash)>
Search project resources Universal substring search across the project's primary resources — feature gates, experiments, dynamic configs, killswitches, metrics, and team members.
-
#upsert_project(upsert_project_request, opts = {}) ⇒ UpsertProjectResponse
Find-or-create a project by domain Find-or-creates a project keyed by
(owner_email, domain)under the session's owner, and returns it. -
#upsert_project_with_http_info(upsert_project_request, opts = {}) ⇒ Array<(UpsertProjectResponse, Integer, Hash)>
Find-or-create a project by domain Find-or-creates a project keyed by `(owner_email, domain)` under the session's owner, and returns it.
Constructor Details
#initialize(api_client = ApiClient.default) ⇒ ProjectsApi
Returns a new instance of ProjectsApi.
19 20 21 |
# File 'lib/shipeasy_admin/api/projects_api.rb', line 19 def initialize(api_client = ApiClient.default) @api_client = api_client end |
Instance Attribute Details
#api_client ⇒ Object
Returns the value of attribute api_client.
17 18 19 |
# File 'lib/shipeasy_admin/api/projects_api.rb', line 17 def api_client @api_client end |
Instance Method Details
#get_current_project(opts = {}) ⇒ GetCurrentProjectResponse
Show the current project
Returns the project the caller's auth header resolves to — plan, status, billing, and which modules are enabled. The server reads the project from the credential, so there is no id parameter. Powers whoami. Use case: Resolve who you are — the project, plan, and enabled modules tied to the current credential — without passing an id. Backs a registry-driven whoami.
27 28 29 30 |
# File 'lib/shipeasy_admin/api/projects_api.rb', line 27 def get_current_project(opts = {}) data, _status_code, _headers = get_current_project_with_http_info(opts) data end |
#get_current_project_with_http_info(opts = {}) ⇒ Array<(GetCurrentProjectResponse, Integer, Hash)>
Show the current project Returns the project the caller's auth header resolves to — plan, status, billing, and which modules are enabled. The server reads the project from the credential, so there is no id parameter. Powers `whoami`. Use case: Resolve who you are — the project, plan, and enabled modules tied to the current credential — without passing an id. Backs a registry-driven `whoami`.
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 |
# File 'lib/shipeasy_admin/api/projects_api.rb', line 37 def get_current_project_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: ProjectsApi.get_current_project ...' end # resource path local_var_path = '/api/admin/projects/current' # query parameters query_params = opts[:query_params] || {} # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept'] header_params[:'X-Project-Id'] = opts[:'x_project_id'] if !opts[:'x_project_id'].nil? # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] # return_type return_type = opts[:debug_return_type] || 'GetCurrentProjectResponse' # auth_names auth_names = opts[:debug_auth_names] || ['bearerSdkKey'] = opts.merge( :operation => :"ProjectsApi.get_current_project", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:GET, local_var_path, ) if @api_client.config.debugging @api_client.config.logger.debug "API called: ProjectsApi#get_current_project\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end |
#search_resources(opts = {}) ⇒ SearchResponse
Search project resources
Universal substring search across the project's primary resources — feature gates, experiments, dynamic configs, killswitches, metrics, and team members. Matches the trimmed q against each resource's immutable name and its human title/display name (members match on display name or email), newest-first, capped per resource family so one noisy type can't crowd out the rest. Returns a flat, ranked-by-type list of hits (members first); an empty or whitespace-only q returns no hits. Each hit carries a project-relative href that deep-links to the row. Use case: Back a command-palette / quick-switcher in the dashboard, or look up the id of a resource by a fragment of its name before driving another API call.
88 89 90 91 |
# File 'lib/shipeasy_admin/api/projects_api.rb', line 88 def search_resources(opts = {}) data, _status_code, _headers = search_resources_with_http_info(opts) data end |
#search_resources_with_http_info(opts = {}) ⇒ Array<(SearchResponse, Integer, Hash)>
Search project resources Universal substring search across the project's primary resources — feature gates, experiments, dynamic configs, killswitches, metrics, and team members. Matches the trimmed `q` against each resource's immutable `name` and its human title/display name (members match on display name or email), newest-first, capped per resource family so one noisy type can't crowd out the rest. Returns a flat, ranked-by-type list of hits (members first); an empty or whitespace-only `q` returns no hits. Each hit carries a project-relative `href` that deep-links to the row. Use case: Back a command-palette / quick-switcher in the dashboard, or look up the id of a resource by a fragment of its name before driving another API call.
99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 |
# File 'lib/shipeasy_admin/api/projects_api.rb', line 99 def search_resources_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: ProjectsApi.search_resources ...' end # resource path local_var_path = '/api/admin/search' # query parameters query_params = opts[:query_params] || {} query_params[:'q'] = opts[:'q'] if !opts[:'q'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept'] header_params[:'X-Project-Id'] = opts[:'x_project_id'] if !opts[:'x_project_id'].nil? # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] # return_type return_type = opts[:debug_return_type] || 'SearchResponse' # auth_names auth_names = opts[:debug_auth_names] || ['bearerSdkKey'] = opts.merge( :operation => :"ProjectsApi.search_resources", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:GET, local_var_path, ) if @api_client.config.debugging @api_client.config.logger.debug "API called: ProjectsApi#search_resources\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end |
#upsert_project(upsert_project_request, opts = {}) ⇒ UpsertProjectResponse
Find-or-create a project by domain
Find-or-creates a project keyed by (owner_email, domain) under the session's owner, and returns it. Idempotent: a second call with the same domain returns the existing project with created: false. Only domain is required — name defaults to the domain on first create. Recording the result in a local .shipeasy binding is a consumer side-effect; this endpoint never performs it. Use cases - Install flow — provision a per-app project without a trip to the dashboard. Run it on every install; the idempotent key means a re-run returns the existing project rather than duplicating it. - Name explicitly — pass name to label the project distinctly from its domain.
151 152 153 154 |
# File 'lib/shipeasy_admin/api/projects_api.rb', line 151 def upsert_project(upsert_project_request, opts = {}) data, _status_code, _headers = upsert_project_with_http_info(upsert_project_request, opts) data end |
#upsert_project_with_http_info(upsert_project_request, opts = {}) ⇒ Array<(UpsertProjectResponse, Integer, Hash)>
Find-or-create a project by domain Find-or-creates a project keyed by `(owner_email, domain)` under the session's owner, and returns it. Idempotent: a second call with the same domain returns the existing project with `created: false`. Only `domain` is required — `name` defaults to the domain on first create. Recording the result in a local `.shipeasy` binding is a consumer side-effect; this endpoint never performs it. Use cases - Install flow — provision a per-app project without a trip to the dashboard. Run it on every install; the idempotent key means a re-run returns the existing project rather than duplicating it. - Name explicitly — pass `name` to label the project distinctly from its `domain`.
162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 |
# File 'lib/shipeasy_admin/api/projects_api.rb', line 162 def upsert_project_with_http_info(upsert_project_request, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: ProjectsApi.upsert_project ...' end # verify the required parameter 'upsert_project_request' is set if @api_client.config.client_side_validation && upsert_project_request.nil? fail ArgumentError, "Missing the required parameter 'upsert_project_request' when calling ProjectsApi.upsert_project" end # resource path local_var_path = '/api/admin/projects/upsert' # query parameters query_params = opts[:query_params] || {} # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept'] # HTTP header 'Content-Type' content_type = @api_client.select_header_content_type(['application/json']) if !content_type.nil? header_params['Content-Type'] = content_type end header_params[:'X-Project-Id'] = opts[:'x_project_id'] if !opts[:'x_project_id'].nil? # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] || @api_client.object_to_http_body(upsert_project_request) # return_type return_type = opts[:debug_return_type] || 'UpsertProjectResponse' # auth_names auth_names = opts[:debug_auth_names] || ['bearerSdkKey'] = opts.merge( :operation => :"ProjectsApi.upsert_project", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:POST, local_var_path, ) if @api_client.config.debugging @api_client.config.logger.debug "API called: ProjectsApi#upsert_project\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end |