List channels
const url = 'https://api.tryletterhead.com/api/v3/channels?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/channels?api=true' \ --header 'Authorization: Bearer <token>'List every channel (newsletter) your company owns, each with its brand, slug, title, and logos. Optionally restrict the list to channels eligible for a given ESP.
A note on this response
Unlike most other v3 list endpoints, each item here includes the channel’s and its brand’s
internal numeric ids (channelId, brandId) alongside the usual slugs. This reference documents
the response as the API actually returns it today.
v3 endpoints expect a company API key.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Query Parameters
Section titled “Query Parameters ”Required. Set to true.
Optional. Restrict the list to channels eligible for this ESP: 1=Mailchimp, 2=Iterable, 3=SendGrid, 4=Sailthru, 5=Constant Contact, 7=HubSpot Marketing. If no channel matches, every channel is returned instead of an empty list.
Responses
Section titled “ Responses ”200 OK
object
object
true when the channel has an active integration for the requested esp. Always true when esp is omitted.
Example
{ "items": [ { "brandId": 42, "brandName": "Example Brand", "brandSlug": "example-brand", "channelId": 101, "channelDescription": "A brand new channel", "channelHorizontalLogo": "", "channelImage": "", "channelSlug": "an-example-channel", "channelSquareLogo": "", "title": "An Example Channel", "hasMatchingEspIntegration": true } ], "message": "Channels retrieved successfully.", "total": 1, "isCompanyAdmin": true}Still can’t find what you need? Contact support.