-
Notifications
You must be signed in to change notification settings - Fork 4
API
Endpoint ini digunakan untuk mengunggah foto ke server. Terdapat tiga mode foto yang dapat dipilih yaitu kotak (square), landscape, atau potret (portrait). PERHATIKAN JIKA NAMA BERBEDA DENGAN APA YANG ADA DI CONTOH PENGGUNAAN, MAKA BACKEND TIDAK AKAN BISA MEMBACANYA
POST http://localhost:5000/api/v2/upload?mode={mode}
- file: file foto yang akan diunggah dalam bentuk form-data.
- query (string mode):
- square, landscape, portrait
- Role: "admin" | "user"
-
200 OK
: Jika foto berhasil di upload di cloudinary dan mengembalikan response. -
400 Bad Request
: Jika terjadi kesalahan saat menyimpan foto di cloudinary atau tidak ada file yang di body. -
404 Not Found
: Jika pengguna atau foto tidak ditemukan.
POST http://localhost:5000/api/v2/upload?mode=square HTTP/1.1
Headers:
Authorization: Bearer [access_token]
Body: form-data
- file: foto.jpg
Respon:
{
"PublicId": "abc123",
"Url": "https://example.com/photos/abc123"
}
Endpoint Save Photo digunakan untuk menyimpan foto baru ke dalam database. Endpoint ini hanya dapat diakses oleh pengguna dengan peran 'admin' dengan Parameter yang diizinkan adalah 'movie', 'actor', atau 'director'. Sedangkan dengan Parameter 'user', 'user' maupun 'admin' bisa mengaksesnya.
- Method: PUT
- Endpoint: http://localhost:5000/api/v2/save
- Header: Authorization dengan token JWT
- Body: PhotoResponder (berisi PublicId dan Url foto)
- Query: PhotoQuery (berisi 'to' dan 'id' jika parameter adalah 'actor', 'director', atau 'movie')
- Jika berhasil, status code 200 dan ResultValidator dengan Value Unit
- Jika gagal, status code 400 dan ResultValidator dengan pesan error
- Pastikan sudah memiliki token JWT dengan peran 'admin'
- Kirimkan request dengan method PUT ke /save dengan menyertakan header Authorization dan body PhotoResponder
- Jika ingin menyimpan foto ke 'movie', 'actor', atau 'director', sertakan parameter 'to' dan 'id' pada query
- Jika parameter tidak sesuai, akan mengembalikan pesan error
- Jika berhasil, akan mengembalikan status code 200 dan Value Unit
point ini digunakan untuk menghapus sebuah foto dengan public ID tertentu, dan beberapa parameter foto yang dibutuhkan. Endpoint ini hanya dapat diakses oleh pengguna dengan peran "admin" dan hanya jika parameter yang dibutuhkan adalah "movie", "actor", atau "director". Sedangkan dengan Parameter 'user', Peran 'user' maupun 'admin' bisa mengaksesnya.
DELETE /photos/{publicId}
- publicId: string (wajib) - Public ID foto yang akan dihapus.
- query (dari tipe PhotoQuery):
- id: string (wajib) - ID dari parameter foto yang akan dihapus.
- to: string (wajib) - Parameter yang diberikan harus "movie", "actor", atau "director".
- Role: "admin"
- Jika berhasil: status kode 200 dan pesan sukses.
- Jika gagal: status kode 400 atau 404 dan pesan kesalahan.
DELETE /photos/abc123?to=actor&id=5
Headers:
Authorization: Bearer [access_token]
Body:
tidak ada
Respon:
{
"message": "Success"
}
Endpoint ini digunakan untuk mengatur foto utama pengguna. Pengguna dapat menetapkan foto utama mereka dengan mengirimkan ID foto publik ke endpoint ini.
PUT /api/photos/{publicId}/manage-main
-
publicId
(string, required): ID foto publik yang ingin dijadikan sebagai foto utama.
-
200 OK
: Jika pengaturan foto utama berhasil disimpan. -
400 Bad Request
: Jika terjadi kesalahan saat menyimpan pengaturan foto utama. -
404 Not Found
: Jika pengguna atau foto tidak ditemukan.
PUT /api/photos/{publicId}/manage-main HTTP/1.1
Host: example.com
Content-Type: application/json
Authorization: Bearer <access_token>
{
"publicId": "12345"
}
Check Other Page :)