diff options
Diffstat (limited to 'lib/api/snippets.rb')
-rw-r--r-- | lib/api/snippets.rb | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/lib/api/snippets.rb b/lib/api/snippets.rb index 118045e3af2..1a3283aed98 100644 --- a/lib/api/snippets.rb +++ b/lib/api/snippets.rb @@ -66,18 +66,23 @@ module API end params do requires :title, type: String, allow_blank: false, desc: 'The title of a snippet' - requires :file_name, type: String, desc: 'The name of a snippet file' - requires :content, type: String, allow_blank: false, desc: 'The content of a snippet' optional :description, type: String, desc: 'The description of a snippet' optional :visibility, type: String, values: Gitlab::VisibilityLevel.string_values, default: 'internal', desc: 'The visibility of the snippet' + use :create_file_params end post do authorize! :create_snippet - attrs = declared_params(include_missing: false).merge(request: request, api: true) + attrs = declared_params(include_missing: false).tap do |create_args| + create_args[:request] = request + create_args[:api] = true + + process_file_args(create_args) + end + service_response = ::Snippets::CreateService.new(nil, current_user, attrs).execute snippet = service_response.payload[:snippet] |