diff --git a/apps/docs/community-sdk/python.mdx b/apps/docs/community-sdk/python.mdx new file mode 100644 index 0000000..3c83442 --- /dev/null +++ b/apps/docs/community-sdk/python.mdx @@ -0,0 +1,127 @@ +--- +title: Python +description: "The Unsend Python package lets you interact with the Unsend API to send and manage emails as well as domains. This is a quick guide on using the package to send emails and retrieve email information." +icon: python +--- + +## Installation +To install the Unsend package, you can use pip: + +```bash +pip install unsendcommunity +``` + +## Related Links +Github Repository: [Github](https://github.com/harshsbhat/unsend_community.git) + +PyPI package: [PyPi](https://pypi.org/project/UnsendCommunity/) + +## Usage +Below is an example of how to use the Unsend package to send an email and retrieve email information. + +### Initialize +Change the URL accordingly if you are using self self-hosted version of Unsend. The default URL will be https://app.unsend.dev. +```python + +from unsendcommunity import Unsend + +# Initialize the Unsend client +api_key = 'your-api-key' +client = Unsend(key=api_key, url='https://app.unsend.dev') + +``` + +### Sending Emails +To send an email you will need to define the payload. After definition, you can use the ```.send_emails``` method to send emails with the payload as a parameter. + +```python +payload = { + "to": "youremail@gmail.com", + "from": "hello@domainname.com", + "subject": "Unsend test email", + "text": "hello,\n\nUnsend is the best open source sending platform", + "html": "
hello,
Unsend is the best open source sending platform
check out unsend.dev
", +} + +# Send the email +response = client.send_email(payload) +print("Send Email Response:", response) +``` +### Retrieve Emails using the id +The email will be retrieved using the ID you get after sending the mail. +```python +email_id = 'email-id-from-unsend' +email_response = client.get_email(email_id) +print("Get Email Response:", email_response) +``` + +The sample response of ``get_email`` is shown below: + + +```bash +{ + "data": { + "id": "your-email-id", + "teamId": 1, + "to": [ + "yourmail@example.com" + ], + "from": "hello@mail.example.com", + "subject": "Unsend test email", + "html": "hello,
Unsend is the best open source sending platform
check out unsend.dev
", + "text": "hello,\n\nUnsend is the best open source sending platform", + "createdAt": "2024-07-29T05:04:21.498Z", + "updatedAt": "2024-07-29T05:04:27.130Z", + "emailEvents": [ + { + "emailId": "your-email-id", + "status": "FAILED", + "createdAt": "2024-07-29T05:04:27.124Z", + "data": { + "error": "MessageRejected: Email address is not verified. The following identities failed the check in region US-EAST-1: example@gmail.com" + } + } + ] + }, + "error": null +} +``` + +### Retrieve domain information + +Retrieves domain information +Domains that are associated with this account will be displayed with their detailed information. + +```python +domain_response = client.get_domain() +print("Get Domain Response:", domain_response) +``` + +Sample response of the ``get_domain`` method + +```bash +{ + "data": [ + { + "id": 1, + "name": "mail.domain.com", + "teamId": 1, + "status": "SUCCESS", + "region": "us-east-1", + "clickTracking": false, + "openTracking": false, + "publicKey": "your-public-key", + "dkimStatus": "SUCCESS", + "spfDetails": "SUCCESS", + "dmarcAdded": false, + "errorMessage": null, + "subdomain": "mail", + "isVerifying": false, + "createdAt": "2024-07-26T05:52:17.199Z", + "updatedAt": "2024-07-26T05:57:27.790Z" + } + ], + "error": null +} +``` + diff --git a/apps/docs/mint.json b/apps/docs/mint.json index 777ae5c..f9bc67a 100644 --- a/apps/docs/mint.json +++ b/apps/docs/mint.json @@ -53,6 +53,12 @@ "get-started/self-hosting" ] }, + { + "group": "Community SDKs", + "pages": [ + "community-sdk/python" + ] + }, { "group": "API Reference", "pages": [