feat: Created a new Python library and added the documentation for the same (#43)

* Created a new Python library and added the documentation for the same

* Added repo and pypi link

* Added fake information instead of real data

* Fixed a typo

---------

Co-authored-by: harshsbhat <icybhat@gmail.com>
This commit is contained in:
Harsh Shrikant Bhat
2024-07-29 14:37:42 +05:30
committed by GitHub
parent 7a4377b55c
commit 32c44bd43e
2 changed files with 133 additions and 0 deletions

View File

@@ -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": "<p>hello,</p><p>Unsend is the best open source sending platform</p><p>check out <a href='https://unsend.dev'>unsend.dev</a></p>",
}
# 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": "<p>hello,</p><p>Unsend is the best open source sending platform</p><p>check out <a href='https://unsend.dev'>unsend.dev</a></p>",
"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
}
```

View File

@@ -53,6 +53,12 @@
"get-started/self-hosting"
]
},
{
"group": "Community SDKs",
"pages": [
"community-sdk/python"
]
},
{
"group": "API Reference",
"pages": [