Files
app
components
data
functions
api
_middleware.ts
gcloud.ts
permissions.ts
roblox-open-cloud.ts
public
.gitignore
.node-version
OFL.txt
emotion-server.js
index.css
index.d.ts
package-lock.json
package.json
remix.config.js
server.ts
theme.ts
tsconfig.json
car-crushers-portal/functions/roblox-open-cloud.ts

39 lines
993 B
TypeScript

const DATASTORE_URL =
"https://apis.roblox.com/datastores/v1/universes/274816972/standard-datastores/datastore/entries/entry?datastoreName=BanData&entryKey=CloudBanList";
export async function getBanList(context: RequestContext) {
const data = await fetch(DATASTORE_URL, {
headers: {
"x-api-key": context.env.ROBLOX_OPENCLOUD_KEY,
},
});
if (!data.ok) {
console.log(await data.json());
throw new Error("Failed to retrieve ban list");
}
return await data.json();
}
export async function setBanList(
context: RequestContext,
data: { [k: string]: { [k: string]: any } }
) {
const setRequest = await fetch(DATASTORE_URL, {
body: JSON.stringify(data),
headers: {
"content-type": "application/json",
"x-api-key": context.env.ROBLOX_OPENCLOUD_KEY,
},
method: "POST",
});
if (!setRequest.ok) {
console.log(await setRequest.json());
throw new Error("Failed to set ban list");
}
return await setRequest.json();
}