Проблема при запросе токена, мы получаем ошибку «Недействительный грант» (Response - 400). Пожалуйста, прикрепите код python, который мы используем для того же.
Мы также пытались сделать то же самое с почтальоном и получили то же сообщение об ошибке.
Мы также добавили URL обратного вызова на панели docusign
Пожалуйста, смотрите ниже код: -
import json
import requests
from django.core.mail import send_mail
from django.shortcuts import render, redirect
from django.http import HttpResponse, HttpResponseRedirect
import base64
from .utils import return_csv_values, np, get_current_day_month, return_csv_values_application
from .process_docments import embedded_signing_ceremony_contract, embedded_signing_ceremony_application
import pandas as pd
from .models import DocumentSigned
CLIENT_AUTH_ID = 'my integration id'
CLIENT_SECRET_ID = 'my secret id'
# Create your views here.
def get_access_token(request):
base_url = "https://account-d.docusign.com/oauth/auth"
auth_url = "{0}?response_type=code&scope=signature click.manage organization_read permission_read dtr.documents.read&client_id={1}&redirect_uri={2}" \
.format(base_url, CLIENT_AUTH_ID, "http://127.0.0.1:8000/auth_login")
# print(request.build_absolute_uri())
return HttpResponseRedirect(auth_url)
#callback url
def auth_login(request):
access_code = request.GET['code']
# return HttpResponse(access_code)
base_url = "https://account-d.docusign.com/oauth/token"
auth_code_string = '{0}:{1}'.format(CLIENT_AUTH_ID, CLIENT_SECRET_ID)
print(auth_code_string)
auth_token = base64.b64encode(auth_code_string.encode('utf-8'))
auth_token = auth_token.decode("utf-8")
print(auth_token)
req_headers = {"Authorization": "Basic {0}".format(auth_token), "Content-Type": "application/x-www-form-urlencoded"}
post_data = {'grant_type': 'authorization_code', 'code': access_code}
try:
r = requests.post(base_url, data=post_data, headers=req_headers)
print(r)
return HttpResponse(json.dumps(r))
except Exception as e:
print(str(e))
return HttpResponse(str(e))