From 783a45537dc17f1c1f7ccab463e688644b449320 Mon Sep 17 00:00:00 2001 From: Loi Le Date: Thu, 9 Oct 2025 10:04:42 +0700 Subject: [PATCH 1/3] [CMX-3964] - Update Reporting API --- spec/openapi.yaml | 76 +++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 71 insertions(+), 5 deletions(-) diff --git a/spec/openapi.yaml b/spec/openapi.yaml index f6e39e7..4fe01c1 100644 --- a/spec/openapi.yaml +++ b/spec/openapi.yaml @@ -6217,6 +6217,21 @@ components: example: "true" message_format: $ref: '#/components/schemas/format' + channels: + description: Filter the report by one or more message channels. + type: array + items: + type: string + enum: + - SMS + - MMS + - TTS + - RCS + - WHATSAPP + - CHANNEL + example: + - SMS + - WHATSAPP page: description: Page number for paging through paginated result sets. type: number @@ -6387,16 +6402,16 @@ components: type: object properties: start_date: - description: Start date time for report window. By default, the timezone for this parameter will be taken from the account settings for the account associated with the credentials used to make the request, or the account included in the Account parameter. This can be overridden using the timezone parameter per request. The date must be in ISO8601 format. + description: Start date time for report window. By default, the timezone for this parameter will be taken from the account settings for the account associated with the credentials used to make the request, or the account included in the Account parameter. This can be overridden using the timezone parameter per request. The date must be in ISO8601 format and may include precise time values (e.g., milliseconds). type: string - example: "2022-12-12T00:00:00.000z" + example: "2022-12-12T01:01:01.001z" end_date: description: End date time for report window. By default, the timezone for this parameter will be taken from the account settings for the account associated with the credentials used to make the request, or the account included in the Account parameter. - This can be overridden using the timezone parameter per request. The date must be in ISO8601 format, and after the requested start_date. + This can be overridden using the timezone parameter per request. The date must be in ISO8601 format, and after the requested end_date and may include precise time values (e.g., milliseconds). type: string - example: "2022-12-14T00:00:00.000z" + example: "2022-12-14T01:01:01.001z" timezone: description: The timezone of the messages to include, using the name of the region. type: string @@ -6443,11 +6458,27 @@ components: description: Filter the report to only include messages that triggered an opt-out type: string example: "true" + channels: + # TODO: Update docs on 16/Oct/2026 once 13 months of data are available. + description: Filter the report by one or more message channels. Supported from 14/Aug/2025, and data is available only for reports starting from this date. + type: array + items: + type: string + enum: + - SMS + - MMS + - TTS + - RCS + - WHATSAPP + - CHANNEL + example: + - SMS + - WHATSAPP group_by: description: Group results by a list of values, from the enumerable table above. type: array items: - $ref: '#/components/schemas/GroupByField' + $ref: '#/components/schemas/GroupByInsightField' example: - WEEK - ACCOUNT @@ -7403,6 +7434,21 @@ components: type: string description: The status of the message example: enroute + RichMessageType: + title: RichMessageType + type: string + # TODO: Update docs on 16/Oct/2026 once 13 months of data are available. + description: The type of rich message. Supported from 09/Sep/2025, and data is available only for reports starting from this date. + enum: + - TEXT_MESSAGE + - MEDIA_MESSAGE + - LOCATION_MESSAGE + - CHOICE_RESPONSE_MESSAGE + - MEDIA_CARD_MESSAGE + - CARD_MESSAGE + - CAROUSEL_MESSAGE + - CHOICE_MESSAGE + example: TEXT_MESSAGE Message: title: Message required: @@ -7548,6 +7594,8 @@ components: type: number description: The amount of messages received example: 1 + message_type: + $ref: '#/components/schemas/RichMessageType' metadata: type: object description: >- @@ -9499,6 +9547,24 @@ components: - STATUS type: string example: DAY + GroupByInsightField: + title: GroupByInsightField + # TODO: Update docs on 16/Oct/2026 once 13 months of data are available. + description: Defines available fields for grouping insights reports. COUNTRY and CHANNEL are supported from 14/Aug/2025, and POSTBACK_DATA is supported from 16/Sep/2025, with data available only from those dates onward. + enum: + - ACCOUNT + - DAY + - WEEK + - MONTH + - YEAR + - METADATA_KEY + - METADATA_VALUE + - STATUS + - COUNTRY + - CHANNEL + - POSTBACK_DATA + type: string + example: DAY CreateListRequest: required: - name From b7d46b912092b3d1ed68bc5240ce71f656113116 Mon Sep 17 00:00:00 2001 From: Loi Le Date: Thu, 9 Oct 2025 13:53:53 +0700 Subject: [PATCH 2/3] [CMX-3964] - Update Reporting API --- spec/openapi.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spec/openapi.yaml b/spec/openapi.yaml index 4fe01c1..7eb0dde 100644 --- a/spec/openapi.yaml +++ b/spec/openapi.yaml @@ -6409,7 +6409,7 @@ components: description: End date time for report window. By default, the timezone for this parameter will be taken from the account settings for the account associated with the credentials used to make the request, or the account included in the Account parameter. - This can be overridden using the timezone parameter per request. The date must be in ISO8601 format, and after the requested end_date and may include precise time values (e.g., milliseconds). + This can be overridden using the timezone parameter per request. The date must be in ISO8601 format, and after the requested start_date and may include precise time values (e.g., milliseconds). type: string example: "2022-12-14T01:01:01.001z" timezone: From 4649c9274c77c9e5f2d664b0c73d55b8eae82b7b Mon Sep 17 00:00:00 2001 From: Loi Le Date: Fri, 10 Oct 2025 09:33:19 +0700 Subject: [PATCH 3/3] [CMX-3964] - Update Reporting API --- spec/openapi.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/spec/openapi.yaml b/spec/openapi.yaml index 7eb0dde..3a1addf 100644 --- a/spec/openapi.yaml +++ b/spec/openapi.yaml @@ -6460,7 +6460,7 @@ components: example: "true" channels: # TODO: Update docs on 16/Oct/2026 once 13 months of data are available. - description: Filter the report by one or more message channels. Supported from 14/Aug/2025, and data is available only for reports starting from this date. + description: Filter the report by one or more message channels. Supported from 14/Aug/2025, and filtering by channels is available only for reports starting from this date. type: array items: type: string @@ -7438,7 +7438,7 @@ components: title: RichMessageType type: string # TODO: Update docs on 16/Oct/2026 once 13 months of data are available. - description: The type of rich message. Supported from 09/Sep/2025, and data is available only for reports starting from this date. + description: The type of rich message. Supported from 09/Sep/2025, and this data is available only for reports starting from this date. enum: - TEXT_MESSAGE - MEDIA_MESSAGE @@ -9550,7 +9550,7 @@ components: GroupByInsightField: title: GroupByInsightField # TODO: Update docs on 16/Oct/2026 once 13 months of data are available. - description: Defines available fields for grouping insights reports. COUNTRY and CHANNEL are supported from 14/Aug/2025, and POSTBACK_DATA is supported from 16/Sep/2025, with data available only from those dates onward. + description: Defines available fields for grouping insights reports. COUNTRY and CHANNEL are supported from 14/Aug/2025, and POSTBACK_DATA is supported from 16/Sep/2025, with data for these available only from those dates onward. enum: - ACCOUNT - DAY