diff --git a/alembic/versions/2025_01_29_0554-5dd8928389c5_add_residential_de_proxy.py b/alembic/versions/2025_01_29_0554-5dd8928389c5_add_residential_de_proxy.py
new file mode 100644
index 0000000000..7663c0a866
--- /dev/null
+++ b/alembic/versions/2025_01_29_0554-5dd8928389c5_add_residential_de_proxy.py
@@ -0,0 +1,30 @@
+"""add_RESIDENTIAL_DE_proxy
+
+Revision ID: 5dd8928389c5
+Revises: df80b5d155d0
+Create Date: 2025-01-29 05:54:03.709008+00:00
+
+"""
+
+from typing import Sequence, Union
+
+from alembic import op
+
+# revision identifiers, used by Alembic.
+revision: str = "5dd8928389c5"
+down_revision: Union[str, None] = "df80b5d155d0"
+branch_labels: Union[str, Sequence[str], None] = None
+depends_on: Union[str, Sequence[str], None] = None
+
+
+def upgrade() -> None:
+ # ### commands auto generated by Alembic - please adjust! ###
+ op.execute("ALTER TYPE proxylocation ADD VALUE 'RESIDENTIAL_DE'")
+ # ### end Alembic commands ###
+
+
+def downgrade() -> None:
+ # ### commands auto generated by Alembic - please adjust! ###
+ # Cannot remove enum values in PostgreSQL
+ pass
+ # ### end Alembic commands ###
diff --git a/skyvern-frontend/src/api/types.ts b/skyvern-frontend/src/api/types.ts
index 07479917ec..7a9236405b 100644
--- a/skyvern-frontend/src/api/types.ts
+++ b/skyvern-frontend/src/api/types.ts
@@ -37,6 +37,7 @@ export const ProxyLocation = {
ResidentialJP: "RESIDENTIAL_JP",
ResidentialGB: "RESIDENTIAL_GB",
ResidentialFR: "RESIDENTIAL_FR",
+ ResidentialDE: "RESIDENTIAL_DE",
None: "NONE",
} as const;
diff --git a/skyvern-frontend/src/components/ProxySelector.tsx b/skyvern-frontend/src/components/ProxySelector.tsx
index dfe1b05d79..a55840b064 100644
--- a/skyvern-frontend/src/components/ProxySelector.tsx
+++ b/skyvern-frontend/src/components/ProxySelector.tsx
@@ -39,6 +39,9 @@ function ProxySelector({ value, onChange, className }: Props) {
Residential (France)
+
+ Residential (Germany)
+
);
diff --git a/skyvern/forge/sdk/schemas/tasks.py b/skyvern/forge/sdk/schemas/tasks.py
index 47e0da2f46..104383a7a3 100644
--- a/skyvern/forge/sdk/schemas/tasks.py
+++ b/skyvern/forge/sdk/schemas/tasks.py
@@ -25,6 +25,7 @@ class ProxyLocation(StrEnum):
RESIDENTIAL_IN = "RESIDENTIAL_IN"
RESIDENTIAL_JP = "RESIDENTIAL_JP"
RESIDENTIAL_FR = "RESIDENTIAL_FR"
+ RESIDENTIAL_DE = "RESIDENTIAL_DE"
NONE = "NONE"
@@ -63,11 +64,14 @@ def get_tzinfo_from_proxy(proxy_location: ProxyLocation) -> ZoneInfo | None:
return ZoneInfo("Asia/Kolkata")
if proxy_location == ProxyLocation.RESIDENTIAL_JP:
- return ZoneInfo("Asia/Kolkata")
+ return ZoneInfo("Asia/Tokyo")
if proxy_location == ProxyLocation.RESIDENTIAL_FR:
return ZoneInfo("Europe/Paris")
+ if proxy_location == ProxyLocation.RESIDENTIAL_DE:
+ return ZoneInfo("Europe/Berlin")
+
return None