Skip to content

Commit c485ab1

Browse files
authored
Encode path parameters during substitution (#289)
1 parent dc0f784 commit c485ab1

File tree

2 files changed

+4
-2
lines changed

2 files changed

+4
-2
lines changed

stytch/core/api_base.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,9 @@ def __init__(self, base_url: str) -> None:
1010

1111
def url_for(self, route: str, data: Dict[str, Any]) -> str:
1212
url = urllib.parse.urljoin(self.base_url, route)
13-
return url.format(**data)
13+
# URL-encode path parameters to handle special characters like + in email addresses
14+
encoded_data = {key: urllib.parse.quote(str(value), safe='') for key, value in data.items()}
15+
return url.format(**encoded_data)
1416

1517
def route_with_sub_url(self, sub_url: str, route: Optional[str] = None) -> str:
1618
sub_route = sub_url

stytch/version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
__version__ = "13.20.0"
1+
__version__ = "13.20.1"

0 commit comments

Comments
 (0)