Aşağıdaki adımları takip ederek bir Logo CRM REST istemcisi oluşturabilirsiniz. Buradaki örnekler için Postman ya da başka bir istemci kullanılabilir.
Logo CRM REST uygulamasının Veritabanı bağlantı bilgileri uygulama dizinindeki web.config de tutulur. ConnectionString'in Logo CRM ile aynı olmasına dikkat ediniz.
Logo CRM Tarafından Sunulan Kaynaklar
Logo CRM REST Service Arayüzleri
Logo REST Sunucusu
Default Kurulum
Login (POST)
IIS 10.0 Detailed Error - 404.0 - Not Found şeklinde bir hata alırsanır. URL'i kontrol ediniz.
http post kullanılarak login olabilirsiniz. Login başarılı olursa sessionid üretilecektir. Daha sonraki işlemler için bu id'yi kullanacaksınız.
1.49 sürümünden itibaren Login'de kullanılan paramertreler base64Encoded olarak POST edilerek kullanılacaktır.
1.49 Versiyonu Sonrası Login
Parametreler base64Encoded olarak "authorization" query name ile POST edilir:
http://localhost/LogoCRMRest/api/v1.0/login?authorization=TE9HTzpMb2dvKyZMb2dvOnRydWU6dHI6ZmFsc2U=
Example Authorization (Base64 encode için : https://www.base64decode.org/)
- Basic BASE64Encode(LOGO:Logo)
- Basic BASE64Encode(LOGO:Logo:true)
- Basic BASE64Encode(LOGO:Logo:true:tr)
- Basic BASE64Encode(LOGO:Logo:true:tr:false)
1.49 Versiyonu Öncesi Login
Örnek1 : logoCrmRestServer/api/v1.0/login?username=LOGO&password=LOGO Örnek2 : http://localhost/LogoCrmRest/api/v1.0/login?username=LOGO Örnek3 : http://localhost/LogoCRMRest/api/v1.0/login?userName=LOGO&passWord=Logo&allowImages=true&language=tr&isDetailedLogin=false
Firma Listesi Alma (GET)
Belirli bir firmayı getirmek için ilgili firmanın Oid bilgisi verilmelidir.
http://localhost/LogoCrmRest//api/v1.0/firms/f948d46e-f578-4058-9d16-d65439fe14d6?SessionId=b3c08db9-a021-4972-b24b-9a6fa9778539
Firma Ekleme (POST)
Firma ya da başka bir iş nesnesi GET ile alındıktan sonra ilgili alanları doldurulup gönderilerek POST yapılabilir.
"Oid" sistem tarafından otomatik olarak oluşturulmaktadır. Aşağıdaki gibi bir tanım ile firma eklenebilir.
Destek Maddesi Ekleme (POST)
Veri deseni için öncelikle tickets lar örnek olarak alınabilir. Sonrasında ilgili kayıt oluşturulup sessionid ile POST etmek yeterli olacaktır.
{ "Meta": { "href": "localhost/LogoCrmRest/api", "mediaType": "application/json; charset=UTF-8", "fullPath": "/LogoCrmRest/api/v1.0/ticketstates", "apiVersion": "1" }, "Result": 1, "Message": "", "Items": [ { "Oid": "8e632b29-4fb9-472c-8aea-25b54a74cfe2", "TicketStateDescription": "Aktif", "IsActive": true, "IsCompleted": false, "_CreatedDateTime": "2017-12-15T14:50:41.01", "_LastModifiedDateTime": "2017-12-15T14:50:41.013" } ] }
Logo CRM de tanımlı bir durumun destek kaydı içinde gönderilmesi zorunludur.
Comment (GET)
Yorumları listelemek için;
GET isteği ile http://localhost/LogoCRMRest/api/v1.0/comments/ObjectKey?sessionId=04cfad92-0f1f-4199-a1bb-f6cfb7f75862 URL i kullanılır. Buradaki "ObjectKey" parametresi yorumları listelenmek istenilen kaydın ObjectKey'idir.
Örneğin aktivite detayındaki yorumları listelemek istersek Aktivite detayındaki objectKey'i almamız gerekir.
http://localhost/LogoCRMRest/api/v1.0/comments/5020baaf-7482-4a76-8119-9e798d10a3d2?sessionId=04cfad92-0f1f-4199-a1bb-f6cfb7f75862
Comment (POST)
Yorum eklemek için;
POST isteği ile http://localhost/LogoCRMRest/api/v1.0/comments?sessionId=04cfad92-0f1f-4199-a1bb-f6cfb7f75862 URL i kullanılır. Body kısmındaki zorunlu alanlar aşağıdaki şekildedir. Burada "content" eklenmek istenilen yorum, "object id" hangi nesneye yorum eklenmek isteniyorsa onun Oid bilgisi, "moduleName" hangi module eklenecekse onun adıdır.
{ "content": "rest ile yorum", "created": "2019-02-20 08:53:04.573", "modified": "2019-02-20 08:53:04.573", "moduleName": "MT_Activity", "objectId": "92c0b194-f24c-4c30-a64d-cc0382b8300b" }
Yorum beğenmek için;
POST isteği ile http://localhost/LogoCRMRest/api/v1.0/comments/upVoteComment?sessionId=04cfad92-0f1f-4199-a1bb-f6cfb7f75862 URL i kullanılır. Body ise
{
"objectId": "7b4da874-8b56-41e9-9b57-f8813889aeae",
"id" : "1"
}
şeklindedir. Burada objectId hangi nesne olduğunu ve id ise hangi yorum olduğunu belirtir. Bu parametrelere bakılarak yorum beğenilir veya daha önce beğenilmiş ise beğeni geri alınır.
Ön koşul olarak kullanıcının login olup sessionId aldığı kabul edilmiştir. Ayrıca hem rest hem de web için yorum fonksiyonları test edilirken id lerin veritabanına da doğru kaydedildiğinden emin olunmalıdır.
Comment (PUT)
Yorum güncellemek için;
PUT isteği ile http://localhost/LogoCRMRest/api/v1.0/comments?sessionId=04cfad92-0f1f-4199-a1bb-f6cfb7f75862 URL i kullanılır. Body ise aşağıdaki şekildedir. Burada content yorumun düzenlenen hali, objectId düzeltilecek nesnenin Oid bilgisi, id ise hangi yorumun düzeltileceğini belirtir.
{ "content": "yorum ekleme düzenlendi", "objectId": "6c65e7cf-aac8-4df7-b7ec-7b24e2f3ece3", "id" : "1" }
Comment (DELETE)
Yorum silmek için;
DELETE isteği ile http://localhost/LogoCRMRest/api/v1.0/comments?sessionId=04cfad92-0f1f-4199-a1bb-f6cfb7f75862 URL i kullanılır. Body ise aşağıdaki şekildedir. Burada objectId hangi nesne olduğunu ve id ise hangi yorum olduğunu belirtir. Bu parametrelere bakılarak silme işlemi yapılır.
{ "objectId": "6c65e7cf-aac8-4df7-b7ec-7b24e2f3ece3", "id" : "1" }