     else
       this.loading()
       _L.post(
-        api + '/validate?uid=' + this.uid + '&email=' + email
+        this.api + '/validate?uid=' + this.uid + '&email=' + email
         this.config
         (res) =>
           this.loading false

    data.live = this.config.live if this.config.live
    if this.f.ill?.subscription?.url
      data.resolved = 'subscription'
      _L.post(api+'/ill', data, (() => window.location = this.f.ill.subscription.url), (() => window.location = this.f.ill.subscription.url))
    else if this.f.url
      data.resolved = 'open'
      _L.post(api+'/ill', data, (() => window.location = this.f.url), (() => window.location = this.f.url))
    else if this.f.ill?.openurl
      data.resolved = 'library'
      _L.post(api+'/ill', data, (() => window.location = this.f.ill.openurl), (() => window.location = this.f.ill.openurl))

  _L.show '#_oab_findings'
  if this.f.ill?.error


_oab.prototype.openurl = () -> # only used by instantill
  _L.post(
    this.api+'/ill/openurl?uid='+this.uid + (if this.data.usermetadata then '&usermetadata=true' else '')
    (if this.uid then this.f.metadata else {metadata: this.f.metadata, config: this.config})
    (res) => window.location = res
    (data) =>
