diff --git a/packages/client/src/classes/client.js b/packages/client/src/classes/client.js index 74bb23446..f473f8422 100644 --- a/packages/client/src/classes/client.js +++ b/packages/client/src/classes/client.js @@ -31,6 +31,7 @@ class Client { url: '', method: 'GET', headers: {}, + maxContentLength: Infinity, // Don't limit the content length. }; } diff --git a/packages/client/src/client.spec.js b/packages/client/src/client.spec.js index dbf0421e1..445cb9179 100644 --- a/packages/client/src/client.spec.js +++ b/packages/client/src/client.spec.js @@ -74,6 +74,28 @@ describe('client', () => { .then(() => scope.done()); }); }); + + it('should allow large payloads', () => { + const request = { + body: { + content: [ + { + type: 'text/plain', + value: '#'.repeat(1024 * 1024 * 25), // 25 MB, + }, + ], + from: { + email: 'me@you.com', + }, + personalizations: [], + subject: 'Hello, World!', + }, + method: 'POST', + url: '/v3/mail/send', + }; + + return testRequest(request, 202); + }); }); describe('setImpersonateSubuser', () => { @@ -81,7 +103,7 @@ describe('setImpersonateSubuser', () => { const sgClient = require('./client'); sgClient.setImpersonateSubuser(impersonateSubuser); - it('should set the imperonate subuser header', () => { + it('should set the impersonate subuser header', () => { expect(sgClient.impersonateSubuser).to.equal(impersonateSubuser); }); });