Error Code 1020

Description
Details on your question, workflow or the problem you’re trying to solve.
Getting 403 Forbidden, Error Code 1020 on calls using valid JWT auth tokens. Only occurring on some AWS services. Using the same JWT token on other services/machines making the same calls works with no issues.

I don’t even see the failed requests in my development call logs.

These services have been running working and unchanged for several months.

Error?
error Code: 1020

1 Like

Hi @tommy ,

We are facing the same problem of getting status code Forbidden with error code: 1020 from Zoom API.

Could you please take a look at what is causing the problem as it is an urgent situation because our services cannot use the Zoom API and it is causing huge problems in our system at this moment.

Thanks.

We’re also seeing this – from docker inside codespaces (I’m not sure if those are hosted at aws).

Response: GET /v2/users/me HTTP/1.1
 Host: api.zoom.us
 User-Agent: Go-http-client/1.1
 Transfer-Encoding: chunked
 Authorization: Bearer <<OUR_VALID_ACCESS_TOKEN>>
 Accept-Encoding: gzip
 
 =================================
 
 HTTP/1.1 403 Forbidden
 Content-Length: 16
 Alt-Svc: h3=":443"; ma=86400, h3-29=":443"; ma=86400
 Cache-Control: private, max-age=0, no-store, no-cache, must-revalidate, post-check=0, pre-check=0
 Cf-Ray: 7661a368fad2c4cf-SEA
 Connection: keep-alive
 Content-Type: text/plain; charset=UTF-8
 Date: Sun, 06 Nov 2022 23:34:10 GMT
 Expires: Thu, 01 Jan 1970 00:00:01 GMT
 Nel: {"success_fraction":0.01,"report_to":"cf-nel","max_age":604800}
 Referrer-Policy: same-origin
 Report-To: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=nwKfj7Tcfasbxo%2FVbnDd%2BUgjXADM85Iw5HtIHOWUJIL86yetR6g6y%2BRDb%2B%2FNEHfCPWCM4Ztt8db2wNOF9i1UzRVSQlH3SHpo0F2s8vTF8wCYnMQYkV5VsDPkAUiy"}],"group":"cf-nel","max_age":604800}
 Server: cloudflare
 Set-Cookie: __cf_bm=CFNvWjKM2YZwXCxFUDz4BktB5s8eWO92i_3Y5mYW7xk-1667777650-0-AYQ2z/e8uNlxgkGh9lomkFN560fzBOAx+IBdbx4hfep0SdLwoTq7ZKXDugMxgChdrTT6IzHwuOh6kD9zFnBpZGQ=; path=/; expires=Mon, 07-Nov-22 00:04:10 GMT; domain=.zoom.us; HttpOnly; Secure; SameSite=None
 Vary: Accept-Encoding
 X-Frame-Options: SAMEORIGIN
 
 error code: 1020

We’re also seeing the 1020 error when making requests from Go. We’ve tried the same headers and token from Postman and JS, which work correctly.

I’m not sure why this would be the case, but could this be related to some change made with the SDK mandatory upgrade?

1 Like

We have also been facing exactly the same issues since last 18 hours. There has been no response from zoom support. It is creating a big production impact for us.

Issue seems to be have been resolved for us now. Yet to hear back on the root cause

Issue looks resolved on our end, but we would also like a root cause.

This is still an issue making requests from go.

1 Like

Update: this looks to be a cloudflare firewall issue that zoom has configured (based on the HTML page returned when we add Accept: */* to the headers.

https://support.cloudflare.com/hc/en-us/articles/360029779472-Troubleshooting-Cloudflare-1XXX-errors?utm_source=1020_error#error1020

The ray ID is 766759ae4ef7c37c

Confirmed we are also still seeing the issue from Go, but not from JS (we made a proxy in JS to temporarily fix the problem)

AFAICT the issue is with Zoom/Cloudflare no longer accepting Transfer-Encoding: chunked. We changed the underlying HTTP client and finally got things working. Quite frustrating.

1 Like

golang fix:

HTTP/2 - work well

http.Client{ 
   Transport: &http.Transport{ 
   ForceAttemptHTTP2: true,

How do you write a program to print the Fibonacci series 0, 1,1,2,3,5,8…n?
#include <stdio.h>
int main() {

int i, n;

// initialize first and second terms
int t1 = 0, t2 = 1;

// initialize the next term (3rd term)
int nextTerm = t1 + t2;

// get no. of terms from user
printf(“Enter the number of terms: “);
scanf(”%d”, &n);

// print the first two terms t1 and t2
printf("Fibonacci Series: %d, %d, ", t1, t2);

// print 3rd to nth terms
for (i = 3; i <= n; ++i) {
printf("%d, ", nextTerm);
t1 = t2;
t2 = nextTerm;
nextTerm = t1 + t2;
}

return 0;
}

Learnt it from Tap Academy