class LaunchDarklyApi::ProjectsApi
Attributes
Public Class Methods
# File lib/launchdarkly_api/api/projects_api.rb, line 19 def initialize(api_client = ApiClient.default) @api_client = api_client end
Public Instance Methods
Delete project Delete a project by key. Caution: deleting a project will delete all associated environments and feature flags. You cannot delete the last project in an account. @param project_key [String] The project key @param [Hash] opts the optional parameters @return [nil]
# File lib/launchdarkly_api/api/projects_api.rb, line 27 def delete_project(project_key, opts = {}) delete_project_with_http_info(project_key, opts) nil end
Delete project Delete a project by key. Caution: deleting a project will delete all associated environments and feature flags. You cannot delete the last project in an account. @param project_key [String] The project key @param [Hash] opts the optional parameters @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
# File lib/launchdarkly_api/api/projects_api.rb, line 37 def delete_project_with_http_info(project_key, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: ProjectsApi.delete_project ...' end # verify the required parameter 'project_key' is set if @api_client.config.client_side_validation && project_key.nil? fail ArgumentError, "Missing the required parameter 'project_key' when calling ProjectsApi.delete_project" end # resource path local_var_path = '/api/v2/projects/{projectKey}'.sub('{' + 'projectKey' + '}', CGI.escape(project_key.to_s)) # query parameters query_params = opts[:query_params] || {} # header parameters header_params = opts[:header_params] || {} # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] # return_type return_type = opts[:debug_return_type] # auth_names auth_names = opts[:debug_auth_names] || ['ApiKey'] new_options = opts.merge( :operation => :"ProjectsApi.delete_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(:DELETE, local_var_path, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: ProjectsApi#delete_project\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end
Get project Get a single project by key. @param project_key [String] The project key @param [Hash] opts the optional parameters @return [Project]
# File lib/launchdarkly_api/api/projects_api.rb, line 88 def get_project(project_key, opts = {}) data, _status_code, _headers = get_project_with_http_info(project_key, opts) data end
Get project Get a single project by key. @param project_key [String] The project key @param [Hash] opts the optional parameters @return [Array<(Project
, Integer, Hash)>] Project
data, response status code and response headers
# File lib/launchdarkly_api/api/projects_api.rb, line 98 def get_project_with_http_info(project_key, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: ProjectsApi.get_project ...' end # verify the required parameter 'project_key' is set if @api_client.config.client_side_validation && project_key.nil? fail ArgumentError, "Missing the required parameter 'project_key' when calling ProjectsApi.get_project" end # resource path local_var_path = '/api/v2/projects/{projectKey}'.sub('{' + 'projectKey' + '}', CGI.escape(project_key.to_s)) # 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']) # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] # return_type return_type = opts[:debug_return_type] || 'Project' # auth_names auth_names = opts[:debug_auth_names] || ['ApiKey'] new_options = opts.merge( :operation => :"ProjectsApi.get_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, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: ProjectsApi#get_project\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end
List projects Get a list of all projects in the account. @param [Hash] opts the optional parameters @return [Projects]
# File lib/launchdarkly_api/api/projects_api.rb, line 150 def get_projects(opts = {}) data, _status_code, _headers = get_projects_with_http_info(opts) data end
List projects Get a list of all projects in the account. @param [Hash] opts the optional parameters @return [Array<(Projects
, Integer, Hash)>] Projects
data, response status code and response headers
# File lib/launchdarkly_api/api/projects_api.rb, line 159 def get_projects_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: ProjectsApi.get_projects ...' end # resource path local_var_path = '/api/v2/projects' # 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']) # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] # return_type return_type = opts[:debug_return_type] || 'Projects' # auth_names auth_names = opts[:debug_auth_names] || ['ApiKey'] new_options = opts.merge( :operation => :"ProjectsApi.get_projects", :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, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: ProjectsApi#get_projects\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end
Update project Update a project. Requires a [JSON Patch](tools.ietf.org/html/rfc6902) representation of the desired changes to the project. @param project_key [String] The project key @param patch_operation [Array<PatchOperation>] @param [Hash] opts the optional parameters @return [Project]
# File lib/launchdarkly_api/api/projects_api.rb, line 209 def patch_project(project_key, patch_operation, opts = {}) data, _status_code, _headers = patch_project_with_http_info(project_key, patch_operation, opts) data end
Update project Update a project. Requires a [JSON Patch](tools.ietf.org/html/rfc6902) representation of the desired changes to the project. @param project_key [String] The project key @param patch_operation [Array<PatchOperation>] @param [Hash] opts the optional parameters @return [Array<(Project
, Integer, Hash)>] Project
data, response status code and response headers
# File lib/launchdarkly_api/api/projects_api.rb, line 220 def patch_project_with_http_info(project_key, patch_operation, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: ProjectsApi.patch_project ...' end # verify the required parameter 'project_key' is set if @api_client.config.client_side_validation && project_key.nil? fail ArgumentError, "Missing the required parameter 'project_key' when calling ProjectsApi.patch_project" end # verify the required parameter 'patch_operation' is set if @api_client.config.client_side_validation && patch_operation.nil? fail ArgumentError, "Missing the required parameter 'patch_operation' when calling ProjectsApi.patch_project" end # resource path local_var_path = '/api/v2/projects/{projectKey}'.sub('{' + 'projectKey' + '}', CGI.escape(project_key.to_s)) # 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']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json']) # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] || @api_client.object_to_http_body(patch_operation) # return_type return_type = opts[:debug_return_type] || 'Project' # auth_names auth_names = opts[:debug_auth_names] || ['ApiKey'] new_options = opts.merge( :operation => :"ProjectsApi.patch_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(:PATCH, local_var_path, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: ProjectsApi#patch_project\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end
Create project Create a new project with the given key and name. Project
keys must be unique within an account. @param project_post [ProjectPost] @param [Hash] opts the optional parameters @return [Project]
# File lib/launchdarkly_api/api/projects_api.rb, line 279 def post_project(project_post, opts = {}) data, _status_code, _headers = post_project_with_http_info(project_post, opts) data end
Create project Create a new project with the given key and name. Project
keys must be unique within an account. @param project_post [ProjectPost] @param [Hash] opts the optional parameters @return [Array<(Project
, Integer, Hash)>] Project
data, response status code and response headers
# File lib/launchdarkly_api/api/projects_api.rb, line 289 def post_project_with_http_info(project_post, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: ProjectsApi.post_project ...' end # verify the required parameter 'project_post' is set if @api_client.config.client_side_validation && project_post.nil? fail ArgumentError, "Missing the required parameter 'project_post' when calling ProjectsApi.post_project" end # resource path local_var_path = '/api/v2/projects' # 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']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json']) # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] || @api_client.object_to_http_body(project_post) # return_type return_type = opts[:debug_return_type] || 'Project' # auth_names auth_names = opts[:debug_auth_names] || ['ApiKey'] new_options = opts.merge( :operation => :"ProjectsApi.post_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, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: ProjectsApi#post_project\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end