diff options
Diffstat (limited to 'lib/api/projects.rb')
-rw-r--r-- | lib/api/projects.rb | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/lib/api/projects.rb b/lib/api/projects.rb index 468f284f136..f6a2ce0f829 100644 --- a/lib/api/projects.rb +++ b/lib/api/projects.rb @@ -220,6 +220,8 @@ module API def translate_params_for_compatibility(params) params[:builds_enabled] = params.delete(:jobs_enabled) if params.key?(:jobs_enabled) + params[:emails_enabled] = !params.delete(:emails_disabled) if params.key?(:emails_disabled) + params end @@ -792,10 +794,12 @@ module API desc 'Import members from another project' do detail 'This feature was introduced in GitLab 14.2' - success code: 201 + success code: 200 failure [ { code: 403, message: 'Unauthenticated' }, - { code: 404, message: 'Not found' } + { code: 403, message: 'Forbidden - Project' }, + { code: 404, message: 'Project Not Found' }, + { code: 422, message: 'Import failed' } ] tags %w[projects] end @@ -812,10 +816,12 @@ module API result = ::Members::ImportProjectTeamService.new(current_user, params).execute - if result - { status: result, message: 'Successfully imported' } + if result.success? + { status: result.status } + elsif result.reason == :unprocessable_entity + render_api_error!(result.message, result.reason) else - render_api_error!('Import failed', :unprocessable_entity) + { status: result.status, message: result.message, total_members_count: result.payload[:total_members_count] } end end |