-
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 (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. -
401 Unauthorized
: Belum mempunyai access token atau access token expired.
POST http://localhost:5000/api/v2/upload?mode=square HTTP/1.1
Host: example.com
Content-Type: multipart/form-data
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.
PUT http://localhost:5000/api/photos/save?id=1&to=actor
- Body:
{
"PublicId": "abc123",
"Url": "https://example.com/photos/abc123"
}
- query (dari tipe PhotoQuery):
- id: string (wajib) - ID dari masing - masing .
- to: string (wajib) - Parameter yang diberikan harus "movie", "actor", atau "director".
- Role: "admin" | "user"
-
200 OK
: Jika foto berhasil di simpan ke Database. -
400 Bad Request
: Jika terjadi kesalahan saat menyimpan foto di database/tidak ada file yang di body/query parameter tidak sesuai. -
404 Not Found
: Jika entity dari ID yang diberikan tidak ditemukan. -
403 Forbidden
: User mengakses endpoint yang tidak sesuai dengan rolenya. -
401 Unauthorized
: Belum mempunyai access token atau access token expired.
PUT http://localhost:5000/api/photos/save?id=1&to=actor HTTP/1.1
Host: example.com
Content-Type: application/json
Authorization: Bearer <access_token>
Body:
{
"PublicId": "abc123",
"Url": "https://example.com/photos/abc123"
}
Respon:
{
"message": "Success"
}
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 http://localhost:5000/api/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" | "user"
-
200 OK
: status kode 200 dan pesan sukses. -
400 Bad Request
: Jika terjadi kesalahan saat menyimpan foto di database atau queryto
tidak sesuai. -
404 Not Found
: Jika pengguna atau foto tidak ditemukan. -
403 Forbidden
: User mengakses endpoint dengan query yang tidak sesuai dengan rolenya. -
401 Unauthorized
: Belum mempunyai access token atau access token expired.
DELETE /photos/abc123?to=actor&id=5 HTTP/1.1
Host: example.com
Content-Type: application/json
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 http://localhost:5000/api/{publicId}/manage-main
-
publicId
(string, required): ID foto publik yang ingin dijadikan sebagai foto utama.
- Role: "admin" | "user"
-
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. -
401 Unauthorized
: Belum mempunyai access token atau access token expired.
PUT /api/photos/{publicId}/manage-main HTTP/1.1
Host: example.com
Content-Type: application/json
Authorization: Bearer <access_token>
body: tidak ada
Respon:
{
"publicId": "12345"
}
Check Other Page :)