diff --git a/packages/requester-node-http/src/__tests__/unit/node-http-requester.test.ts b/packages/requester-node-http/src/__tests__/unit/node-http-requester.test.ts
index 7a0b17ae3..6314689b6 100644
--- a/packages/requester-node-http/src/__tests__/unit/node-http-requester.test.ts
+++ b/packages/requester-node-http/src/__tests__/unit/node-http-requester.test.ts
@@ -251,3 +251,31 @@ describe('error handling', (): void => {
     expect(response.isTimedOut).toBe(false);
   });
 });
+
+describe('requesterOptions', () => {
+  it('allows to pass requesterOptions', async () => {
+    const body = JSON.stringify({ foo: 'bar' });
+    const requesterTmp = createNodeHttpRequester({
+      requesterOptions: {
+        headers: {
+          'x-algolia-foo': 'bar',
+        },
+      },
+    });
+
+    nock('https://algolia-dns.net', {
+      reqheaders: {
+        ...headers,
+        'x-algolia-foo': 'bar',
+      },
+    })
+      .post('/foo')
+      .query({ 'x-algolia-header': 'foo' })
+      .reply(200, body);
+
+    const response = await requesterTmp.send(requestStub);
+
+    expect(response.status).toBe(200);
+    expect(response.content).toBe(body);
+  });
+});
diff --git a/packages/requester-node-http/src/createNodeHttpRequester.ts b/packages/requester-node-http/src/createNodeHttpRequester.ts
index c6bb94c03..ec3e66b00 100644
--- a/packages/requester-node-http/src/createNodeHttpRequester.ts
+++ b/packages/requester-node-http/src/createNodeHttpRequester.ts
@@ -10,6 +10,7 @@ export type NodeHttpRequesterOptions = {
   agent?: https.Agent | http.Agent;
   httpAgent?: http.Agent;
   httpsAgent?: https.Agent;
+  requesterOptions?: https.RequestOptions;
 };
 
 const agentOptions = { keepAlive: true };
@@ -20,6 +21,7 @@ export function createNodeHttpRequester({
   agent: userGlobalAgent,
   httpAgent: userHttpAgent,
   httpsAgent: userHttpsAgent,
+  requesterOptions = {},
 }: NodeHttpRequesterOptions = {}): Requester & Destroyable {
   const httpAgent = userHttpAgent || userGlobalAgent || defaultHttpAgent;
   const httpsAgent = userHttpsAgent || userGlobalAgent || defaultHttpsAgent;
@@ -32,11 +34,15 @@ export function createNodeHttpRequester({
         const path = url.query === null ? url.pathname : `${url.pathname}?${url.query}`;
 
         const options: https.RequestOptions = {
+          ...requesterOptions,
           agent: url.protocol === 'https:' ? httpsAgent : httpAgent,
           hostname: url.hostname,
           path,
           method: request.method,
-          headers: request.headers,
+          headers: {
+            ...(requesterOptions && requesterOptions.headers ? requesterOptions.headers : {}),
+            ...request.headers,
+          },
           ...(url.port !== undefined ? { port: url.port || '' } : {}),
         };