List a letter's links
const url = 'https://api.tryletterhead.com/api/v3/letters/example/links?api=true';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://api.tryletterhead.com/api/v3/letters/example/links?api=true' \ --header 'Authorization: Bearer <token>'Return the distinct links found in this letter, read from Letterhead’s link enrichment pipeline —
each with its urlMd5, resolved url, and title. Every link in the newsletter is included, not
only ones that have recorded clicks — for links that readers have actually clicked, see
listALettersClickedLinks instead.
Returns an empty list if the link enrichment pipeline hasn’t crawled this letter yet.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”The letter’s unique identifier — an alphanumeric string around ten characters, e.g. ludctamgd6.
Query Parameters
Section titled “Query Parameters ”When true, tells the endpoint you are authenticating with a company API key (the key you generate under a company’s administrative settings) rather than a logged-in user session. For API integrations you will almost always set this to true.
Responses
Section titled “ Responses ”Links retrieved
object
object
Example
{ "items": [ { "urlMd5": "5d41402abc4b2a76b9719d911017c592", "url": "https://www.nytimes.com/interactive/2025/movies/best-movies-21st-century.html", "title": "The 100 Best Movies of the 21st Century" } ], "message": "Newsletter links retrieved.", "total": 1}Still can’t find what you need? Contact support.