Skip to main content
Resend Docs

Search documentation

Type to search this documentation.

List Logs

GET

/

logs

Node.js
import { Resend } from 'resend';

const resend = new Resend('re_xxxxxxxxx');

const { data, error } = await resend.logs.list();
PHP
$resend = Resend::client('re_xxxxxxxxx');

$resend->logs->list();
Python
import resend

resend.api_key = "re_xxxxxxxxx"

resend.Logs.list()
Ruby
require "resend"

Resend.api_key = "re_xxxxxxxxx"

logs = Resend::Logs.list
puts logs
Go
package main

import (
	"context"

	"github.com/resend/resend-go/v4"
)

func main() {
	ctx := context.TODO()
	client := resend.NewClient("re_xxxxxxxxx")

	logs, err := client.Logs.ListWithOptions(ctx, nil)
	if err != nil {
		panic(err)
	}

	if logs.HasMore {
		opts := &resend.ListOptions{
			After: &logs.Data[len(logs.Data)-1].Id,
		}
		client.Logs.ListWithOptions(ctx, opts)
	}
}
Rust
use resend_rs::{Resend, Result, list_opts::ListOptions};

#[tokio::main]
async fn main() -> Result<()> {
  let resend = Resend::new("re_xxxxxxxxx");

  let _logs = resend
    .logs
    .list(ListOptions::default())
    .await?;

  Ok(())
}
Java
import com.resend.Resend;
import com.resend.core.exception.ResendException;

public class Main {
    public static void main(String[] args) throws ResendException {
        Resend resend = new Resend("re_xxxxxxxxx");

        resend.logs().list();
    }
}
.NET
using Resend;
using System.Linq;

IResend resend = ResendClient.Create( "re_xxxxxxxxx" ); // Or from DI

var resp = await resend.LogListAsync();
Console.WriteLine( "Count={0}", resp.Content.Data.Count );

if ( resp.Content.HasMore )
{
    var lastId = resp.Content.Data.Last().Id;
    await resend.LogListAsync( new PaginatedQuery()
    {
        After = lastId.ToString(),
    } );
}
cURL
curl -X GET 'https://api.resend.com/logs' \
     -H 'Authorization: Bearer re_xxxxxxxxx'
CLI
resend logs list
Response
{
  "object": "list",
  "has_more": false,
  "data": [
    {
      "id": "37e4414c-5e25-4dbc-a071-43552a4bd53b",
      "created_at": "2026-03-30 13:43:54.622865+00",
      "endpoint": "/emails",
      "method": "POST",
      "response_status": 200,
      "user_agent": "resend-node:6.0.3"
    },
    {
      "id": "a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d",
      "created_at": "2026-03-30 12:15:00.123456+00",
      "endpoint": "/emails/4ef9a417-02e9-4d39-ad75-9611e0fcc33c",
      "method": "GET",
      "response_status": 200,
      "user_agent": "curl/8.7.1"
    }
  ]
}
Node.js
import { Resend } from 'resend';

const resend = new Resend('re_xxxxxxxxx');

const { data, error } = await resend.logs.list();
PHP
$resend = Resend::client('re_xxxxxxxxx');

$resend->logs->list();
Python
import resend

resend.api_key = "re_xxxxxxxxx"

resend.Logs.list()
Ruby
require "resend"

Resend.api_key = "re_xxxxxxxxx"

logs = Resend::Logs.list
puts logs
Go
package main

import (
	"context"

	"github.com/resend/resend-go/v4"
)

func main() {
	ctx := context.TODO()
	client := resend.NewClient("re_xxxxxxxxx")

	logs, err := client.Logs.ListWithOptions(ctx, nil)
	if err != nil {
		panic(err)
	}

	if logs.HasMore {
		opts := &resend.ListOptions{
			After: &logs.Data[len(logs.Data)-1].Id,
		}
		client.Logs.ListWithOptions(ctx, opts)
	}
}
Rust
use resend_rs::{Resend, Result, list_opts::ListOptions};

#[tokio::main]
async fn main() -> Result<()> {
  let resend = Resend::new("re_xxxxxxxxx");

  let _logs = resend
    .logs
    .list(ListOptions::default())
    .await?;

  Ok(())
}
Java
import com.resend.Resend;
import com.resend.core.exception.ResendException;

public class Main {
    public static void main(String[] args) throws ResendException {
        Resend resend = new Resend("re_xxxxxxxxx");

        resend.logs().list();
    }
}
.NET
using Resend;
using System.Linq;

IResend resend = ResendClient.Create( "re_xxxxxxxxx" ); // Or from DI

var resp = await resend.LogListAsync();
Console.WriteLine( "Count={0}", resp.Content.Data.Count );

if ( resp.Content.HasMore )
{
    var lastId = resp.Content.Data.Last().Id;
    await resend.LogListAsync( new PaginatedQuery()
    {
        After = lastId.ToString(),
    } );
}
cURL
curl -X GET 'https://api.resend.com/logs' \
     -H 'Authorization: Bearer re_xxxxxxxxx'
CLI
resend logs list
JSON
{
  "object": "list",
  "has_more": false,
  "data": [
    {
      "id": "37e4414c-5e25-4dbc-a071-43552a4bd53b",
      "created_at": "2026-03-30 13:43:54.622865+00",
      "endpoint": "/emails",
      "method": "POST",
      "response_status": 200,
      "user_agent": "resend-node:6.0.3"
    },
    {
      "id": "a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d",
      "created_at": "2026-03-30 12:15:00.123456+00",
      "endpoint": "/emails/4ef9a417-02e9-4d39-ad75-9611e0fcc33c",
      "method": "GET",
      "response_status": 200,
      "user_agent": "curl/8.7.1"
    }
  ]
}

Was this page helpful?

⌘I

Suggest an edit

Propose a replacement for this page. The site team reviews it before applying any changes.

Export
Documentation menu