[Issue] Not sending a User-Agent on your Deepgram Client #1001
-
Earlier, one of my engineers notified me of a blocker they experienced while attempting to integrate Deepgram. To be clear, we are a paid customer. Specifically, when providing a URL to the audio file in the Deepgram request, we discovered that you are not sending this request with a User-Agent. This is unsafe and, as we've experienced, causes our AWS firewall to block such requests. An HTTP request without a user agent is similar to suspicious web scraping requests that are typically filtered out by firewalls. By not sending this, you are indicating that your service is incompatible and insecure for use with AWS WAF. I suspect Cloudflare would also block such requests, though I haven't verified this myself. |
Beta Was this translation helpful? Give feedback.
Replies: 6 comments 6 replies
-
Hey there! It looks like you haven't connected your GitHub account to your Deepgram account. You can do this at https://community.deepgram.com - being verified through this process will allow our team to help you in a much more streamlined fashion. |
Beta Was this translation helpful? Give feedback.
-
It looks like we're missing some important information to help debug your issue. Would you mind providing us with the following details in a reply?
|
Beta Was this translation helpful? Give feedback.
-
Hi @imdadahad Our SDKs allow you to set a custom header, so if you are able to use one of Deepgram's SDKs, you could try adding a header like this: global: {
fetch: { options: { headers: { "custom_header": "header_value" } } },
}, Here's the documentation for the JS SDK, but this is also something that can be done in our Go, .NET, and Python SDKs |
Beta Was this translation helpful? Give feedback.
-
@imdadahad It has come to my attention that perhaps you are trying to validate the callback response? If so, you could compare the See documentation at https://developers.deepgram.com/docs/callback#authenticating-callback-requests |
Beta Was this translation helpful? Give feedback.
-
We are using the Here is a brief example:
Once this request is initiated, our API receives it but the custom
We are using version |
Beta Was this translation helpful? Give feedback.
-
That makes sense, I did assume that the request was being sent by Deepgram's server. My guess is that it's being stripped somewhere in transmission due to some firewall filtering rules. In any case, your engineers will know best. Okay sure. It's definitely one they should probably prioritise (on a security level) as it means customers who have firewalls won't be able to send these URLs for transcription. |
Beta Was this translation helpful? Give feedback.
From what I understand, your remote-audio is behind an AWS WAF managed by the core ruleset which will filter out anything without a User-Agent. Unfortunately, at this time, we currently do not have an ability to send custom headers to a remote server we are fetching audio from. And I can't give you a firm answer about Deepgram adding a User-Agent header because that is something the engineers would have to investigate at a later date.
As of now, I would suggest one of two options: