UnicodeEncodeError when sending e-mails with some iso-8859 characters (€ symbol)
@pengfeiye y travaille déjà.
Depuis le 15/1/2026.
Évaluation
Cette issue n'a pas encore été évaluée.
Description
Describe the bug
On last version (nylas==6.14.0), I'm getting an UnicodeEncodeError when sending an e-mail with a message body payload containing some special characters. The € currency symbol raise the error for example.
To Reproduce
With the following payload and Nylas client usage:
from nylas import Client
message = {
'subject': 'Test envoi avec accent',
'attachments': [],
'from': [{'name': 'Maxime L', 'email': '[email protected]'}],
'cc': [],
'bcc': [],
'to': [{'name': '', 'email': '[email protected]'}],
'reply_to': []
'body': '<p>À noter que lorem ipsum dolor sit...même éàçéàéà<br /><br />€€€€ ça c\'est de l\'euro</p>\r\n<br />---<br />Me',
}
client = Client("some-api-key", "some Nylas root URL")
client.messages.send(
"123456abcdef", # my grant is valid
request_body=message
)
The following exception is raised:
ERROR 'latin-1' codec can't encode characters in position 430-433: Body ('€€€€') is not valid Latin-1. Use body.encode('utf-8') if you want to send it encoded in UTF-8.
Traceback (most recent call last):
File "my_code.py", line 419, in send
client.messages.send(
File "~venv_packages/nylas/resources/messages.py", line 196, in send
json_response, headers = self._http_client._execute(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
[...]
File "/usr/local/lib/python3.12/http/client.py", line 1327, in request
self._send_request(method, url, body, headers, encode_chunked)
File "/usr/local/lib/python3.12/http/client.py", line 1372, in _send_request
body = _encode(body, 'body')
^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/http/client.py", line 166, in _encode
raise UnicodeEncodeError(
UnicodeEncodeError: 'latin-1' codec can't encode characters in position 430-433: Body ('€€€€') is not valid Latin-1. Use body.encode('utf-8') if you want to send it encoded in UTF-8.
(characters position slightly changed as I simplified my payload for anonymization)
Expected behavior
E-mail sent without errors, which is the behaviour on nylas 6.13.0 package and earlier.
SDK Version:
6.14.0.
- Langage dominant
- Python
- Étoiles
- 109
- Forks
- 85
- Merge moyen
- 8 h 41 min
- PR mergées (30 j)
- 3
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de nylas/nylas-python
-
Attachment downloads ignore request URL and header overridesPeut-être pris @Kayvan-Zahiri l’a pris il y a 3 jours. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 39/100
nylas/nylas-python#491 ·
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 48/100
nylas/nylas-python#455 ·
-
Bug: drafts.create() fails with TypeError for multipart requests (attachments > 3MB)Peut-être pris @benjaminwhtan l’a pris il y a 267 jours. Ouverte
nylas/nylas-python#454 · 3 commentaires · 1 personne assignée ·
-
Create an async version of the clientPeut-être à nouveau libre @AaronDDM l’a pris il y a 496 jours, et aucune pull request n’est ouverte. Ouverteenhancement
nylas/nylas-python#412 · 1 commentaire · 5 réactions · 1 personne assignée ·
-
bug
Difficulté 3/5 1-2 jours Accessibilité débutants 38/100
nylas/nylas-python#402 · 1 réaction ·
Toutes les issues de nylas/nylas-python
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
-
[Device Support Request] HOBEIAN ZG-204ZL (Tuya PIR motion sensor with illuminance)Peut-être pris @lenucksi l’a pris aujourd’hui. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
zigpy/zha-device-handlers#5493 ·
Les mainteneurs répondent en général sous 3 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
drevendev/BeautifulRepo#42 ·
Les mainteneurs répondent en général sous 1 jour
-
enhancement good first issue
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
writerslogic/holographic-memory#93 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 66/100
antoine-tena/kiln#47 ·
Les mainteneurs répondent en général sous 1 jour