Active olan bütün Person ları get etmek için => https://{hostname}/api/People
Passive de dahil bütün Person ları get etmek için => https://{hostname}/api/People/all
İstenen Id ye sahip Person u get etmek için => https://{hostname}/api/People/{id}
Get Formatı
{
"id": 1,
"userName": "beerkaya",
"name": "Berk",
"surname": "Kaya",
"role": "Backend",
"githubLink": "#",
"linkedInLink": "#",
"projects": [
{
"id": 1,
"name": "Project1",
"explanation": "...",
"githubLink": "#",
"isActive": true,
"personIds": "1"
},
{
"id": 2,
"name": "Project2",
"explanation": "...",
"githubLink": "#",
"isActive": false,
"personIds": "1-2"
}
]
}
"projectids" i "1-2" olan bir person un get edildiğindeki çıktısı.
Daha önce silinmiş olan bir proje varsa ve kişi o projede yer alıyorsa, ilgili projenin bilgileri de person get edildiğinde çıktıda yer alır. Projenin kalkmış olduğu da belirtilir.
Post etmek için => https://{hostname}/api/People
Person Post Formatı
{
"username": "beerkaya",
"password": "123456",
"name": "Berk",
"surname": "Kaya",
"role": "Backend",
"githublink": "#",
"linkedinlink": "#",
"projectids": ""
}
*"projectids" eklenecek proje id lerine göre "1-2-3" şeklinde doldurulur. *
Herhangi bir proje eklenmemişse boş gönderilir.
Put etmek için => https://{hostname}/api/People/{id}
Person Put Formatı
{
"id": 1,
"username": "beerkaya",
"name": "Berk",
"surname": "Kaya",
"role": "Backend",
"githublink": "#",
"linkedinlink": "#",
"projectids": "1-2"
}
Put edilirken değiştirilen veya değiştirilmeyen tüm bilgiler apiye gönderilir.
Burada 2 adet proje olduğu varsayılıp bu kişide "projectids" düzenlemesi yapılmıştır.
Delete etmek için => https://{hostname}/api/People/{id}
Active olan bütün Project leri get etmek için => https://{hostname}/api/Projects
Passive de dahil bütün Project leri get etmek için => https://{hostname}/api/Projects/all
İstenen Id ye sahip Project i get etmek için => https://{hostname}/api/Projects/{id}
Get Formatı
{
"id": 1,
"name": "Project1",
"explanation": "...",
"githubLink": "#",
"people": [
{
"id": 1,
"userName": "beerkaya",
"password": "******",
"name": "Berk",
"surname": "Kaya",
"role": "Backend",
"githubLink": "#",
"linkedInLink": "#",
"isActive": true,
"projectIds": "1-2"
}
]
}
"personids" i "1" olan bir project in get edildiğindeki çıktısı.
Post etmek için => https://{hostname}/api/Projects
Project Post Formatı
{
"name": "Project1",
"explanation": "...",
"githublink": "#",
"personids": "1-2-3"
}
*"personids" eklenecek person id lerine göre "1-2-3" şeklinde doldurulur. *
Herhangi bir person eklenmemişse boş gönderilir.
Burada 3 adet person olduğu varsayılıp eklemesi yapılmıştır.
Put etmek için => https://{hostname}/api/Projects/{id}
Project Post Formatı
{
"id": 1,
"name": "Project1",
"explanation": "...",
"githublink": "#",
"personids": "1-3"
}
Put edilirken değiştirilen veya değiştirilmeyen tüm bilgiler apiye gönderilir.
Burada put edilirken "2" numaralı person projeden silinmiştir.
Delete etmek için => https://{hostname}/api/Projects/{id}
Login için url e kullanıcı adı ve şifre gönderilerek get isteğinde bulunulur.
Url => https://{hostname}/api/Login
Login Formatı
{
"username": "beerkaya",
"password": "123456"
}
Apiye bu bilgilerle get isteği gönderilir. Kullanıcı adı ve şifre eşleşir ise true, eşleşmez ise false döner.
Diğer durumlarda (username null olması, db de olmaması gibi) "BadRequest" döner.
Şifre değiştirme işlemi için url e kullanıcı adı, eski şifre ve yeni şifre gönderilerek put isteğinde bulunulur. İşlem başarılı olursa true döner.
Url => https://{hostname}/api/People/pass/{id}
Parola Değiştirme Formatı
{
"username": "beerkaya",
"oldpassword": "123456",
"newpassword": "12345678"
}
Kullanıcı adı ve parola eşleşmesi başarılı olursa şifre değiştirilir ve true döner.
Diğer durumlarda false döner.