module Spaceship::ConnectAPI::Users::API
Public Instance Methods
add_user_visible_apps(user_id: nil, app_ids: nil)
click to toggle source
Add app permissions for user @deprecated Use {#post_user_visible_apps} instead.
# File spaceship/lib/spaceship/connect_api/users/users.rb, line 67 def add_user_visible_apps(user_id: nil, app_ids: nil) post_user_visible_apps(user_id: user_id, app_ids: app_ids) end
delete_user(user_id: nil)
click to toggle source
Delete existing user
# File spaceship/lib/spaceship/connect_api/users/users.rb, line 31 def delete_user(user_id: nil) users_request_client.delete("#{Version::V1}/users/#{user_id}") end
delete_user_invitation(user_invitation_id: nil)
click to toggle source
Remove invited user from team (not yet accepted)
# File spaceship/lib/spaceship/connect_api/users/users.rb, line 161 def delete_user_invitation(user_invitation_id: nil) users_request_client.delete("#{Version::V1}/userInvitations/#{user_invitation_id}") end
delete_user_visible_apps(user_id: nil, app_ids: nil)
click to toggle source
Remove app permissions for user
# File spaceship/lib/spaceship/connect_api/users/users.rb, line 99 def delete_user_visible_apps(user_id: nil, app_ids: nil) body = { data: app_ids.map do |app_id| { type: "apps", id: app_id } end } params = nil users_request_client.delete("#{Version::V1}/users/#{user_id}/relationships/visibleApps", params, body) end
get_user_invitation_visible_apps(user_invitation_id: id, limit: nil)
click to toggle source
Get all app permissions for invited user
# File spaceship/lib/spaceship/connect_api/users/users.rb, line 166 def get_user_invitation_visible_apps(user_invitation_id: id, limit: nil) params = users_request_client.build_params(filter: {}, includes: nil, limit: limit, sort: nil) users_request_client.get("#{Version::V1}/userInvitations/#{user_invitation_id}/visibleApps", params) end
get_user_invitations(filter: {}, includes: nil, limit: nil, sort: nil)
click to toggle source
Get all invited users
# File spaceship/lib/spaceship/connect_api/users/users.rb, line 123 def get_user_invitations(filter: {}, includes: nil, limit: nil, sort: nil) params = users_request_client.build_params(filter: filter, includes: includes, limit: limit, sort: sort) users_request_client.get("#{Version::V1}/userInvitations", params) end
get_user_visible_apps(user_id: id, limit: nil)
click to toggle source
Get app permissions for user
# File spaceship/lib/spaceship/connect_api/users/users.rb, line 113 def get_user_visible_apps(user_id: id, limit: nil) params = users_request_client.build_params(filter: {}, includes: nil, limit: limit, sort: nil) users_request_client.get("#{Version::V1}/users/#{user_id}/visibleApps", params) end
get_users(filter: {}, includes: nil, limit: nil, sort: nil)
click to toggle source
Get list of users
# File spaceship/lib/spaceship/connect_api/users/users.rb, line 25 def get_users(filter: {}, includes: nil, limit: nil, sort: nil) params = users_request_client.build_params(filter: filter, includes: includes, limit: limit, sort: sort) users_request_client.get("#{Version::V1}/users", params) end
patch_user(user_id:, all_apps_visible:, provisioning_allowed:, roles:, visible_app_ids:)
click to toggle source
Update existing user
# File spaceship/lib/spaceship/connect_api/users/users.rb, line 36 def patch_user(user_id:, all_apps_visible:, provisioning_allowed:, roles:, visible_app_ids:) body = { data: { type: 'users', id: user_id, attributes: { allAppsVisible: all_apps_visible, provisioningAllowed: provisioning_allowed, roles: roles }, relationships: { visibleApps: { data: visible_app_ids.map do |app_id| { type: "apps", id: app_id } end } } } } # Avoid API error: You cannot set visible apps for this user because the user's roles give them access to all apps. body[:data].delete(:relationships) if all_apps_visible users_request_client.patch("#{Version::V1}/users/#{user_id}", body) end
patch_user_visible_apps(user_id: nil, app_ids: nil)
click to toggle source
Replace app permissions for user
# File spaceship/lib/spaceship/connect_api/users/users.rb, line 85 def patch_user_visible_apps(user_id: nil, app_ids: nil) body = { data: app_ids.map do |app_id| { type: "apps", id: app_id } end } users_request_client.patch("#{Version::V1}/users/#{user_id}/relationships/visibleApps", body) end
post_user_invitation(email: nil, first_name: nil, last_name: nil, roles: [], provisioning_allowed: nil, all_apps_visible: nil, visible_app_ids: [])
click to toggle source
Invite new users to App
Store Connect
# File spaceship/lib/spaceship/connect_api/users/users.rb, line 129 def post_user_invitation(email: nil, first_name: nil, last_name: nil, roles: [], provisioning_allowed: nil, all_apps_visible: nil, visible_app_ids: []) body = { data: { type: "userInvitations", attributes: { email: email, firstName: first_name, lastName: last_name, roles: roles, provisioningAllowed: provisioning_allowed, allAppsVisible: all_apps_visible }, relationships: { visibleApps: { data: visible_app_ids.map do |id| { id: id, type: "apps" } end } } } } # Avoid API error: You cannot set visible apps for this user because the user's roles give them access to all apps. body[:data].delete(:relationships) if all_apps_visible users_request_client.post("#{Version::V1}/userInvitations", body) end
post_user_visible_apps(user_id: nil, app_ids: nil)
click to toggle source
# File spaceship/lib/spaceship/connect_api/users/users.rb, line 71 def post_user_visible_apps(user_id: nil, app_ids: nil) body = { data: app_ids.map do |app_id| { type: "apps", id: app_id } end } users_request_client.post("#{Version::V1}/users/#{user_id}/relationships/visibleApps", body) end
users_request_client()
click to toggle source
# File spaceship/lib/spaceship/connect_api/users/users.rb, line 15 def users_request_client return @users_request_client if @users_request_client raise TypeError, "You need to instantiate this module with users_request_client" end
users_request_client=(users_request_client)
click to toggle source
# File spaceship/lib/spaceship/connect_api/users/users.rb, line 11 def users_request_client=(users_request_client) @users_request_client = users_request_client end