API

API

Oznaczaj i wykrywaj pliki przez API Markedfile. Dostępne w planach Business i Enterprise.

Klucze API

Właściciel obszaru Business albo Enterprise tworzy i unieważnia klucze w ustawieniach obszaru. Klucz jest pokazywany tylko raz. Markedfile zapisuje skrót SHA-256, krótki prefiks i nazwę. Sekret nie jest zapisywany.

Klucz należy dokładnie do jednego obszaru. Działa tylko tam, z limitami planu obszaru. Obszary osobiste nie mają kluczy. Członek, który nie jest właścicielem, nie może ich tworzyć ani unieważniać.

Jeśli obszar traci aktywny plan Business albo Enterprise, wszystkie klucze przestają działać od razu, także w ciągu tych 30 dni, gdy istniejące pliki nadal da się wykryć w aplikacji. Gdy wracasz do planu Business albo Enterprise, klucze, których nie unieważniono, znów działają.

Uwierzytelnianie

Wyślij sekret w nagłówku Authorization jako token Bearer. Te trasy nie używają pliku cookie sesji. Przeglądarka na innej stronie jest odrzucana.

Audyt

Utworzenie, unieważnienie, oznaczenie i wykrycie zapisują wiersz audytu, który właściciel obszaru może przeczytać. Wiersz nie zawiera pliku.

Punkty końcowe

POST/api/v1/mark

Oznacza plik i zwraca oznaczoną kopię. Treść to multipart/form-data.

Uwierzytelnianie

Authorization: Bearer mf_…

Wyślij ten nagłówek. Nie ma pliku cookie sesji. curl i inni klienci serwerowi są przyjmowani. Przeglądarka na innej stronie jest odrzucana.

Parametry

NazwaTypWymaganeOpis
filefileTakPlik do oznaczenia. Business i Enterprise przyjmują do 100 MB, 500 stron PDF i wideo do 10 minut. Rozmiar wgrywania, długość wideo i liczba stron PDF wynikają z planu obszaru.
identifierstringTak1–32 znaki, bez znaków sterujących. To etykieta, którą zobaczysz, jeśli ta kopia zostanie później wykryta. Nie jest zapisywana w pliku jako czytelny tekst.

Żądanie

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

Odpowiedź

{
  "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 to oznaczone bajty w base64. mime, name i kind opisują pobranie. layers pokazuje użyte warstwy. Gdy plan nie ma limitu aktywnych plików, remaining to liczba aktywnych plików po tym oznaczeniu. Gdy limit jest, remaining to liczba pozostałych nowych oznaczeń. Business i Enterprise nie mają limitu aktywnych plików. Usunięcie pliku kończy wykrywanie.

Błędy

Tekst pola error w odpowiedzi JSON jest po angielsku.

StanOpis
400Plik jest pusty, albo identyfikator jest pusty, dłuższy niż 32 znaki albo zawiera znak sterujący.
401Brak klucza, klucz unieważniony albo nieznany. Odpowiedź JSON zawiera "code": "api-key".
403Obszar nie ma już aktywnego planu Business albo Enterprise (odpowiedź zawiera "code": "enterprise"), albo przeglądarka wysłała żądanie cross-site albo same-site.
413Plik przekracza limit wgrywania planu, albo PDF ma więcej stron, niż plan pozwala.
422Pliku nie dało się przetworzyć.
429Ten klucz oznaczył ponad 40 plików w bieżącej minucie.

Limit wywołań

40 żądań na minutę dla tego klucza. Licznik jest w bazie produktu i zostaje po restarcie.

POST/api/v1/detect

Sprawdza plik w obszarze roboczym tego klucza. Treść to multipart/form-data.

Uwierzytelnianie

Authorization: Bearer mf_…

Wyślij ten nagłówek. Nie ma pliku cookie sesji. curl i inni klienci serwerowi są przyjmowani. Przeglądarka na innej stronie jest odrzucana.

Parametry

NazwaTypWymaganeOpis
filefileTakPlik do sprawdzenia. Trafienia szuka się tylko w obszarze tego klucza. Plik oznaczony w innym obszarze nie zostanie rozpoznany. Aktywny obszar Business albo Enterprise może też sprawdzić plik wideo. Zrzut jednej klatki jest sprawdzany jako obraz.

Żądanie

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

Odpowiedź

{
  "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 to identyfikator, który podałeś, gdy kopia była oznaczana, albo null, gdy ten obszar nie ma trafienia. confidence to 99% dla dokładnego pliku albo gdy uwierzytelniony znak zgadza się z innym znakiem. Samo trafienie wizualne zostaje niżej. layers pokazuje warstwy, a hit jest true dla tych, które się zgadzają. notes opisuje, co zrobiło sprawdzenie. Usunięty plik nie jest rozpoznawany.

Błędy

Tekst pola error w odpowiedzi JSON jest po angielsku.

StanOpis
400Plik jest pusty.
401Brak klucza, klucz unieważniony albo nieznany. Odpowiedź JSON zawiera "code": "api-key".
403Obszar nie ma już aktywnego planu Business albo Enterprise (odpowiedź zawiera "code": "enterprise"), albo przeglądarka wysłała żądanie cross-site albo same-site.
413Plik przekracza limit wgrywania planu, albo PDF ma więcej stron, niż plan pozwala.
422Pliku nie dało się przetworzyć.
429Ten klucz wykonał ponad 80 wykryć w bieżącej minucie.

Limit wywołań

80 żądań na minutę dla tego klucza. Licznik jest w bazie produktu i zostaje po restarcie.