~0wx.org~ :: Deponiment da datotecas ed auters utensils nizzaivels


Chargiar si TinyURL HugeURL Pastebin Davart Annunziar S'annunziar
Rumantsch
English English Deutsch Deutsch Plattdüütsch Plattdüütsch Lëtzebuergesch Lëtzebuergesch Nederlands Nederlands Dansk Dansk Svenska Svenska Bokmål Bokmål Nynorsk Nynorsk Íslenska Íslenska Føroyskt Føroyskt Español Español Català Català Galego Galego Português Português Français Français Italiano Italiano Latina Latina Română Română Gaeilge Gaeilge Suomi Suomi Magyar Magyar Euskara Euskara Esperanto Esperanto 日本語 日本語 简体中文 简体中文 繁體中文(台灣) 繁體中文(台灣) 繁體中文(香港) 繁體中文(香港) 粵語 粵語 한국어 한국어 Tiếng Việt Tiếng Việt ไทย ไทย Bahasa Indonesia Bahasa Indonesia Bahasa Melayu Bahasa Melayu हिन्दी हिन्दी Ελληνικά Ελληνικά Polski Polski Čeština Čeština Українська Українська Русский Русский Türkçe Türkçe العربية العربية עברית עברית Kiswahili Kiswahili ʻŌlelo Hawaiʻi ʻŌlelo Hawaiʻi tlhIngan Hol tlhIngan Hol

I dat in API per tut las funcziuns sin 0wx.org. Ti pos al duvrar per scripts u per cumonds da la consola.

Tut quai ch'ils formulars da questa pagina fan, per scripts. Mintga resposta è JSON, era las errurs, uschia na stos ti mai engiavinar sch'in corp è in resultat u ina explicaziun.

Far ina dumonda

POST al punct final u cun parameters da formular u cun in corp JSON. Tuts dus èn equivalents; tscherna quai che tes utensils fan pli simpel. Il parameter action tscherna tge che duai vegnir fatg. Dovra --data-urlencode per tut quai ch'in uman ha tippà — text encollà, in URL, ina translaziun — perquai che -d trametta la valur brutta ed ella vegn taglada tar l'emprim &. In -d simpel basta per valurs fixas sco action sez. wget n'ha insumma nagin --data-urlencode, uschia stos ti cun wget u codar sez talas valurs cun pertschient u trametter in corp JSON, che na dovra nagina codaziun.

curl -X POST https://0wx.org/api.cgi \
     -d action=paste --data-urlencode 'content=hello & world'

curl -X POST https://0wx.org/api.cgi \
     -H 'Content-Type: application/json' \
     -d '{"action":"paste","content":"hello & world"}'

wget -qO- --header='Content-Type: application/json' \
     --post-data '{"action":"paste","content":"hello & world"}' https://0wx.org/api.cgi
Valurs che cuntegnan &

En in corp da formular separa & ils parameters, e curl -d na codescha betg quai che ti dattas ad el. In URL cun rientscha da dumonda vegn perquai taglià tar ses emprim &, ed il rest arriva sco parameters separads. Dovra --data-urlencode, u trametta JSON. Parameters sviads vegnan refusads empè d'ignorads, uschia faglescha quai dad aut empè da memorisar in mez link.

# wrong -- the value is cut at the &
curl -X POST https://0wx.org/api.cgi \
     -d action=tinyurl -d 'url=https://example.com/?a=1&b=2'

# right
curl -X POST https://0wx.org/api.cgi \
     -d action=tinyurl --data-urlencode 'url=https://example.com/?a=1&b=2'

# also right -- JSON needs no escaping
curl -X POST https://0wx.org/api.cgi -H 'Content-Type: application/json' \
     -d '{"action":"tinyurl","url":"https://example.com/?a=1&b=2"}'

# wget has no --data-urlencode, so percent-encode it yourself...
wget -qO- --post-data 'action=tinyurl&url=https%3A%2F%2Fexample.com%2F%3Fa%3D1%26b%3D2' https://0wx.org/api.cgi

# ...or send JSON, which needs no encoding at all
wget -qO- --header='Content-Type: application/json' \
     --post-data '{"action":"tinyurl","url":"https://example.com/?a=1&b=2"}' https://0wx.org/api.cgi
Autentificaziun

Facultativ. Senza clav è ina dumonda anonima e sa cumporta exactamain sco in visitader anonim — il resultat è public en mintga cas, l'unica differenza è sch'el cumpara en tia glista da datotecas. Generescha ina clav sin tia pagina da conto e la trametta sco token bearer; la surdar sco parameter apikey funcziuna era, ma ina clav en ina rientscha da dumonda finescha en ils protocols dal server ed en la cronologia dal navigatur.

curl -X POST https://0wx.org/api.cgi \
     -H 'Authorization: Bearer YOUR_KEY' \
     -d action=whoami

wget -qO- --header='Authorization: Bearer YOUR_KEY' \
     --post-data 'action=whoami' https://0wx.org/api.cgi
Acziuns
actionParametersDescripziun
whoamiConferma ch'ina clav funcziuna e rapporta las limitas actualas. Na custa nagut; cloma quella l'emprim.
ipRapporta tia adressa, ses PTR, il pajais, la regiun e la citad nua ch'ella vegn localisada, las coordinatas ed il user agent che ti has tramess. Na dovra nagina clav e respunda tuttina cun u senza. Expressamain pli stretg che la pagina web: nagin WHOIS, nagina zona DNS e nagina dumonda da glistas da bloccada, uschia custa il clamar al server mo ina lectura da la banca da datas locala.
uploadfile (repetibel), resize, lifetime, gallery u g *Chargia si ina u pliras datotecas. Sto esser multipart/form-data. Numnar ina galaria las metta directamain en quella e returna sia id.
tinyurlurl, lifetimeScursanescha in URL.
hugeurlurl, lifetimeProlungescha in URL, absurdamain, expressamain.
pastecontent, lifetimeMemorisescha in bloc da text e returna in link a quel.
translatecontent, to, fromTranslatescha text. to e from èn codes da l'acziun langs — resguarda ch'els n'èn betg adina codes da pajais: danais è da, betg dk. from po vegnir laschà davent u inditgà sco auto, quai che dumonda il backend da renconuscher la lingua; l'inditgar dat in meglier resultat cun text curt.
langsFa la glista da las linguas che translate accepta, sco supported_langs: in object per lingua, code a num, en l'urden en il qual la pagina las porscha. Na dovra nagina clav API.
dyndnskey, ip, formatActualisescha in num DNS dinamic. L'unica acziun che na dovra nagina clav API: ella vegn clamada d'in router, che ha in champ per in URL e nagina pussaivladad da trametter in header. key è la clav d'actualisaziun per mintga num mussada en tes conto, betg tia clav API. Lascha davent ip e l'adressa da la quala ti clomas vegn duvrada. La resposta è il pled dyndns2 de facto — good, nochg, badauth, abuse u dnserr — sco text simpel, perquai che quai è quai che routers analiseschan; agiunta format=json per il JSON usual.
listfiles *page, gFa la glista da tias datotecas cun tut quai ch'il panel d'infurmaziuns mussa, plus la miniatura ed il link direct. g limitescha ad ina galaria, u none a datotecas en nagina galaria.
listpastes *pageFa la glista da tes texts, cun ina prevista da 200 caracters da mintgin empè dal corp entir.
listurls *pageFa la glista da tes URLs curts e gigantics, cun l'adressa a la quala mintgin renviescha.
otl *shareCrea in link per ina giada ad ina da tias datotecas. Mintga clom crea in nov, uschia dat la medema datoteca a duas persunas dus links.
listotl *pageFa la glista da tes links per ina giada activs, la datoteca a la quala mintgin renviescha, e sche questa datoteca è scadida dapi lura.
listgalleries *Fa la glista da tias galarias cun lur ids, nums, dumbers da datotecas e status da publicaziun.
gallery *g, publishRapporta il status da publicaziun d'ina galaria, e mida quel cur che publish vegn inditgà.
move *share (repetibel), gallery u gSpusta datotecas en ina galaria, tenor num (creada sche nova) u tenor id. Sche tuts dus vegnan laschads davent, vegnan ellas spustadas enavos en la glista principala.
delete *share (repetibel), g, otl, withfilesStizza datotecas, texts, URLs curts, galarias, links per ina giada, u ina maschaida da quels. In share vegn l'emprim cumpareglià cun tias datotecas e lura cun tes texts e links, uschia na sto il clamader betg als sortar tenor tip. Links per ina giada van en otl, separadamain: allontanar in link na dastga betg vegnir confundì cun stizzar la datoteca a la quala el renviescha.

* Questas acziuns dovran ina clav API. Ellas legian u midan las datas d'in conto, uschia na datti nagina furma anonima da quellas.

Pliras en ina giada

share e g acceptan in champ repetì, in array JSON u ina glista separada cun commas — quai che tes utensils fan il pli simpel. Duplicats vegnan ignorads.

curl -X POST https://0wx.org/api.cgi -H 'Authorization: Bearer YOUR_KEY' \
     -d action=move -d share=Ab3xK9pQ -d share=Zz7yT2mN --data-urlencode 'gallery=Holiday 2026'

curl -X POST https://0wx.org/api.cgi -H 'Authorization: Bearer YOUR_KEY' \
     -d action=delete -d 'share=Ab3xK9pQ,Zz7yT2mN'

curl -X POST https://0wx.org/api.cgi -H 'Content-Type: application/json' \
     -H 'Authorization: Bearer YOUR_KEY' \
     -d '{"action":"move","share":["Ab3xK9pQ","Zz7yT2mN"],"g":7}'

wget -qO- --header='Authorization: Bearer YOUR_KEY' \
     --post-data 'action=delete&share=Ab3xK9pQ,Zz7yT2mN' https://0wx.org/api.cgi
Galarias

Dapertut nua ch'ina galaria vegn numnada — en upload u en move — vegn ella inditgada sin las medemas duas modas: g per ina id existenta, u gallery per in num, che vegn creà sch'el è nov. Sche tuts dus vegnan tramess, gudogna g. La resposta porta l'id da la galaria. Resguarda che stizzar ina galaria allontanescha mo la galaria, laschond sias datotecas en la glista principala — auter ch'il formular web, che las stizza suenter avair dumandà. Surdà withfiles=true per las stizzar era: in script che fa urden en sias gruppaziuns na duess betg perder datotecas per sbagl.

curl -X POST https://0wx.org/api.cgi -H 'Authorization: Bearer YOUR_KEY' \
     -F action=upload -F file=@photo.jpg --form-string 'gallery=Holiday 2026'

curl -X POST https://0wx.org/api.cgi -H 'Authorization: Bearer YOUR_KEY' \
     -d action=gallery -d g=7 -d publish=true

wget -qO- --header='Authorization: Bearer YOUR_KEY' \
     --post-data 'action=gallery&g=7&publish=true' https://0wx.org/api.cgi
Chargiar si datotecas

Chargiar si na po betg duvrar il corp JSON, perquai ch'ina datoteca sto vegnir tramessa sco multipart. Repeta la part file per trametter pliras en ina giada. Mintga datoteca vegn rapportada separadamain: la resposta porta ina glista files da quellas acceptadas ed ina glista rejected da quellas refusadas, uschia è in success parzial anc adina in success.

curl -X POST https://0wx.org/api.cgi \
     -H 'Authorization: Bearer YOUR_KEY' \
     -F action=upload \
     -F file=@photo.jpg \
     -F file=@notes.txt \
     -F lifetime=7d

I na dat nagina furma wget per quai. wget na po betg construir in corp multipart/form-data — el n'ha nagin equivalent per il -F da curl — e chargiar si sto esser multipart. Dovra curl, u cumpona sez il corp ed il boundary e trametta quai cun --post-file.

Durada da vita

Facultativ per mintga acziun che memorisescha insatge. Accepta secundas nudas, u ina cifra suandada da m, h u d — las medemas furmas ch'ils formulars web acceptan. Lascha davent u surdà 0 per mantegnair l'element illimitadamain.

Respostas

Mintga resposta è in object JSON cun in champ ok. En cas da success porta el il resultat; en cas d'errur porta el in code error stabil ed in message legibel per umans. Fa la ramificaziun tenor il code, protocollescha il messadi.

{"ok":true,"type":"paste","share":"Ab3xK9pQ",
 "url":"https://0wx.org/p/Ab3xK9pQ","bytes":11}

{"ok":false,"error":"url_too_long",
 "message":"URL exceeds the maximum length."}
Tags audio

Nua ch'ina datoteca als porta, agiunta listfiles file_tags a sia endataziun: artist, titel ed album, legids da ID3, commentaris Vorbis u atoms MP4 cur che la datoteca è vegnida chargiada si. La clav è absenta empè da null cur ch'i na dat nagut da rapportar, quai ch'è il cas per la gronda part da las datotecas, uschia controllescha ella avant che la leger. Champs singuls pon era mancar — ina datoteca po avair in titel e nagin album. Nagut auter da las metadatas da la datoteca na vegn mussà: ina cumpra iTunes registrescha il num e l'Apple ID dal cumprader, e quels na vegnan expressamain mai legids.

{"ok":true,"type":"files","total":2,"page":1,"pages":1,"files":[
  {"share":"Ab3xK9pQ","name":"autobahn.mp3","mime":"audio/mpeg",
   "bytes":8123456,"url":"https://0wx.org/i/Ab3xK9pQ",
   "file_tags":{"artist":"Kraftwerk","title":"Autobahn","album":"Autobahn"}},
  {"share":"Zz7yT2mN","name":"photo.jpg","mime":"image/jpeg",
   "bytes":204800,"url":"https://0wx.org/i/Zz7yT2mN"}
]}
Codes d'errur
errorHTTPDescripziun
unknown_action400Nagina tala acziun.
bad_json400Il corp n'era betg JSON valid, u in champ cuntegneva ina structura nidada.
unexpected_parameter400In parameter che questa acziun na piglia betg è arrivà — per ordinari in & betg codà en ina valur. Il messadi numna ils parameters.
bad_key401La clav n'è betg vegnida renconuschida. Ina clav faussa vegn refusada empè da vegnir tractada tacitamain sco anonima.
bad_url400L'URL è malfurmà, u dovra in schema auter che http(s), ftp u gopher.
bad_lifetime400La durada da vita n'era betg ina cifra u ina cifra suandada da m, h u d.
no_content400Nagut n'è vegnì tramess per memorisar.
url_too_long413L'URL è pli lung che la limita.
paste_too_long413Il text è pli grond che la limita da texts. Las limitas vegnan mesiradas en bytes UTF-8, uschia dumbra text betg latin dapli che quai che ses dumber da caracters lascha supponer.
too_many_files413Dapli datotecas che quai ch'ina clom accepta.
no_usable_files415Mintga datoteca è vegnida refusada. Guarda la glista rejected per il motiv.
backend_unavailable502Il backend da translaziun n'ha betg respundì.
internal500Insatge è faglì inaspettadamain. Quai è vegnì protocollà.
Limitas

Cloma whoami per leger las valurs actualas empè da las scriver fix en il code — ellas vegnan definidas da l'operatur dal server e pon sa midar. Las grondezzas èn bytes UTF-8.

In client shell

0wx.sh emballa tut quai survart. Quai è POSIX shell pur, dovra nagut auter che curl, ed è avunda curt per al leger avant che ti al exequeschas — quai ch'è la chaussa correcta cun in script che tegn tia clav API. Metta la clav en OWX_KEY empè da surdar --key, ed ella resta ordaifer la cronologia da tia shell.

wget https://0wx.org/clients/0wx.sh
chmod +x 0wx.sh
export OWX_KEY=YOUR_KEY
./0wx.sh help
./0wx.sh paste --content 'hello & world'
In client Python

0wx.py fa il medem sco il client shell, ma analisescha la resposta e stampa tge ch'ils champs signifitgeschan empè da ta dar JSON brut — agiunta --json cur che ti vuls la furma brutta. Mo la biblioteca standard: nagin requests, nagut d'installar. Sche ti scrivas tes agen client, èn sias funcziuns send() e report() las parts che vala la paina da leger: ensemen mussan ellas co construir la dumonda, co extrair il messadi d'ina dumonda faglida, e tge che las respostas cuntegnan.

wget https://0wx.org/clients/0wx.py
chmod +x 0wx.py
export OWX_KEY=YOUR_KEY
./0wx.py listfiles
./0wx.py listfiles --json | jq '.files[].url'
In client Perl

0wx.pl fa il medem sco quel Python e stampa il medem. Mo moduls da basa — HTTP::Tiny e JSON::PP vegnan cun Perl dapi 5.14, uschia n'è nagut d'installar. Vala la paina da leger sper il client Python sche ti scrivas tes agen: las duas linguas fagleschan differentamain cun ina dumonda rutta, e tuts dus scripts din nua.

wget https://0wx.org/clients/0wx.pl
chmod +x 0wx.pl
export OWX_KEY=YOUR_KEY
./0wx.pl listfiles
In client PowerShell

0wx.ps1 è il pendant dal client Python per Windows: ils medems cumonds, la medema sortida, ed el analisescha la resposta empè da ta dar JSON brut — agiunta --json per quai. El è scrit per il Windows PowerShell ch'è gia sin la maschina, uschia n'è nagut d'installar, ed el funcziuna senza midadas sin PowerShell 7. Ti dovras forsa Set-ExecutionPolicy -Scope Process Bypass en la fanestra da la quala ti al exequeschas; quai è Windows che dumonda sche ti vuls propi exequir in script telechargià — ina dumonda gistifitgada, e la datoteca è avunda curta per la leger l'emprim.

$env:OWX_KEY = 'YOUR_KEY'
.\0wx.ps1 listfiles
.\0wx.ps1 paste --content 'hello & world'
.\0wx.ps1 upload --file .\holiday.jpg --gallery 'Holiday 2026'
Ina fanestra en tes navigatur

0wx.html è il medem set da registers sco il client desktop, sco trais datotecas — ina pagina, in stylesheet ed in script — senza installaziun, senza framework, e nagut na vegn chargià d'insanua auter che da questa pagina. Trais empè d'ina perquai che la Content-Security-Policy da la pagina scumonda script e stil inline, quai che vala la paina da mantegnair. Datotecas pon vegnir laschadas crudar sin quel. El sto vegnir avert da qua empè da vegnir memorisà ed avert da tes disc: l'API na trametta nagins headers cross-origin, uschia vegniss mintga dumonda d'ina copia locala refusada da tes navigatur avant ch'ella parta. La clav vegn tegnida en la memoria, nun che ti marcheschias la chaschetta per la tegnair en memoria.

https://0wx.org/clients/0wx.html
Ina fanestra sin Windows

0wx-gui.ps1 è il medem set da registers sco il client desktop, dissegnà cun WinForms — quai vul dir nagut d'installar insumma, cunquai che quai è gia ina part da Windows. Metta el en il medem ordinatur sco 0wx.ps1: la fanestra emprestescha il tractament da dumondas da questa datoteca empè da purtar ina segunda copia, uschia èn tuts dus necessaris. Windows dumonda avant ch'exequir in script ch'el n'ha betg scrit sez, quai ch'è ina dumonda gistifitgada; tuttas duas datotecas èn avunda curtas per las leger avant che ti respundas.

powershell -ExecutionPolicy Bypass -File .\0wx-gui.ps1
Ina fanestra sin Linux cun GTK

0wx-gtk.pl è ina pitschna fanestra GTK cun registers per chargiar si, encollar, scursanir e sfegliar tias datotecas — sco glista u sco galaria da miniaturas, filtrada tenor galaria. Quai è l'unic client qua che dovra insatge installà — ils bindings GTK3 da Perl — quai che vala la paina da savair sper la fanestra Windows survart, che na dovra insumma nagut. Tut l'auter ch'el dovra vegn cun Perl. La clav vegn mo tegnida en la memoria: serrar la fanestra l'emblida, e definir OWX_KEY l'emplenescha cun l'aviar. Tge ch'el ta mussa er, la resposta brutta dal server è in clic davent sut “Server reply”.

apt install libgtk3-perl        # or: dnf install perl-Gtk3
wget https://0wx.org/clients/0wx-gtk.pl
chmod +x 0wx-gtk.pl
OWX_KEY=YOUR_KEY ./0wx-gtk.pl
Ina app Android

0wx-android.apk fa quai ch'ils auters clients fan, d'in telefonin: chargiar si, encollar, scursanir, translatar e sfegliar tias datotecas sco glista u galaria. Cundivider ina datoteca cun el d'ina autra app la chargia si, e cundivider text al memorisescha sco text. El n'è en nagin app store, uschia ta dumonda tes apparat sche ti permettas da l'installar — ina dumonda che vala la paina da prender serius en general, ed il motiv per il qual il code da funtauna entir è era qua: avra quel en Android Studio e construescha el ti sez empè da ta fidar da la datoteca. Construir dovra JDK 21; il BUILDING.md laint di pertge.

https://0wx.org/clients/0wx-android.apk        # install it
https://0wx.org/clients/0wx-android.zip        # build it yourself
Remartgas

Expressamain n'exista nagina acziun per chargiar da lontan. Ella fiss stada ina surfatscha d'attatga per falsificaziuns da dumondas, cunquai ch'il server chargiass in URL tschernì dal clamader, ed in script po duvrar quai bler pli ferm ch'in formular. Chargia si la datoteca ti sez.


(p) 2018 0wx.org -/- Cun Linux e GNU. Live free or die! (root@0wx.org)