Thank you for reaching out to the API Support team here at Constant Contact.
Your redirect URI does need to be URL encoded, but it looks like you are double encoding it. The correct encoding for the redirect URI above should be: http%3A%2F%2Fniall.ngrok.io%2Fapi%2Fconstant_contact%2Fverify
The url encoded value for "%" is %25. It looks like you are url encoding the redirect URI, and then url encoding it again. If you are still seeing this error after correcting this, please send an email to webservices(at)constantcontact.com and include your API key.
Please let me know if you have any other questions!