Kalo te dokumentacioni
Python

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ë

files.py
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.

Ngarkimi dhe fshirja

upload.py
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ë