← All API sections

Contact Lists

Manage contact lists and contacts

8 endpoints

Endpoints

MethodPathDescription
GET/v1/contact-listsGET /v1/contact-lists
POST/v1/contact-listsPOST /v1/contact-lists
GET/v1/contact-lists/{id}GET /v1/contact-lists/{id}
PUT/v1/contact-lists/{id}PUT /v1/contact-lists/{id}
DELETE/v1/contact-lists/{id}DELETE /v1/contact-lists/{id}
GET/v1/contact-lists/{id}/contactsGET /v1/contact-lists/{id}/contacts
POST/v1/contact-lists/{id}/contactsPOST /v1/contact-lists/{id}/contacts
DELETE/v1/contact-lists/{id}/contacts/{email}DELETE /v1/contact-lists/{id}/contacts/{email}

GET /v1/contact-lists

GET /v1/contact-lists

Responses

StatusDescription
200List of contact lists with contact counts
401Unauthorized

Example

curl -X GET https://api.euromail.dev/v1/contact-lists \
  -H "X-EuroMail-Api-Key: em_live_..."
import { EuroMail } from "@euromail/sdk";

const euromail = new EuroMail({ apiKey: "em_live_..." });

const result = await euromail.listContactLists();
from euromail import EuroMail

client = EuroMail(api_key="em_live_...")

result = client.list_contact_lists()
use euromail::EuroMail;

let client = EuroMail::new("em_live_...");

let result = client.list_contact_lists().await?;
client := euromail.NewClient("em_live_...")

result, err := client.ListContactLists(ctx)

POST /v1/contact-lists

POST /v1/contact-lists

Request Body

FieldTypeRequiredDescription
description`stringnull`No
double_opt_inbooleanNo
namestringYes

Responses

StatusDescription
201Contact list created
401Unauthorized
409List name already exists
422Validation error

Example

curl -X POST https://api.euromail.dev/v1/contact-lists \
  -H "X-EuroMail-Api-Key: em_live_..." \
  -H "Content-Type: application/json" \
  -d '{ "name": "example.com" }'
import { EuroMail } from "@euromail/sdk";

const euromail = new EuroMail({ apiKey: "em_live_..." });

const result = await euromail.createContactList({
    name: "example.com",
  });
from euromail import EuroMail

client = EuroMail(api_key="em_live_...")

result = client.create_contact_list(
    name="example.com",
)
use euromail::EuroMail;

let client = EuroMail::new("em_live_...");

let result = client.create_contact_list(&CreateContactListParams {
    name: "example.com".into(),
    ..Default::default()
}).await?;
client := euromail.NewClient("em_live_...")

result, err := client.CreateContactList(ctx, euromail.CreateContactListParams{
    Name: "example.com",
})

GET /v1/contact-lists/{id}

GET /v1/contact-lists/{id}

Parameters

NameInTypeRequiredDescription
idpathstringYesContact list ID

Responses

StatusDescription
200Contact list details with contact count
401Unauthorized
404Contact list not found

Example

curl -X GET https://api.euromail.dev/v1/contact-lists/{id} \
  -H "X-EuroMail-Api-Key: em_live_..."
import { EuroMail } from "@euromail/sdk";

const euromail = new EuroMail({ apiKey: "em_live_..." });

const result = await euromail.getContactList("id_...");
from euromail import EuroMail

client = EuroMail(api_key="em_live_...")

result = client.get_contact_list("id_...")
use euromail::EuroMail;

let client = EuroMail::new("em_live_...");

let result = client.get_contact_list("id_...").await?;
client := euromail.NewClient("em_live_...")

result, err := client.GetContactList(ctx, "id_...")

PUT /v1/contact-lists/{id}

PUT /v1/contact-lists/{id}

Parameters

NameInTypeRequiredDescription
idpathstringYesContact list ID

Request Body

FieldTypeRequiredDescription
description`stringnull`No
double_opt_inbooleanNo
namestringYes

Responses

StatusDescription
200Contact list updated
401Unauthorized
404Contact list not found
409List name already exists

Example

curl -X PUT https://api.euromail.dev/v1/contact-lists/{id} \
  -H "X-EuroMail-Api-Key: em_live_..." \
  -H "Content-Type: application/json" \
  -d '{ "name": "example.com" }'
import { EuroMail } from "@euromail/sdk";

const euromail = new EuroMail({ apiKey: "em_live_..." });

const result = await euromail.updateContactList({
    name: "example.com",
  });
from euromail import EuroMail

client = EuroMail(api_key="em_live_...")

result = client.update_contact_list(
    name="example.com",
)
use euromail::EuroMail;

let client = EuroMail::new("em_live_...");

let result = client.update_contact_list(&UpdateContactListParams {
    name: "example.com".into(),
    ..Default::default()
}).await?;
client := euromail.NewClient("em_live_...")

result, err := client.UpdateContactList(ctx, euromail.UpdateContactListParams{
    Name: "example.com",
})

DELETE /v1/contact-lists/{id}

DELETE /v1/contact-lists/{id}

Parameters

NameInTypeRequiredDescription
idpathstringYesContact list ID

Responses

StatusDescription
204Contact list deleted
401Unauthorized
404Contact list not found

Example

curl -X DELETE https://api.euromail.dev/v1/contact-lists/{id} \
  -H "X-EuroMail-Api-Key: em_live_..."
import { EuroMail } from "@euromail/sdk";

const euromail = new EuroMail({ apiKey: "em_live_..." });

const result = await euromail.deleteContactList("id_...");
from euromail import EuroMail

client = EuroMail(api_key="em_live_...")

result = client.delete_contact_list("id_...")
use euromail::EuroMail;

let client = EuroMail::new("em_live_...");

let result = client.delete_contact_list("id_...").await?;
client := euromail.NewClient("em_live_...")

result, err := client.DeleteContactList(ctx, "id_...")

GET /v1/contact-lists/{id}/contacts

GET /v1/contact-lists/{id}/contacts

Parameters

NameInTypeRequiredDescription
idpathstringYesContact list ID
pagequeryintegerNoPage number (default: 1)
per_pagequeryintegerNoItems per page
statusquerystringNoFilter by status

Responses

StatusDescription
200Paginated list of contacts
401Unauthorized
404Contact list not found

Example

curl -X GET https://api.euromail.dev/v1/contact-lists/{id}/contacts \
  -H "X-EuroMail-Api-Key: em_live_..."
import { EuroMail } from "@euromail/sdk";

const euromail = new EuroMail({ apiKey: "em_live_..." });

const result = await euromail.getContactListDetail("id_...");
from euromail import EuroMail

client = EuroMail(api_key="em_live_...")

result = client.get_contact_list_detail("id_...")
use euromail::EuroMail;

let client = EuroMail::new("em_live_...");

let result = client.get_contact_list_detail("id_...").await?;
client := euromail.NewClient("em_live_...")

result, err := client.GetContactListDetail(ctx, "id_...")

POST /v1/contact-lists/{id}/contacts

POST /v1/contact-lists/{id}/contacts

Parameters

NameInTypeRequiredDescription
idpathstringYesContact list ID

Request Body

FieldTypeRequiredDescription
contactsBulkContact[]No
email`stringnull`No
metadataanyNo

Responses

StatusDescription
201Contact(s) added
401Unauthorized
404Contact list not found
409Contact already exists in list
422Invalid email address

Example

curl -X POST https://api.euromail.dev/v1/contact-lists/{id}/contacts \
  -H "X-EuroMail-Api-Key: em_live_..." \
  -H "Content-Type: application/json" \
  -d '{}'
import { EuroMail } from "@euromail/sdk";

const euromail = new EuroMail({ apiKey: "em_live_..." });

const result = await euromail.getContactListDetail({});
from euromail import EuroMail

client = EuroMail(api_key="em_live_...")

result = client.get_contact_list_detail(
)
use euromail::EuroMail;

let client = EuroMail::new("em_live_...");

let result = client.get_contact_list_detail(&GetContactListDetailParams {
    ..Default::default()
}).await?;
client := euromail.NewClient("em_live_...")

result, err := client.GetContactListDetail(ctx, euromail.GetContactListDetailParams{
})

DELETE /v1/contact-lists/{id}/contacts/{email}

DELETE /v1/contact-lists/{id}/contacts/{email}

Parameters

NameInTypeRequiredDescription
idpathstringYesContact list ID
emailpathstringYesContact email address

Responses

StatusDescription
204Contact removed
401Unauthorized
404Contact or list not found

Example

curl -X DELETE https://api.euromail.dev/v1/contact-lists/{id}/contacts/{email} \
  -H "X-EuroMail-Api-Key: em_live_..."
import { EuroMail } from "@euromail/sdk";

const euromail = new EuroMail({ apiKey: "em_live_..." });

const result = await euromail.getContactListDetail("id_...");
from euromail import EuroMail

client = EuroMail(api_key="em_live_...")

result = client.get_contact_list_detail("id_...")
use euromail::EuroMail;

let client = EuroMail::new("em_live_...");

let result = client.get_contact_list_detail("id_...").await?;
client := euromail.NewClient("em_live_...")

result, err := client.GetContactListDetail(ctx, "id_...")