Quentin Stenger
07/24/2026, 3:46 PMkapa.ai
07/24/2026, 3:46 PMrefresh_request_headers field on the OAuthAuthenticator. [YAML Reference]
Base64 Encoding You do not need to encode the string separately. Airbyte's declarative OAuth supports a b64encode pipe/filter function directly within the template interpolation syntax. [Template Variables]
For example, to base64-encode a static string:
refresh_request_headers:
Authorization: "Basic {{ 'your_static_string_here' | b64encode }}"
Content-Type: "application/x-www-form-urlencoded"
Or, if the string is a combination of your client ID and secret (a common pattern):
refresh_request_headers:
Authorization: "Basic {{ (config['client_id'] ~ ':' ~ config['client_secret']) | b64encode }}"
Content-Type: "application/x-www-form-urlencoded"
This pattern is used in real connectors â for example, the Airtable and Gong connectors both use this approach: [Airtable manifest] [Gong manifest]
refresh_request_headers:
Authorization: "Basic {{ [config['credentials']['client_id'], config['credentials']['client_secret']] | join(':') | base64encode }}"
Content-Type: "application/x-www-form-urlencoded"
> Note: Both b64encode and base64encode appear in the examples in the knowledge sources â use whichever is consistent with your CDK version.
Since your string is the same for all requests, you can simply hardcode it as a literal string in the template:
refresh_request_headers:
YourCustomHeader: "{{ 'my_static_value' | b64encode }}"
This keeps everything within the declarative config â no separate pre-encoding step needed. đ 0 button đ 0 button âšī¸ Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.