module StrawberryAPI::Client::ApiKeys

Attributes

created_at[RW]
id[RW]
key[RW]
name[RW]
updated_at[RW]
user_id[RW]

Public Instance Methods

api_key(user_id:) click to toggle source

Fetches user API keys

@param [Integer] user_id Strawberry user id

@return [Array<StrawberryAPI::ApiKey>] The fetched user API keys

# File lib/strawberry_api/client/api_keys.rb, line 18
def api_key(user_id:)
  get("/users/#{user_id}/api_keys").parse['api_keys']&.map do |api_key|
    ApiKey.new(api_key)
  end
end
create_api_key(user_id:, name:) click to toggle source

Creates user API key

@param [Integer] user_id Strawberry user id @param [String] name Name of the API key to create

@return [ApiKey] The created user API key

# File lib/strawberry_api/client/api_keys.rb, line 31
def create_api_key(user_id:, name:)
  data = post("/users/#{user_id}/api_keys", body: {name: name}.to_json).parse['api_key']
  data.nil? ? nil : ApiKey.new(data)
end
delete_api_key(user_id:, api_key_id:) click to toggle source

Deletes user API key

@param [Integer] user_id Strawberry user id @param [Integer] api_key_id Id of the API key to delete

@return [Boolean] Success

# File lib/strawberry_api/client/api_keys.rb, line 43
def delete_api_key(user_id:, api_key_id:)
  delete("/users/#{user_id}/api_keys/#{api_key_id}").success?
end