ERPNext Foundation ERPNext Cloud User Manual Blog Discuss Frappé* Donate

Upload attachment using rest API


#1

Dears,

i have created application to sync exchange email with Communications and it is successfully works now i need to upload attachments to the communication record using Rest API how can i do that ?


How to upload Image through REST API
How to upload image from android to erpnext using Rest API
#2

Make a POST request to / with form params below,

cmd = uploadfile
dt = DocType to attach (Communication in your case)
dn = Name of the Document
filename = Filename
filedata = base64 encoded content of your file

refs



#3

With “/” you mean “/api/method/” ?

Trying

curl -b cookies.txt -X POST -d ‘data={“cmd”:“uploadfile”, “dt”:“Note”, “dn”:“TestNote”, “filename”:“test.txt”, “file_data”:“SGVsbG8gV29ybGQK”}’ ‘http://myserver/api/method/

and also

curl -b cookies.txt -X GET ‘http://myserver/api/method?cmd=uploadfile&dt=Note&dn=“TestNote”&filename=test.txt&filedata=SGVsbG8gV29ybGQK

but doesn’t work.

An example would help…


#4

This one works. I would admit that it took me some time to get it right :smile:

curl https://demo.frappecloud.com/ -d "cmd=uploadfile&doctype=Lead&docname=LEAD-00149&filename=testfromapi.txt&filedata=aGVsbG93b3JsZAo%3D&from_form=1" -XPOST -b frappe.cookie

(file data is base64 + encoded)


File upload using Rest API not working
#5

Thanks! Works for me too…


#6

Hii @Jens_Bohlin
Please Can you provide steps to upload file using rest API.

Thanks,
Ragh


#7

Any suggestions?


#8

I’ve been using this method and set Employee (because I’m using Employee Login) permission to the doc “r and w” and always got 403, even though with administrator, system engineer.

here’s request snapshot from my post man

POST / HTTP/1.1
Host: http://www.domain.com/
Content-Type: application/x-www-form-urlencoded
Accept: application/json
Authorization: Bearer
cache-control: no-cache
Postman-Token: 2a4d1d6b-390a-4295-ab0b-0c0ee76efc79
from_form=1doctype=Schedulesdocname=HR-EMP-00001-Jakarta-2019-02-25cmd=uploadfilefilename=test.jpgfiledata=iVBORw0KGgoAAAANSUhEUgAAAPoAAAD6CAMAAAC%2FMqoPAAAAz1BMVEUAAADUBy%2FDDi7dAzDdAzDdAzDdAzDDDi7DDi7DDi7dAzDdAzDdAzDDDi7DDi7DDi7dAzDdAzDdAzDDDi7DDi7DDi7dAzDdAzDDDi7DDi7dAzDdAzDDDi7DDi7dAzDDDi7fEz3HHTvugZjhh5f97%2FL78PLqYn7%2F%2F%2F%2FaaHz74OX44eXmQmTSSmL3wMvww8vhI0rLLEjyobHppbHdAzDDDi7jMlfOO1XoUnHWWW%2F50Nj00tjscYvdd4nwkaTllqT0sL7stL7hRGPXBjDWBi%2FFDS4%2BJsiBAAAARXRSTlMAMDAwj9%2F%2F%2F9%2BPIHDPz3AgEGC%2Fv2AQUK%2BvUJ%2Fv75%2BAgP%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F9AQP%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2Fr6%2BTKVt1AAAH7ElEQVR4AezUtaHDUBTA0I9mZtx%2FzHDMWOY%2BnQ3U6AsAAAAAAAAAAAAA8Em%2Bf9Ts%2Fv3713TDVK7esh3tRr9xPV%2Bd7iCMtCf9KU5SJcKzXOvonaIU313VmjZK7zRtKXtsY%2FqI1OlZ9rN7Jb2rlza9IHS0JfoSV9D0wlxboa8oElljO5HeTU%2FC2E6kC5heN7Yz6QKm143tTLqA6QXrYzub%2FpxeKmFsV2buQllxZQ3DcJZ1jwuMS7AYGmx84Jy97%2F%2BexjNGWLv%2Bzvst%2BO7gKfnrha6Kna4%2Fethhq9wUvdIf99G7EV8407xp1zpHevTuff8JrqN%2F%2F3H%2F8PgPG0%2Fnjx5%2F2Hg6f%2FT4w8bTj%2Fbo3ahKNWjdXpC76ty7B%2F9vMXz9Qbic%2B0cTOGz2JanRChw94LC55svyvPDNd5VH7%2BzrQQc2zPORJ%2Fbi5ekhD5t94%2FzLJoAcOHrEYTNs%2BpU%2BM%2FCAowccNmBl%2Fm1zD646evxhQ7f4Tl96cvzRW1WHjVs3%2F7HfswY6emv%2Bv0Vy%2FYo%2BoOnUP5rVT1F8SUVPeTnz8%2FbMaZZV8ipr%2BJ1GDSeiD3%2FRRyJ61HTW%2B2bImWoTifxFY3pLQp%2F%2BTp9J6G2eDuZMtflx0mMFffEnfamgd0g6nzNk1vD0R8qcUWZN86BdKXNGmTXr5jknzBlp1gC%2F4YQ5I82aqPkuZDkjzZprAL0lyxlp1rQB%2BmNY%2Fiqv3WuY%2FgSgx6qc0WZNB6DflDWstGbvAPSVKGfEWbM%2BOno32UdPezAdmCZn1FkTERPlDJ81PP0WKH%2BTX7K3oPw2Qm8pckadNW2Efi7IGXnWXEfosSBn5FnTQej3%2BZzRZ80DhL7ic0afNWuEfsbnjD5rTiNkfM7osyZi9pzOGX3WvIDoLTpn9FnTJul8zvBZw9NjOmf0WdNh6XzOLJZs1vD0R6qcGU9UWfMUoq9EOfPO%2BfeirFlD9HuinMmcL4CsYZ9e%2BKb5sGtMus730nxnH4mioXYhyZmNc95vJVlzDaO3JA1bfqXPJTXbxuiPFTkzdV%2FpfqbImicYPVa8ML75Tn%2BreHvsYPSbgpwZuu90PxJkzR2MvhLkTL%2BiDwRZsz4a%2BqZG163ovXx3W4AOjc%2BZhavofslnTcQNz5l8%2FIs%2Bybms4em36Jx5537R%2FXs6a26D9BadM9nv9ILOmjZIfwbnTNL9nd5L4ax5CdJjOGcW7ne6X8JZ0wHp9%2BHHpvJP%2Bhx%2BhHoA0ldszkzdn3Q%2FY7NmDdLP2JzJ%2FqYXbNacRuDQnBnufrVghGZNRA7Nmf4ufUBlDU9vkY9N5S59Tj5CtVk6mDMLt0v3SyhreHoMPjaN6%2BgT8BGqw9K5nBm6OrofAVmD0YEHmP%2FVeLJ6epHv7v%2F804t9Kyxnkm49vZdiWbNG6Tewhl24erpfYjV7N0JH5Uxe7qPPcyprInYXzAtjle%2B79PqQH%2FBPL%2Ba1oJzJ9tMLKGvaMP0xkzNDt5%2FuR0zWPIHpsZ3%2Bri7f6%2Bn7Q%2F69nd6h6UjO5OVl9HkOZA1PXyE5s3CX0f0SyZo1TSdyJh9fTp%2FkQNbg9IjImaG7nO5HRNZE9Iicyf6LXgBZw9NvWXMG2wB9etE3zZCjj%2FRFQz7AZDm4wvj0Qi825gw4W9Z0cPp9W86gm9ieXuitbDmDzpQ1a5x%2BZsoZeHP%2B6cUye85ws2RNdEh6N8fXOyi9pc8ZImvaB6UnPD09KD3W5wyRNR09nW9YpmYV9Ed8zlg24Z9e8KaZaugzumgMu6HPGSJr7kaC6XOGyJpIsQs%2BZ%2FisuSaht4Jzpj%2Bu3z%2BTPRsEZ01bQn8cmjOJ27N%2F9wrS0Kx5IqHHoTmzsdO3oVnT0dMtOVPa6XN71ijpq8CcmTo73c8Cs2atpxtyJguhF%2FasEdKjsJxJXAjdp2FZE2kWljObMPrWnjVC%2Bq2gnCnD6HN71tBPL4am6RuOXEU3HroBXzTIA0xiOHIV3XjoUvLpxbA4IGcSF0r3aUDWdET0%2BwE5swmnbwOy5oGIvgr42FAZTp8HfK5oLaKf2XNm6sLpfmbPmtNINPvHhrIm9ML%2BuaJINXPOJK4J3afmrJHRW8aGzTfN6NvcWLNtHd362FQ2o8%2Btj1A6emz8duLUNaP7mfErjJ0D0DPDkTPQC%2BMjlI7%2ByJYziWtK96kta57K6Ctbzmya07e2rFnL6Ddsj01lc%2Frc9gh1N5LNlDNT15zuZ6asiXS7sDw2ZQS9sDxCXRPSW4acSRxB96kha9pC%2BmNDzmwY%2BtaQNU%2BE9NjwKeiSoc8NH5fuXDW97NctcwzdF4O6za%2Bavvrcnl3Y6A5DQRS%2BPzMzF5FUMO%2F139KSeJmONdLe08EIvsR29%2Be9Of3n1TkdyXt6kI1OvtPP00CbX12n3zZBNzw6Tr%2FMokTV0m36qo5SbTtO0%2FuHYAO8k79ulHfy143yTv66Ud6J183VO%2FG6uXonWDfeu1P56WdWN9478brhtZYlp6%2Ba4VTVKTW9X4dbi1OJ6ed1%2FDwD78Tr5uqdeN1cvROvm6t34nVz9U68bq7eidfN1Tvxurl6J0A3h6rxb0yfELrxLTo%2Fnd5ndDPwTj66AeOP359%2BYYfzDZffm74CWTfwTrxurt6J183VO%2FG6uXonXjdX78Tr5uqdeN1cvROvm6t3ctYNGN9%2BffoAGG7XcPdy%2Bt5aN%2BBxWvxjsat3InTz79E7PekWQPbeyV83qOG%2F%2F7PI%2FmhZlmVZlmVZlmVZlmXZPZmSvHpA7pEOAAAAAElFTkSuQmCC


#9

I’ve successfully upload the image but the problem is with permission, the server said, not permitted , what method to pass this error while uploading attachment ?

I hope someone would tell what method they use to upload the attachment properly from android apps.

Thanks in advance.


#10

do you get some answer to solve this issue ? i have some problem too about post image, when im using Token Auth , its give me response 403 Forbidden , but if im using method/login its success to post image


#11

Messed around for a bit and realised that the key names have changed. The attached works whether you call ‘/api/method/uploadfile’ or just ‘/’ with “cmd=uploadfile”.


#12

Any updates on this?, I’m also getting error by using Token Auth. I’m integrating a small api for Node with Token Auth, anyone interested just drop me a line. I’ll be make it available as soon as uploading is working.


#13

i create new api that return upload() function from erpnext directly and its work


#14

nice!, can you share it?.. i’m using npm package promise-request …
code just here: https://raw.githubusercontent.com/quad-tree/erpcloud_utils/master/api_erpnext_v11.js


#15

Screenshot%20from%202019-07-15%2014-23-51

i just create a simple api like that and it’s work