Appearance
Frequently Asked Questions (FAQ)
Overview
This page will answer common questions about Foundation API integration, including:
- Authentication
- Rate Limits
- Integration
- Troubleshooting
Authentication
How long do access tokens last?
Access tokens expire after one hour. Your application should request a new token when needed.
Can I use the same credentials for sandbox and production?
No. Sandbox and production use separate credentials for security. You'll receive different API keys for each environment.
Rate Limits
What are the rate limits?
- Standard tier: 500 requests/minute
- Professional tier: 2,000 requests/minute
- Enterprise tier: Custom limits
Rate limits are communicated during onboarding.
What happens if I exceed rate limits?
Coming soon
Can I request higher limits?
Coming soon
Integration
Which programming languages are supported?
Foundation provides SDKs for:
- C# / .NET - Full featured SDK
- JavaScript/TypeScript - Node.js and browser
You can also use any language that supports HTTPS and JSON via direct REST API calls.
Do you have a sandbox environment?
Yes. All developers get sandbox access with test data.
How do I test webhooks?
Coming soon
Troubleshooting
Why am I getting 401 errors?
"401 Unauthorized" typically means:
- Access token expired (tokens last one hour)
- Invalid credentials
- Token not included in request
How do I avoid non-printable character issues?
Printable Characters
IDs and text fields in FOUNDATION must be printable. Consequently, the API validates any text it receives before integrating it with FOUNDATION data. You can head off any validation issues by sanitizing your string before they are sent through our API using the following Regex Expression to validate your text:
\[\^ -\~\]+This Regex Expression is looking for a match with any character that is below ASCII32 and above ASCII126.
The following method demonstrates the validation in C#:
public static bool IsValid(this string arg)
{
if (arg == null) throw new ArgumentNullException();
string asciiBelow32AndAbove126 = "\[\^ -\~\]+";
Regex regEx = new Regex(asciiBelow32AndAbove126);
return !regEx.IsMatch(arg);
}Why am I getting 429 errors?
"429 Too Many Requests" means you've exceeded your rate limit. Wait 60 seconds and retry with exponential backoff.
Where can I find error codes?
Coming soon
Support
How do I contact support?
Please call (800) 811-5926 for support.
