API dokumentacija

YourImageShare API omogućuje programsko učitavanje, popis i brisanje datoteka. To je mali JSON/REST API: SDK nije potreban, dovoljni su HTTP klijent i API ključ. Dostupne su i službene biblioteke za JavaScript, Python i MCP.

Sve klijentske biblioteke i alati u nastavku otvorenog su koda. Pregledajte kod, prijavite pogreške ili sudjelujte na našem službenom GitHub repozitoriju: github.com/yourimageshare/yourimageshare.

Osnovni URL: https://yourimageshare.com/api · Format: JSON na ulazu i izlazu, osim učitavanja koje koristi multipart/form-data · Autentifikacija: API ključ u svakom zahtjevu. · Specifikacija za strojeve: /openapi.json (OpenAPI 3.1), za agente i alate za generiranje koda koji radije ne analiziraju ovu stranicu.

Dobivanje API ključa

Prijavite se, otvorite Moj račun i karticu API. Ondje je prikazan vaš ključ, zajedno s gumbom Regenerate. Ponovno generiranje ključa odmah poništava stari, pa ga prije klika zamijenite posvuda gdje se koristi.

Ta kartica sadrži i drugi, neovisni ključ samo za učitavanje - pogledajte savjet u nastavku i dodatke za forume da vidite kada ga koristiti umjesto glavnog.

Autentifikacija

Ključ pošaljite kao zaglavlje - to je preporučeno jer se upiti u URL-u često nađu u zapisnicima pristupa, zapisnicima proxyja i zaglavljima Referer:

X-API-Key: YOUR_API_KEY

Radi i parametar upita ?key=, zadržan zbog kompatibilnosti sa starijim integracijama i brzih jednokratnih curl naredbi. Ako su prisutna oba, zaglavlje ima prednost.

?key=YOUR_API_KEY

Savjet: Ključ čuvajte kao lozinku - tko ga ima, može učitavati, pregledavati, mijenjati i brisati na vašem računu. Svaki uspješan zahtjev se bilježi i prikazuje na grafikonu na kartici API vaše stranice računa, raščlanjen po danima i vrsti zahtjeva. Ako ključ mora stajati negdje gdje ga drugi mogu vidjeti - u dodatku za forum, u javnoj konfiguracijskoj datoteci - umjesto njega koristite ključ samo za učitavanje s iste kartice: on može samo učitavati, a popis, dohvat, izmjenu i brisanje učitanog odbija s greškom 401.

Endpointi

Učitavanje, popis i brisanje dijele istu autentifikaciju i ograničenja; velike datoteke mogu se prethodno poslati u dijelovima.

POST /api - učitavanje datoteke

Učitava jednu datoteku za autentificirani račun.

PoljeTipObaveznoOpis
uploadsfilejedno od ova triDatoteka za učitavanje, do 100MB (ograničenje za jedan zahtjev preko naše mreže). Jedna datoteka po zahtjevu - ovaj endpoint ne podržava skupno učitavanje više datoteka.
urlstringJavna http(s) poveznica na sliku ili video. Mi ga sami preuzimamo, pa rade datoteke do 200MB.
upload_idstringDatoteka prethodno poslana u dijelovima na POST /api/chunk, do 200MB.
filenamestringneUz upload_id: izvorni naziv datoteke.
expires_inintegerneAutomatski izbriši ovo učitavanje nakon toliko sekundi (60 do 31.536.000, tj. od 1 minute do 1 godine). Izostavite za uobičajeno, trajno učitavanje.
allow_duplicatebooleanneSpremi novu kopiju čak i ako je vaš račun već učitao potpuno istu datoteku (vidi duplicate u nastavku).
keep_originalbooleanneZadrži sliku točno onakvu kakva je učitana. Bez toga se JPG/PNG datoteke veće od 1 MB optimiziraju u WebP. Metapodaci poput GPS-a uklanjaju se u svakom slučaju.
visibilitystringneunlisted (zadano): datoteka i njezina stranica rade za svakoga s poveznicom, ali nigdje nisu navedene. private: samo datoteka - poveznica stranice sve osim vas izravno vodi na datoteku (bez komentara, reakcija ili oglasa). public: navedena na stranici i indeksirana.
titlestringneDo 90 znakova, prikazuje se na stranici učitane datoteke.
descriptionstringneDo 500 znakova.

Prihvaćeni tipovi: slike: JPG, PNG, GIF, WEBP, AVIF, BMP, TIFF, HEIC ili HEIF; video: MP4, WEBM, AVI, MOV, MKV, MPEG, WMV, FLV ili 3GP (točan popis može se s vremenom proširiti). HEIC/HEIF i TIFF spremaju se kao WebP, video koji nije MP4/WebM pretvara se u MP4, a veće JPEG/PNG slike pretvaraju se u WebP ubrzo nakon učitavanja kada ih to osjetno smanjuje. Najveća veličina: 200MB; prevelike ili nečitljive datoteke odbijaju se s greškom 422.

Odgovor - 200 OK:

{
  "type": "success",
  "msg": "success",
  "data": {
    "id": "aB3xY9qRz1",
    "type": "image",
    "path": "https://i.yourimageshare.com/aB3xY9qRz1.png",
    "src": "https://yourimageshare.com/ib/aB3xY9qRz1.png",
    "direct": "https://yourimageshare.com/ib/aB3xY9qRz1",
    "thumb": "https://i.yourimageshare.com/thumb-aB3xY9qRz1.webp",
    "width": 1920,
    "height": 1080,
    "size": 482113,
    "locked": false,
    "visibility": "unlisted",
    "title": null,
    "description": null,
    "expires_at": null,
    "duplicate": false,
    "delete_url": "https://yourimageshare.com/delete#iV3x...k9"
  }
}
PoljeOpis
idJedinstveni identifikator datoteke.
typeimage ili video.
pathURL pohrane datoteke kakva je učitana. Može se promijeniti ubrzo nakon toga kada se datoteka pretvori (WebP/MP4), zato spremajte src, a ne path.
srcTrajni izravni URL datoteke - uvijek otvara trenutačnu datoteku, prikladan za src elemenata <img>/<video> i za spremanje.
directStranica datoteke na YourImageShareu (naslov, opis, komentari, mogućnosti dijeljenja).
thumbWebP sličica široka 280px (za video, njegov prvi kadar), ili null.
width, heightPrikazna veličina u pikselima (uspravno; veličina kadra videa), ili null ako je nepoznata.
sizeVeličina datoteke u bajtovima kako je pohranjena.
lockedtrue ako je učitana datoteka zaštićena lozinkom.
visibilityprivate, unlisted ili public (vidi polje zahtjeva gore).
title, descriptionKako su postavljeni, ili null. Tekst prolazi istu moderaciju kao web stranica.
delete_urlSamo za nova učitavanja: privatna poveznica koja briše ovo učitavanje bez API ključa. Prikazuje se jednom (sprema se samo hash) - sačuvajte je ako vam treba.
expires_atISO 8601 vremenska oznaka kada će se ovo učitavanje automatski izbrisati, ili null ako ne istječe.
duplicatetrue ako je vaš račun već učitao potpuno istu datoteku: vraća se to učitavanje i ništa novo se ne sprema. Ne primjenjuje se na učitavanja s istekom ni uz allow_duplicate=1.

Učitavanja s istekom: nakon što expires_at prođe, datoteka se briše iz pohrane, a stranica učitane datoteke počinje vraćati 410 Gone unutar otprilike 5 minuta. To se ne može poništiti ni naknadno produljiti - izbrišite ranije pomoću DELETE endpointa ako je trebate ukloniti prije, ili ponovno učitajte s novim expires_in ako treba trajati dulje.

POST /api/chunk - velike datoteke

Jedan zahtjev može nositi najviše 100MB. Za veće datoteke (do 200MB), ili da svaki zahtjev ostane malen na sporoj vezi, pošaljite datoteku u dijelovima od najviše 5MB, a zatim završite s POST /api:

  1. Odaberite ID učitavanja: 32 nasumična heksadecimalna znaka.
  2. Za svaki dio pošaljite POST /api/chunk (multipart/form-data) s upload_id, index (od 0), total (broj dijelova) i bajtovima u chunk. Odgovor je {"type": "success", "chunk_size": 5242880}.
  3. POST /api s upload_id i filename umjesto uploads, uz sva ostala polja učitavanja. Odgovor je uobičajeni odgovor na učitavanje.

Dijelovi nedovršenog učitavanja brišu se nakon 2 sata. Samo završni POST /api ulazi u ograničenja učitavanja.

GET /api/{id} i PATCH /api/{id} - jedno učitavanje

GET vraća jedno vaše učitavanje s istim poljima kao popis u nastavku. PATCH mijenja njegov visibility, title ili description (polja obrasca ili JSON; prazan naslov ili opis briše ga) i odgovara ažuriranim učitavanjem. Oba traže puni API ključ; 404 ako takvog učitavanja nema na vašem računu.

curl -X PATCH https://yourimageshare.com/api/aB3xY9qRz1 \
  -H "X-API-Key: YOUR_API_KEY" -d visibility=public -d title="Sunset"

POST /api/{id}/replace - zamjena datoteke

Zamjenjuje datoteku iza jednog vašeg učitavanja i zadržava njegov ID, stranicu i sve poveznice. Radi svaki dopušteni tip, čak i drukčiji (slika može postati video). Novu datoteku pošaljite kao uploads (ili upload_id datoteke poslane u dijelovima pomoću POST /api/chunk); keep_original radi kao kod učitavanja. Nova datoteka prolazi iste provjere i pretvorbe kao novo učitavanje, a prethodna se verzija uklanja. Traži puni API ključ; 404 ako takvog učitavanja nema na vašem računu, 409 ako je zaštićeno lozinkom ili ograničeno brojem pregleda.

curl -X POST https://yourimageshare.com/api/aB3xY9qRz1/replace \
  -H "X-API-Key: YOUR_API_KEY" -F uploads=@new-version.png

GET /api - popis vaših učitavanja

Vraća straničeni popis učitavanja autentificiranog računa (iz bilo kojeg izvora - API-ja, web stranice ili uređivača), najnovija prva, 50 po stranici.

ParametarGdjeObaveznoOpis
pagequeryneBroj stranice, zadano 1.

Odgovor - 200 OK:

{
  "type": "success",
  "data": [
    {
      "id": "aB3xY9qRz1",
      "type": "image",
      "title": null,
      "path": "https://i.yourimageshare.com/aB3xY9qRz1.webp",
      "src": "https://yourimageshare.com/ib/aB3xY9qRz1.webp",
      "direct": "https://yourimageshare.com/ib/aB3xY9qRz1",
      "thumb": "https://i.yourimageshare.com/thumb-aB3xY9qRz1.webp",
      "width": 1920,
      "height": 1080,
      "size": 482113,
      "locked": false,
      "visibility": "unlisted",
      "description": null,
      "expires_at": null,
      "created_at": "2026-07-23T15:43:28+01:00"
    }
  ],
  "meta": { "current_page": 1, "last_page": 1, "total": 1 }
}

Polja ovdje znače isto što i u odgovoru na učitavanje gore (za učitavanje zaštićeno lozinkom, path i thumb su kratkotrajne potpisane poveznice). Za dohvat jednog učitavanja po njegovu id koristite GET /api/{id}.

DELETE /api/{id} - brisanje učitane datoteke

Trajno briše jedno učitavanje autentificiranog računa. To se ne može poništiti iz API-ja. {id} je vrijednost koju vraćaju endpointi za učitavanje ili popis kao id.

Odgovor - 200 OK:

{ "type": "success", "msg": "Deleted." }

404 ako na vašem računu ne postoji učitavanje s tim ID-om (ili nikad nije bilo vaše, ili je već izbrisano).

POST /api/compare - klizač prije/poslije

Izrađuje usporedbu prije/poslije dviju vaših slika: stranicu s klizačem na /c/{id} koja se može ugraditi i na bilo koju web stranicu. Radi i ključ samo za učitavanje. Pošaljite before i after (ID-ovi učitavanja, obavezno), a po želji title, label_before i label_after (zadano "Before" i "After").

Odgovor - 201 Created:

{
  "type": "success",
  "id": "P7uAYy04VA",
  "url": "https://yourimageshare.com/c/P7uAYy04VA",
  "embed_url": "https://yourimageshare.com/embed/c/P7uAYy04VA",
  "embed": { "script": "<blockquote class=\"YISEmbed\" ...", "iframe": "<iframe ..." }
}

422 ako neki od ID-ova nije jedna od vaših slika (videi i slike zaštićene lozinkom ne mogu se koristiti).

Ograničenja zahtjeva

Svaki API ključ ima neovisne kvote po minuti i po danu, uz grublje dnevno ograničenje po IP adresi kao zaštitu od jedne IP adrese koja izmjenjuje više ključeva. Učitavanja, popisi i brisanja dijele ista ograničenja.

RazdobljeZadano ograničenjeOpseg
Po minuti20 zahtjevapo API ključu
Po danu500 zahtjevapo punom API ključu
Po danu2.000 zahtjevapo ključu samo za učitavanje (dodaci koji prebacuju cijele medijske biblioteke)
Po danu2.000 zahtjevapo IP adresi
Po minuti300 dijelovapo API ključu, samo POST /api/chunk

Ova ograničenja mogu se promijeniti. Svaki odgovor sadrži standardna zaglavlja ograničenja:

X-RateLimit-Limit: 20
X-RateLimit-Remaining: 14

Kada se ograničenje prekorači, vraća se 429 sa zaglavljem Retry-After koje kaže koliko sekundi treba pričekati.

Pogreške

Svaki odgovor s pogreškom ima isti oblik, bez obzira na endpoint ili uzrok:

{ "type": "error", "errors": "A human-readable description of what went wrong." }
StatusZnačenje
401Nedostaje API ključ ili je neispravan.
403Račun ili vaša trenutačna IP adresa blokirani su za učitavanje.
404Za taj ID na ovom računu nije pronađeno odgovarajuće učitavanje (dohvat, izmjena, brisanje).
413Zahtjev je veći od 100MB. Umjesto toga pošaljite datoteku u dijelovima (POST /api/chunk) ili poveznicu na nju u url (do 200MB).
422Neuspjela provjera - nije poslana datoteka ni poveznica, nepodržan tip datoteke, nečitljivi podaci slike, dimenzije iznad ograničenja od 30000x30000px, datoteka veća od 200MB, nedovršen ili istekao upload_id, ili url koji se nije mogao preuzeti (poruka navodi razlog).
429Prekoračeno ograničenje zahtjeva - vidi Ograničenja zahtjeva gore.
500Nešto je neočekivano zakazalo na poslužitelju. Sigurno je pokušati ponovno.

Klijentske biblioteke

Službeni SDK-ovi koji omataju gornje endpointe tipiziranim rezultatima i bacaju iznimke na pogreške API-ja umjesto ručnog rukovanja HTTP-om.

JavaScript / TypeScript

Bez ovisnosti, radi u Node.js-u i preglednicima. Dostupno i na JSR-u kao @yourimageshare/yourimageshare - npx jsr add @yourimageshare/yourimageshare - isti izvorni kod, objavljen izravno kao TypeScript.

npm install yourimageshare

Python

Jedna ovisnost (requests), Python 3.8+.

pip install yourimageshare

PHP

Bez Composer ovisnosti (koristi PHP-ovo vlastito proširenje curl), PHP 7.4+. Izvorni kod na GitHubu.

composer require yourimageshare/yourimageshare-php

Go

Bez ovisnosti (samo standardna biblioteka), Go 1.18+. Cjelovitu dokumentaciju potražite na pkg.go.dev.

go get github.com/yourimageshare/yourimageshare/go

Rust

Dvije ovisnosti (ureq za blokirajući HTTP - bez asinkronog runtimea - i serde), Rust 1.70+. Izvorni kod na GitHubu.

cargo add yourimageshare

Ruby

Bez gem ovisnosti (standardni Net::HTTP + json), Ruby 2.7+. Izvorni kod na GitHubu.

gem install yourimageshare

.NET

Jedna ovisnost (Microsoftov System.Text.Json), cilja netstandard2.0 pa radi i na .NET Frameworku i na modernom .NET-u. Izvorni kod na GitHubu. Izrađeno i provjereno na ovom živom API-ju; objava na NuGetu uskoro.

dotnet add package YourImageShare

Dart / Flutter

Jedna ovisnost (http, paket samog Dart tima), Dart 2.17+. Izvorni kod na GitHubu. Izrađeno i provjereno na ovom živom API-ju; objava na pub.dev uskoro.

dart pub add yourimageshare

Elixir

Jedna ovisnost (Req), Elixir 1.14+. Vraća {:ok, result}| {:error, reason} označene n-torke - izravni ekvivalent rukovanja pogreškama ovog API-ja u svim ostalim SDK-ovima - uz varijante s uskličnikom koje bacaju iznimku. Izvorni kod na GitHubu, dokumentacija na HexDocsu.

{:yourimageshare, "~> 1.1"}

MCP server

Za AI agente za programiranje (Claude Code, Cursor i druge alate kompatibilne s MCP-om) - umetnite snimku zaslona u prijavu pogreške, opis PR-a ili razgovor s podrškom kao pravi URL umjesto base64 bloka ili ručnog učitavanja. Isto radi s Claude Desktopom i bilo kojim drugim MCP klijentom.

Hostan, ništa za instalirati: dodajte ga kao udaljeni MCP server (u Claudeu: Settings › Connectors › Add custom connector; također ChatGPT, Cursor, VS Code i drugi klijenti koji primaju URL servera) s vašim API ključem u URL-u:

https://yourimageshare.com/mcp?key=YOUR_API_KEY

Klijenti koji dopuštaju postavljanje zaglavlja mogu umjesto toga koristiti https://yourimageshare.com/mcp sa Authorization: Bearer YOUR_API_KEY. URL s vašim ključem radi kao lozinka: čuvajte ga privatnim, a ako procuri, nabavite novi ključ u Mom računu. Na hostanom serveru upload_image prima javnu poveznicu (do 200MB) ili ugrađeni base64 sadržaj (do 15MB). Bez ključa https://yourimageshare.com/mcp i dalje učitava anonimno, kao web stranica: samo unlisted ili private, niža ograničenja, a učitana datoteka briše se pomoću delete_url koji vraća. Ostali alati traže ključ.

Lokalno: pokrenite ga izravno pomoću npx, bez koraka instalacije (može čitati i datoteke s vašeg diska):

npx yourimageshare-mcp

Alati: upload_image (lokalna datoteka, ugrađeni sadržaj ili poveznica, do 200MB, uz neobavezne postavke vidljivosti, naslova i automatskog brisanja), list_uploads, get_upload, update_upload i delete_upload.

Također u službenom MCP registru (kao io.github.yourimageshare/yourimageshare) i na popisima Smithery i Glama, ako vaš MCP klijent instalira s jednog od njih.

Novi ste u MCP-u? Pogledajte kako povezati Claude i ChatGPT s ovim API-jem putem MCP-a za cjelovit vodič kroz postavljanje.

Svih deset je pod licencom MIT. Nema službene biblioteke za vaš jezik? Primjeri koda u nastavku pokazuju kako izravno pozvati API.

Primjeri koda

curl

# Upload a file
curl "https://yourimageshare.com/api" \
  -H "X-API-Key: YOUR_API_KEY" \
  -F "uploads=@/path/to/photo.jpg"

# Upload from a link (files up to 200MB; one direct upload request stops at 100MB -
# bigger files go in pieces, see Large Files above)
curl "https://yourimageshare.com/api" \
  -H "X-API-Key: YOUR_API_KEY" \
  -F "url=https://example.com/video.mp4"

# Upload a file that auto-deletes after 1 hour
curl "https://yourimageshare.com/api" \
  -H "X-API-Key: YOUR_API_KEY" \
  -F "uploads=@/path/to/photo.jpg" \
  -F "expires_in=3600"

# List uploads
curl "https://yourimageshare.com/api" -H "X-API-Key: YOUR_API_KEY"

# Upload a file without a page of its own (file only) and give it a title
curl "https://yourimageshare.com/api" \
  -H "X-API-Key: YOUR_API_KEY" \
  -F "uploads=@/path/to/photo.jpg" \
  -F "visibility=private" \
  -F "title=Sunset"

# Look up one upload, then make it public
curl "https://yourimageshare.com/api/aB3xY9qRz1" -H "X-API-Key: YOUR_API_KEY"
curl -X PATCH "https://yourimageshare.com/api/aB3xY9qRz1" \
  -H "X-API-Key: YOUR_API_KEY" -d "visibility=public"

# Delete an upload
curl -X DELETE "https://yourimageshare.com/api/aB3xY9qRz1" -H "X-API-Key: YOUR_API_KEY"

JavaScript (fetch)

const API_KEY = 'YOUR_API_KEY';
const BASE = 'https://yourimageshare.com/api';

async function uploadFile(file) {
  const form = new FormData();
  form.append('uploads', file);

  const res = await fetch(BASE, {
    method: 'POST',
    headers: { 'X-API-Key': API_KEY },
    body: form,
  });
  const json = await res.json();
  if (json.type !== 'success') throw new Error(json.errors);
  return json.data;
}

async function listUploads(page = 1) {
  const res = await fetch(`${BASE}?page=${page}`, {
    headers: { 'X-API-Key': API_KEY },
  });
  return res.json();
}

async function deleteUpload(id) {
  const res = await fetch(`${BASE}/${id}`, {
    method: 'DELETE',
    headers: { 'X-API-Key': API_KEY },
  });
  return res.json();
}

Python (requests)

import requests

API_KEY = "YOUR_API_KEY"
BASE = "https://yourimageshare.com/api"

HEADERS = {"X-API-Key": API_KEY}

# Upload a file
with open("/path/to/photo.jpg", "rb") as f:
    res = requests.post(BASE, headers=HEADERS, files={"uploads": f})
res.raise_for_status()
upload = res.json()["data"]

# List uploads
res = requests.get(BASE, headers=HEADERS, params={"page": 1})
uploads = res.json()

# Delete an upload
res = requests.delete(f"{BASE}/{upload['id']}", headers=HEADERS)

PHP (curl)

<?php

$apiKey = 'YOUR_API_KEY';
$base = 'https://yourimageshare.com/api';

// Upload a file
$curl = curl_init($base);
curl_setopt_array($curl, [
    CURLOPT_POST => true,
    CURLOPT_HTTPHEADER => ["X-API-Key: $apiKey"],
    CURLOPT_POSTFIELDS => ['uploads' => new CURLFile('/path/to/photo.jpg')],
    CURLOPT_RETURNTRANSFER => true,
]);
$upload = json_decode(curl_exec($curl), true)['data'];
curl_close($curl);

// List uploads
$curl = curl_init("$base?page=1");
curl_setopt($curl, CURLOPT_HTTPHEADER, ["X-API-Key: $apiKey"]);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$uploads = json_decode(curl_exec($curl), true);
curl_close($curl);

Go (net/http)

Službeni Go SDK gore to radi umjesto vas - ova sirova verzija tu je za one koji radije ne dodaju ovisnost.

package main

import (
    "bytes"
    "encoding/json"
    "io"
    "mime/multipart"
    "net/http"
    "os"
)

const apiKey = "YOUR_API_KEY"
const base = "https://yourimageshare.com/api"

func uploadFile(path string) (map[string]any, error) {
    file, err := os.Open(path)
    if err != nil {
        return nil, err
    }
    defer file.Close()

    body := &bytes.Buffer{}
    writer := multipart.NewWriter(body)
    part, _ := writer.CreateFormFile("uploads", path)
    io.Copy(part, file)
    writer.Close()

    req, _ := http.NewRequest("POST", base, body)
    req.Header.Set("Content-Type", writer.FormDataContentType())
    req.Header.Set("X-API-Key", apiKey)

    res, err := http.DefaultClient.Do(req)
    if err != nil {
        return nil, err
    }
    defer res.Body.Close()

    var result map[string]any
    json.NewDecoder(res.Body).Decode(&result)
    return result, nil
}

Alati za snimke zaslona

Proširenje za preglednik plus gotove konfiguracije i skripte za slanje snimaka zaslona izravno na YourImageShare, bez ručnog učitavanja. Svaki učitava preko istog /api endpointa opisanog gore.

Proširenje za preglednik (Chrome i Firefox)

Proširenje YourImageShare Capture za Chrome i Firefox potpuno preskače skripte i konfiguracijske datoteke. Snima vidljivo područje, ručno odabrani dio ili cijelu stranicu koja se pomiče, otvara ugrađeni uređivač za strelice, tekst, zamućivanje/zacrnjivanje i druge bilješke, a zatim preuzima rezultat, kopira ga u međuspremnik ili ga jednim klikom objavljuje izravno na YourImageShare. Objava koristi isti /api endpoint opisan gore - jednom dodajte svoj API ključ u postavkama proširenja i svaka sljedeća objava odmah vraća poveznicu za dijeljenje. Radi u desktop Chromeu (i drugim preglednicima na Chromiumu), desktop Firefoxu i Firefoxu za Android.

Preuzmite YourImageShare Capture za Firefox Preuzmite YourImageShare Capture za Chrome

ShareX

Preuzmite prilagođeni uploader u nastavku, zatim u ShareXu idite na Destinations > Custom uploader settings > Import > from file, otvorite preuzeti .sxcu i zamijenite YOUR_API_KEY u polju Headers svojim pravim ključem. Postavite ga kao odredište za slike/datoteke i snimke će se učitavati automatski.

Preuzmi YourImageShare.sxcu

Brisanje: ShareXova poveznica "Delete" za svako učitavanje otvara našu stranicu za brisanje u pregledniku (jednokratni delete_url te datoteke), pa snimku možete ukloniti izravno iz ShareXove povijesti. Učitavanja možete brisati i u Mom računu. Konfiguraciju ste preuzeli prije listopada 2026.? Preuzmite je ponovno da biste to dobili.

Flameshot (Linux)

Mala shell skripta koja pokreće flameshot gui, učitava snimku i kopira poveznicu u međuspremnik. Povežite je s prečacem na tipkovnici u svom desktop okruženju umjesto Flameshotova zadanog.

Preuzmi yis-flameshot-upload.sh

# One-time setup
chmod +x yis-flameshot-upload.sh
export YIS_API_KEY="YOUR_API_KEY"   # or add to ~/.config/yourimageshare/api_key

# Then bind this to a hotkey instead of calling flameshot directly:
/path/to/yis-flameshot-upload.sh

Greenshot (Windows)

PowerShell skripta za Greenshotovo ugrađeno odredište External command. Kompatibilna s Windows PowerShellom 5.1 koji dolazi s Windowsima, bez dodatne instalacije.

Preuzmi yis-greenshot-upload.ps1

# One-time setup
setx YIS_API_KEY "YOUR_API_KEY"

# In Greenshot: Preferences > Destinations > External command > Settings
#   Command:   powershell.exe
#   Arguments: -ExecutionPolicy Bypass -File "C:\path\to\yis-greenshot-upload.ps1" "%1"

Dodaci za forume

Dodajte pravi gumb "Učitaj sliku" uz uređivač objava na svom forumu. Svaki učitava preko istog /api endpointa opisanog gore i umeće BBCode na mjestu kursora - bez zasebne kartice, bez ručnog kopiranja i lijepljenja.

U nastavku koristite svoj ključ samo za učitavanje, a ne API ključ. Svaki dodatak ispisuje ključ u izvornom kodu stranice svakog posjetitelja, a ključ samo za učitavanje (Moj račun > kartica API) može samo učitavati - ne može popisivati ni brisati vaša učitavanja čak ni ako ga netko kopira sa stranice.

Učitavanja s foruma su prema zadanim postavkama privatna: slika radi u objavi, ali joj YourImageShare ne daje vlastitu stranicu (bez komentara, reakcija ili oglasa). Svaki dodatak ima postavku za prebacivanje na unlisted ako želite i stranicu za svakoga s poveznicom.

phpBB

Pravo phpBB 3.2/3.3 proširenje. Raspakirajte u ext/, omogućite ga pod Customise > Manage extensions, a zatim zamijenite YOUR_UPLOAD_ONLY_KEY u datoteci događaja predloška proširenja svojim pravim ključem samo za učitavanje.

Preuzmi za phpBB

SMF (Simple Machines Forum)

Pravi SMF paket - instalirajte ga preko Admin > Package Manager, a zatim zamijenite YOUR_UPLOAD_ONLY_KEY u Sources/yis_forumupload.php svojim pravim ključem samo za učitavanje.

Preuzmi za SMF

MyBB

Pravi MyBB 1.8 dodatak. Kopirajte u inc/plugins/, aktivirajte pod Configuration > Plugins, a zatim zamijenite YOUR_UPLOAD_ONLY_KEY u datoteci dodatka svojim pravim ključem samo za učitavanje.

Preuzmi za MyBB

FluxBB, PunBB i ZetaBoards

Oni nemaju formalni sustav dodataka, pa je to mali isječak koji se lijepi izravno u vaš predložak (FluxBB/PunBB) ili Admin CP (ZetaBoards) - potpune upute za kopiranje i lijepljenje za svaki:

Upute za FluxBB Upute za PunBB Upute za ZetaBoards

WordPress dodatak

Prebacite svoju medijsku biblioteku na YourImageShare umjesto na lokalni disk. Nova učitavanja slika/videa automatski idu preko istog /api endpointa opisanog gore, lokalna datoteka (i svaka generirana veličina sličice) briše se čim je učitavanje potvrđeno, a svaki URL WordPress privitka - blok uređivač, istaknute slike, galerije, REST API - pokazuje na datoteku koja se nalazi na YourImageShareu. Bez kratkog koda, bez promjene načina rada.

  • Skupno prebacivanje postojeće medijske biblioteke u pozadini (ili pomoću wp yis offload --all), ne samo novih učitavanja
  • Slike i videi već umetnuti u objave nastavljaju raditi nakon uklanjanja lokalnih datoteka
  • Sličice i srcset koriste našu sličicu od 280px, pa mala mjesta za slike ne učitavaju datoteke pune veličine
  • Datoteke do 200MB, slane u dijelovima pa veliki videi nikad ne opterećuju dijeljeni hosting
  • Bilo koju prebačenu datoteku u bilo kojem trenutku možete vratiti na lokalnu pohranu
  • Stupac u medijskoj biblioteci pokazuje što je prebačeno, a što je još lokalno
  • Prebačene datoteke pohranjuju se kao private: učitavaju se gdje god ih vaša stranica koristi, ali nemaju vlastitu stranicu na YourImageShareu

Koristi vaš ključ samo za učitavanje, a ne API ključ. Neobavezni puni API ključ potreban je samo ako želite da se prebačene datoteke brišu s YourImageSharea kada ih izbrišete u WordPressu.

Preuzmite na WordPress.org Preuzmi ZIP

U WordPressu: Plugins > Add New, potražite YourImageShare Media Offload, zatim Install i Activate.

Gumb za učitavanje za bilo koju web stranicu

Svojim posjetiteljima dajte gumb "Učitaj" na bilo kojoj stranici - obrascu za komentare, stranici podrške, forumu za koji nemamo dodatak, statičnoj stranici. Zalijepite dva retka; bez registracije i bez koda na poslužitelju.

<a class="yis-upload" href="https://yourimageshare.com/" data-target="#message" data-format="bbcode">Image and video hosting by YourImageShare</a>
<script src="https://yourimageshare.com/w.js" async></script>

Oba atributa su neobavezna: bez njih gumb prikazuje poveznice s gumbom za kopiranje. Okvir za učitavanje gradi se oko poveznice.

  • Učitavanje se događa izravno na vašoj stranici: kliknite gumb, ispustite datoteke na njega ili zalijepite snimku zaslona - više datoteka odjednom, s trakom napretka i sličicom
  • Slike zalijepljene ili ispuštene izravno u polje navedeno u data-target (bilo koji textarea, input ili uređivi okvir) također se učitavaju, a poveznice se dodaju u to polje; bez cilja pojavljuju se ispod gumba s gumbom za kopiranje
  • data-format: url (izravna poveznica na datoteku, zadano), page, bbcode, html ili markdown; data-label mijenja tekst gumba
  • data-key (neobavezno): vaš ključ samo za učitavanje (Moj račun > API). Učitavanja tada idu u vaš račun pod vašim ograničenjima. Bez ključa učitavanja su anonimna i unlisted, s dnevnim ograničenjem po posjetitelju i po stranici
  • Programeri mogu slušati događaj yis:upload na okviru za učitavanje: event.detail.item sadrži {id, type, page, url, thumb}
  • Datoteke do 95 MB preko gumba (veće na web stranici). Primjenjuju se naša moderacija i uvjeti kao i inače; svaki posjetitelj dobiva vlastitu poveznicu za brisanje

Gumb se crta u vlastitom izoliranom okviru, pa ga CSS vaše stranice ne može pokvariti. Mala poveznica "Image and video hosting by YourImageShare" ostaje vidljiva unutar okvira za učitavanje.

Prečac za iPhone i iPad

Učitavajte iz izbornika za dijeljenje bilo koje aplikacije - Fotografija, Datoteka, Safarija, snimke zaslona - i dobijte poveznicu u međuspremniku. Bez instalacije aplikacije i bez registracije.

Da ga sami izradite u aplikaciji Prečaci (oko dvije minute):

  1. Novi prečac, nazovite ga "Upload to YourImageShare". U njegovim detaljima uključite Show in Share Sheet i prihvatite slike i medije.
  2. Dodajte Get Contents of URL: URL https://yourimageshare.com/api/widget, metoda POST, tijelo zahtjeva Form s dva polja: uploads (File) = Shortcut Input i client (Text) = ios-shortcut.
  3. Dodajte Get Dictionary Value za data, zatim još jedan za src - to je izravna poveznica.
  4. Dodajte Copy to Clipboard i Show Notification ("Link copied").

Bez ključa učitavanja su anonimna i unlisted, s dnevnim ograničenjem. Dodajte zaglavlje X-API-Key sa svojim ključem samo za učitavanje (Moj račun > API) za učitavanje u svoj račun. Odgovor sadrži i delete_url ako želite zadržati poveznicu za brisanje.

PicGo i PicList

PicGo i PicList učitavaju zalijepljene ili povučene slike za Markdown uređivače - Typora, VS Code, Obsidian, Joplin - i stavljaju poveznicu u vaš tekst. Naš dodatak čini YourImageShare jednim od njihovih servisa za hosting slika.

  • U PicGo ili PicList: Plugins, potražite yourimageshare, instalirajte, zatim odaberite YourImageShare kao uploader. Naredbeni redak: picgo install yourimageshare
  • Ili preuzmite dodatak i uvezite ga kao lokalni dodatak (prvo raspakirajte)
  • Postavke: ključ samo za učitavanje (neobavezno - prazno = anonimna, unlisted učitavanja), vidljivost i hoće li se vraćati izravna poveznica na sliku (za Markdown) ili poveznica na stranicu
  • Poveznica koju vraća nastavlja raditi kada se velike slike kasnije optimiziraju u WebP

Preuzmi PicGo dodatak

Telegram bot

Dobijte poveznicu za fotografiju, video ili GIF bez napuštanja Telegrama. Pošaljite je @YourImageShare_bot i poveznica se odmah vraća - bez registracije i bez API ključa. Bot učitava preko istog /api endpointa opisanog gore.

  • Pošaljite fotografiju, video, GIF ili datoteku slike ili videa; album do 10 vraća se u jednom odgovoru
  • U grupi odgovorite s /link na fotografiju ili video i bot objavljuje njezinu poveznicu za sve
  • /autodelete postavlja da se vaša sljedeća učitavanja sama brišu nakon 1 sata, 1 dana, 1 tjedna ili 30 dana
  • Svaki rezultat ima gumb Delete koji radi samo za osobu koja je učitala datoteku
  • Poveznice su unlisted: datoteku vide samo ljudi koji imaju poveznicu
  • Bot odgovara na vašem jeziku u Telegramu kada je stranica dostupna na njemu

Zadržite punu kvalitetu: Telegram komprimira fotografije poslane na uobičajen način. Pošaljite ih kao datoteku (📎 → File) i učitava se original. Telegram botovima dopušta preuzimanje datoteka do 20 MB, pa veće datoteke učitajte na web stranici.

Otvorite @YourImageShare_bot u Telegramu

Discord bot

Pretvorite bilo koju sliku, GIF ili video na Discordu u trajnu poveznicu. Discordove vlastite poveznice na privitke nakon nekog vremena prestaju raditi; YourImageShare poveznice ne. Bez registracije i bez API ključa. Bot učitava preko istog /api endpointa opisanog gore.

  • /upload s datotekom: neobavezno automatsko brisanje nakon 1, 7 ili 30 dana, i only_me da poveznicu vidite samo vi
  • Desni klik na poruku → Apps → Rehost on YourImageShare za ponovno hostanje do 6 slika ili videa iz nje u jednom odgovoru
  • Dodajte ga na server ili na svoj račun da ga koristite u bilo kojem chatu ili privatnoj poruci
  • Svaki rezultat ima gumb Delete koji radi samo za osobu koja je učitala datoteku
  • Poveznice su unlisted: datoteku vide samo ljudi koji imaju poveznicu

Dodajte YourImageShare na Discord

GitHub Action za Playwright i Cypress

Kada end-to-end testovi u pull requestu padnu, saznajte zašto bez preuzimanja ZIP-ova artefakata. Action učitava snimke zaslona neuspjeha i vizualne razlike te ih prikazuje kao slike u jednom komentaru pull requesta, ažuriranom pri svakom pokretanju.

  • Radi s Playwrightom i Cypressom i sam otkriva koji projekt koristi
  • Neuspjele vizualne usporedbe prikazuju se kao Expected, Actual i Diff, s poveznicom na klizač prije/poslije (Playwrightov toHaveScreenshot; za Cypress dodaci cypress-image-diff-js i cypress-visual-regression)
  • Komentar se mijenja u "all tests passed" čim se testovi poprave; isto izvješće ide u sažetak posla
  • Snimke zaslona su privatne (samo datoteke slika, bez stranice) i prema zadanim postavkama brišu se nakon 30 dana
  • Treba vaš ključ samo za učitavanje kao tajnu repozitorija YOURIMAGESHARE_API_KEY; nikad ne ruši vaš build
- uses: yourimageshare/playwright-pr-screenshots@v1
  if: always()
  with:
    api-key: ${{ secrets.YOURIMAGESHARE_API_KEY }}

Vodič za postavljanje na GitHubu

Projekti zajednice

Neke od najboljih YourImageShare integracija grade ljudi koji ga koriste. Ove projekte izradili su članovi zajednice pomoću javnog API-ja opisanog gore. Održavaju ih njihovi autori, pa se za pitanja ili prijave pogrešaka obratite autoru preko stranice projekta.

  • YourImageShare Uploads for FlatBB - dodatak za forum FlatBB autora madromas (MadWay Inc.).
    • Dodaje gumb za učitavanje u uređivač objava FlatBB-a: odaberite jednu ili više slika ili videa i Markdown se umeće na mjestu kursora
    • Umeće svako učitavanje kao sličicu na koju se može kliknuti, sliku pune veličine ili običnu poveznicu (videi kao poveznica)
    • Učitavanja idu preko poslužitelja vašeg foruma s API ključem samo za učitavanje, pa ključ nikad ne dospije u preglednike posjetitelja
    • Datoteke se hostaju na YourImageShareu, a ne na disku vašeg foruma, sa zadanom vidljivošću koju odaberete (private, unlisted ili public)
    • Radi uz FlatBB-ov vlastiti uploader, s odvojenim ograničenjem veličine datoteke

    Izvorni kod na GitHubu · Stranica na FlatBB Marketplaceu

Hvala vam

Veliko hvala svima koji grade s YourImageShareom i dijele svoj rad s drugima. Projekti zajednice donose YourImageShare na mjesta do kojih sami nikad ne bismo stigli. Izradili ste nešto s API-jem? Javite nam i rado ćemo to dodati ovdje.

S bloga

Spremni za isprobavanje?

Nabavite svoj API ključ →