title: Custom grant type for PassportServiceProvider (Laravel)
body: <p>Tried to implement custom grant service provider according to this manual:</p>
  
  <p><a href="https://github.com/mikemclin/passport-custom-request-grant" rel="nofollow noreferrer">https://github.com/mikemclin/passport-custom-request-grant</a></p>
  
  <p>Inside the <code>register method</code> we're getting the auth server instance (with helper method) and then adding our grant using AuthServer:</p>
  
  <pre><code>public function register()
      {
          app(AuthorizationServer::class)-&gt;enableGrantType($this-&gt;makeCustomRequestGrant(), Passport::tokensExpireIn());
      }
  </code></pre>
  
  <p>This doesn't work for me. I tried to register my grant another way:</p>
  
  <pre><code>$this-&gt;app-&gt;singleton(AuthorizationServer::class, function () {
              return tap($this-&gt;makeAuthorizationServer(), function ($server) {
                  $server-&gt;enableGrantType(
                      $this-&gt;makeCustomRequestGrant(), Passport::tokensExpireIn()
                  );
              });
          });
  </code></pre>
  
  <p>How can I "extend" my singleton server instance with another one grant? In my case I just instantiated the new one, so previous grant types become unsupported.</p>
  
  <p>The main goal is to create grant that will be using another model - customers (not users) and activation codes for grant. User will attempt for codes using client_credentials and then he can make api queries using activation code grant - with another scopes.</p>