Just a small typo, it seems. In `url-auth.el' at (setq user (or (url-do-auth-source-search server type :user) (read-string (url-auth-user-prompt url realm) ; <-- here (or user (user-real-login-name)))) pass (or (url-do-auth-source-search server type :secret) (read-passwd "Password: " nil (or pass "")))) `url` should be `href`. This will prevent a type-mismatch when calling `url-basic-auth` as (url-basic-auth "http://my.api.com" t) The workaround for this bug is calling it as (url-basic-auth (url-generic-parse-url "http://my.api.com") t) This function should be inspected for other such bugs, but this is the only one I've come across personally. -Sean In GNU Emacs 25.1.1 (x86_64-apple-darwin13.4.0, NS appkit-1265.21 Version 10.9.5 (Build 13F1911)) of 2016-09-20 built on builder10-9.porkrind.org Windowing system distributor 'Apple', version 10.3.1504 Configured using: 'configure --with-ns '--enable-locallisppath=/Library/Application Support/Emacs/${version}/site-lisp:/Library/Application Support/Emacs/site-lisp' --with-modules' Configured features: NOTIFY ACL GNUTLS LIBXML2 ZLIB TOOLKIT_SCROLL_BARS NS MODULES Important settings: value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix [[cruft/pii removed]]