Search API Connector Documentation
Troubleshooting
While using the API Connector add-on for Google Sheets, there may be cases where your API request doesn't work, or returns an error message. This article will describe some known issues and ways to troubleshoot issues with your API requests.
Contents
- Add-on Loading Continuously
- Add-on Menus Don't Work
- Authorization Errors
- Columns Shifting
- Cookies
- Error Messages
- Incorrect Content-Type
- Missing Fields (Filters)
- Missing Records (Pagination)
- Non-JSON/CSV/XML Response Types
- Pro Account Not Recognized
- Quotas and Limits
- Rate Limits
- Request Syntax Errors
- Requests Timing Out
- Restricted User Agent
- Restricted IP Address
- Scheduling Issues
- Sidebar Doesn't Scroll
- Un-even/Mismatched Output Rows
- Other
Add-on Stuck at Loading

If you see a screen like this after hitting Edit or Create request, it's likely because Google doesn't support multi-login (being logged into multiple Google Accounts at once) for Sheets extensions. To resolve, log out from all Google accounts and log back in first with the account you're using with Google Sheets (you can log back into your other accounts after) or re-open Sheets + API Connector in a new incognito window.
If you're using Safari, this same issue may cause the entire add-on interface to be blank white instead.
Add-on Buttons & Menus Don't Work
If you're having issues with unresponsive or frozen buttons and menus, this indicates a problem with your browser. Browsers like Brave, certain ad blockers, popup and cookie settings, and other extensions may prevent API Connector from functioning normally.
If the issue occurs after clicking Connect on an OAuth connection, first try disabling pop-up blockers:
- Chrome: https://support.google.com/chrome/answer/95472
- Firefox: https://support.mozilla.org/en-US/kb/pop-blocker-settings-exceptions-troubleshooting
Otherwise, run through the following suggestions. The exact cause of the issue depends on your browser, so you may need to try multiple suggestions from this list until your add-on works normally.
- disable all extensions and re-run. In Chrome, you can view all your browser extensions by clicking the three-dot menu in the top right of your browser and navigating to More tools > Extensions.
- Clear cache and cookies
- run the add-on in incognito/private browser mode.
- run the add-on in another browser
Authorization Errors
Make sure you've entered any required authorization credentials into the Headers table, and that you've encoded them to Base 64 if basic access authentication is required.
Columns Shifting
In some cases, an API returns data in a different order, or doesn't send keys that aren't populated with values, resulting in mismatched column orders between pulls.
The easiest way to keep columns in place is to click Edit fields after creating your request. This will open the visual field editor, where you can choose the fields you'd like to display in your sheet and map them to a specific column.
Alternative methods include:
- re-arrange data with a JMESPath expression
- query individual columns by name into a second sheet using this Sheets function, replacing
data
with your sheet name, andfield_name
with your field name:=QUERY(data!$1:$10000,"SELECT "&SUBSTITUTE(ADDRESS(1,MATCH("field_name",data!$1:$1,0),4),1,""),1)
Cookies
API Connector can't access and attach cookies to your request. This means that API Connector will not work with any API that requires cookies.
Error Messages
Pay attention to any error details as they will alert you to specific fields that need to be addressed. This article on Error Messages provides more details on each message.
Incorrect Content-Type
When making POST requests, we tell the server how to parse the content using a content-type header that describes the object’s format. For URL-encoded types, API Connector automatically sets the content type to application/x-www-form-urlencoded
, so you don't have to set it yourself. If your server expects a different content type, you can manually set content type of application/json
to override it, by entering Key = content-type
, Value = application/json
in the Headers table.
Missing Fields (Filters)
If you see fields in the raw response but not in your sheet, you may have inadvertently applied a JMESPath filter or a field mapping. To remove these please check the following:
- Click Output options > JMESPath and remove any JMESPath expression
- Click Edit Fields > Reset All to reset any field mapping
Missing Records (Pagination)
By default, many API servers return only a limited number of rows in each response. This is known as "pagination". To retrieve data you need to fetch data page by page.
In API Connector, you can automatically loop through paginated responses using pagination handling (paid feature).
Non-JSON/CSV/XML Response Types
API Connector supports all three major data formats: JSON, XML, and text/CSV. If you request data in another format, apply JMESPath that converts the response into a non-JSON/CSV/XML format, or request a 'regular' HTML website URL rather than an API endpoint, the request won't work as expected.
Pro Account Not Recognized
If API Connector doesn't recognize your upgraded account status after purchase, please double-check that you're using the same email address you entered into the purchase form. In addition, please click one of the Refresh status links or the Account icon in the footer to force a refresh of your account status.
If you've purchased the Team Plan, please make sure you've filled out this form for access.
Quotas and Limits
The API you're accessing may limit the number or rate of requests. Google Sheets itself also has built-in limits, as documented here: https://developers.google.com/apps-script/guides/services/quotas. There is a limit of 20,000 API calls quota per day per user, per sheet.
To avoid inadvertently reaching these limits, limit triggers and queries where possible (e.g. don't run hourly refreshes if you only need daily). Since these limits are per user, you may also hit the API limit if you're running your own custom scripts or functions in addition to requests from API Connector.
Rate Limits
Many APIs limit the number of requests you can send per minute. Generally API Connector doesn't hit these limits as it automatically inserts 2 second delays between stacked or paginated requests. However, there are two scenarios where it's more likely to run into rate limits:
- when using popular, open APIs (e.g. CoinGecko and Binance). These open APIs rate limit by IP address rather than API key, and large numbers of people use these APIs to pull data to Google Sheets. All requests in Google Sheets run through Google's shared IP address pool at the same time, such that rate limits can be triggered even when you personally aren't running a large number of requests. Because of this, it's generally best to find APIs limited by API keys rather than IP address.
- The IMPORTAPI custom function can rapidly fire off large numbers of requests. Please apply IMPORTAPI carefully or use the standard sidebar method to avoid these issues.
Request Syntax Errors
When you're reading API documentation, you'll likely see examples based on different coding languages. Don't copy these in directly -- API Connector is a no-code method of interaction with APIs, so pasting in code snippets won't work.
Right: https://api.football-v1.com/v2/players/player/29
Just type in the URL, any headers, and other options. Check the knowledge base for an example of what a completed API request looks like.
Requests Timing Out
Very large or deeply nested data sets may cause API Connector to time out or stop responding, due to Google Sheets' 6-minute per request limit. This will usually result in a "failed to run request" error message.
To resolve this issue, try any or all of the following:
- limit the size of your request. Most APIs let you limit request size via date- or ID-based query strings. You can usually use these query strings to fetch new data only instead of re-fetching an entire data set.
- switch to 'compact' or 'grid' report style. The algorithm for the default single-row output takes a little longer to run, since it needs to process and flatten all the nested data into a single row. Other output styles are faster as they don't perform this extra flattening.
- if you are using pagination handling, set the request to stop running once a page count has been reached or a specific field is empty. Running pagination until no data is returned may cause some requests to time out.
- use the field editor or JMESPath filters to reduce the number of fields printed into your sheet.
- processing time may increase if your sheet contains a lot of formulas that update as the API request changes cell values. Therefore, running your requests in a fresh new sheet may help.
Restricted User Agent
Google Apps script doesn't enable custom user agents. This means any request from API Connector will use Google script's default user agent 'Mozilla/5.0 (compatible; Google-Apps-Script)'. Unfortunately certain APIs may block requests from Google's User Agent. If that is the case, you will need to ask the platform to lift this restriction on their API.
Restricted IP Address
All API requests through Apps Script (the scripting language used by Sheets) originate from a set pool of IP ranges associated with Google's servers. This may prevent a request from resolving if the API has blocked requests from Google's IP addresses, or if the API requires all IP addresses to be whitelisted in advance.
Google provides all the IP ranges used by Apps Script here. Each IP address shown is followed by a slash (e.g. 34.80.0.0/15), indicating that it represents a range. To see the full range represented by each entry, you can use an IP range conversion tool like the one here: https://www.ipaddressguide.com/cidr.
Scheduling Issues
If you are experiencing issues with your scheduled reports, please consult this list of troubleshooting tips specific to triggers: Troubleshooting Triggers
Sidebar Doesn't Scroll
When using the Firefox browser, the scroll bar may not work consistently.
To address, open the hamburger menu in the top right and navigate to Settings > General > Performance. Untick the Use recommended performance settings box, as well as the Use hardware acceleration when available box.
Close and re-open Firefox, and scroll bars should work again.
After completing this, you can test re-enabling recommended performance settings.
Un-even/Mismatched Output Rows
JSON API responses frequently contain nested data rather than the column-by-column output you'd expect to see in a spreadsheet. Therefore API Connector add-on uses logic to convert JSON responses into a tabular format for Google Sheets. In certain cases, this results in mismatched output rows. If you experience this issue, try changing to a different report style.
Other
Still having trouble? Check out the knowledge base or leave a post in the user community. You'll receive a response shortly!
Ana, all my api calls have been working very well until yesterday.
I keep getting this error message:
Completed with errors
- Attribute provided with invalid value: Header:Redirect URL
This is the call:
https://api.sky.blackbaud.com/school/v1/academics/schedules/sets/11286
It works perfectly on the developer's page of Blackbaud
Not sure what I should try next.
Thanks very much,
Brian
Is this a request that you've been running without issue for a while, or is it a new request? The "Attribute provided with invalid value" error generally means there's an incorrect header key, does your request contain a header called "Redirect URL"?
Hi Ana
I'm receiving the error message below
This seems new to me. Even running the script several times doesn't help (it used to)... :/
Has the script stopped working?
---
1) Data: Completed with errors
- We received an error from coingecko.com (429) show response
{"status":{"error_code":429,"error_message":"You've exceeded the Rate Limit. Please visit https://www.coingecko.com/en/api/pricing to subscribe to our API plans for higher rate limits."}}
Nothing has changed on our side, but CoinGecko is sensitive to rate limits. Can you please try a different crypto API that doesn't have this issue? (e.g. CoinMarketCap).
Hello Ana,
I use Mixed Analytics on google sheet, when i try to edit my request, the loading fail and i get a screen with a cross.
is there trouble on your side ?
found the solutio, 🙂
Regards
Hey Nicolas, this sounds like it was the issue of being logged into multiple accounts at the same time. Glad you got it sorted out!
Hi
We are an accountancy firm that have multiple client companies that I wish to connect to google sheet to pull data from. It seems that I can only connect to one company and then have to disconnect the existing connections and create a new connection for another company. How do I create multiple Quickbooks connections ? (under OAuth)
Currently API Connector only enables one connection per service, but support for multiple connections is coming very soon!
Update: multiple OAuth connections are now available (info).
tôi đã gửi email về sự cố nhưng chưa được giải đáp . Có cả hình ảnh sự cố nhưng ở đây không có mục gửi ảnh lên . Xin check email để giúp đỡ tôi. Xin cảm ơn !
I responded to you twice via email, please check your spam folder if you don't see it. You can also check our Binance documentation for more information on that error message.
I have tried to follow step by step the process outlined here but once I run the request I created, the output it brings has column headers titled: count, next, previous, results:1 ...instead of exporting the data. What I'm I missing?
Please hit Edit fields > View raw response and check the raw response from your API request. If you see data there and not in your sheet, then most like you've applied a filter, and can remove it as described here. If the data isn't there at all then there's an issue with the request itself and you'll need to edit your request URL/body.
True, there was an issue with my request which i rectified. Nonetheless I have also learnt how to edit fields in the process. Thanks Ana!
Nice, thanks for the update 🙂