Stripe.StripeOAuthTokenService.Create C# (CSharp) Method

Create() public method

public Create ( Stripe.StripeOAuthTokenCreateOptions createOptions, Stripe.StripeRequestOptions requestOptions = null ) : StripeOAuthToken
createOptions Stripe.StripeOAuthTokenCreateOptions
requestOptions Stripe.StripeRequestOptions
return StripeOAuthToken
        public virtual StripeOAuthToken Create(StripeOAuthTokenCreateOptions createOptions, StripeRequestOptions requestOptions = null)
        {
            return Mapper<StripeOAuthToken>.MapFromJson(
                Requestor.PostStringBearer(this.ApplyAllParameters(createOptions, Urls.OAuthToken, false),
                SetupRequestOptions(requestOptions))
            );
        }

Usage Example

        public bool UpdateStripeKey(string stripeKey, Guid privateId)
        {
            try
            {
                var stripeService = new StripeOAuthTokenService(ConfigurationManager.AppSettings["StripeApiKey"]);
                var stripeTokenOptions = new StripeOAuthTokenCreateOptions() { Code = stripeKey, GrantType = "authorization_code" };
                var response = stripeService.Create(stripeTokenOptions);

                var dc = new ManagementContext();
                var merc = dc.Merchants.Where(x => x.PrivateManagerId == privateId).FirstOrDefault();

                if (merc != null && !String.IsNullOrEmpty(response.AccessToken))
                {
                    merc.StripeConnectToken = response.AccessToken;
                    merc.StripePublishableKey = response.PublishableKey;
                    merc.StripeRefreshToken = response.RefreshToken;
                    merc.StripeUserId = response.StripeUserId;
                    merc.StripeTokenType = response.TokenType;
                    merc.StripeConnectKey = stripeKey;
                    merc.AcceptPaymentsViaStripe = true;
                    dc.SaveChanges();
                    return true;
                }
            }
            catch (Exception exception)
            {
                ErrorDatabaseManager.AddException(exception, exception.GetType());
            }
            return false;
        }