solution = [ ]; $this->uri = '/token'; } /** * Create the TokenInstance * * @param string $grantType Grant type is a credential representing resource owner's authorization which can be used by client to obtain access token. * @param string $clientSid A 34 character string that uniquely identifies this OAuth App. * @param array|Options $options Optional Arguments * @return TokenInstance Created TokenInstance * @throws TwilioException When an HTTP error occurs. */ public function create(string $grantType, string $clientSid, array $options = []): TokenInstance { $options = new Values($options); $data = Values::of([ 'GrantType' => $grantType, 'ClientSid' => $clientSid, 'ClientSecret' => $options['clientSecret'], 'Code' => $options['code'], 'CodeVerifier' => $options['codeVerifier'], 'DeviceCode' => $options['deviceCode'], 'RefreshToken' => $options['refreshToken'], 'DeviceId' => $options['deviceId'], ]); $payload = $this->version->create('POST', $this->uri, [], $data); return new TokenInstance( $this->version, $payload ); } /** * Provide a friendly representation * * @return string Machine friendly representation */ public function __toString(): string { return '[Twilio.Oauth.V1.TokenList]'; } }