Ta strona została przetłumaczona maszynowo. Zauważyłeś błąd?Pomóż ją ulepszyć.
Skip to content

Dokumentacja API REST ​

Interaktywna dokumentacja API z przykładami żądań i odpowiedzi jest dostępna pod adresem http://localhost:1349/api/docs.

Specyfikacje odczytywalne maszynowo:

  • /api/v1/openapi.yaml - specyfikacja OpenAPI 3.1
  • /llms.txt - podsumowanie przyjazne dla LLM
  • /llms-full.txt - kompletna dokumentacja przyjazna dla LLM

Uwierzytelnianie ​

Wszystkie punkty końcowe wymagają uwierzytelnienia, chyba że AUTH_ENABLED=false.

Token sesji ​

bash
# Login
curl -X POST http://localhost:1349/api/auth/login \
  -H "Content-Type: application/json" \
  -d '{"username":"admin","password":"admin"}'
# Returns: {"token":"<session-token>"}

# Use token (tool routes are POST multipart)
curl -X POST http://localhost:1349/api/v1/tools/image/resize \
  -H "Authorization: Bearer <session-token>" \
  -F "[email protected]" \
  -F 'settings={"width":800}'

Sesje wygasają po 7 dniach (konfigurowalne za pomocą SESSION_DURATION_HOURS).

Klucze API ​

bash
# Create a key (returns key once - store it)
curl -X POST http://localhost:1349/api/v1/api-keys \
  -H "Authorization: Bearer <session-token>" \
  -H "Content-Type: application/json" \
  -d '{"name":"my-script"}'
# Returns: {"key":"si_<96 hex chars>","id":"...","name":"my-script"}

# Use the key
curl -X POST http://localhost:1349/api/v1/tools/image/resize \
  -H "Authorization: Bearer si_<your-key>" \
  -F "[email protected]" \
  -F 'settings={"width":800}'

Klucze są poprzedzone przedrostkiem si_ i przechowywane jako skróty scrypt - surowy klucz jest pokazywany raz i nigdy więcej nie można go odzyskać.

Punkty końcowe uwierzytelniania ​

MetodaŚcieżkaDostępOpis
POST/api/auth/loginPublicznyLogowanie, uzyskanie tokena sesji
POST/api/auth/logoutUwierzytelnionyZniszczenie bieżącej sesji
GET/api/auth/sessionUwierzytelnionyWeryfikacja bieżącej sesji
POST/api/auth/change-passwordUwierzytelnionyZmiana własnego hasła (unieważnia wszystkie inne sesje + klucze API)
GET/api/auth/usersAdministratorLista wszystkich użytkowników
POST/api/auth/registerAdministratorUtworzenie nowego użytkownika
PUT/api/auth/users/:idAdministratorAktualizacja roli lub zespołu użytkownika
POST/api/auth/users/:id/reset-passwordAdministratorZresetowanie hasła użytkownika
DELETE/api/auth/users/:idAdministratorUsunięcie użytkownika
GET/api/v1/config/authPublicznySprawdzenie, czy uwierzytelnianie jest włączone ({ authEnabled: bool })
POST/api/auth/mfa/enrollUwierzytelnionyRozpoczęcie rejestracji TOTP MFA. Wymaga funkcji enterprise mfa
POST/api/auth/mfa/verifyUwierzytelnionyPotwierdzenie rejestracji MFA kodem TOTP
POST/api/auth/mfa/completePublicznyZakończenie oczekującego wyzwania logowania MFA
POST/api/auth/mfa/disableUwierzytelnionyWyłączenie MFA dla bieżącego użytkownika
POST/api/auth/users/:id/mfa/resetAdministrator (users:manage)Zresetowanie MFA dla użytkownika
GET/api/auth/oidc/loginPublicznyRozpoczęcie logowania OIDC, gdy OIDC jest włączony
GET/api/auth/oidc/callbackPublicznyWywołanie zwrotne autoryzacji OIDC
GET/api/auth/saml/metadataPublicznyMetadane XML SAML SP, gdy SAML jest włączony
GET/api/auth/saml/loginPublicznyRozpoczęcie logowania SAML
POST/api/auth/saml/callbackPublicznyUsługa konsumenta asercji SAML

Gdy MFA jest włączone dla użytkownika, POST /api/auth/login zwraca {"requiresMfa":true,"mfaToken":"..."} zamiast tokena sesji. Wyślij ten mfaToken wraz z kodem TOTP lub kodem odzyskiwania do /api/auth/mfa/complete.

Uprawnienia ​

UprawnienieAdministratorUżytkownik
Korzystanie z narzędzi✓✓
Własne pliki/potoki/klucze API✓✓
Podgląd plików/potoków/kluczy wszystkich użytkowników✓-
Zapis ustawień✓-
Zarządzanie użytkownikami i zespołami✓-
Zarządzanie marką✓-

Kontrola stanu ​

MetodaŚcieżkaDostępOpis
GET/api/v1/healthPublicznyPodstawowa kontrola stanu. Zwraca {"status":"healthy","version":"..."} z kodem 200 lub {"status":"unhealthy"} z kodem 503, jeśli baza danych jest nieosiągalna.
GET/api/v1/readyzPublicznySonda gotowości. Sprawdza PostgreSQL, Redis, miejsce na dysku oraz S3, gdy jest skonfigurowane. Zwraca 503, gdy instancja nie powinna odbierać ruchu.
GET/api/v1/admin/healthAdministrator (system:health)Szczegółowa diagnostyka obejmująca czas działania, tryb przechowywania, stan bazy danych, stan kolejki i dostępność GPU.

Korzystanie z narzędzi ​

Każde narzędzie działa według tego samego wzorca:

bash
# Single file
curl -X POST http://localhost:1349/api/v1/tools/<section>/<toolId> \
  -H "Authorization: Bearer <token>" \
  -F "[email protected]" \
  -F 'settings={"width":800,"height":600}'

# Batch (returns ZIP)
curl -X POST http://localhost:1349/api/v1/tools/<section>/<toolId>/batch \
  -H "Authorization: Bearer <token>" \
  -F "[email protected]" \
  -F "[email protected]" \
  -F 'settings={...}'

<section> jest jednym z image, video, audio, pdf lub files.

  • Przesyłany plik ma pole multipart/form-data.
  • settings to ciąg JSON z opcjami specyficznymi dla narzędzia.
  • clientJobId to opcjonalne pole formularza służące do korelacji postępu dostarczanej przez wywołującego.
  • fileId to opcjonalne pole formularza odwołujące się do istniejącego elementu biblioteki plików. Gdy jest obecne, przetworzony wynik jest zapisywany jako nowa wersja, a odpowiedź zawiera savedFileId.
  • Szybkie narzędzia zwykle zwracają JSON z kodem 200: {"jobId":"...","downloadUrl":"/api/v1/download/<jobId>/<filename>","originalSize":1234,"processedSize":567}. Pobierz przetworzony plik z downloadUrl.
  • Każde narzędzie w kolejce może zwrócić JSON z kodem 202, jeśli działa długo lub przekracza okno synchronicznego oczekiwania: {"jobId":"...","async":true}. Połącz się z SSE, aby śledzić postęp, a następnie pobierz plik po zakończeniu (zobacz Śledzenie postępu).
  • Trasy wsadowe zwracają archiwum ZIP przesyłane bezpośrednio strumieniowo (z nagłówkiem X-Job-Id) dla narzędzi zarejestrowanych w ogólnym rejestrze wsadowym.

Dokumentacja narzędzi ​

Ustawienia wstępne konwersji ​

Wspólny katalog zawiera 83 dedykowane punkty końcowe ustawień wstępnych konwersji, takie jak jpg-to-png, mov-to-mp4, m4a-to-mp3, pdf-to-jpg i excel-to-csv. Ustawienia wstępne to pełnoprawne trasy narzędzi:

POST /api/v1/tools/<section>/<presetId>

Każde ustawienie wstępne blokuje format wyjściowy i deleguje do narzędzia bazowego, takiego jak convert, convert-video, extract-audio, convert-audio, image-to-pdf, pdf-to-image, svg-to-raster lub convert-spreadsheet. Zobacz Ustawienia wstępne konwersji, aby uzyskać kompletną tabelę tras i opcjonalne ustawienia.

Podstawy ​

ID narzędziaNazwaKluczowe ustawienia
resizeZmiana rozmiaruwidth, height, fit (cover/contain/fill/inside/outside), percentage, withoutEnlargement, plus 23 ustawienia wstępne mediów społecznościowych
cropKadrowanieleft, top, width, height, unit (px/percent)
rotateObrót i odbicieangle, horizontal (bool), vertical (bool)
convertKonwersjaformat (jpg/png/webp/avif/tiff/gif/heic/heif), quality
compressKompresjamode (quality/targetSize), quality (1–100), targetSizeKb

Optymalizacja ​

ID narzędziaNazwaKluczowe ustawienia
optimize-for-webOptymalizacja pod kątem internetuformat (webp/jpeg/avif/png), quality, maxWidth, maxHeight, progressive, stripMetadata
strip-metadataUsuwanie metadanych-
edit-metadataEdycja metadanychtitle, description, author, copyright, keywords, gps (lat/lon), dateTime
bulk-renameZmiana nazw zbiorczopattern (obsługuje {n}, {date}, {original}), startIndex, padding
image-to-pdfObraz do PDFpageSize (A4/Letter/...), orientation, margin, targetSize ({value, unit})
faviconGenerator faviconpadding, backgroundColor, borderRadius - generuje wszystkie standardowe rozmiary

Korekty ​

ID narzędziaNazwaKluczowe ustawienia
adjust-colorsKorekta kolorówbrightness, contrast, exposure, saturation, temperature, tint, hue, sharpness, red, green, blue, effect (none/grayscale/sepia/invert)
sharpeningWyostrzaniemethod (adaptive/unsharp-mask/high-pass), sigma, m1, m2, x1, y2, y3, amount, radius, threshold, strength, kernelSize (3/5), denoise (off/light/medium/strong)
replace-colorZamiana kolorusourceColor, targetColor (zamiennik), makeTransparent, tolerance
color-blindnessSymulacja daltonizmusimulationType (protanopia/deuteranopia/tritanopia/protanomaly/deuteranomaly/tritanomaly/achromatopsia/blueConeMonochromacy, domyślnie "deuteranomaly")
duotoneDuotoneshadow (hex), highlight (hex), intensity (0-100)
pixelatePikselizacjablockSize (2-128), region ({left, top, width, height} dla częściowej pikselizacji)
vignetteWinietastrength (0.1-1), color (hex), radius, softness, roundness, centerX, centerY

Narzędzia AI ​

Wszystkie narzędzia AI działają na Twoim sprzęcie: domyślnie na CPU lub na NVIDIA CUDA, gdy dostępny jest obsługiwany procesor graficzny NVIDIA. Akceleracja iGPU firm Intel/AMD przez VA-API, Quick Sync lub OpenCL nie jest obecnie obsługiwana dla wnioskowania AI. Nie wymaga połączenia z internetem.

ID narzędziaNazwaModel AIKluczowe ustawienia
remove-backgroundUsuwanie tłarembg (BiRefNet / U2-Net)model, backgroundType (transparent/color/gradient/blur/image), backgroundColor, gradientColor1, gradientColor2, gradientAngle, blurEnabled, blurIntensity, shadowEnabled, shadowOpacity
upscalePowiększanie obrazuRealESRGANscale (2/4), model, faceEnhance, denoise, format, quality
erase-objectWymazywanie obiektówLaMa (ONNX)Maska wysyłana jako druga część pliku (nazwa pola mask), format, quality
ocrOCR / Ekstrakcja tekstuTesseract (szybki); RapidOCR + PP-OCR ONNX (zrównoważony/najlepszy)quality (szybki/zrównoważony/najlepszy), language, enhance
blur-facesRozmycie twarzy / PIIMediaPipeblurRadius, sensitivity
smart-cropInteligentne kadrowanieMediaPipe + Sharpmode (subject/face/trim), strategy (attention/entropy), width, height, padding, facePreset (closeup/head-shoulders/upper-body/half-body), sensitivity, threshold, padToSquare, padColor, targetSize, quality
image-enhancementPoprawa obrazuOparte na analiziemode (auto/exposure/contrast/color/sharpness), strength
enhance-facesPoprawa twarzyGFPGAN / CodeFormermodel (gfpgan/codeformer), strength, sensitivity, centerFace
colorizeKoloryzacja AIDDColorintensity, model
noise-removalUsuwanie szumówWielopoziomowe odszumianietier (quick/balanced/quality/maximum), strength, detailPreservation, colorNoise, format, quality
red-eye-removalUsuwanie efektu czerwonych oczuPunkty charakterystyczne twarzy + analiza kolorówsensitivity, strength
restore-photoRekonstrukcja zdjęćWieloetapowy potokmode (auto/light/heavy), scratchRemoval, faceEnhancement, fidelity, denoise, denoiseStrength, colorize
passport-photoZdjęcie paszportowePunkty charakterystyczne MediaPipeDwufazowy przepływ. Analiza używa multipart file; generowanie używa JSON z countryCode, bgColor, printLayout (none/4x6/a4), punktami charakterystycznymi, wymiarami obrazu
content-aware-resizeZmiana rozmiaru z zachowaniem treściWycinanie szwów (caire)width, height, protectFaces, blurRadius, sobelThreshold, square
transparency-fixerNaprawa przezroczystości PNGBiRefNet HR-mattingdefringe (0-100), outputFormat (png/webp)
background-replaceZamiana tłarembg (BiRefNet)backgroundType (color/gradient), color (hex), gradientColor1, gradientColor2, gradientAngle, feather (0-20), format (png/webp)
blur-backgroundRozmycie tłarembg (BiRefNet)intensity (1-100), feather (0-20), format (png/webp)
ai-canvas-expandRozszerzanie płótna AILaMa (outpainting)extendTop, extendRight, extendBottom, extendLeft (px), tier (fast/balanced/high), format, quality

Znak wodny i nakładka ​

ID narzędziaNazwaKluczowe ustawienia
watermark-textTekstowy znak wodnytext, font, fontSize, color, opacity, position, rotation, tile
watermark-imageGraficzny znak wodnyopacity, position, scale - drugi plik jest znakiem wodnym
text-overlayNakładka tekstowatext, font, fontSize, color, x, y, background, padding, borderRadius
composeKompozycja obrazux, y, opacity, blend - drugi plik jest nakładany na wierzch
meme-generatorGenerator memówtemplateId, textLayout (top-bottom/top-only/bottom-only/center/side-by-side), textBoxes ([{id, text}]), fontFamily (anton/arial-black/comic-sans/montserrat/bebas-neue/permanent-marker/roboto), fontSize, textColor, strokeColor, textAlign, allCaps. Obsługuje tryb szablonu (treść JSON z templateId) lub tryb obrazu niestandardowego (multipart z plikiem).

Narzędzia pomocnicze ​

ID narzędziaNazwaKluczowe ustawienia
infoInformacje o obrazie- (zwraca szerokość, wysokość, format, rozmiar, kanały, hasAlpha, DPI, EXIF)
comparePorównanie obrazówmode (side-by-side/overlay/diff), diffThreshold - drugi plik jest celem porównania
find-duplicatesWyszukiwanie duplikatówthreshold (odległość skrótu percepcyjnego, domyślnie 8) - wieloplikowe
color-palettePaleta kolorówcount (liczba dominujących kolorów), format (hex/rgb)
qr-generateGenerator kodów QRdata, size, margin, colorDark, colorLight, errorCorrectionLevel, dotStyle, cornerStyle, logo (opcjonalny plik)
barcode-readCzytnik kodów kreskowych- (automatyczne wykrywanie QR, EAN, Code128, DataMatrix itd.)
image-to-base64Obraz do Base64format (data-uri/plain), mimeType
html-to-imageHTML do obrazuurl, format (png/jpg/webp), quality, fullPage, devicePreset (desktop/tablet/mobile/custom), viewportWidth, viewportHeight
histogramHistogramscale (linear/log) - zwraca wykres histogramu RGB + statystyki dla poszczególnych kanałów
lqip-placeholderSymbol zastępczy LQIPwidth (4-64), blur, strategy (blur/pixelate/solid), format (webp/png/jpeg), quality
barcode-generateGenerator kodów kreskowychtext, type (code128/ean13/upca/code39/itf14/datamatrix), scale (1-8), includeText (bool). Treść JSON, bez przesyłania pliku.

Układ i kompozycja ​

ID narzędziaNazwaKluczowe ustawienia
collageKolaż / Siatkatemplate (25+ układów), gap, backgroundColor, borderRadius - wieloplikowe
stitchZszywanie / Łączeniedirection (horizontal/vertical/grid), gap, backgroundColor, alignment - wieloplikowe
splitDzielenie obrazumode (grid/rows/cols), rows, cols, tileWidth, tileHeight
borderObramowanie i ramkawidth, color, style (solid/gradient/pattern), borderRadius, padding, shadow
beautifyUpiększanie zrzutu ekranubackgroundType (solid/linear-gradient/radial-gradient/image/transparent), gradientStops, padding, borderRadius, shadowPreset, frame (none/macos-light/macos-dark/windows-light/windows-dark/browser-light/browser-dark/iphone/macbook/ipad/...), socialPreset (none/twitter/linkedin/instagram-square/instagram-story/facebook/producthunt), watermarkText, outputFormat
circle-cropKadrowanie okrągłezoom (1-5), offsetX, offsetY, borderWidth, borderColor, background (transparent/hex), outputSize
image-padDopełnianie obrazutarget (16:9/9:16/1:1/4:3/3:4/custom), ratioW, ratioH, background (color/transparent/blur), color (hex), padding (0-50%)
sprite-sheetArkusz duszkówcolumns (1-16), padding, background (hex), format (png/webp/jpeg), quality - wieloplikowe (2-64 obrazy)

Format i konwersja ​

ID narzędziaNazwaKluczowe ustawienia
svg-to-rasterSVG do rastraformat (png/jpeg/webp/avif/tiff/gif/heif), width, height, scale, dpi, background
vectorizeObraz do SVGcolorMode (bw/color), threshold, colorPrecision, filterSpeckle, pathMode (none/polygon/spline)
gif-toolsNarzędzia GIFaction (resize/optimize/reverse/speed/extract-frames/rotate/add-text), parametry specyficzne dla akcji
gif-webpKonwerter GIF/WebPquality (1-100), lossless (bool), resizePercent (10-100)

Narzędzia wideo ​

ID narzędziaNazwaKluczowe ustawienia
convert-videoKonwersja wideoformat (mp4/mov/webm/avi/mkv), quality (high/balanced/small)
compress-videoKompresja wideoquality (light/balanced/strong), resolution (original/1080p/720p/480p)
trim-videoPrzycinanie wideostartS, endS, precise (bool, cięcie z dokładnością do klatki)
mute-videoWyciszanie wideo-
video-to-gifWideo do GIFfps (1-30), width, startS, durationS (maks. 60 s)
resize-videoZmiana rozmiaru wideowidth, height, preset (custom/2160p/1440p/1080p/720p/480p/360p)
crop-videoKadrowanie wideowidth, height, x, y
rotate-videoObrót wideotransform (cw90/ccw90/180/hflip/vflip)
change-fpsZmiana FPSfps (1-120)
video-colorKolor wideobrightness, contrast, saturation, gamma
video-speedPrędkość wideofactor (0.25-4), keepPitch (bool)
reverse-videoOdwracanie wideo- (maks. 5 minut)
video-loudnormNormalizacja dźwięku- (EBU R128)
aspect-padDopełnianie proporcjitarget (16:9/9:16/1:1/4:3/3:4), color (hex)
blur-padDopełnianie rozmyciemtarget (16:9/9:16/1:1/4:3/3:4), blur (2-50)
watermark-videoZnak wodny na wideotext, position, fontSize, opacity, color
stabilize-videoStabilizacja wideosmoothing (5-60, w klatkach)
gif-to-videoGIF do wideoformat (mp4/webm/mov)
video-to-webpWideo do WebPfps, width, quality, loop (bool)
video-to-framesWideo do klatekmode (all/nth/timestamps), n, timestamps, format (png/jpg)
merge-videosŁączenie wideo- (wieloplikowe, znormalizowane do rozdzielczości pierwszego wideo)
replace-audioZamiana dźwięku- (plik wideo + audio, dwa pliki)
burn-subtitlesWypalanie napisówfontSize (8-72) - plik wideo + napisy
embed-subtitlesOsadzanie napisówlanguage (kod ISO 639-2/B) - plik wideo + napisy
extract-subtitlesWyodrębnianie napisów- (na wyjściu SRT)
images-to-videoObrazy do wideosecondsPerImage (0.5-10), resolution (1080p/720p/square), fps - wieloplikowe
video-metadataCzyszczenie metadanych wideo-
auto-subtitlesAutomatyczne napisy (AI)language (auto/en/de/fr/es/zh/ja/ko/id/th/vi), format (srt/vtt)
extract-audioWyodrębnianie dźwiękuformat (mp3/wav/m4a/ogg)

Narzędzia audio ​

ID narzędziaNazwaKluczowe ustawienia
convert-audioKonwersja dźwiękuformat (mp3/wav/ogg/flac/m4a), bitrateKbps (32-320)
trim-audioPrzycinanie dźwiękustartS, endS
volume-adjustRegulacja głośnościgainDb (-30 do 30)
normalize-audioNormalizacja dźwięku- (EBU R128, -16 LUFS)
fade-audioWyciszanie/wzmacnianie dźwiękufadeInS (0-30), fadeOutS (0-30)
reverse-audioOdwracanie dźwięku-
audio-speedPrędkość dźwiękufactor (0.25-4)
pitch-shiftPrzesunięcie tonacjisemitones (-12 do 12)
audio-channelsKanały dźwiękumode (stereo-to-mono/mono-to-stereo/swap)
silence-removalUsuwanie ciszythresholdDb (-80 do -20), minSilenceS (0.1-5)
noise-reductionRedukcja szumówstrength (light/medium/strong)
merge-audioŁączenie dźwiękuformat (mp3/wav/flac/m4a) - wieloplikowe
split-audioDzielenie dźwiękumode (time/parts/silence), segmentS, parts, thresholdDb, minSilenceS
ringtone-makerTwórca dzwonkówstartS, durationS (1-30)
waveform-imageObraz przebieguwidth, height, color (hex)
audio-metadataMetadane dźwiękustrip (bool), title, artist, album
transcribe-audioTranskrypcja dźwięku (AI)language (auto/en/de/fr/es/zh/ja/ko/id/th/vi), outputFormat (txt/srt/vtt)

Narzędzia do dokumentów ​

ID narzędziaNazwaKluczowe ustawienia
merge-pdfŁączenie plików PDF- (wieloplikowe, do 20 plików PDF)
split-pdfDzielenie PDFmode (range/every), range, everyN (1-500)
compress-pdfKompresja PDFmode (quality/targetSize), quality (1-100), targetSizeKb
rotate-pdfObrót PDFangle (90/180/270), range (zakres stron)
extract-pagesWyodrębnianie stronrange (składnia qpdf, np. "1-5,8,10-z")
remove-pagesUsuwanie stronpages (zakres qpdf do usunięcia)
organize-pdfOrganizacja PDForder (kolejność stron qpdf, np. "3,1,2,5-z")
protect-pdfOchrona PDFuserPassword, ownerPassword (AES-256)
unlock-pdfOdblokowanie PDFpassword
repair-pdfNaprawa PDF-
linearize-pdfOptymalizacja PDF pod kątem internetu- (linearyzacja dla szybkiego przeglądania w sieci)
grayscale-pdfPDF w skali szarości-
pdfa-convertKonwersja do PDF/A- (archiwalny PDF/A-2)
crop-pdfKadrowanie PDFmargin (0-2000 punktów)
nup-pdfN-up PDFperSheet (2/3/4/8/9/12/16)
booklet-pdfBroszura PDFperSheet (2/4/6/8)
watermark-pdfZnak wodny PDFtext, position, fontSize, opacity, rotation
pdf-page-numbersNumery stron PDFposition (bl/bc/br/tl/tc/tr), fontSize
flatten-pdfSpłaszczanie PDF- (utrwala formularze i adnotacje)
redact-pdfRedakcja PDFterms (string[]), caseSensitive (bool)
sign-pdfPodpisywanie PDFNiestandardowa trasa multipart z plikiem PDF file, plikami podpisu sig0, sig1 oraz tablicą JSON placements
pdf-to-textPDF do tekstu-
pdf-to-wordPDF do Word-
pdf-metadataMetadane PDFtitle, author, subject, keywords
convert-documentKonwersja dokumentuformat (docx/odt/rtf/txt)
convert-presentationKonwersja prezentacjiformat (pptx/odp)
convert-spreadsheetKonwersja arkusza kalkulacyjnegoformat (xlsx/ods/csv)
excel-to-pdfExcel do PDF-
word-to-pdfWord do PDF-
powerpoint-to-pdfPowerPoint do PDF-
html-to-pdfHTML do PDF- (zdalne zasoby wyłączone)
markdown-to-docxMarkdown do Word-
markdown-to-htmlMarkdown do HTML-
markdown-to-pdfMarkdown do PDF- (zdalne zasoby wyłączone)
epub-convertKonwersja EPUBformat (pdf/docx/html/md)
to-epubKonwersja do EPUB- (akceptuje .docx, .md, .html, .txt)
ocr-pdfOCR PDF (AI)quality (fast/balanced/best), language (auto/en/de/fr/es/zh/ja/ko), pages
pdf-to-imagePDF do obrazupages (all/range), format, dpi, quality
pdf-to-jpgPDF do JPGpages, dpi, quality, colorMode
pdf-to-pngPDF do PNGpages, dpi, quality, colorMode
pdf-to-tiffPDF do TIFFpages, dpi, quality, colorMode

Narzędzia do plików ​

ID narzędziaNazwaKluczowe ustawienia
chart-makerTwórca wykresówkind (bar/line/pie), title, width, height
csv-excelCSV do Excelsheet (numer arkusza dla wejścia XLSX) - dwukierunkowe
csv-jsonCSV do JSONpretty (bool) - dwukierunkowe
json-xmlJSON do XMLpretty (bool) - dwukierunkowe
split-csvDzielenie CSVrowsPerFile (1-1000000), keepHeader (bool)
merge-csvsŁączenie plików CSV- (wieloplikowe, pasujące kolumny)
yaml-jsonYAML / JSON- (dwukierunkowe)
xml-to-csvXML do CSV- (automatyczne wyszukiwanie powtarzających się elementów)
excel-to-csvExcel do CSVdedykowane ustawienie wstępne konwersji oparte na convert-spreadsheet
create-zipUtwórz ZIP- (wieloplikowe, 2-50 plików)
extract-zipWypakuj ZIP- (ochrona przed bombą)

HTML do obrazu ​

Przechwyć stronę internetową jako obraz. W przeciwieństwie do innych narzędzi ten punkt końcowy przyjmuje application/json zamiast danych formularza multipart (bez potrzeby przesyłania pliku).

Punkt końcowy: POST /api/v1/tools/image/html-to-image

Content-Type: application/json

ParametrTypDomyślnieOpis
urlstring(wymagane)URL do przechwycenia (tylko http/https)
formatstring"png"Format wyjściowy: jpg, png, webp
qualitynumber90Jakość 1-100 (tylko JPG/WebP)
fullPagebooleanfalsePrzechwyć całą przewijaną stronę
devicePresetstring"desktop"desktop, tablet, mobile, custom
viewportWidthnumber1280Niestandardowa szerokość okna widoku 320-3840
viewportHeightnumber720Niestandardowa wysokość okna widoku 320-2160

Przykład:

bash
curl -X POST http://localhost:1349/api/v1/tools/image/html-to-image \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://snapotter.com", "format": "png", "devicePreset": "desktop"}'

Odpowiedź:

json
{
  "jobId": "uuid",
  "downloadUrl": "/api/v1/download/{jobId}/screenshot.png",
  "originalSize": 0,
  "processedSize": 54321
}

Podtrasy narzędzi ​

Niektóre narzędzia udostępniają dodatkowe punkty końcowe poza standardowym POST /api/v1/tools/<section>/<toolId>:

MetodaŚcieżkaOpis
GET/api/v1/tools/popularZwraca popularne identyfikatory narzędzi, wracając do wyselekcjonowanej listy domyślnej, gdy dane o użyciu są skąpe
POST/api/v1/tools/image/remove-background/effectsZastosuj efekty tła (color/gradient/blur/shadow) bez ponownego uruchamiania AI. Używa maski z pamięci podręcznej z początkowego usunięcia.
POST/api/v1/tools/image/edit-metadata/inspectOdczytaj istniejące metadane EXIF/IPTC/XMP z obrazu
POST/api/v1/tools/image/strip-metadata/inspectSprawdź pola metadanych przed usunięciem
POST/api/v1/tools/image/passport-photo/analyzeFaza 1: Wykrywanie twarzy AI + usuwanie tła. Zwraca punkty charakterystyczne twarzy i dane z pamięci podręcznej.
POST/api/v1/tools/image/passport-photo/generateFaza 2: Kadrowanie, zmiana rozmiaru i kafelkowanie przy użyciu analizy z pamięci podręcznej. Bez ponownego uruchamiania AI.
POST/api/v1/tools/image/gif-tools/infoPobierz metadane GIF (liczba klatek, wymiary, czas trwania)
POST/api/v1/tools/pdf/pdf-to-image/infoPobierz metadane PDF (liczba stron, wymiary)
POST/api/v1/tools/pdf/pdf-to-image/previewWygeneruj podgląd konkretnej strony PDF
POST/api/v1/tools/pdf/pdf-to-jpg/infoPobierz metadane PDF dla dedykowanego ustawienia wstępnego JPG
POST/api/v1/tools/pdf/pdf-to-jpg/previewWygeneruj podgląd strony PDF z ustawieniem wstępnym JPG
POST/api/v1/tools/pdf/pdf-to-png/infoPobierz metadane PDF dla dedykowanego ustawienia wstępnego PNG
POST/api/v1/tools/pdf/pdf-to-png/previewWygeneruj podgląd strony PDF z ustawieniem wstępnym PNG
POST/api/v1/tools/pdf/pdf-to-tiff/infoPobierz metadane PDF dla dedykowanego ustawienia wstępnego TIFF
POST/api/v1/tools/pdf/pdf-to-tiff/previewWygeneruj podgląd strony PDF z ustawieniem wstępnym TIFF
POST/api/v1/tools/image/svg-to-raster/batchKonwertuj wsadowo wiele plików SVG do rastra
POST/api/v1/tools/image/image-enhancement/analyzePrzeanalizuj jakość obrazu i zwróć rekomendacje poprawy
POST/api/v1/tools/image/optimize-for-web/previewLekki podgląd do dostrajania parametrów na żywo. Zwraca zoptymalizowany obraz z nagłówkami rozmiaru.

Przetwarzanie wsadowe ​

Zastosuj ogólne narzędzie obsługujące tryb wsadowy do wielu plików jednocześnie. Zwraca archiwum ZIP. Niestandardowe trasy wieloplikowe lub wieloetapowe, takie jak podpisywanie PDF oraz trasy ustawień wstępnych PDF-do-obrazu, używają własnego kontraktu punktu końcowego zamiast ogólnej trasy /batch.

Narzędzie ocr-pdf obsługuje tę ogólną trasę /batch.

bash
curl -X POST http://localhost:1349/api/v1/tools/image/compress/batch \
  -H "Authorization: Bearer <token>" \
  -F "[email protected]" \
  -F "[email protected]" \
  -F "[email protected]" \
  -F 'settings={"quality":80}'

Współbieżnością steruje CONCURRENT_JOBS (domyślnie: automatycznie wykrywana na podstawie rdzeni CPU). MAX_BATCH_SIZE ogranicza liczbę plików w partii (domyślnie: 100; ustaw 0 dla braku limitu).

Potoki ​

Wykonaj potok ​

bash
# Single file
curl -X POST http://localhost:1349/api/v1/pipeline/execute \
  -H "Authorization: Bearer <token>" \
  -F "[email protected]" \
  -F 'pipeline={"steps":[
    {"toolId":"resize","settings":{"width":1200}},
    {"toolId":"compress","settings":{"quality":80}},
    {"toolId":"watermark-text","settings":{"text":"© 2025"}}
  ]}'

# Batch (multiple files → ZIP)
curl -X POST http://localhost:1349/api/v1/pipeline/batch \
  -H "Authorization: Bearer <token>" \
  -F "[email protected]" \
  -F "[email protected]" \
  -F 'pipeline={"steps":[{"toolId":"resize","settings":{"width":800}}]}'

Wyjście każdego kroku jest wejściem następnego kroku. Potoki domyślnie dopuszczają 20 kroków, co jest konfigurowalne za pomocą MAX_PIPELINE_STEPS. Ustaw MAX_PIPELINE_STEPS=0, aby usunąć limit.

Zapisywanie potoków i zarządzanie nimi ​

MetodaŚcieżkaOpis
POST/api/v1/pipeline/saveZapisz nazwany potok (name, description, steps[])
GET/api/v1/pipeline/listLista zapisanych potoków (administratorzy widzą wszystkie; użytkownicy widzą własne)
DELETE/api/v1/pipeline/:idUsuń (właściciel lub administrator)
GET/api/v1/pipeline/toolsLista identyfikatorów narzędzi ważnych dla kroków potoku

Śledzenie postępu ​

Długotrwałe zadania, narzędzia w kolejce, zadania wsadowe i potoki emitują postęp w czasie rzeczywistym za pomocą Server-Sent Events. Strumień postępu jest publiczny i identyfikowany przez identyfikator zadania, więc klienci nie muszą wysyłać nagłówka Authorization, aby go odczytać.

bash
# Connect to the SSE stream (jobId is in the JSON response body from the tool endpoint)
curl -N http://localhost:1349/api/v1/jobs/<jobId>/progress

Format zdarzenia:

data: {"jobId":"...","type":"single","phase":"processing","stage":"Upscaling","percent":42}
data: {"jobId":"...","type":"single","phase":"complete","percent":100,"result":{"downloadUrl":"/api/v1/download/..."}}
data: {"jobId":"...","type":"batch","status":"processing","completedFiles":2,"totalFiles":5,"failedFiles":0,"errors":[]}

Możesz zażądać anulowania zadania w kolejce lub uruchomionego za pomocą POST /api/v1/jobs/:jobId/cancel. Odpowiedzią jest {"canceled":true|false}.

Biblioteka plików ​

Trwałe przechowywanie plików z historią wersji.

MetodaŚcieżkaOpis
POST/api/v1/uploadPrześlij pliki do obszaru roboczego (tymczasowe przetwarzanie)
POST/api/v1/files/uploadPrześlij pliki do trwałej biblioteki plików
POST/api/v1/files/save-resultZapisz wynik przetwarzania narzędzia jako nową wersję pliku
GET/api/v1/filesLista zapisanych plików (stronicowana, z wyszukiwaniem)
GET/api/v1/files/:idPobierz metadane pliku + łańcuch wersji
GET/api/v1/files/:id/downloadPobierz plik
GET/api/v1/files/:id/thumbnailPobierz miniaturę JPEG 300px
DELETE/api/v1/filesZbiorczo usuń pliki i ich łańcuchy wersji (treść: { ids: [...] })
POST/api/v1/fetch-urlsPobierz zdalne adresy URL do obszaru roboczego dla importów opartych na URL
POST/api/v1/previewWygeneruj podgląd WebP zgodny z przeglądarką (dla formatów HEIC/HEIF/RAW)
GET/api/v1/files/:id/previewPrzesyłaj strumieniowo podgląd zgodny z przeglądarką z pamięci podręcznej lub wygenerowany dla zapisanego pliku PDF, dokumentu biurowego, wideo lub audio
POST/api/v1/preview/generateWygeneruj na żądanie podgląd MP4 lub MP3 dla przesłanego pliku multimedialnego bez uprzedniego zapisywania go
GET/api/v1/download/:jobId/:filenamePobierz przetworzony plik z obszaru roboczego

Aby automatycznie zapisać wynik narzędzia w bibliotece, dołącz fileId jako pole formularza multipart odwołujące się do istniejącego pliku w bibliotece. Przetworzony wynik zostanie zapisany jako nowa wersja.

Zarządzanie kluczami API ​

MetodaŚcieżkaDostępOpis
POST/api/v1/api-keysUwierzytelnionyWygeneruj nowy klucz - pokazywany raz
GET/api/v1/api-keysUwierzytelnionyLista kluczy (nazwa, id, lastUsedAt - bez surowego klucza)
DELETE/api/v1/api-keys/:idUwierzytelnionyUsuń klucz

Zespoły ​

MetodaŚcieżkaDostępOpis
GET/api/v1/teamsAdministrator (teams:manage)Lista zespołów
POST/api/v1/teamsAdministrator (teams:manage)Utwórz zespół
PUT/api/v1/teams/:idAdministrator (teams:manage)Zmień nazwę zespołu
DELETE/api/v1/teams/:idAdministrator (teams:manage)Usuń zespół (nie można usunąć domyślnego zespołu ani zespołów z członkami)

Ustawienia ​

Konfiguracja środowiska uruchomieniowego używa zamkniętego zbioru rozpoznawanych kluczy. Odczyt wymaga uprawnienia settings:read, a zapis — settings:write; klucze zabezpieczeń i zgodności dodatkowo wymagają uprawnienia security:manage lub compliance:manage. Ustawienia tajne wymagają uprawnień pełnego administratora, natomiast poświadczenia i stan zarządzane przez dedykowane punkty końcowe są tutaj tylko do odczytu. Aktualizacje zbiorcze są weryfikowane przed zapisaniem jakiejkolwiek wartości.

MetodaŚcieżkaOpis
GET/api/v1/settingsPobierz wszystkie ustawienia
PUT/api/v1/settingsZbiorczo zaktualizuj ustawienia (treść JSON z parami klucz-wartość)
GET/api/v1/settings/:keyPobierz konkretne ustawienie według klucza

Przykładowe klucze: disabledTools (tablica JSON identyfikatorów narzędzi), enableExperimentalTools (wartość logiczna), loginAttemptLimit (zasady zabezpieczeń) oraz auditRetentionDays (zasady zgodności). Nieznane klucze są odrzucane.

Preferencje ​

Preferencje poszczególnych użytkowników są oddzielone od ustawień instancji. Każdy uwierzytelniony użytkownik może odczytać i zaktualizować własną mapę preferencji.

MetodaŚcieżkaOpis
GET/api/v1/preferencesPobierz preferencje bieżącego użytkownika jako { "preferences": { ... } }
PUT/api/v1/preferencesZapisz lub zaktualizuj jeden lub więcej kluczy preferencji dla bieżącego użytkownika

Role ​

Zarządzanie niestandardowymi rolami z granularnymi uprawnieniami.

MetodaŚcieżkaDostępOpis
GET/api/v1/rolesAdministrator (audit:read)Lista wszystkich ról z liczbą użytkowników
POST/api/v1/rolesAdministrator (security:manage)Utwórz niestandardową rolę (name, description, permissions)
PUT/api/v1/roles/:idAdministrator (security:manage)Zaktualizuj niestandardową rolę (nie można modyfikować wbudowanych ról)
DELETE/api/v1/roles/:idAdministrator (security:manage)Usuń niestandardową rolę (nie można usuwać wbudowanych ról; dotknięci użytkownicy wracają do roli user)

Dostępne uprawnienia (17): tools:use, files:own, files:all, apikeys:own, apikeys:all, pipelines:own, pipelines:all, settings:read, settings:write, users:manage, teams:manage, features:manage, system:health, audit:read, compliance:manage, webhooks:manage, security:manage.

Dziennik audytu ​

Punkt końcowy tylko dla administratora do przeglądania działań istotnych z punktu widzenia bezpieczeństwa.

MetodaŚcieżkaDostępOpis
GET/api/v1/audit-logAdministrator (audit:read)Stronicowany dziennik audytu z opcjonalnymi filtrami

Parametry zapytania:

ParametrOpis
pageNumer strony (domyślnie: 1)
limitWpisy na stronę (domyślnie: 50, maks.: 100)
actionFiltruj według typu akcji (np. ROLE_CREATED, ROLE_DELETED)
ipFiltruj według źródłowego adresu IP
fromFiltruj wpisy po tej dacie ISO 8601
toFiltruj wpisy przed tą datą ISO 8601

Analityka ​

MetodaŚcieżkaDostępOpis
GET/api/v1/config/analyticsPublicznyPobierz efektywną konfigurację analityki (klucz PostHog, DSN Sentry, częstotliwość próbkowania). Klucze, DSN i identyfikator instancji są puste, gdy analityka jest wyłączona, zarówno z powodu ustawienia w czasie kompilacji, jak i ustawienia instancji analyticsEnabled.
POST/api/v1/feedbackUwierzytelnionyPrześlij wyraźną opinię użytkownika do skonfigurowanego projektu PostHog jako feedback_submitted. Trasa respektuje bramkę analityki, ogranicza liczbę zgłoszeń, usuwa pola kontaktowe, chyba że contactOk ma wartość true, i nigdy nie akceptuje zawartości plików, nazw plików, ścieżek przesyłania ani surowego, prywatnego tekstu błędu. Gdy analityka jest wyłączona, zwraca { "ok": true, "accepted": false }.
PUT/api/v1/settingsAdministrator (settings:write)Ustaw rezygnację obejmującą całą instancję. Wyślij treść JSON { "analyticsEnabled": "false" }, aby wyłączyć analitykę dla wszystkich, lub "true", aby ją ponownie włączyć.

Funkcje / Pakiety AI ​

Zarządzaj pakietami funkcji AI (instaluj/odinstalowuj pakiety modeli AI w środowisku Docker). Preferuj punkt końcowy instalacji na poziomie narzędzia podczas włączania narzędzia z niestandardowej automatyzacji: niektóre narzędzia AI potrzebują więcej niż jednego współdzielonego pakietu, a ten punkt końcowy pomija już zainstalowane pakiety, kolejkując tylko brakujące.

OCR jest opcjonalnym ulepszeniem, a nie stałą zależnością. Poziom fast Tesseract działa bez pakietu; POST /api/v1/admin/features/ocr/install instaluje podpisany pakiet RapidOCR dla balanced i best na Linux amd64 lub arm64. Dokładne środowisko wykonawcze OCR wykorzystuje CPU na hostach wyposażonych wyłącznie w procesor i NVIDIA i wymaga co najmniej 4 GiB efektywnej pamięci (skonfigurowany limit kontenera cgroup, w przeciwnym razie pamięć hosta). SnapOtter zgłasza requiredMemoryBytes, effectiveMemoryBytes i przyczynę kompatybilności insufficient-memory i odrzuca niezgodną instalację przed pobraniem. To wymaganie dotyczące pamięci nie dotyczy fast. Pakiet zawiera około 208-234 MiB do pobrania i 409-488 MiB do zainstalowania, w zależności od celu; podpisany indeks wiąże dokładne rozmiary wymuszone podczas instalacji.

MetodaŚcieżkaDostępOpis
GET/api/v1/featuresUwierzytelnionyLista wszystkich pakietów funkcji i ich status instalacji
POST/api/v1/admin/features/:bundleId/installAdministrator (features:manage)Zainstaluj pakiet funkcji (asynchronicznie, zwraca jobId do śledzenia postępu)
POST/api/v1/admin/tools/:toolId/features/installAdministrator (features:manage)Zainstaluj każdy pakiet wymagany przez narzędzie; zwraca status queued/skipped dla poszczególnych pakietów
POST/api/v1/admin/features/:bundleId/uninstallAdministrator (features:manage)Odinstaluj pakiet funkcji i usuń pliki modeli
GET/api/v1/admin/features/disk-usageAdministrator (features:manage)Pobierz całkowite zużycie dysku przez modele AI
POST/api/v1/admin/features/importAdministrator (features:manage)Zaimportuj starszy pakiet AI (file) lub podpisaną wersję offline OCR (index plus archive)

Import OCR z przerwami powietrznymi musi zawierać podpisany plik ocr-runtime-index.json wydania i pasujące archiwum platformy. SnapOtter stosuje tę samą sygnaturę Ed25519, hash artefaktów, kompatybilność, ekstrakcję i kontrole testów dymu, które są używane podczas instalacji online:

bash
curl -X POST http://localhost:1349/api/v1/admin/features/import \
  -H "Authorization: Bearer <admin-token>" \
  -F "[email protected]" \
  -F "[email protected]"

Użyj archiwum linux-arm64-cpu-py311 na arm64. Podpisany artefakt innego celu jest odrzucany, a nie instalowany.

Operacje administracyjne ​

Operacyjne punkty końcowe do obserwowalności, wsparcia, raportowania użycia i statusu kopii zapasowej.

MetodaŚcieżkaDostępOpis
GET/api/v1/admin/log-levelAdministrator (settings:write)Odczytaj bieżący poziom logowania w czasie działania
POST/api/v1/admin/log-levelAdministrator (settings:write)Zmień poziom logowania w czasie działania (fatal, error, warn, info, debug, trace lub silent)
GET/api/v1/metricsAdministrator (system:health)Metryki Prometheus w formacie tekstowym
GET/api/v1/admin/support-bundleAdministrator (system:health)Pobierz zredagowany pakiet diagnostyczny wsparcia ZIP
GET/api/v1/admin/usageAdministrator (audit:read)Dane pulpitu użycia, z opcjonalnym parametrem zapytania days
GET/api/v1/admin/backup-statusAdministrator (system:health)Odczytaj metadane ostatniej kopii zapasowej i status aktualności
POST/api/v1/admin/backup-statusAdministrator (system:health)Zarejestruj ukończoną kopię zapasową (type, opcjonalnie sizeBytes, opcjonalnie notes)

API Enterprise ​

Te trasy są bramkowane licencją przez powiązaną z nimi funkcję enterprise. Nadal wymagają wymienionego uprawnienia SnapOtter.

Wbudowany administrator z pełnymi uprawnieniami oznacza uwierzytelnionego użytkownika z rolą admin i pełnym zestawem efektywnych uprawnień administratora. Klucz API, któremu brakuje choć jednego uprawnienia administratora, nie spełnia tego wymagania.

MetodaŚcieżkaDostępOpis
GET/api/v1/enterprise/audit/exportAdministrator (audit:read)Eksportuj wpisy audytu jako JSON lub CSV z filtrami
GET/api/v1/enterprise/config/exportWbudowany administrator z pełnymi uprawnieniamiEksportuj zredagowaną konfigurację instancji, niestandardowe role i zespoły
POST/api/v1/enterprise/config/importWbudowany administrator z pełnymi uprawnieniamiZaimportuj konfigurację, z opcjonalnym przebiegiem próbnym
GET/api/v1/enterprise/ip-allowlistAdministrator (security:manage)Odczytaj skonfigurowaną listę dozwolonych CIDR
PUT/api/v1/enterprise/ip-allowlistAdministrator (security:manage)Zaktualizuj listę dozwolonych CIDR z ochroną przed zablokowaniem samego siebie
GET/api/v1/enterprise/legal-holdAdministrator (compliance:manage)Lista blokad prawnych użytkowników i zespołów
PUT/api/v1/enterprise/legal-holdAdministrator (compliance:manage)Zastosuj lub zwolnij blokadę prawną dla użytkownika lub zespołu
POST/api/v1/enterprise/scim/tokenAdministrator (users:manage)Wygeneruj token bearer SCIM, zwracany raz
DELETE/api/v1/enterprise/scim/tokenAdministrator (users:manage)Unieważnij bieżący token bearer SCIM
GET/api/v1/enterprise/siem/configAdministrator (webhooks:manage)Odczytaj konfigurację przekazywania SIEM
PUT/api/v1/enterprise/siem/configAdministrator (webhooks:manage)Zaktualizuj konfigurację przekazywania SIEM
GET/api/v1/enterprise/webhooksAdministrator (webhooks:manage)Lista miejsc docelowych webhooków
POST/api/v1/enterprise/webhooksAdministrator (webhooks:manage)Utwórz miejsce docelowe webhooka
PUT/api/v1/enterprise/webhooks/:indexAdministrator (webhooks:manage)Zaktualizuj miejsce docelowe webhooka
DELETE/api/v1/enterprise/webhooks/:indexAdministrator (webhooks:manage)Usuń miejsce docelowe webhooka
POST/api/v1/enterprise/webhooks/:index/testAdministrator (webhooks:manage)Wyślij testowy ładunek webhooka
POST/api/v1/enterprise/users/:id/exportAdministrator (compliance:manage)Rozpocznij zadanie eksportu użytkownika RODO
GET/api/v1/enterprise/users/:id/export/:jobIdAdministrator (compliance:manage)Odczytaj status eksportu RODO i adres URL pobierania
DELETE/api/v1/enterprise/users/:id/purgeAdministrator (compliance:manage)Trwale usuń dane użytkownika po potwierdzeniu
DELETE/api/v1/enterprise/teams/:id/purgeAdministrator (compliance:manage)Trwale usuń dane zespołu po potwierdzeniu
GET/api/v1/admin/versionAdministrator (system:health)Odczytaj metadane wersji aplikacji, kompilacji, Node i schematu
GET/api/v1/admin/migrations/pendingAdministrator (system:health)Porównaj spakowane migracje z zastosowanymi migracjami
GET/api/v1/admin/upgrade-checkAdministrator (system:health)Uruchom kontrole gotowości do aktualizacji

SCIM 2.0 ​

Punkty końcowe wykrywania SCIM są publiczne. Punkty końcowe użytkowników i grup wymagają tokena bearer SCIM wygenerowanego powyżej.

MetodaŚcieżkaDostępOpis
GET/api/v1/scim/v2/ServiceProviderConfigPublicznyMożliwości serwera SCIM
GET/api/v1/scim/v2/SchemasPublicznyWykrywanie schematu SCIM
GET/api/v1/scim/v2/ResourceTypesPublicznyWykrywanie typu zasobu SCIM
GET/api/v1/scim/v2/UsersToken SCIMLista użytkowników, z opcjonalnym filtrem SCIM
POST/api/v1/scim/v2/UsersToken SCIMUtwórz użytkownika
GET/api/v1/scim/v2/Users/:idToken SCIMPobierz użytkownika
PUT/api/v1/scim/v2/Users/:idToken SCIMZastąp użytkownika
DELETE/api/v1/scim/v2/Users/:idToken SCIMMiękka dezaktywacja użytkownika
GET/api/v1/scim/v2/GroupsToken SCIMLista zespołów jako grup SCIM
POST/api/v1/scim/v2/GroupsToken SCIMUtwórz zespół
GET/api/v1/scim/v2/Groups/:idToken SCIMPobierz zespół
PUT/api/v1/scim/v2/Groups/:idToken SCIMZastąp zespół i członkostwo w grupie
DELETE/api/v1/scim/v2/Groups/:idToken SCIMUsuń zespół

Szablony memów ​

Wspierające API dla narzędzia generatora memów.

MetodaŚcieżkaDostępOpis
GET/api/v1/meme-templatesUwierzytelnionyLista wszystkich dostępnych szablonów memów z pozycjami pól tekstowych
GET/api/v1/meme-templates/full/:filenameUwierzytelnionyUdostępnij obraz szablonu w pełnym rozmiarze
GET/api/v1/meme-templates/thumbs/:filenameUwierzytelnionyUdostępnij miniaturę szablonu
GET/api/v1/meme-templates/fonts/:filenameUwierzytelnionyUdostępnij plik czcionki używany do renderowania tekstu memu

Odpowiedzi z błędami ​

Wszystkie błędy zwracają JSON:

json
{
  "error": "Human-readable message",
  "code": "MACHINE_READABLE_CODE"
}
StatusZnaczenie
400Nieprawidłowe żądanie / walidacja nie powiodła się
401Brak uwierzytelnienia
403Niewystarczające uprawnienia
404Nie znaleziono zasobu
413Plik zbyt duży (zobacz MAX_UPLOAD_SIZE_MB)
422Przetwarzanie nie powiodło się po walidacji
429Ograniczenie liczby żądań (zobacz RATE_LIMIT_PER_MIN)
501Wymagany pakiet funkcji AI nie jest zainstalowany (FEATURE_NOT_INSTALLED)
500Wewnętrzny błąd serwera