# API column issues

**URL:** <https://community.glideapps.com/t/api-column-issues/81394>\
**Category:** Ask for Help\
**Created:** [April 17, 2025, 4:08pm UTC](https://community.glideapps.com/t/api-column-issues/81394 "2025-04-17T16:08:05Z")\
**Posts on this page:** 17\
**Page:** 1

<div class="post-metadata">

**Author:** ![Simon\_Hill](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/simon_hill/32/94730_2.png) [@Simon\_Hill](https://community.glideapps.com/u/Simon_Hill)\
**Post date:** [April 17, 2025, 4:08pm UTC](https://community.glideapps.com/t/api-column-issues/81394/1 "2025-04-17T16:08:05Z")

</div>

Hi everyone,

I’m currently working on an API integration with Glide and Google Apps Script. Specifically, I’m trying to create an API that submits a call to a Google Script for chess move validation. While I’ve done a lot of troubleshooting, including using guidance from GPT, I keep getting errors when I use the API in Glide’s API column.

I’ve confirmed that the Google Script itself is functioning as expected. When I construct the API call using tools outside Glide, it responds correctly. However, when I use it within Glide, it consistently fails.

Here is the test URL that works for me when tested directly:

**Working Test URL:** [https://script.googleusercontent.com/macros/echo?user\_content\_key=AehSKLgczdTFP2icwbfOBstFjkndIP5DSLvIXr83LxUcSKsQnC0oNDD5B2pMOj1qWZevSFh\_zI7PX59\_YbV1ws996Mz3Hcrjv\_4JESHUXHKkXUEgEnycNt-GI\_H3zJlzRblQGZOukwzr22-FZgvqBss5Rl4OieSD3YfnVeM7M4TzuhqaGQiYRSUUXXrPQhXqcOty1a1oFLWgc0IrzxIxSVZrg6R09hEwMIE-6emy97qFw0rqB6ACY-hlBtEDhghIw-Oq2\_8zHXXgG9qINZetuN5KwfNWj8K0nE9nWlmZveu6H0ljGX8QcVIqlp2eKJJCvINwsK9aVnPSjEKy2FfYD-IX6160Y5gahOUIz\_vhiMEPVRK8bUaSNIng1Mx6CNeKTIeAXpOkL4NmIzPsHd2rQrs&lib=MKmZATJM5XVaPMAivzrWOsQ0Aom0n77cC](https://script.googleusercontent.com/macros/echo?user_content_key=AehSKLgczdTFP2icwbfOBstFjkndIP5DSLvIXr83LxUcSKsQnC0oNDD5B2pMOj1qWZevSFh_zI7PX59_YbV1ws996Mz3Hcrjv_4JESHUXHKkXUEgEnycNt-GI_H3zJlzRblQGZOukwzr22-FZgvqBss5Rl4OieSD3YfnVeM7M4TzuhqaGQiYRSUUXXrPQhXqcOty1a1oFLWgc0IrzxIxSVZrg6R09hEwMIE-6emy97qFw0rqB6ACY-hlBtEDhghIw-Oq2_8zHXXgG9qINZetuN5KwfNWj8K0nE9nWlmZveu6H0ljGX8QcVIqlp2eKJJCvINwsK9aVnPSjEKy2FfYD-IX6160Y5gahOUIz_vhiMEPVRK8bUaSNIng1Mx6CNeKTIeAXpOkL4NmIzPsHd2rQrs&lib=MKmZATJM5XVaPMAivzrWOsQ0Aom0n77cC)

The test URL works perfectly when I pass the parameters like `fen=rnbqkbnr/pppppppp/8/8/8/3P4/PPP1PPPP/RNBQKBNR%20b%20KQkq%20-%200%201&move=d2d3`. However, when I try using the API column in Glide, I encounter errors.

Is it possible that the API in Glide is unreliable, or might I be missing something in the setup? Any assistance or insights would be greatly appreciated.

I have tried Get and the Post with query fields all set correctly to send the variable fen and move… as you can see the test URL confirms the Google Script is working, the issue must be with Glide.

Thank you in advance!  
Simon.

---

<div class="post-metadata">

**Author:** ![MaximeBaker](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/maximebaker/32/80877_2.png) [@MaximeBaker](https://community.glideapps.com/u/MaximeBaker)\
**Post date:** [April 17, 2025, 4:11pm UTC](https://community.glideapps.com/t/api-column-issues/81394/2 "2025-04-17T16:11:49Z")

</div>

Did you set the header “Content-Type” property in the Call API column?

---

<div class="post-metadata">

**Author:** ![Simon\_Hill](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/simon_hill/32/94730_2.png) [@Simon\_Hill](https://community.glideapps.com/u/Simon_Hill)\
**Post date:** [April 17, 2025, 4:14pm UTC](https://community.glideapps.com/t/api-column-issues/81394/3 "2025-04-17T16:14:10Z")

</div>

I did not enter anything in the header… thanks for the tip. I can use GPT to ask what this might mean I guess unless there are 1 or 2 things for you to suggest

---

<div class="post-metadata">

**Author:** ![MaximeBaker](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/maximebaker/32/80877_2.png) [@MaximeBaker](https://community.glideapps.com/u/MaximeBaker)\
**Post date:** [April 17, 2025, 4:15pm UTC](https://community.glideapps.com/t/api-column-issues/81394/4 "2025-04-17T16:15:29Z")

</div>

I really suggest you feeding the header 🙂

---

<div class="post-metadata">

**Author:** ![Simon\_Hill](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/simon_hill/32/94730_2.png) [@Simon\_Hill](https://community.glideapps.com/u/Simon_Hill)\
**Post date:** [April 17, 2025, 5:46pm UTC](https://community.glideapps.com/t/api-column-issues/81394/5 "2025-04-17T17:46:09Z")

</div>

I followed this advice:

The response about setting the “Content-Type” header is a helpful tip. It sounds like the issue might be related to how the request is being sent to Glide, and the header is crucial for the request to be processed correctly.

You can add the “Content-Type” header as follows in Glide’s **API column** :

1. Open your Glide app.
2. Go to the **API column** settings.
3. Add the header **Content-Type** and set it to **application/x-www-form-urlencoded** or **application/json** (depending on what the Google script expects).

But it did not fix the issue.

 ![image](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/1/5/156bfa90b9716c6ce2efedbaf4c5a7a4f7f7bee8.png)

---

<div class="post-metadata">

**Author:** ![MaximeBaker](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/maximebaker/32/80877_2.png) [@MaximeBaker](https://community.glideapps.com/u/MaximeBaker)\
**Post date:** [April 18, 2025, 12:26am UTC](https://community.glideapps.com/t/api-column-issues/81394/6 "2025-04-18T00:26:39Z")

</div>

You are getting a 302 redirect status. That means the Endpoint you sre trying to reach is redirecting on another URL. Try with the redirected URL directly.

---

<div class="post-metadata">

**Author:** ![ThinhDinh](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/thinhdinh/32/49_2.png) [@ThinhDinh](https://community.glideapps.com/u/ThinhDinh)\
**Post date:** [April 18, 2025, 12:27am UTC](https://community.glideapps.com/t/api-column-issues/81394/7 "2025-04-18T00:27:16Z")

</div>

Have you deployed the latest version of your code?

---

<div class="post-metadata">

**Author:** ![MaximeBaker](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/maximebaker/32/80877_2.png) [@MaximeBaker](https://community.glideapps.com/u/MaximeBaker)\
**Post date:** [April 18, 2025, 12:27am UTC](https://community.glideapps.com/t/api-column-issues/81394/8 "2025-04-18T00:27:18Z")

</div>

Well actually, @comm_support_agent this must not be considered failure…

---

<div class="post-metadata">

**Author:** ![Simon\_Hill](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/simon_hill/32/94730_2.png) [@Simon\_Hill](https://community.glideapps.com/u/Simon_Hill)\
**Post date:** [April 18, 2025, 5:16am UTC](https://community.glideapps.com/t/api-column-issues/81394/9 "2025-04-18T05:16:47Z")

</div>

I did deploy and as me with Anyone can access…. I have had versions that have worked but needed updating with new code. So I know it can work…. Just that any version I create now works outside of Glide but not when called via my Glide app.

The link I’m using is not the latest version, maybe it’s trying to redirect to a newer version…. I will try to delete all old versions and deploy the latest only.

---

<div class="post-metadata">

**Author:** ![Darren\_Murphy](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/darren_murphy/32/47326_2.png) [@Darren\_Murphy](https://community.glideapps.com/u/Darren_Murphy)\
**Post date:** [April 18, 2025, 5:38am UTC](https://community.glideapps.com/t/api-column-issues/81394/10 "2025-04-18T05:38:19Z")

</div>

I have done this before. The way it works for me is to send a POST request with a JSON body.

Here is what the Call API node setup looks like:

 ![CleanShot 2025-04-18 at 13.33.58@2x](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/7/b/7bf14c61d394567ab413b101f28ecdbcdeba85b2.jpeg)

And the JSON payload:

 ![CleanShot 2025-04-18 at 13.34.34@2x](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/2/0/20683799db019cfc6e90a3e1ce32d31013e505bf.png)

One thing I do know is if you make any edits to the Apps Script, the endpoint breaks and must be redeployed. You can do this without changing the URL by selecting Manage Deployments:

 ![CleanShot 2025-04-18 at 13.37.06@2x](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/5/1/51977327a3efc7030a5b48900986a0a4deb558d0.png)

Then select the previous deployment and create a new version.

---

<div class="post-metadata">

**Author:** ![Simon\_Hill](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/simon_hill/32/94730_2.png) [@Simon\_Hill](https://community.glideapps.com/u/Simon_Hill)\
**Post date:** [April 18, 2025, 6:04am UTC](https://community.glideapps.com/t/api-column-issues/81394/11 "2025-04-18T06:04:01Z")

</div>

Thanks… I noticed you didn’t use any Header info, e.g. to confirm you are sending a json. Is the header info optional typically?

---

<div class="post-metadata">

**Author:** ![Darren\_Murphy](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/darren_murphy/32/47326_2.png) [@Darren\_Murphy](https://community.glideapps.com/u/Darren_Murphy)\
**Post date:** [April 18, 2025, 6:08am UTC](https://community.glideapps.com/t/api-column-issues/81394/12 "2025-04-18T06:08:47Z")

</div>

I’m not sure to be honest. My guess is that Content-Type is application/json by default, so in this case it’s not necessary to explicitly provide it.

---

<div class="post-metadata">

**Author:** ![Simon\_Hill](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/simon_hill/32/94730_2.png) [@Simon\_Hill](https://community.glideapps.com/u/Simon_Hill)\
**Post date:** [April 18, 2025, 7:15am UTC](https://community.glideapps.com/t/api-column-issues/81394/13 "2025-04-18T07:15:39Z")

</div>

So I deployed a completely new version. It is working since it has a doget and a dopost function that works… you can test it with this URL directly in a web browser:

[https://script.google.com/macros/s/AKfycbwMIY5rhp-6-HUdrKSSAx0TZDpwpTEOc\_0hcpNqqXnudHRwOzMtZKZhUrP8wgymIG3CYw/exec?fen=rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR%20w%20KQkq%20-%200%201&move=e2e4](https://script.google.com/macros/s/AKfycbwMIY5rhp-6-HUdrKSSAx0TZDpwpTEOc_0hcpNqqXnudHRwOzMtZKZhUrP8wgymIG3CYw/exec?fen=rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR%20w%20KQkq%20-%200%201&move=e2e4)

It functions perfectly outside of Glide. but when I try in Glide I get error 302. So frustrating. I have triple checked all the workflow parameters.

 ![image](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/3/a/3a2f827fbcaf34e45a177ca8015ee705e76308d7.png)

---

<div class="post-metadata">

**Author:** ![Darren\_Murphy](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/darren_murphy/32/47326_2.png) [@Darren\_Murphy](https://community.glideapps.com/u/Darren_Murphy)\
**Post date:** [April 18, 2025, 7:23am UTC](https://community.glideapps.com/t/api-column-issues/81394/14 "2025-04-18T07:23:37Z")

</div>

I get a 400 in a browser.

 ![CleanShot 2025-04-18 at 15.23.00@2x](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/e/9/e980f16d3873b3990e979a026ca47207541e70d4.jpeg)

---

<div class="post-metadata">

**Author:** ![Simon\_Hill](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/simon_hill/32/94730_2.png) [@Simon\_Hill](https://community.glideapps.com/u/Simon_Hill)\
**Post date:** [April 18, 2025, 7:40am UTC](https://community.glideapps.com/t/api-column-issues/81394/15 "2025-04-18T07:40:56Z")

</div>

Interesting. Thanks for testing the link. I did set the deployment to as Me but for Anyone. I’m a bit stumped.

Also on my phone I get this screen

 ![image](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/d/7/d7aca947008a0c82e50a26f92a3df85e32d12da7.jpeg)

but other people in my family also get the error message. I guess the access to the web app is not unrestricted despite attempting to define Anyone in the deployment step…

---

<div class="post-metadata">

**Author:** ![Darren\_Murphy](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/darren_murphy/32/47326_2.png) [@Darren\_Murphy](https://community.glideapps.com/u/Darren_Murphy)\
**Post date:** [April 18, 2025, 7:55am UTC](https://community.glideapps.com/t/api-column-issues/81394/16 "2025-04-18T07:55:58Z")

</div>

Yeah, it does seem like a permissions issue.

---

<div class="post-metadata">

**Author:** ![Simon\_Hill](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/simon_hill/32/94730_2.png) [@Simon\_Hill](https://community.glideapps.com/u/Simon_Hill)\
**Post date:** [April 18, 2025, 7:59am UTC](https://community.glideapps.com/t/api-column-issues/81394/17 "2025-04-18T07:59:27Z")

</div>

I thought this was correct…

Execute as Me  
Access: Anyone

 ![image](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/2/6/26bba1d55c367fc268c118c1fd5e14f5e0e1f082.png)
