61 lines
2.1 KiB
JavaScript
61 lines
2.1 KiB
JavaScript
export const api = {
|
|
async conversations({ q = "", status = "", state = "" } = {}) {
|
|
const u = new URL("/conversations", location.origin);
|
|
if (q) u.searchParams.set("q", q);
|
|
if (status) u.searchParams.set("status", status);
|
|
if (state) u.searchParams.set("state", state);
|
|
return fetch(u).then(r => r.json());
|
|
},
|
|
|
|
async deleteConversation(chat_id) {
|
|
if (!chat_id) throw new Error("chat_id_required");
|
|
return fetch(`/conversations/${encodeURIComponent(chat_id)}`, { method: "DELETE" }).then(r => r.json());
|
|
},
|
|
|
|
async users({ q = "", limit = 200 } = {}) {
|
|
const u = new URL("/users", location.origin);
|
|
if (q) u.searchParams.set("q", String(q));
|
|
u.searchParams.set("limit", String(limit));
|
|
return fetch(u).then(r => r.json());
|
|
},
|
|
|
|
async deleteUser(chat_id, { deleteWoo = false } = {}) {
|
|
if (!chat_id) throw new Error("chat_id_required");
|
|
const u = new URL(`/users/${encodeURIComponent(chat_id)}`, location.origin);
|
|
if (deleteWoo) u.searchParams.set("deleteWoo", "1");
|
|
return fetch(u, { method: "DELETE" }).then(r => r.json());
|
|
},
|
|
|
|
async messages({ chat_id, limit = 200 } = {}) {
|
|
const u = new URL("/messages", location.origin);
|
|
if (chat_id) u.searchParams.set("chat_id", chat_id);
|
|
u.searchParams.set("limit", String(limit));
|
|
return fetch(u).then(r => r.json());
|
|
},
|
|
|
|
async runs({ chat_id, limit = 1 } = {}) {
|
|
const u = new URL("/runs", location.origin);
|
|
if (chat_id) u.searchParams.set("chat_id", chat_id);
|
|
u.searchParams.set("limit", String(limit));
|
|
return fetch(u).then(r => r.json());
|
|
},
|
|
|
|
async runById(run_id) {
|
|
if (!run_id) return null;
|
|
return fetch(`/runs/${encodeURIComponent(run_id)}`).then(r => r.json());
|
|
},
|
|
|
|
async simEvolution(payload) {
|
|
return fetch("/webhook/evolution", {
|
|
method: "POST",
|
|
headers: { "Content-Type": "application/json" },
|
|
body: JSON.stringify(payload),
|
|
}).then(r => r.json());
|
|
},
|
|
|
|
async retryLast(chat_id) {
|
|
if (!chat_id) throw new Error("chat_id_required");
|
|
return fetch(`/conversations/${encodeURIComponent(chat_id)}/retry-last`, { method: "POST" }).then(r => r.json());
|
|
},
|
|
};
|