Konu

API Hataları — Her Kodun Anlamı ve Nasıl Düzeltileceği

FastOG, bir istek başarısız olduğunda — imzalı bir OG görseli oluşturma veya ürün içi yönetim yüzeylerinden birine yapılan çağrı — makine tarafından okunabilir hata kodları döndürür. Her hata yanıtı şunları içerir:

  • error — eski kısa belirteç. Eski bir istemcinin çalışmaya devam etmesi için her hatada hâlâ mevcuttur.
  • code — aynı kararlı, belgelenmiş hata kodu (aşağıdaki tablo), genel API'nin kullandığı ad altında.
  • message — neyin yanlış gittiğine dair tek cümlelik bir açıklama.
  • hint — neyin yanlış gittiğine ve nasıl düzeltileceğine dair kısa, sade bir açıklama.
  • docs_url — bu sayfaya, o kodun bölümüne sabitlenmiş bir bağlantı.
  • request_id — bu HTTP hatasını dashboard'daki Render Logs tablosundaki bir satırla ilişkilendirir (X-Request-ID yanıt başlığında da döndürülür). İlişkilendirilecek bir şeyi olmayan bir yüzey null yanıtlar, ancak anahtar her zaman mevcuttur.

Ürün içi yüzeyler — Shopify yönetim paneli, WooCommerce Studio, Wix köprüsü ve demo — aşağıdaki kodlar için aynı zarfı yanıtlar, böylece bir hata nerede karşılaşırsanız karşılaşın aynı anlama gelir. Bir modül yüzeyi, bir kod için her zaman döndürdüğü HTTP durumunu koruyabilir (örneğin render_failed kapak dışa aktarımında 503, genel API'de 502 yanıtlar); kod, mesaj, ipucu ve belge bağlantısı değişmez.

Hata yanıtını okuma

json
{
  "error": "invalid_signature",
  "code": "invalid_signature",
  "message": "The signature does not match.",
  "hint": "The signature did not match. Re-sign with your HMAC secret after every param change.",
  "request_id": "5f2a9c1e-..."
}

Anlamadığınız bir yanıt alırsanız, en hızlı yol şudur:

  1. code değerini not edin.
  2. URL oluşturucunuzu kontrol edin — hataların çoğu hesap sorunları değil, imzalama hatalarıdır.
  3. Tam nedeni ve çözümü için aşağıdaki kodla eşleştirin.
  4. Dashboard'da Render Logs bölümünü açın ve aynı error_code ile filtreleyin — her satır istenen parametreleri gösterir, böylece yeniden üretebilir (ve request_id değerinin eşleştiğini doğrulayabilirsiniz).

İmzalama ve kimlik doğrulama

missing_signature

İsteğinizde key ve/veya s (imza) sorgu parametreleri eksik.

Düzeltme: URL'nizin hem key=<api-key> hem de s=<hmac-signature> içerdiğinden emin olun. Oluşturmak için SDK'yı veya /docs/hmac-signature-guide adım adım kılavuzunu kullanın.

invalid_signature

s değeri, HMAC gizli anahtarınızın bu URL için ürettiği değerle eşleşmedi.

Düzeltme: imza, s hariç tüm sorgu parametrelerini kapsar ve anahtarlar sıralanır. Herhangi bir parametreyi değiştirmek — sıralamayı değiştirmek, URL kodlama farklılıkları veya boşluk eklemek dahil — imzayı geçersiz kılar. Her değişiklikten sonra yeniden imzalayın. Gizli anahtarınızın, API anahtarı oluşturulduğunda gösterilenle aynı olduğunu doğrulayın.

invalid_signature_format

s değeri 64 karakterlik bir hex dizesi değil.

Düzeltme: imza ham SHA-256 hex (küçük harf a-f0-9) olmalıdır. Çıktıyı base64 ile kodluyorsanız veya kısaltıyorsanız, düz hex kullanın.

expired_timestamp

Sağladığınız t zaman damgası 5 dakikadan daha eski.

Düzeltme: her URL oluşturduğunuzda zaman damgasını yeniden üretin. Bu kod eski imzalı URL akışı için geçerlidir; güncel HMAC v2 akışında zaman damgası yoktur.

invalid_api_key

Geçirdiğiniz key mevcut değil.

Düzeltme: tam API anahtarını dashboard'dan kopyalayın — bu, sk_ ile başlayan genel tanımlayıcıdır. Geneldir ve URL'lerde güvenlidir; sahipliği kanıtlayan şey gizli anahtardır (asla URL'lerde yer almaz).

missing_hmac_secret

API anahtarı için yapılandırılmış bir HMAC gizli anahtarı yok.

Düzeltme: dashboard'da yeni bir API anahtarı oluşturun — HMAC gizli anahtarı oluşturma sırasında üretilir ve bir kez gösterilir.


Parametre / girdi

invalid_image_url

URL taşıyan bir prop (image, brand_logo, logo, avatar, background_image, ...) herkese açık bir http(s) URL'si değil.

Düzeltme: herkese açık şekilde getirilebilen bir https://... URL'si geçirin. Sunucu tarafı istek sahteciliğini (SSRF) önlemek için localhost, özel IP'ler ve çıplak yollar reddedilir.


Abonelik

subscription_required (402)

İstek Dynamic API'ye ulaştı ancak hesabınızın etkin bir planı yok. API erişimi yalnızca abonelikle mümkündür: plan bir ön koşuldur ve FastOG uygulamalarının sunduğu kapsam + yetenek basamaklarının aynısını içerir. Render işlemlerinin kendisi ölçülmez — aylık render kotası ve aşım faturalandırması yoktur.

Çözüm: dashboard üzerinden bir Dynamic API planı seçin ve bir API anahtarı oluşturun. Yanıt, planlar sayfasına işaret eden bir top_up_url içerir.


Render hizmeti

store_blocked (403)

Bu anahtarın arkasındaki mağaza için render işlemi FastOG tarafından duraklatıldı (örneğin kötüye kullanım veya kontrolsüz kullanım). Edge'de önceden önbelleğe alınmış kapaklar, süreleri dolana kadar sunulmaya devam edebilir. Çözmek için destek ekibiyle iletişime geçin; istekte değiştirebileceğiniz hiçbir şey bunu düzeltmez.

render_unreachable

Render hizmetine ulaşılamadı (kısa yeniden başlatma aralığı).

Çözüm: birkaç saniye içinde yeniden deneyin. Bu deneme için render sayılmadı.

render_failed

Render hizmeti isteğiniz için bir hata döndürdü.

Çözüm: şablon prop'larınızı doğrulayın — uzun/hatalı biçimli değerler, desteklenmeyen alanlar veya erişilemeyen bir upstream görseli. Yanıt, altında yatan status bilgisini içerir. Render sayılmadı.


Mağaza yönetici yüzeyleri

Bu kodlar, Shopify yöneticisinden ve WooCommerce Studio'dan yanıt verir — imzalı API yerine satıcının içinde çalıştığı gömülü düzenleyicilerden. Birkaçı genel API ile paylaşılır (invalid_image_url, render_failed, invalid_signature); bunlar yukarıda belgelenen girişi korur.

Kod HTTP Ne anlama geliyor ve ne yapmalısınız
invalid_shop 422 Shopify mağazası tanımlanamadı. Gömülü isteğin mağazayı yeniden taşıması için FastOG uygulamasını Shopify yöneticinizden yeniden yükleyin, ardından tekrar deneyin.
invalid_shop_or_page 422 Mağaza veya sayfa türü bilinmiyor. FastOG uygulamasını Shopify yöneticinizden açın ve düzenleyiciden bir kapak sayfası türü seçin.
invalid_store 422 WooCommerce mağazası tanımlanamadı. Mağaza belirtecinin yeniden sunulması için Studio'yu WordPress yöneticinizden yeniden açın, ardından tekrar deneyin.
invalid_store_or_page 422 Mağaza veya sayfa türü bilinmiyor. Studio'yu WordPress yöneticinizden yeniden açın ve düzenleyicinin sunduğu bir kapak sayfası türü seçin.
missing_api_key 422 Mağazanın imzalama anahtarı yok. FastOG'un mağazaya imzalama anahtarını verebilmesi için eklenti kurulumunu WordPress yöneticinizden tamamlayın.
store_ownership_unverified 403 WordPress sitesi doğrulanamadı. Siteye genel HTTPS üzerinden erişilebilmeli ve REST API etkin olmalıdır.
community_is_free 422 Community planı ücretsizdir. Varsayılan ücretsiz plandır ve satın alınamaz; yükseltmek için ücretli bir kademe seçin.
not_installed 404 FastOG bu mağaza için kurulu değil. Bu mağaza için FastOG uygulamasını Shopify App Store'dan kurun, ardından yeniden açın.
oauth_required 409 Mağazanın FastOG'u yeniden yetkilendirmesi gerekiyor. FastOG OAuth kurulumunu Shopify yöneticinizden yeniden çalıştırın; saklanan yetki iptal edilmiş veya kapsamları değişmiş.
reconnect_required 409 Shopify bağlantısının yeniden kurulması gerekiyor. Yeni bir erişim belirteci verilmesi için FastOG uygulamasındaki Yeniden Bağlan düğmesini kullanın.
token_rejected 409 Shopify bir erişim belirteci verdi ve ardından reddetti. Yeniden bağlanmayı bir kez deneyin; Shopify reddetmeye devam ederse uygulamayı yeniden kurun.
unauthorized 401 İstek bu yüzey için geçerli bir oturum taşımıyor. Yeni bir oturum belirtecinin eklenmesi için FastOG uygulamasını platform yöneticinizden yeniden yükleyin, ardından tekrar deneyin.
shop_not_found 404 Mağaza artık FastOG'da mevcut değil. Mağaza kaydını yeniden oluşturmak için FastOG'u Shopify yöneticinizden yeniden kurun.
invalid_product 422 Ürün referansı geçerli değil. Ürün sayfasını yeniden yükleyip FastOG'u yeniden açın; gönderilen ürün kimliği eksikti veya sayısal değildi.
invalid_product_cover 422 Ürün kapağı yükü hatalı biçimde. Düzenleyiciyi yeniden yükleyip tekrar kaydedin; props, style ve signals'in her biri bir nesne olmalıdır.
product_not_found 404 Ürün mağazadan okunamadı. Ürünün hâlâ mevcut ve yayında olduğunu kontrol edin, ardından düzenleyiciyi yeniden yükleyin.
product_customization_not_on_plan 403 Ürün başına kapak özelleştirmesi bu planda yok. Yükseltin veya bunun yerine paylaşılan ürün kapağını düzenleyin.
no_product_handles 422 Yenilenecek ürün bulunamadı. Genel bir handle ile en az bir ürün yayınlayın, ardından paylaşım önizlemesi yenilemesini tekrar deneyin.
invalid_style 422 Stil bloğu kullanılamıyor. Düzenleyiciyi yeniden yükleyip renkleri ve yazı tiplerini yeniden seçin; bir değer normalleştirilemedi.
invalid_template 422 İstenen şablon bu platform kataloğunda yok. Düzenleyicinin sunduğu düzenlerden birini seçin.
invalid_preset 422 Ön ayar adı bu platformun sunduğu bir ad değil. Kurulum ekranından bir ön ayar seçin.
invalid_set 422 Kapak seti yükü eksik veya hatalı biçimde. Kurulum ekranını yeniden yükleyip tekrar bir set seçin.
preset_not_applyable 422 Ön ayar her sayfa türüne uygulanamıyor. Başka bir ön ayar seçin; bu ön ayarda en az bir sayfa türü için kapak eksik.
template_not_available 422 Şablon işlenebilir katalogda yok. Seçicinin sunduğu bir düzen seçin.
template_not_available_on_shopify 422 Şablon Shopify mağazalarında kullanılamıyor. Shopify düzenleyicisinin sunduğu bir düzen seçin.
template_not_available_on_woocommerce 422 Şablon WooCommerce mağazalarında kullanılamıyor. Studio'nun sunduğu bir düzen seçin.
template_unavailable 422 Şablon bu mağaza için kullanılamıyor. Düzenleyicinin sunduğu bir düzen seçin; şablon kullanımdan kaldırılmış, bilinmiyor veya mağazanın çizebileceğinin üzerinde.
template_not_on_plan 403 Şablon daha yüksek bir plan gerektiriyor. Planı değiştirin veya mevcut planın kapsadığı bir düzen seçin. Yanıt, planı requires içinde belirtir.
template_requires_higher_plan 403 Şablon daha yüksek bir plan gerektiriyor. Yanıt, planı requires içinde belirtir.
no_rule 404 Bu sayfa türü için henüz kapak kuralı yok. Önce düzenleyicide bu sayfa türü için bir kapak kaydedin.
cover_not_configured 404 Henüz ürün kapağı kaydedilmedi. İndirmeden veya paylaşmadan önce bir ürün kapağı kaydedin.
schedule_only_product 422 Kampanya zamanlaması yalnızca ürün kapakları için vardır. Geri alma tarihini kaldırın veya kampanyayı ürün kapağına taşıyın.
not_dismissible 422 Bu duyuru kapatılamaz. Sayfayı yeniden yükleyin; duyuru zaten kullanımdan kaldırılmış veya başka bir mağazaya ait.
unsupported_locale 422 Bu arayüz dili bu uygulama için paketlenmemiş. Yanıtın supported içinde listelediği dillerden birini seçin.
no_setup_sets 422 Derlenmiş kapak seti oluşturulamadı. Kurulum ekranını tekrar deneyin; boş kalmaya devam ederse destek ekibiyle iletişime geçin.
export_unavailable 403 İndirmeler bu planda yok. Kapak dosyalarını indirmek için Pro veya üstüne yükseltin.
cancellation_failed 502 Abonelik iptali reddedildi. Birazdan tekrar deneyin; başarısız olmaya devam ederse Shopify faturalandırma sayfasından iptal edin veya destek ekibiyle iletişime geçin.
logo_override_on_plan 403 Logo geçersiz kılma bu planda yok. Yükseltin veya logo geçersiz kılmayı temizleyin.
invalid_logo 422 Logo dosyası kabul edilen bir görsel değil. Düzenleyicide gösterilen boyut sınırının altında bir PNG, JPEG veya WebP yükleyin.
invalid_brand_image 422 Marka referans görseli kullanılamıyor. Boyut sınırının altında desteklenen bir görsel yükleyin veya referansı temizleyip tekrar kaydedin.
brand_image_too_large 422 Marka referans görseli çok büyük. Dosyayı küçültüp tekrar yükleyin.
brand_colors_too_many 422 Üçten fazla marka rengi gönderildi. En fazla üç hex rengi gönderin.
upload_failed 500 Yüklenen dosya saklanamadı. Tekrar deneyin; başarısız olmaya devam ederse destek ekibiyle iletişime geçin — varlık deposu genel bir URL döndürmedi.
attachment_upload_failed 500 Destek eki dosyası saklanamadı. Mesajı ek olmadan gönderin, ardından dosyayı destek ekibine e-postayla iletin.
invalid_webhook 401 Mağaza webhook imzası doğrulanamadı. WordPress FastOG ayarlarınızdaki webhook gizli anahtarının FastOG'un verdiğiyle eşleştiğini kontrol edin.
not_found 404 Bu uç nokta artık mevcut değil. Studio'yu WordPress yöneticinizden yeniden açın.
meta_refresh_unavailable 503 Paylaşım önizlemesi yenilemesi yapılandırılmamış. Bunun yerine bağlantıyı Facebook üzerinden yeniden paylaşın.
theme_write_disabled 409 Tema düzenleme bu uygulama için etkin değil. Tema dosyası düzeltmesi yerine tema uygulama gömülüsünü kullanın.
scope_required 403 FastOG'da bir Shopify izni eksik. Yanıttaki consent_url kullanarak istenen kapsamları onaylayın, ardından düzeltmeyi tekrar deneyin.

Wix köprüsü

Wix köprüsü, satıcı oturumuyla değil Wix uygulamasıyla imzalandığından, hataları uygulama geliştiricisine yöneliktir. Her yanıt yine de code ve request_id taşır; köprü istek kimliği, imzalı zarftaki kimliktir.

Kod HTTP Ne anlama geliyor ve ne yapmalısınız
invalid_bridge_signature 401 Wix köprü imzası doğrulanamadı. İsteği paylaşılan gizli anahtarla, tam yol ile ve beş dakikadan yeni bir zaman damgasıyla yeniden oluşturun.
invalid_bridge_body 400 Köprü zarfının gövdesi hatalı biçimlendirilmiş. body değerini bir JSON nesnesi olarak gönderin ve kanonik imzanın eşleşmesi için içindeki her sayıyı dize olarak kodlayın.
replayed_bridge_request 401 Bu köprü isteği zaten kullanılmış. Her değiştirici çağrı için yeni bir request_id oluşturun.
wix_site_not_installed 403 FastOG bu Wix sitesinde yüklü değil. FastOG uygulamasını siteye yükleyin, ardından siteyi yeniden açın.
wix_site_not_provisioned 422 Wix sitesinin henüz imzalama kimlik bilgileri yok. Sitenin bir API anahtarıyla hazırlanması için FastOG uygulamasını yeniden yükleyin.
invalid_page_type 422 Sayfa türü, FastOG'un Wix üzerinde kapsadığı türlerden biri değil. Studio'nun sunduğu sayfa türlerinden birini gönderin.
rule_not_found 404 Bu kimliğe sahip bir kural yok. Listeyi yenileyin; kural silinmiş veya başka bir siteye ait olabilir.
invalid_target_id 422 Wix hedef kimliği bu sayfa türü için geçerli değil. Wix uygulamasının o sayfa türü için sağladığı kimliği gönderin.
invalid_preview 422 Önizleme yükü hatalı biçimlendirilmiş. Hatalı alan için details nesnesini okuyun.
invalid_rule 422 Kapak kuralı yükü hatalı biçimlendirilmiş. details nesnesini okuyun; template zorunludur ve isteğe bağlı bloklar nesne olmalıdır.
invalid_sync 422 Eşitleme yükü hatalı biçimlendirilmiş. details nesnesini okuyun; target_type ve target_id birbiriyle uyuşmalıdır.
invalid_regenerate_url 422 Yeniden oluşturulacak URL eksik. Sayfa URL'sini url içinde gönderin.
invalid_regenerate_host 422 URL, FastOG ana bilgisayarına ait değil. Bir fastog.com kapak URL'si gönderin.
ai_presets_unsupported 422 AI ile tasarlanmış kapak setleri artık oluşturulmuyor. Bunun yerine özenle seçilmiş görünümlerden birini seçin.
original_tags_required 422 Orijinal meta veri etiketleri gereklidir. Bir kaldırma işleminin site meta verilerini geri yükleyebilmesi için original_tags (veya current_tags) gönderin.
invalid_restored 422 Geri yüklenen anahtarlar yükü hatalı biçimlendirilmiş. restored değerini meta veri anahtarlarından oluşan bir dizi olarak gönderin.
invalid_seo_target 422 SEO hedef türü bilinmiyor. Yolda site, pattern veya item kullanın.
invalid_seo_payload 422 SEO meta veri yükü hatalı biçimlendirilmiş. target_id, current_tags ve fastog_url değerlerini mutlak bir http(s) URL'si olarak gönderin.
sync_failed 500 Wix'e meta veri eşitlemesi başarısız oldu. Yeniden deneyin; başarısız olmaya devam ederse sitenin erişilebilir olduğunu ve uygulamanın hâlâ yüklü olduğunu kontrol edin.
invalid_tier 422 Bu plan, FastOG'un Wix üzerinde sattığı planlardan biri değil. Katman olarak starter, pro veya scale gönderin.

Demo yüzeyi

Demo, satıcı uç noktası değil, yalnızca sahibine açık satış konsoludur.

Kod HTTP Ne anlama gelir ve ne yapmalı
url_required 422 Hiçbir URL gönderilmedi. Kartı okumadan önce mağaza veya ürün bağlantısını yapıştırın.
unreadable_url 422 Bu sayfa okunamadı. Bağlantının herkese açık ve eksiksiz olduğunu kontrol edin; oturum açma gerektiren bir sayfa okunamaz.
no_api_key 422 Kapakları imzalamak için kullanılabilir bir API anahtarı yok. Bir API anahtarı oluşturun (veya geçerli bir anahtar girin); yanıt, API anahtarları sayfasına bağlantı verir.
no_presets 500 Hiçbir kapak ön ayarı yapılandırılmamış. Sunucuda en az bir ön ayar yapılandırın.

Kapsamlı kural düzenleyici kodları

Kapsamlı kural düzenleyicileri (Shopify yönetim paneli ve WooCommerce Studio) bu belirteçleri satıcının kendi diline kendileri çevirir; bu nedenle yanıtları error ve code içerir ancak hint içermez — ikinci bir İngilizce açıklama, satıcının gerçekte gördüğü yerelleştirilmiş açıklamadan yalnızca sapma gösterir:

scope_already_defined, scoped_rule_limit_reached, scoped_rules_not_on_plan, scope_value_required, scope_value_too_long, unknown_scope_type, base_rule_required, scoped_rules_product_only, cannot_delete_base_rule.


Hâlâ takıldınız mı?

  • Dashboard'daki Render Logs sayfasını açın — her sonuç (başarı + reddetme) kendi error_code değeri, HTTP durum kodu ve istenen parametrelerle birlikte listelenir.
  • İmzalı bir URL üzerinde php artisan og:diagnose çalıştırarak tüm işlem hattını adım adım izleyin ve hangi aşamanın başarısız olduğunu görün.
  • Kullandığınız framework için kenar çubuğundaki belgelere göz atın (Next.js, Express, SvelteKit, ...).

Ücretsiz deneyin — kayıt gerekmez

Dinamik OG görsellerini saniyeler içinde önizleyin ve test edin.

Ücretsiz OG Görsel Test Aracını Aç

A BeCaSimulations site