diff --git a/packages/analytics-core/src/plugins/destination.ts b/packages/analytics-core/src/plugins/destination.ts index a6aab0247..fe35cc7eb 100644 --- a/packages/analytics-core/src/plugins/destination.ts +++ b/packages/analytics-core/src/plugins/destination.ts @@ -163,6 +163,7 @@ export class Destination implements DestinationPlugin { const dropIndex = [ ...Object.values(res.body.eventsWithInvalidFields), ...Object.values(res.body.eventsWithMissingFields), + ...Object.values(res.body.eventsWithInvalidIdLengths), ...res.body.silencedEvents, ].flat(); const dropIndexSet = new Set(dropIndex); diff --git a/packages/analytics-core/src/utils/response-builder.ts b/packages/analytics-core/src/utils/response-builder.ts index 2c24ef974..53acd735a 100644 --- a/packages/analytics-core/src/utils/response-builder.ts +++ b/packages/analytics-core/src/utils/response-builder.ts @@ -33,6 +33,7 @@ export const buildResponse = (responseJSON: Record): Response | nul missingField: responseJSON.missing_field ?? '', eventsWithInvalidFields: responseJSON.events_with_invalid_fields ?? {}, eventsWithMissingFields: responseJSON.events_with_missing_fields ?? {}, + eventsWithInvalidIdLengths: responseJSON.events_with_invalid_id_lengths ?? {}, epsThreshold: responseJSON.eps_threshold ?? 0, exceededDailyQuotaDevices: responseJSON.exceeded_daily_quota_devices ?? {}, silencedDevices: responseJSON.silenced_devices ?? [], diff --git a/packages/analytics-core/test/plugins/destination.test.ts b/packages/analytics-core/test/plugins/destination.test.ts index f04f254bf..4489d00b4 100644 --- a/packages/analytics-core/test/plugins/destination.test.ts +++ b/packages/analytics-core/test/plugins/destination.test.ts @@ -325,6 +325,7 @@ describe('destination', () => { missingField: '', eventsWithInvalidFields: { a: [0] }, eventsWithMissingFields: { b: [] }, + eventsWithInvalidIdLengths: {}, silencedEvents: [], }, }); diff --git a/packages/analytics-core/test/utils/response-builder.test.ts b/packages/analytics-core/test/utils/response-builder.test.ts index 47c4923c1..29fbca9cf 100644 --- a/packages/analytics-core/test/utils/response-builder.test.ts +++ b/packages/analytics-core/test/utils/response-builder.test.ts @@ -53,6 +53,7 @@ describe('response-builder', () => { missing_field: 'field', events_with_invalid_fields: { a: 1 }, events_with_missing_fields: { a: 2 }, + events_with_invalid_id_lengths: {}, eps_threshold: 1, exceeded_daily_quota_devices: { a: 3 }, silenced_devices: ['a'], @@ -68,6 +69,7 @@ describe('response-builder', () => { missingField: 'field', eventsWithInvalidFields: { a: 1 }, eventsWithMissingFields: { a: 2 }, + eventsWithInvalidIdLengths: {}, epsThreshold: 1, exceededDailyQuotaDevices: { a: 3 }, silencedDevices: ['a'], @@ -90,6 +92,7 @@ describe('response-builder', () => { missingField: '', eventsWithInvalidFields: {}, eventsWithMissingFields: {}, + eventsWithInvalidIdLengths: {}, epsThreshold: 0, exceededDailyQuotaDevices: {}, silencedDevices: [], diff --git a/packages/analytics-types/src/response.ts b/packages/analytics-types/src/response.ts index 48e46af99..31fca9dfd 100644 --- a/packages/analytics-types/src/response.ts +++ b/packages/analytics-types/src/response.ts @@ -11,6 +11,7 @@ export interface InvalidRequestBody { missingField: string; eventsWithInvalidFields: { [eventField: string]: number[] }; eventsWithMissingFields: { [eventField: string]: number[] }; + eventsWithInvalidIdLengths: { [eventField: string]: number[] }; epsThreshold: 0; exceededDailyQuotaDevices: { [deviceId: string]: number }; silencedDevices: string[];