Skip to content

Commit 8b4b873

Browse files
[SDK] Add service key functionality for API requests (#6819)
1 parent 67a7d3e commit 8b4b873

File tree

4 files changed

+22
-1
lines changed

4 files changed

+22
-1
lines changed

.changeset/legal-pots-boil.md

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"thirdweb": patch
3+
---
4+
5+
expose setServiceKey

packages/thirdweb/src/exports/utils.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,7 @@ export {
151151
} from "viem";
152152

153153
// Useful helpers
154-
export { setThirdwebDomains } from "../utils/domains.js";
154+
export { setThirdwebDomains, setServiceKey } from "../utils/domains.js";
155155
export { resolvePromisedValue } from "../utils/promise/resolve-promised-value.js";
156156
export {
157157
setTransactionDecorator,

packages/thirdweb/src/utils/domains.ts

+10
Original file line numberDiff line numberDiff line change
@@ -90,3 +90,13 @@ export const getThirdwebBaseUrl = (service: keyof DomainOverrides) => {
9090
}
9191
return `https://${origin}`;
9292
};
93+
94+
let serviceKey: string | null = null;
95+
96+
export const setServiceKey = (key: string | null) => {
97+
serviceKey = key;
98+
};
99+
100+
export const getServiceKey = () => {
101+
return serviceKey;
102+
};

packages/thirdweb/src/utils/fetch.ts

+6
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import {
77
detectOS,
88
detectPlatform,
99
} from "./detect-platform.js";
10+
import { getServiceKey } from "./domains.js";
1011
import { isJWT } from "./jwt/is-jwt.js";
1112
import { IS_DEV } from "./process.js";
1213

@@ -75,6 +76,11 @@ export function getClientFetch(client: ThirdwebClient, ecosystem?: Ecosystem) {
7576
for (const [key, value] of getPlatformHeaders()) {
7677
(headers as Headers).set(key, value);
7778
}
79+
80+
const serviceKey = getServiceKey();
81+
if (serviceKey) {
82+
headers.set("x-service-api-key", serviceKey);
83+
}
7884
}
7985

8086
let controller: AbortController | undefined;

0 commit comments

Comments
 (0)