API

API

Markedfile API ile dosya işaretle ve tespit et. Business ve Enterprise planlarında kullanılabilir.

API anahtarları

Business veya Enterprise çalışma alanının sahibi, alan ayarlarında anahtar oluşturur ve iptal eder. Anahtar yalnızca bir kez gösterilir. Markedfile bir SHA-256 özeti, kısa bir önek ve bir ad saklar. Sır saklanmaz.

Anahtar tam olarak bir alana aittir. Yalnızca orada, alanın plan limitleriyle çalışır. Kişisel alanların anahtarı yoktur. Sahip olmayan bir üye onları oluşturamaz veya iptal edemez.

Alan aktif Business veya Enterprise planını kaybedince tüm anahtarlar hemen çalışmayı bırakır, mevcut dosyalar uygulamada hâlâ 30 gün tespit edilebilirken bile. Business veya Enterprise planına dönünce iptal etmediğin anahtarlar yeniden çalışır.

Kimlik doğrulama

Sırrı Authorization başlığında Bearer jetonu olarak gönder. Bu yollar oturum çerezi kullanmaz. Başka bir sayfadaki tarayıcı reddedilir.

Denetim

Oluşturma, iptal, işaretleme ve tespit, alan sahibinin okuyabildiği bir denetim satırı yazar. Satır dosyayı içermez.

Uç noktalar

POST/api/v1/mark

Bir dosyayı işaretler ve işaretli kopyayı döndürür. Gövde multipart/form-data'dır.

Kimlik doğrulama

Authorization: Bearer mf_…

Bu başlık satırını gönder. Oturum çerezi yoktur. curl ve diğer sunucu istemcileri kabul edilir. Başka bir sayfadaki tarayıcı reddedilir.

Parametreler

AdTürZorunluAçıklama
filefileEvetİşaretlenecek dosya. Business ve Enterprise 100 MB'a, 500 PDF sayfasına ve 10 dakikaya kadar videoya kadar kabul eder. Yükleme boyutu, video süresi ve PDF sayfa sayısı alanın planından gelir.
identifierstringEvet1–32 karakter, kontrol karakteri yok. Bu kopya sonra tespit edilince göreceğin etikettir. Dosyaya okunabilir metin olarak yazılmaz.

İstek

curl -X POST https://markedfile.com/api/v1/mark \
  -H "Authorization: Bearer mf_…" \
  -F "file=@contract.pdf" \
  -F "identifier=northwind"

Yanıt

{
  "file": "JVBERi0xLjQK…",
  "mime": "application/pdf",
  "name": "contract.pdf",
  "kind": "pdf",
  "layers": [
    {
      "name": "Metadata",
      "detail": "Authenticated workspace reference; the identifier stays on the server",
      "screenshot": "No",
      "crop": "No",
      "reencode": "No"
    }
  ],
  "remaining": 1
}

file, base64 içindeki işaretli baytlardır. mime, name ve kind indirmeyi anlatır. layers kullanılan katmanları gösterir. Planın aktif dosya limiti yoksa remaining bu işaretten sonraki aktif dosya sayısıdır. Limit varsa remaining kalan yeni işaret sayısıdır. Business ve Enterprise aktif dosya limiti koymaz. Dosyayı silmek tespiti bitirir.

Hatalar

JSON yanıtındaki error alanının metni İngilizcedir.

DurumAçıklama
400Dosya boş ya da tanımlayıcı boş, 32 karakterden uzun veya bir kontrol karakteri içeriyor.
401Anahtar yok, anahtar iptal edilmiş veya bilinmiyor. JSON yanıtı "code": "api-key" içerir.
403Çalışma alanının artık aktif bir Business veya Enterprise planı yok (yanıt "code": "enterprise" içerir) ya da tarayıcı cross-site veya same-site bir istek gönderdi.
413Dosya planın yükleme limitini aşıyor ya da PDF, planın izin verdiğinden fazla sayfa içeriyor.
422Dosya işlenemedi.
429Bu anahtar aynı dakika içinde 40 dosyadan fazla işaretledi.

Çağrı limiti

Bu anahtar için dakikada 40 istek. Sayaç ürün veritabanındadır ve yeniden başlatmadan sonra kalır.

POST/api/v1/detect

Bu anahtarın çalışma alanındaki bir dosyayı kontrol eder. Gövde multipart/form-data'dır.

Kimlik doğrulama

Authorization: Bearer mf_…

Bu başlık satırını gönder. Oturum çerezi yoktur. curl ve diğer sunucu istemcileri kabul edilir. Başka bir sayfadaki tarayıcı reddedilir.

Parametreler

AdTürZorunluAçıklama
filefileEvetKontrol edilecek dosya. Eşleşme yalnızca bu anahtarın alanında aranır. Başka bir alanda işaretlenen dosya tanınmaz. Aktif bir Business veya Enterprise alanı bir video dosyasını da kontrol edebilir. Tek bir karenin görüntüsü görsel olarak kontrol edilir.

İstek

curl -X POST https://markedfile.com/api/v1/detect \
  -H "Authorization: Bearer mf_…" \
  -F "file=@leaked.pdf"

Yanıt

{
  "id": "northwind",
  "confidence": 0.95,
  "layers": [
    {
      "name": "Metadata",
      "hit": true,
      "detail": "Authenticated metadata matched this workspace",
      "screenshot": "No",
      "crop": "No",
      "reencode": "No"
    }
  ],
  "notes": [
    "Confidence is 99% for an exact file or when an authenticated mark agrees with another mark. A visual match alone stays lower, and weak bit agreement stays far from a high score."
  ]
}

id, kopya işaretlenirken yazdığın tanımlayıcıdır ya da bu alanda eşleşme yoksa null. confidence tam dosyada veya doğrulanmış bir işaret başka bir işaretle uyuşunca %99'dur. Yalnızca görsel eşleşme daha düşük kalır. layers katmanları gösterir ve hit eşleşenlerde true olur. notes kontrolün ne yaptığını anlatır. Silinen bir dosya tanınmaz.

Hatalar

JSON yanıtındaki error alanının metni İngilizcedir.

DurumAçıklama
400Dosya boş.
401Anahtar yok, anahtar iptal edilmiş veya bilinmiyor. JSON yanıtı "code": "api-key" içerir.
403Çalışma alanının artık aktif bir Business veya Enterprise planı yok (yanıt "code": "enterprise" içerir) ya da tarayıcı cross-site veya same-site bir istek gönderdi.
413Dosya planın yükleme limitini aşıyor ya da PDF, planın izin verdiğinden fazla sayfa içeriyor.
422Dosya işlenemedi.
429Bu anahtar aynı dakika içinde 80 tespitten fazla yaptı.

Çağrı limiti

Bu anahtar için dakikada 80 istek. Sayaç ürün veritabanındadır ve yeniden başlatmadan sonra kalır.