Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

10 Commits

Repository files navigation

emailalias-python

Official Python client for the EmailAlias.io REST API.

API access is a Premium feature. Generate a key from Settings → API Keys in the web dashboard.

Install

pip install emailalias

Or from source:

pip install git+https://github.com/emailalias/emailalias-python.git

Quick start

fromemailaliasimportClientclient=Client(api_key="ea_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx")
# Create an aliasalias=client.create_alias(alias_type="random", label="Shopping")
print(alias["alias_email"]) # e.g. "x7k9m@email91.com"# List aliasesforainclient.list_aliases():
print(a["alias_email"], "→", a["destination_email"])
# Forward to a verified additional destinationalias=client.create_alias(
alias_type="custom",
custom_code="work-signup",
label="Work",
destination_email="work@mycompany.com", # must be verified on your account first
)
# Send email from an aliasclient.send_email(
alias_id=alias["id"],
to_email="recipient@example.com",
subject="Hello",
body="Sent from my alias.",
)
# Disable an aliasclient.update_alias(alias_id=alias["id"], active=False)

Error handling

fromemailaliasimportClient, AuthenticationError, RateLimitErrorclient=Client(api_key="ea_live_xxx")
try:
client.list_aliases()
exceptAuthenticationError:
# Invalid key, or account is no longer Premium
...
exceptRateLimitError:
# Respect X-RateLimit-Reset and retry
...

Configuration

client=Client(
api_key="ea_live_xxx",
base_url="https://emailalias.io", # override for staging/self-hosttimeout=30.0,
)

Available methods

MethodEndpoint
list_aliases()GET /api/aliases
create_alias(...)POST /api/aliases
update_alias(id, active=, label=)PATCH /api/aliases/{id}
update_alias_display_name(id, display_name)PATCH /api/aliases/{id}/display-name
delete_alias(id)DELETE /api/aliases/{id}
list_available_domains()GET /api/aliases/domains
list_destinations()GET /api/destinations
add_destination(email)POST /api/destinations
resend_destination_verification(id)POST /api/destinations/{id}/resend
delete_destination(id)DELETE /api/destinations/{id}
send_email(alias_id, to_email, subject, body, html_body=)POST /api/send-email
list_domains()GET /api/domains
add_domain(name)POST /api/domains
verify_domain(id)POST /api/domains/{id}/verify
delete_domain(id)DELETE /api/domains/{id}
get_dashboard_stats()GET /api/analytics/dashboard
list_logs(page=, per_page=)GET /api/analytics/logs
list_exposure_events(page=, per_page=)GET /api/analytics/exposure

Full API reference: https://emailalias.io/documentation

License

MIT

About

Official Python SDK for EmailAlias.io — create email aliases, manage forwarding, and monitor leaks.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages