Mutasyonlar

Veri değiştiren işlemler. İlan yönetimi, koleksiyon yönetimi ve webhook yapılandırması GraphQL'de mutasyon olarak sunulur.

Plus Paketi Gerektirir
Aşağıdaki mutasyonlar yalnızca Plus (ve üstü: Kurumsal) paketinde çalışır. Diğer paketlerle yapıldığında 403 PLAN_UPGRADE_REQUIRED döner. İşlemler, API anahtarının sahibi olan kullanıcı üzerinde yapılır.

İlan Fiyatını Güncelle

mutation {
  updateListingPrice(listingId: 5044, price: 11900) {
    id
    price
    status
    message
  }
}
{
  "data": {
    "updateListingPrice": {
      "id": 5044,
      "price": 11900,
      "status": "active",
      "message": "Fiyat güncellendi."
    }
  }
}

İlanı Güncelle

Fiyat dışında bir alan gönderirseniz ilan yeniden onaya alınır (status: "pending"). Yalnızca fiyat değiştirecekseniz updateListingPrice kullanın.

mutation {
  updateListing(listingId: 5044, input: {
    title: "Charizard VMAX PSA 10"
    description: "Kutuda, temiz durumda"
  }) {
    id
    price
    status
    message
  }
}

İlan Durumunu Değiştir

mutation {
  setListingStatus(listingId: 5044, action: "pause") {
    id
    status
    message
  }
}

Koleksiyon Kaydı

mutation {
  addCollectionItem(collectionId: 18, input: {
    itemId: 12345
    quantity: 2
    purchasePrice: 8500
    note: "Kutuda saklanıyor"
  }) {
    id
    itemName
    groupLabel
    quantity
    message
  }
}

Webhook Yapılandırması

mutation {
  configureWebhook(input: {
    url: "https://siteniz.com/webhooks/kartfiyat"
    onSale: true
    onExpire: true
    isActive: true
  }) {
    url
    onSale
    onExpire
    isActive
  }
}

Hatalar

Mutasyon hataları errors alanında döner. Uygulama hataları için extensions.code değeri kullanılır (örn. PLUS_LISTING_ERROR, PLUS_COLLECTION_ERROR).

{
  "errors": [
    {
      "message": "Bu ilan size ait değil.",
      "extensions": { "code": "PLUS_LISTING_ERROR" }
    }
  ],
  "data": null
}

Tüm mutasyonlar ve parametreleri için Şema sayfasına bakın.