/** * Append an update comment to an existing thread. */ export async function appendComment( threadId: string, commentMd: string, token: string ) const payload = body: commentMd ; await authFetch( `https://api.f95zone.to/v1/threads/$threadId`, token, method: "PUT", body: JSON.stringify(payload) );
/** * Helper – perform an authorized request. */ async function authFetch( url: string, token: string, init: RequestInit = {} ) { const res = await fetch(url, { ...init, headers: { ...(init.headers ?? {}), Authorization: `Bearer $token`, "Content-Type": "application/json", }, }); jsk studio f95zone
## Download [Get the build here]($downloadUrl) /** * Append an update comment to an existing thread
The goal is to give developers who use (a generic game‑development environment) a safe, low‑maintenance way to keep their games visible on F95Zone (a popular community forum for indie/erotic games) without having to manually copy‑paste URLs, screenshots, or update threads. 1️⃣ Feature Overview Name – JSK Studio F95Zone Bridge (or simply JSK‑F95Connector ). */ export async function createThread( post: F95Post, token:
/** * Create a new thread (first release). */ export async function createThread( post: F95Post, token: string ): Promise< threadId: string; url: string > const payload = title: post.title, body: post.body, category: post.category, tags: post.tags ?? [], ; const data = await authFetch( "https://api.f95zone.to/v1/threads", token, method: "POST", body: JSON.stringify(payload) ); return threadId: data.id, url: data.url ;
export interface F95Post title: string; body: string; // markdown category: string; // e.g., "Adult Game" tags?: string[];