class Attio::OAuth::Client
def exchange_code_for_token(code:, state: nil)
def exchange_code_for_token(code:, state: nil) raise ArgumentError, "Authorization code is required" if code.nil? || code.empty? params = { grant_type: "authorization_code", code: code, redirect_uri: redirect_uri, client_id: client_id, client_secret: client_secret } response = make_token_request(params) Token.new(response.merge(client: self)) end