Skip to main content

Perbarui Foto Grup

HTTP(S)
POST /x/group/set-img

Kirimkan request ke endpoint tersebut menggunakan method POST berupa application/json.

note

Hanya owner grup yang dapat memperbarui gambar grup

Data yang perlu dikirimkan adalah img sebagai file gambar grup baru, name sebagai nama file gambar, dan id sebagai ID Grup yang akan diperbarui gambarnya.

Form Data - JSON​

INFORMASI

img yang dikirimkan adalah berupa string dari result base64 seperti contoh di bawah.

Contoh dengan JavaScript:

const file = input.files[0];
const img = await new Promise((resolve) => {
const reader = new FileReader();
reader.onload = () => {
return resolve(reader.result?.toString());
};
reader.readAsDataURL(file);
});
console.log(img);
{
"id": "6228482", // string
"name": "file-name.png", // string
"img": "data:image/png;base64,b01d078344bcd382" // string
}

Contoh:

const url = "https://kirimin.devanka.id/x/group/set-img";

const newGroupImage = await fetch(url, {
method: "POST",
headers: {
"Content-Type": "application/json",
Accept: "application/json",
},
body: JSON.stringify({
id: "6228482",
name: "file-name.png",
img: "data:image/png;base64,b01d078344bcd382",
}),
});
console.log(newGroupImage);

Response - Success​

Saat berhasil, akan mendapat response code: 200 dan terdapat hasil final path dari gambar yang baru dikirimkan di properti data.text.

{
"ok": true, // boolean
"code": 200, // number
"data": {
"text": "group6228482_file-name_1j1iqpl9k.png" // string
}
}
RESOLVING FILE PATH

Render gambar user tersebut dengan aturan seperti berikut ini.

/file/user/{new_user_image_final_path}

Contoh:

const newImage = new Image() || document.createElement("image");
const newSrc = `https://kirimin.devanka.id/file/group/${newGroupImage.data.text}`;
newImage.src = newSrc;

Response - Failed​

Cek pesan gagalnya melalui properti response yang didapat. Contoh response yang didapat:

{
"ok": false, // boolean
"code": 413, // number
"msg": "ACC_FILE_LIMIT", // string
"data": { ... } // any
}

msg: GRPS_OWNER_FEATURE​

Terjadi karena yang mengeksekusi request bukanlah owner dari grup tersebut.

code: 403​

Terjadi karena yang mengeksekusi request bukanlah owner dari grup tersebut.

msg: GRPS_404​

Grup terkait tidak dapat ditemukan. Silakan cek kembali id grup yang dikirimkan.

msg: ACC_FILE_LIMIT​

Ukuran file yang dikirimkan melebihi batas maksimal yaitu 2.5 MB. Berikan alert atau notifikasi ke user untuk memilih gambar dengan ukuran file di bawah 2.5 MB.

code: 413​

Ukuran file yang dikirimkan melebihi batas maksimal yaitu 2.5 MB. Berikan alert atau notifikasi ke user untuk memilih gambar dengan ukuran file di bawah 2.5 MB.

code: 429​

Harap ulangi request setelah beberapa detik. Ini disebabkan server mendapat request serupa berulang kali dengan tempo yang cepat.

code: di atas 400​

Kesalahan mungkin terdapat pada form data json yang dikirimkan. Seperti tidak mengirimkan properti img, name, dan id.