---
# System prepended metadata

title: Amorphie Standart Rest Servis Tanimlari

---

# Amorphie Standart Rest Servis Tanimlari


## Search for Entity 

Tum entityler Backoffice uygulamasi ve ihtiyac duyan uygulamalar icin bir kayit arama servisi sunar.

* HTTP GET Methot olarak sunulur.
* **keyword** isminde query parameter ile full text indexlenmis tablo text verilerinde full text search yapmak icin kullanilir.
* Query string icerisinde rezerve edilmis parametre haricindeki tum parametreler filtre olarak kabul edilir.
* Filtreler degerleri {filtre-adi}={filtre-degeri} olarak Query string icerisine yerlestirilir.
* Filtreler birnden fazla degeri kabul eder. state=active&state=inProgress gibi.
* Tum referanslar(Foreign Key)  ve enum degellerinin filtre olarak tanimlanmasi beklenir.
* Entity tarafindan desteklenen tum filtreler swagger icerisinde tanimlanir.
* Rezerve edilmis Query parametreleri;
    * keyword: full text search icin kullanilir.
    * page-size: donecek veri dizininin maksimum sayisini verir. Verilmedigi takdirde 20 kabul edilir.
    * page: donecek veri dizin sayfasini belirler. Ilk sayfa indeksi sifirdir. Verilmedigi taktiderde 0 kabul edilir.


> GET https://api.burgan.com.tr/..../consent?keyword={keyword}&{filter1}={filter1Value}&{filter2}={filter2Value1}&{filter2}={filter2Value2}&page-size={pagesize}&page={page}

### Samples 
> `Migros Kredi` kelimesi gecen mobile uyugulama icin olusturulmus ilk elli consenti getir.
>  GET https://api.burgan.com.tr/..../consent?keyword=Migros%20kredi&client=mnobile&client=web&page-size=50&page=0

> Ahmet adli kullanicinin tum konstlerini doner. 
> GET https://api.burgan.com.tr/..../consent?&user=ugur


## Update from Workflow

Her entity icin workflow tarafindan state degisimlerinde, degisikligi yansitacak bir servis cagrisi yapilmasi icin servis sunulur.

Bu cagrilacak Url kaydi amorphie.workflow icerisindeki State.Transition icerisinde tanımlanır.


```csharp
public class Transition : BaseDbEntityWithId
{
    ...
    public string ServiceName { get; set; } = default!;
    ...
}
```

Her statu degisiminde ilgili entity icin tanimlanan POST methodu cagrilir.

> POST https://api.burgan.com.tr/..../consent

Cagri veri kumesinde entity verileri (workflow icerisinde gunllenmis olabilir) ve statu bilgisi gonderilir.

```json
{
  "status": "waiting-approval",
  "base-status": "new",
  "record-id": "678fd5c7-5ab0-45b2-a38e-93fbe49f38bf",
  "entityData": {
    "reference": 38538734554,
    "first-name": "Ahmet"
  }
}
```

POST servisi gelen veri icerisindeki record-id li kaydin (kayit yoksa, yeni kayit yaratir) degisen entity-data verilerini ve statulerini gunceller.

