Skip to main content
POST
/
legacy_reporting
/
batch_detail_records
/
messaging
JavaScript
import Telnyx from 'telnyx';

const client = new Telnyx({
  apiKey: process.env['TELNYX_API_KEY'], // This is the default and can be omitted
});

const messaging = await client.legacy.reporting.batchDetailRecords.messaging.create({
  end_time: '2024-02-12T23:59:59Z',
  start_time: '2024-02-01T00:00:00Z',
});

console.log(messaging.data);
import os
from datetime import datetime
from telnyx import Telnyx

client = Telnyx(
api_key=os.environ.get("TELNYX_API_KEY"), # This is the default and can be omitted
)
messaging = client.legacy.reporting.batch_detail_records.messaging.create(
end_time=datetime.fromisoformat("2024-02-12T23:59:59"),
start_time=datetime.fromisoformat("2024-02-01T00:00:00"),
)
print(messaging.data)
package main

import (
"context"
"fmt"
"time"

"github.com/team-telnyx/telnyx-go"
"github.com/team-telnyx/telnyx-go/option"
)

func main() {
client := telnyx.NewClient(
option.WithAPIKey("My API Key"),
)
messaging, err := client.Legacy.Reporting.BatchDetailRecords.Messaging.New(context.TODO(), telnyx.LegacyReportingBatchDetailRecordMessagingNewParams{
EndTime: time.Now(),
StartTime: time.Now(),
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", messaging.Data)
}
package com.telnyx.sdk.example;

import com.telnyx.sdk.client.TelnyxClient;
import com.telnyx.sdk.client.okhttp.TelnyxOkHttpClient;
import com.telnyx.sdk.models.legacy.reporting.batchdetailrecords.messaging.MessagingCreateParams;
import com.telnyx.sdk.models.legacy.reporting.batchdetailrecords.messaging.MessagingCreateResponse;
import java.time.OffsetDateTime;

public final class Main {
private Main() {}

public static void main(String[] args) {
TelnyxClient client = TelnyxOkHttpClient.fromEnv();

MessagingCreateParams params = MessagingCreateParams.builder()
.endTime(OffsetDateTime.parse("2024-02-12T23:59:59Z"))
.startTime(OffsetDateTime.parse("2024-02-01T00:00:00Z"))
.build();
MessagingCreateResponse messaging = client.legacy().reporting().batchDetailRecords().messaging().create(params);
}
}
require "telnyx"

telnyx = Telnyx::Client.new(api_key: "My API Key")

messaging = telnyx.legacy.reporting.batch_detail_records.messaging.create(
end_time: "2024-02-12T23:59:59Z",
start_time: "2024-02-01T00:00:00Z"
)

puts(messaging)
<?php

require_once dirname(__DIR__) . '/vendor/autoload.php';

use Telnyx\Client;
use Telnyx\Core\Exceptions\APIException;

$client = new Client(apiKey: getenv('TELNYX_API_KEY') ?: 'My API Key');

try {
$messaging = $client
->legacy
->reporting
->batchDetailRecords
->messaging
->create(
endTime: new \DateTimeImmutable('2024-02-12T23:59:59Z'),
startTime: new \DateTimeImmutable('2024-02-01T00:00:00Z'),
connections: [123, 456],
directions: [1, 2],
filters: [
[
'billingGroup' => 'adfaa016-f921-4b6c-97bb-e4c1dad231c5',
'cld' => '+13129457420',
'cldFilter' => 'contains',
'cli' => '+13129457420',
'cliFilter' => 'contains',
'filterType' => 'and',
'tagsList' => 'tag1',
],
],
includeMessageBody: true,
managedAccounts: [
'f47ac10b-58cc-4372-a567-0e02b2c3d479',
'6ba7b810-9dad-11d1-80b4-00c04fd430c8',
],
profiles: [
'3fa85f64-5717-4562-b3fc-2c963f66afa6',
'7d4e3f8a-9b2c-4e1d-8f5a-1a2b3c4d5e6f',
],
recordTypes: [1, 2],
reportName: 'My MDR Report',
selectAllManagedAccounts: false,
timezone: 'UTC',
);

var_dump($messaging);
} catch (APIException $e) {
echo $e->getMessage();
}
telnyx legacy:reporting:batch-detail-records:messaging create \
--api-key 'My API Key' \
--end-time "'2024-02-12T23:59:59Z'" \
--start-time "'2024-02-01T00:00:00Z'"
curl --request POST \
--url https://api.telnyx.com/v2/legacy_reporting/batch_detail_records/messaging \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"start_time": "2024-02-01T00:00:00Z",
"end_time": "2024-02-12T23:59:59Z",
"timezone": "UTC",
"directions": [
1,
2
],
"record_types": [
1,
2
],
"connections": [
123,
456
],
"report_name": "My MDR Report",
"include_message_body": true,
"filters": [
{
"cli": "+13129457420",
"cld": "+13129457420",
"tags_list": "tag1",
"billing_group": "adfaa016-f921-4b6c-97bb-e4c1dad231c5"
}
],
"profiles": [
"3fa85f64-5717-4562-b3fc-2c963f66afa6",
"7d4e3f8a-9b2c-4e1d-8f5a-1a2b3c4d5e6f"
],
"managed_accounts": [
"f47ac10b-58cc-4372-a567-0e02b2c3d479",
"6ba7b810-9dad-11d1-80b4-00c04fd430c8"
],
"select_all_managed_accounts": false
}
'
{
  "data": {
    "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "start_date": "2020-07-01T00:00:00-06:00",
    "end_date": "2020-07-01T00:00:00-06:00",
    "directions": [],
    "record_types": [],
    "connections": [
      123
    ],
    "report_name": "report_name_8hvb45Gu",
    "report_url": "http://portal.telnyx.com/downloads/report_name_8hvb45Gu.csv",
    "filters": [
      {
        "cli": "+13129457420",
        "cld": "+13129457420",
        "tags_list": "tag1",
        "billing_group": "adfaa016-f921-4b6c-97bb-e4c1dad231c5"
      }
    ],
    "created_at": "2020-07-01T00:00:00-06:00",
    "updated_at": "2020-07-01T00:00:00-06:00",
    "profiles": [
      "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "7d4e3f8a-9b2c-4e1d-8f5a-1a2b3c4d5e6f"
    ],
    "record_type": "mdr_report"
  }
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json

MDR detailed report request data

Request object for MDR detailed report

start_time
string<date-time>
required

Start time in ISO format

Example:

"2024-02-01T00:00:00Z"

end_time
string<date-time>
required

End time in ISO format. Note: If end time includes the last 4 hours, some MDRs might not appear in this report, due to wait time for downstream message delivery confirmation

Example:

"2024-02-12T23:59:59Z"

timezone
string

Timezone for the report

Example:

"UTC"

directions
integer<int32>[]

List of directions to filter by (Inbound = 1, Outbound = 2)

Example:
[1, 2]
record_types
integer<int32>[]

List of record types to filter by (Complete = 1, Incomplete = 2, Errors = 3)

Example:
[1, 2]
connections
integer<int64>[]

List of connections to filter by

Example:
[123, 456]
report_name
string

Name of the report

Example:

"My MDR Report"

include_message_body
boolean

Whether to include message body in the report

Example:

true

filters
object[]

List of filters to apply

profiles
string<uuid>[]

List of messaging profile IDs to filter by

Example:
[
"3fa85f64-5717-4562-b3fc-2c963f66afa6",
"7d4e3f8a-9b2c-4e1d-8f5a-1a2b3c4d5e6f"
]
managed_accounts
string<uuid>[]

List of managed accounts to include

Example:
[
"f47ac10b-58cc-4372-a567-0e02b2c3d479",
"6ba7b810-9dad-11d1-80b4-00c04fd430c8"
]
select_all_managed_accounts
boolean

Whether to select all managed accounts

Example:

false

Response

MDR detailed report request created successfully

data
object