usage_data.rb 637 Bytes
Newer Older
alinamihaila's avatar
alinamihaila committed
1 2 3 4
# frozen_string_literal: true

module API
  class UsageData < Grape::API::Instance
5 6
    before { authenticate! }

alinamihaila's avatar
alinamihaila committed
7
    namespace 'usage_data' do
alinamihaila's avatar
alinamihaila committed
8
      before do
9
        not_found! unless Feature.enabled?(:usage_data_api)
alinamihaila's avatar
alinamihaila committed
10 11
      end

alinamihaila's avatar
alinamihaila committed
12 13 14 15 16
      desc 'Track usage data events' do
        detail 'This feature was introduced in GitLab 13.4.'
      end

      params do
17
        requires :event, type: String, desc: 'The event name it should be tracked'
alinamihaila's avatar
alinamihaila committed
18
      end
alinamihaila's avatar
alinamihaila committed
19

20
      post 'increment_unique_users' do
21
        event_name = params[:event]
22

23
        increment_unique_values(event_name, current_user.id)
alinamihaila's avatar
alinamihaila committed
24 25 26 27 28 29

        status :ok
      end
    end
  end
end