Sha256: b6b3f32f4686fbfdfbb0b76d1612113835dbc788d36c06fc379303191f31e295

Contents?: true

Size: 820 Bytes

Versions: 7

Compression:

Stored size: 820 Bytes

Contents

# frozen_string_literal: true

# @resource Groups
#
# Each tenant can have many groups.
PUNK.route('groups') do
  require_session!
  require_tenant!

  # Retrieve the list of groups visible to the authenticated user for a specific tenant.
  # @path [GET] /groups
  # @parameter tenant_id(required) [string] An email address or mobile phone number.
  # @response [Array<Group>] 200 List of groups
  # @method get
  # @example 200
  #   [{
  #     "id": "deadbeef-1234-5678-abcd-000000000000",
  #     "name": "Cool Group",
  #     "icon": "https://some.image/url"
  #   }]
  # @example 401
  #   {
  #     "message": "You must specify a tenant.",
  #     "errors": ["Cannot find tenant"]
  #   }
  #
  # route: GET /groups
  get do
    perform PUNK::ListGroupsAction, user: current_user, tenant: current_tenant
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
punk-0.3.6 lib/punk/routes/groups.rb
punk-0.3.5 lib/punk/routes/groups.rb
punk-0.3.4 lib/punk/routes/groups.rb
punk-0.3.3 lib/punk/routes/groups.rb
punk-0.3.2 lib/punk/routes/groups.rb
punk-0.3.1 lib/punk/routes/groups.rb
punk-0.2.0 lib/punk/routes/groups.rb