/**
  * @param int $id
  * @param array $data
  * @return Resim
  *
  * @throws BadRequestException
  * @throws UnauthorizedException
  * @throws NotFoundException
  * @throws UnknownException
  */
 public function guncelle($id, $data)
 {
     // response alalım
     $response = $this->api->post('/resim/guncelle/' . $id, $data);
     // durum koduna göre işlem yapalım
     switch ($response->code) {
         case 200:
             return new Resim($response->body);
         case 400:
             throw new BadRequestException($response);
         case 401:
             throw new UnauthorizedException($response->body->mesaj);
         case 404:
             throw new NotFoundException($response->body->mesaj);
         case 500:
             throw new InternalApiErrorException($response);
     }
     throw new UnknownException($response);
 }
 /**
  * @param IletisimMesaj $iletisimMesaj
  * @return string
  *
  * @throws NotFoundException
  * @throws UnauthorizedException
  * @throws BadRequestException
  */
 public function ekle(IletisimMesaj $iletisimMesaj)
 {
     // response alalım
     $response = $this->api->post('/iletisim-mesaj/yeni', ['adi' => $iletisimMesaj->adi, 'mail' => $iletisimMesaj->mail, 'telefon' => $iletisimMesaj->telefon, 'konu' => $iletisimMesaj->konu, 'mesaj' => $iletisimMesaj->mesaj]);
     // durum koduna göre işlem yapalım
     switch ($response->code) {
         case 200:
             return $response->body->mesaj;
         case 400:
             throw new BadRequestException($response);
         case 401:
             throw new UnauthorizedException($response->body->mesaj);
         case 404:
             throw new NotFoundException($response->body->mesaj);
         case 500:
             throw new InternalApiErrorException($response);
     }
     throw new UnknownException($response);
 }
 /**
  * @param int $kullaniciId
  * @param array $data
  * @return KullaniciAdres
  *
  * @throws BadRequestException
  * @throws UnauthorizedException
  * @throws UnknownException
  */
 public function ekleAdres($kullaniciId, $data)
 {
     // response alalım
     $response = $this->api->post('/kullanici/' . $kullaniciId . '/adres/ekle', $data);
     // durum koduna göre işlem yapalım
     switch ($response->code) {
         case 200:
             return new KullaniciAdres($response->body);
         case 400:
             throw new BadRequestException($response);
         case 401:
             throw new UnauthorizedException($response->body->mesaj);
         case 500:
             throw new InternalApiErrorException($response);
     }
     throw new UnknownException($response);
 }
 /**
  * @param int $ilanId
  * @param string $resim
  * @return Resim
  *
  * @throws NotFoundException
  * @throws UnauthorizedException
  */
 public function ekleIlanResim($ilanId, $resim)
 {
     // response alalım
     $response = $this->api->post('/emlak/ilan/resim/ekle/' . $ilanId, [], ['resim' => $resim]);
     // durum koduna göre işlem yapalım
     switch ($response->code) {
         case 200:
             return new Resim($response->body);
         case 400:
             throw new BadRequestException($response);
         case 401:
             throw new UnauthorizedException($response->body->mesaj);
         case 404:
             throw new NotFoundException($response->body->mesaj);
         case 500:
             throw new InternalApiErrorException($response);
     }
     throw new UnknownException($response);
 }
 /**
  * @param int $referenceId
  * @param string $image
  * @return Resim
  *
  * @throws NotFoundException
  * @throws UnauthorizedException
  */
 public function createImage($referenceId, $image)
 {
     $files = ['image' => $image];
     // response alalım
     $response = $this->api->post('/reference/image/create/' . $referenceId, [], $files);
     // durum koduna göre işlem yapalım
     switch ($response->code) {
         case 200:
             return new Resim($response->body);
         case 400:
             throw new BadRequestException($response);
         case 401:
             throw new UnauthorizedException($response->body->mesaj);
         case 404:
             throw new NotFoundException($response->body->mesaj);
         case 500:
             throw new InternalApiErrorException($response);
     }
     throw new UnknownException($response);
 }
 /**
  * @param int $id
  * @param array $data
  * @param string|null $imageOriginal
  * @param string|null $imageCropped
  * @return GaleriIcerik
  *
  * @throws BadRequestException
  * @throws UnauthorizedException
  * @throws NotFoundException
  * @throws UnknownException
  */
 public function guncelleIcerik($id, $data, $imageOriginal = null, $imageCropped = null)
 {
     $files = [];
     if (!empty($imageOriginal) && !empty($imageCropped)) {
         $files = ['image_original' => $imageOriginal, 'image_cropped' => $imageCropped];
     }
     // response alalım
     $response = $this->api->post('/galeri/icerik/guncelle/' . $id, $data, $files);
     // durum koduna göre işlem yapalım
     switch ($response->code) {
         case 200:
             return new GaleriIcerik($response->body);
         case 400:
             throw new BadRequestException($response);
         case 401:
             throw new UnauthorizedException($response->body->mesaj);
         case 404:
             throw new NotFoundException($response->body->mesaj);
         case 500:
             throw new InternalApiErrorException($response);
     }
     throw new UnknownException($response);
 }