Skedarët
`files.list`, `list_all`, `iterate`, `get`, `download`, `list_links`, `list_all_links`, `iterate_links`, `create_link`, `revoke_link`, `stats`, `upload`, `delete` dhe `delete_many`.
Çdo metodë
from pathlib import Path from openemail import openemail page = openemail.files.list(kind='pdf', sort='largest')file = page['items'][0] Path(file['filename']).write_bytes(openemail.files.download(file['id'])) links = openemail.files.list_all_links(file['id'])print([(link['url'], link['downloads']) for link in links]) stats = openemail.files.stats()print(stats['totals']['files'], stats['uploaded']['bytes'])Çdo skedar që mban kutia postare, bashkëngjitjet e dërguara dhe të marra dhe skedarët e ngarkuar në të, faqja Skedarët e aplikacionit. download kthen gjithë skedarin si bytes, lidhjet janë lidhjet e shkarkimit me të cilat doli një skedar, me sa herë u mor secila, dhe stats është skeda Analitika.
list, list_all dhe iterate marrin q, kind dhe sort, si edhe direction (inbound, outbound ose uploaded), address, skedarët e një adrese të krahasuar pa marrë parasysh shkronjat e mëdha e të vogla, dhe since e until, një datetime ose një varg ISO 8601. since e përfshin momentin e vet dhe until ndalon para tij.
Leximi kërkon files:read, ndërsa ngarkimi, fshirja dhe publikimi ose revokimi i lidhjeve kërkojnë files:write, që përfshin files:read. Një çelës i krijuar para se skedarët të kishin lejet e tyre mori lejet përkatëse. Një çelës i kufizuar në adresa ose domene të caktuara sheh vetëm skedarët e tyre.
Lidhjet publike
from openemail import openemail uploads = openemail.files.list_all(direction='uploaded', since='2026-09-01') file = uploads[0] link = openemail.files.create_link(file['id'], domain='acme.com')print(link['url']) openemail.files.revoke_link(file['id'], link['id'])create_link publikon një skedar në një lidhje publike shkarkimi që hapet pa hyrje dhe e kthen atë. Lidhja ndodhet në hostin e skedarëve të domain kur ai domen ka një të tillë, si files.acme.com, përndryshe në hostin e skedarëve të adresës së cilës i përket skedari, përndryshe në adresën e API-së. Një skedar që erdhi ose doli me një mesazh kopjohet fillimisht në hapësirën publike të ruajtjes, dhe një program ose skript refuzohet me 422 file_unshareable.
Çdo create_link krijon një lidhje të re, ndaj nuk riprovohet kurrë pas një përgjigjeje të humbur: kërkojeni fillimisht lidhjen me list_links. revoke_link e ndalon përgjithmonë një lidhje, përfshirë në postën që është dërguar tashmë, dhe e kthen atë me revokedAt të vendosur. Revokimi i një lidhjeje dy herë është i sigurt, dhe një lidhje e panjohur është një 404.
Ngarkimi dhe fshirja
from pathlib import Path from openemail import openemail upload = openemail.files.upload( Path('price-list.pdf').read_bytes(), filename='price-list.pdf', content_type='application/pdf',) if upload['deletable']: openemail.files.delete(upload['id']) result = openemail.files.delete_many([ 'file_0c4e7a91d2b84f63a5e19b7d', 'file_6bb640f5b99e47deb758f1f5',])for kept in result['kept']: print(kept['filename'], kept['reason'])upload i ruan bajtet ashtu siç janë, deri në 100 MB, me emrin filename, dhe kthen skedarin, ID-në e të cilit një dërgim e bashkëngjit si {'fileId': upload['id']}. Jepni content_type, përndryshe bajtet ruhen si application/octet-stream. Nuk riprovohet kurrë, sepse një përpjekje e dytë do të ruante një kopje të dytë.
Mund të fshihet vetëm një skedar i ngarkuar nga i cili nuk varet asgjë, dhe deletable e usage te çdo skedar e tregojnë këtë paraprakisht. delete refuzon çdo skedar tjetër me një 409 file_in_use. delete_many merr deri në 100 ID, fshin çfarë mundet dhe raporton pjesën tjetër te kept, secilin me arsyen e tij, dhe te missing.
upload merr bytes, bytearray ose memoryview. Pret të paktën 600 sekonda për një përgjigje, sado i shkurtër të jetë timeout i klientit, përveç nëse i jepni thirrjes timeout=, dhe një filename bosh ngre ValueError para se të dërgohet ndonjë gjë.
Referencë
files.list()Referenca e plotëfiles.list_all()Referenca e plotëfiles.iterate()Referenca e plotëfiles.get()Referenca e plotëfiles.download()Referenca e plotëfiles.list_links()Referenca e plotëfiles.list_all_links()Referenca e plotëfiles.iterate_links()Referenca e plotëfiles.create_link()Referenca e plotëfiles.revoke_link()Referenca e plotëfiles.stats()Referenca e plotëfiles.upload()Referenca e plotëfiles.delete()Referenca e plotëfiles.delete_many()Referenca e plotë