News & Announcements User Community Developer Community

Welcome to the RingCentral Community

Please note the community is currently under maintenance and is read-only.

Search
Make sure to review our Terms of Use and Community Guidelines.
  Please note the community is currently under maintenance and is read-only.
Home » Developers
Switching to -F/--form option for posting multipart/mixed forms?
Tags: error
Mar 26, 2017 at 9:18pm   •   15 replies  •  0 likes
Julio Toledo

My front-end development framework's cURL implementation requires all curl options be entered as raw text strings (text/plain). This is causing me all sorts of headaches with such things as posting multipart/mixed forms (i.e. FaxOut API requests).


For example, this works perfectly for me in Shell terminal but not in my front-end environment:

curl -X POST "https://platform.devtest.ringcentral.com/restapi/v1.0/account/~/extension/~/fax"; --header "Content-Type: multipart/mixed; boundary=Boundary_1_14413901_1361871080888" --header "Accept: application/json" --header "Authorization: Bearer {
  {access_token}}" -d "--Boundary_1_14413901_1361871080888
Content-Type: application/json
{
  
  \"to\":[{\"phoneNumber\":\"18005630003\"}],
  \"faxResolution\":\"High\",
  \"sendTime\":\"2013-02-26T09:31:20.882Z\"
}
--Boundary_1_14413901_1361871080888
Content-Type: text/plain
Hello, World!
--Boundary_1_14413901_1361871080888--"

When I try the same command from my front-end I get:

{  "message" : "Bad Request",
  "errors" : [ ]
}

The cURL http scripting docs recommend using "--form" commands for RFC1867 posting. If correct, can you provide some working examples for Faxing and MMS of how boundaries and content-types would be specified when using "-F" options?


P.S. Any other solution or workaround would be welcomed.










15 Answers
answered on Apr 1, 2017 at 9:26am  
Never mind Tyler, I finally figured it out. My apologies for all of the back and forth.

Problem solved, binary attachments do work in my environment! (yay)



I was misinterpreting my development framework's documentation regarding restrictions on direct file access.Turns out the issue was with my debugging methodology ( mockbin.org) and not with my development framework. 

So yes, direct file access via http methods (cURL) is restricted in my development framework, however  it is  not necessary to convert binaries to text (base64 or hex). I do not need to encode the binary in any way prior to posting.
I don't think RingCentral fax supports base64 or hex encoding. I recommend fixing your dev env. Ask the administrator to grant you file access permission. Or at least there should be a temp folder that your app can access
These security restrictions are architectural in nature, so they are not within our control. Turns out my development framework's temp folder equivalency is to use my application's database as the intermediary. After importing the external file into my app's database, I am free to post it by assigning that field's contents to a variable (i.e. @$my-binary).

I had tried the above technique numerous times with mockbin.org, but my bin would blow up each time I posted binary data. Because mockbin.org was accepting hex/base64 but not accepting binaries, I was misled into thinking this was somehow related to my direct file access restrictions. 

 0
answered on Mar 30, 2017 at 11:33pm  
I cannot access http://mockbin.org/bin/a7f221dd-c4f1-465c-b62e-e066b9eb64c7/log

For security reasons, my development framework does not permit direct file access
Then it's the limitation of your environment instead of RingCentral. I have no idea of your environment but is sounds really weird. You can convert that file into base64 so I guess you still can access it via code.

I don't think RingCentral fax supports base64 or hex encoding. I recommend fixing your dev env. Ask the administrator to grant you file access permission. Or at least there should be a temp folder that your app can access.

 0
answered on Mar 30, 2017 at 8:52pm  
Ok, latest update is text/plain attachments are fine, but Hex encoded binaries (or Base64) do not.

So, this post body works:
{   "to":[{"phoneNumber":"13054081720"}],   "faxResolution":"High",   "sendTime":"2017-03-30T19:43:49.000Z",   "coverIndex":"11",   "coverPageText":"Hello world!" }
--------------------------34aa6472d5fa5bc8 Content-Disposition: form-data; name="attachment"; filename="filename.txt" Content-Type: text/plain  This is a test of the Emergency Broadcast System. The broadcasters of your area, in voluntary cooperation with federal, state and local authorities, have developed this system to keep you informed in the event of an emergency. If this had been an actual emergency, the Attention Signal you just heard would have been followed by official information, news, or instructions. --------------------------34aa6472d5fa5bc8-- 
However this post body does not work:

--------------------------df71a92203419cd5
Content-Disposition: form-data; name="request"; filename="json"
Content-Type: application/json { "to":[{"phoneNumber":"13054081720"}], "faxResolution":"High", "sendTime":"2017-03-30T19:48:44.000Z", "coverIndex":"11", "coverPageText":"Hello world!" }
--------------------------df71a92203419cd5
Content-Disposition: form-data; name="attachment"; filename="AddressLine.pdf"
Content-Type: application/pdf 255044462D312E340A25E2E3CFD30A312030206F626A0A3C3C0A2F4F504D20310A2F547970652F4578744753746174650A2F534D20302E3030310A2F4F5020747275650A3E3E0A656E646F626A0A322030206F626A0A3C3C0A2F46696C7465722F466C6174654465636F64650A2F4C656E677468203634350A3E3E0A73747265616D0A588585553D8FDB300CDDFD2B34268379A4BE051802724D52A06BBD355D0EC51568D10ED7FE7F94D6A79DB83864A1A947F2F189549E3E7E46F1FDCFF03C0F4F571224E6D7C180734620FF0C482394138404414931FF1A163732EEE730D1739C7F0C0E5C7239A109B4D65E50474FA817CC5D46AD21103BD6403A6D93198460B57837977160486F727D9948464D5FE74F8B798A1A8B798D8C92CB87819242380FE87510EBF8C3EDEF715439EA70FBDDEC094D2CB684E0A540317F5BDC97EA5EC3399FF705B2B8B99D5CFA5EDD80601B731F479F28B298A4A996205BFD6C13DBB53D1F49A97420C17BA373C082DFC8691558E9D7B526943B725A0FC659BFE5A46B6DBE13499D938BCE9A3B39031823C33AFE707B398EA45CD1A77F48907C1D4D44175728BE803DD44647A24A3CC9C8A5598942F9398E21512340C58795B2E111D0455F2E500E26BC2E5A20186F2BF6707B3D8EC1163E6FCD9E70C99D6C05E442930359A65C334F41C610EBC073BC6AB2E56C18C9AD848ED9CDC37E1E81C7D8C4AD483206B041911825A0E19D98CFF9F6645D001E1C959004DE9A7E91D7EAE72ACD2630967C53E385E73AB3CA6B50D40DC1AD87BC63B88B9233AFD343ACE2C595B6C5BEEDC6A6AEB35F32BEDD64BA9D86675557F9FFBB68C6826B134251AB22CB25D69108367455CE1D716A086F6D47F8E24EE988F2F06E026D47D41C6C069E429FD07D437963507BBB227910C7C7050DBCC886076AD34B6F0011A9D1FBD07930BDF2F4599E8DF5DA6803BABEC1B8F75873CF86DFBA8E4BEFEB983273C1B484B99E2ADEF4345480551D50BD08CB1BD369B6B0531CCBBD734FCD3C1780E269D33BABBC11D1A10AEBA670EF5F23683E47BF6D2A948ADC54E822AACEEE1C7D1EADCB3CFC03DB1B95E30A656E6473747265616D0A656E646F626A0A332030206F626A0A3C3C0A2F4E756D735B303C3C2F502831293E3E5D0A3E3E0A656E646F626A0A342030206F626A0A3C3C0A2F547970652F456E636F64696E670A2F446966666572656E6365735B322F636F6D6D6120342F706572696F642F7A65726F2F6F6E652F74776F2F74687265652F666F75722F666976652F7369782F736576656E2F65696768742F6E696E652F636F6C6F6E2F61742F412F422F452F462F482F492F4C2F4D2F4E2F4F2F502F532F542F552F582F756E64657273636F72655D0A2F42617365456E636F64696E672F4D6163526F6D616E456E636F64696E670A3E3E0A656E646F626A0A352030206F626A0A3C3C0A2F46696C7465722F466C6174654465636F64650A2F537562747970652F5479706531430A2F4C656E67746820323235330A2F4C656E6774683120323631360A3E3E0A73747265616D0A58855D556F5C54551ABE973B73AEF86784B9DE11D0EE19C0C50011316151F20F99F90768518965D1FEA08C0AA2A303897F324CD7C42673FD8B513F7193D422B7CC45FA475A9969192DFEC5BD6D2BA15D2DA7DD4D7FBEE7F2DE69F74C58BF7EFBE5BD77EE9C3FEF79FE1D51B08509A228DE5538AD307B7261F2A4C77DDECAAAB20A4FCAA4E5559EC5A59ED2826AAF20F23142368B14D820910D0E6377492CDA864BB169B07D78F73EBBD65BA07E7F4FED2BDF250862FFFEA1DA27225473235FE78FDE039C82248A2B9EAB9BE85DB2C257367F4195FBEEB989EEB4D199A3DDD9A5DE391EF7CC1595559E4595EEA98BE77A7D4BBCBE922A4FE970B73BBBA2C23D2334BED23DC353E9F12DE35F7F69D35D56E92E71FB3CF3CBF85C9FA7D45DE52B29F52C2AF12D747BE7B91FF4CC29F35678DD3387BBB37F35E7E7A3B9E347FEF29137CA51108434A1BF30428817460BAAE01222851861B89024C409FD84A1428A304050844461901025440B0305A79021A40BA9C2046194102B24083404934DB85F2816DE1693448FB83B2C32AC5292A431529EB45E6A924E4B5DB645B6761BB3C7D8C7D8AF916AB28B9C27FF9107C9A9F2915E25BD9EC67B1DD0ECDF032FEAD0A48BDF05D8CD80F49D2B0087582581B25D5F423A8C9DB01FA3A8758D980FE17675C2C3DEB19A550D4DCC4B2EBFB32C9D3AF05E3F448890073609F25C608308B411079BBA4E671DBAD811301F0F48DD4360998ACEF1DE14CD8A2529E3F7839342A30CCE8BFBAF6B2C965CBFE845270D5EC41A15734EDD03451A4B275074AA0B722814CB9093D785459A954EB028EF1ECCA10EF8D1AFC3161D56E94EDE7477605260A072CBEC80496A4E79F908CDAA872DCC4FAEB4AE4EA30AF3C2CBEAC48295859AF51CAC62DBC82BE79E9A4A83B3ADD3AAD98B28C7A1EFD563FFA69D32844D3E306EB3B6595696776D3F70EC68CC29F9AB924B98A4593F92D0867BCCF10DE29EEE47A43D2E8827F02D5C817FE1153B68C48A670ADC86EB761C44F0636CC10FA0C58E94C06DBC6E77401B0778A0CEC6B48BEF19ACD990DE8361AA1989C30C1806FD74ECC7D6600CB10CEB11BB1959A65ACD9B086B6699A189EB74D8AD3FAD43B2EEBC608C354CD118A8DC7F05BE51BB88F2EA172FB56EBD34089A080C7DB7DC4DCB658C79A20C7FAFE12B0407D77CF02D4D7D8260F2D15C98A0C145021BF775808B76C9903EEA2D1CA3E17AA28CC2F89235390BE94658664ED4830DFC987CCB106D270D33C1904EC2932AA61DCBE07CC00D0245C72E431A85ED32A4155EE67CE00DCE476106A651732DCE5331DF5B8D051A2E2658E06D807C0A9932E4EF6F80020D161328D85F8DF99CB9D0A1BC3A1CD49DBA916930E047BAC5C63359C5F5AB774204247CEA87691462088C3DEBC758F7D2729C4595D72C1F4E5731FCD87DB04883774900A20E431205438622A4F5A86A584B945B9889036A30874E9631E2F44310ABC1D7E48B0B3BBFDC4737612149CAA89EA2612B516AD1B5F0CD13B425557698E3FC7B1876895703DDF901E9AA2B604670FCF38211F676FE3023EC9B8211017301A6102BCBBA6965B19B76FEEEC0DB3D7AF83E207DCFE72C48EC910844E92C5517EBBBCBA57A1748E42AA4D85907B98A2976FECBBACF5C60470781E3568D6AAD24B081A5DAB981907CFCD1AF3C748814AF5D3FF7196DBAFCD5E1C64E0A0ADA64074CE7AB9F0E299EDBF4278F76B2CF75EB7358C5AEE8C107F8F6B25F376D0D3DFF9A77EBD609332AD45508EF1D3A6CD09D678C5186291B591CF16F5914FC43850FC9E5A675D81B0754D5726EB089286730AEE630D869EAC35C44278BA058834F086CD9FE778802D7BCC67B76D24DB25271E3A5177643740CB8FEF011166B8804E3F2F2B1172D368ECA6D2D8DE0D2E03502897B9F4429BDB61C15CA3519F2810E855D704417CF19A6CD90CEB9CC137AB0FC33F25DE3765859AF41D20E58FBC2B93A3F3C140DF1F3AE63A98627088ECF2CC06174B2715886212777DED4E03801D79F67C7A5D6CCC7D8A7285EA8C2CC9A7173FC3832DAC106F7A0D412C2C18CBB039419879D218EF0B3601C7C96C8D9BB97935ED6F0FFA905F5B69FF30BDA38BF922E9E31CF4AF0AC0BC2093BC8D00E62F06C96592DF7C0BA4B873FEACEF3069771372F03951F58D459154B56EE86DE10FEC6161841E1190223DE588FE1D87BE5722CA14A052E806B2A8EACD80EB2B1772FC451F80B81B8BD95A92857ACC59154D96ABD849B558C6C7B1486684C2330A4AD0522E9193990FFEAC43A8DE33F0CE417B6EAEFC4BC2343BF296F63AA86B709A64E7918FBD1D9F2ECAD59E058A56D94953FA17DB56F29CA313DDD1ED4B9EFB8E918FCD4EB2D96C67B1D3BD10FB1B75F7E0D6651701358FFFC1A8CC0845C3F4EA3CA5BB0864D538D2602E185E7709186EF92448C9A8B49140D198B803E01AA0621DB41260CA8E359FD850C11D33EC0580DBF269327ACC95CC2A3A588DCB8DCD0A601B7DDDDE06A2AFD2903FC7BD87FFF29B2AD86C4B6BA0C6E2F99E0FBB8A63517F6C2423BA7719D6EF6FD854398A6E2D0F38F416EC8CE907BFE080CA5ECCD44EB903CA9720E466B788D6074E55FDB293B94283BA0BC873AA60424A6707346B1303D78268B8585AE257F177B2BE47673D61DB71333999B1D12B83E82112498CC2D8F095C224918D92AFA59AD84913656DB6AD572515CE5303EDB05B5BAB3C330FB18D921182FC1444E27387D10AF412381DF40C22E7880726EFA677D8833353C423065C9814EE8D3B603A6D39B44590E3BEA96A1BC891A7CB8FAE029DCA0E17C828F24CEC3D15810580147293C489473E078BD6A447CC9228CA3789CA0C373F00C7D9F471624ADFBF8463B34B65FD3C5665E20BB1386B44B7008CEAA973E343A5ADE289D396646F2F8E28AC3A734E6C4DFAAF74D19579E3408A7600C38211746F3985560322483230353519C9AFEBBD51B76D63FFFDC8B9B9FA77F833AFB38B272FAD2D69286D9FE68EC9F892E74647C3AE14273F3CB4D07E82652BA6FF9AB1D30FA1B9801533103FAF3751FC37198817371358C450DE6F1F5C927373FD7425CDCB9A7EFE4D2A3BA15E47773A76E75F2E432F5E02CE258B7CD5CB00D7DDB081CDA06E15BAC1FEA6498D147EB6D9FB3B1A66F385B36C0D4D4FF019AE815FC0A656E6473747265616D0A656E646F626A0A362030206F626A0A3C3C0A2F466F6E7446696C65332035203020520A2F417363656E74203732340A2F58486569676874203733320A2F547970652F466F6E7444657363726970746F720A2F5374656D56203139300A2F436170486569676874203732340A2F5374656D4820300A2F466F6E744E616D652F564A564147562B4575726F7374696C652D457874656E64656454776F0A2F466C616773203236323134380A2F466F6E7442426F785B2D323231202D323739203133323620313034325D0A2F44657363656E74202D3137380A2F4974616C6963416E676C6520300A3E3E0A656E646F626A0A372030206F626A0A3C3C0A2F466F6E7444657363726970746F722036203020520A2F456E636F64696E672034203020520A2F4E616D652F46310A2F547970652F466F6E740A2F537562747970652F54797065310A2F5769647468735B3438322030203438322039363420393634203936342039363420393634203936342039363420393634203936342039363420343832203830302031303132203130313220383634203833392031303432203239362037363520313333322031303837203130383720393339203938372038363420313034322031303132203530305D0A2F4C617374436861722033320A2F42617365466F6E742F564A564147562B4575726F7374696C652D457874656E64656454776F0A2F46697273744368617220320A3E3E0A656E646F626A0A382030206F626A0A3C3C0A2F547970652F50616765730A2F4B6964735B39203020525D0A2F436F756E7420310A3E3E0A656E646F626A0A392030206F626A0A3C3C0A2F436F6E74656E74732032203020520A2F4D65646961426F785B302030203135312E32203134345D0A2F5265736F75726365733C3C2F50726F635365745B2F5044462F546578745D2F466F6E743C3C2F46312037203020523E3E2F4578744753746174653C3C2F4753302031203020523E3E3E3E0A2F547970652F506167650A2F426C656564426F785B302030203135312E32203134345D0A2F43726F70426F785B302030203135312E32203134345D0A2F5472696D426F785B302030203135312E32203134345D0A2F506172656E742038203020520A3E3E0A656E646F626A0A31302030206F626A0A3C3C0A2F547970652F436174616C6F670A2F506167654C6162656C732033203020520A2F50616765732038203020520A3E3E0A656E646F626A0A31312030206F626A0A3C3C0A2F58507265737350726976617465282525446F63756D656E7450726F63657373436F6C6F72733A20426C61636B5C6E2525456E64436F6D6D656E7473290A2F4D6F6444617465283230303631323133303132303230290A2F43726561746F7228517561726B58507265737328522920372E3031290A2F50726F647563657228517561726B58507265737328522920372E3031290A2F4372656174696F6E44617465283230303631323133303132303230290A2F5469746C653C4645464630303443303036313030373930303646303037353030373430303230303033313E0A3E3E0A656E646F626A0A787265660A302031320A303030303030303030302036353533352066200A30303030303030303135203030303030206E200A30303030303030303738203030303030206E200A30303030303030373934203030303030206E200A30303030303030383333203030303030206E200A30303030303031303331203030303030206E200A30303030303033333836203030303030206E200A30303030303033363138203030303030206E200A30303030303033393136203030303030206E200A30303030303033393731203030303030206E200A30303030303034323037203030303030206E200A30303030303034323734203030303030206E200A747261696C65720A3C3C0A2F53697A652031320A2F526F6F74203130203020520A2F496E666F203131203020520A2F49445B3C32333730464442334341413830453134424344443938464341364134443338463E3C32333730464442334341413830453134424344443938464341364134443338463E5D0A3E3E0A7374617274787265660A343531390A2525454F460A
--------------------------df71a92203419cd5--

 0
answered on Mar 30, 2017 at 7:40pm  
Hi Tyler,

Please have a look at my most recent requests here and see if you can tell me what's going wrong:
http://mockbin.org/bin/a7f221dd-c4f1-465c-b62e-e066b9eb64c7/log


 0
answered on Mar 30, 2017 at 7:24pm  
Hi Tyler,

PS. Just concluded my first test. Fax cover with cover text message went thru with no problems whatsoever.

The issue is apparently with the attachment file upload (whether it's text or binary). 

While I continue my debugging, any recommendations are welcome.



 0
answered on Mar 30, 2017 at 7:07pm  
Hi Tyler,

Thanks for following up. I appreciate your assistance.

For security reasons, my development framework does not permit direct file access, therefore I cannot simply point a variable to a binary. I have to load the binary into a variable and then I can make curl requests with it. My choices for that are either Hex Encoding or Base64 Encoding.

Having said, I'd like to test a couple of debugging exercises:
  1. I will test sending a fax cover sheet with a fax cover message and no attachment. If a fax can go thru with no attachment, then the binary is the issue.
  2. I'm gonna set up "mock bin" to capture my request and see what's coming across to you when I post an attachment (text or pdf)
Hopefully I'll be able to figure out what's going on with my fax form, as I will need similar code for posting an MMS form.

 0
answered on Mar 30, 2017 at 6:14pm  
Just sent a PDF file successfully using curl:



 0
answered on Mar 30, 2017 at 5:58pm  
Just fyi, I am encoding the pdfs using Base64 (RFC 4648 )

Please don't encode it with Base64. Just send it as binary.

Please reply if you still cannot get it work.

 0
answered on Mar 30, 2017 at 5:56pm  
I just tied sending a plain text file with "hello world" as content and succeeded.



 0
answered on Mar 30, 2017 at 3:00pm  
Oops! Spoke to soon. Now my attachments are not rendering.

-----------------------------------------
"Your fax included the following file(s). Please check the file(s) that could not be rendered for errors or refer to our website for supported file types.

Name                                  Phone Number         Date and Time                   Result
                                            +1 (305) 4081720                                                  Failed

File Name                                                                                                         
Result
attachmentContent                                                                                            Not rendered"
-----------------------------------------

It's as if the attachment were being truncated or the Content-Length was not being calculated.

Even the text/plain example fails with just the phrase "Hello, world!" Just fyi, I am encoding the pdfs using Base64 (RFC 4648 )

This is the result of my post request:
{    "uri" : "https://platform.ringcentral.com/restapi/v1.0/account/540887020/extension/540887020/message-store/765035724012",    "id" : 765035724012,    "to" : [ {      "phoneNumber" : "+13054081720",      "location" : "Miami, FL",      "messageStatus" : "Queued"    } ],    "type" : "Fax",    "creationTime" : "2017-03-30T21:46:29.000Z",    "readStatus" : "Unread",    "priority" : "Normal",    "attachments" : [ {      "id" : 765035724012,      "uri" : "https://media.ringcentral.com/restapi/v1.0/account/540887020/extension/540887020/message-store/765035724012/content/765035724012",      "type" : "RenderedDocument",      "contentType" : "application/pdf"    } ],    "direction" : "Outbound",    "availability" : "Alive",    "messageStatus" : "Queued",    "faxResolution" : "High",    "faxPageCount" : 0,    "lastModifiedTime" : "2017-03-30T21:46:29.833Z",    "coverIndex" : 12  }
And the response headers are:
HTTP/1.1 100 Continue    HTTP/1.1 200 OK  Server: nginx/1.10.2  Date: Thu, 30 Mar 2017 21:46:29 GMT  Content-Type: application/json; charset=UTF-8  Content-Length: 416  Connection: keep-alive  RCRequestId: 55130dfe-1592-11e7-a7ce-005056affef3  RoutingKey: SJC01P05PAS06  Content-Language: en-US  Vary: Accept-Encoding, User-Agent  Content-Encoding: gzip  X-Rate-Limit-Group: heavy  X-Rate-Limit-Limit: 20  X-Rate-Limit-Remaining: 19  X-Rate-Limit-Window: 60



 0
answered on Mar 30, 2017 at 11:44am  
Thanks Tyler. That worked like a charm! :)

Now I gotta try something similar with MMS. Do you know when the MMS endpoint will be available for testing in the Sandbox?

 0
answered on Mar 29, 2017 at 11:08pm  
curl \
--header "Accept: application/json" \
--header "Authorization: Bearer <token>" \
-F "request=@request.json;type=application/json" \
-F "attachment=@hello.txt;type=text/plain" \
"https://platform.devtest.ringcentral.com/restapi/v1.0/account/~/extension/~/fax"

Content of request.json file:

{
 "to": [{ "phoneNumber": <fax receiver> }]
}

Content of hello.txt:

<Whatever text you want to send.>

You can also send pdf:

-F "attachment=@test.pdf;type=application/pdf"

 1
answered on Mar 28, 2017 at 12:45pm  
Hi AK,

I tried your code. Got yet another (different) error response:
{    "errorCode" : "InvalidContent",    "message" : "Unable to parse fax envelope",    "errors" : [ {      "errorCode" : "MSG-349",      "message" : "Unable to parse fax envelope"    } ]  }

I tried the -F options with and without leading/trailing quotes. I even tried breaking out the "type=applicaton/json" into a trailing -H option (i.e. -H "Content-Type: application/json"). Same error.

 0
answered on Mar 27, 2017 at 8:36pm  
Hi AK,

Thanks for your reply, your multipart form posts curl reference was somewhat helpful in that it moved me on to a different error response :|

So, I reconstructed my request as follows:
curl -X POST https://platform.devtest.ringcentral.com/restapi/v1.0/account/~/extension/~/fax"  --header "Accept: application/json"   --header "Authorization: Bearer {{my access token}}"   -F to=18005630003   --header "Content-Type: text/plain"   -F coverIndex=12  --header "Content-Type: text/plain"   -F faxResolution=High   --header "Content-Type: text/plain"   -F attachment=Hello, World!  --header "Content-Type: text/plain" 
I did this in attempt to mimic the "Pattern 3 Request format: multipart/form-data" example in your API Reference. And now the response to my request is always:
{
  "message" : "Unsupported Media Type",
  "errors" : [ ]
}
Tried different kinds of syntax and adding/removing options. Still nothing.

 0
answered on Mar 27, 2017 at 6:06pm  
You could use the -F option to add each section of the multipart that you would want to POST. I did find something which might be helpful :
https://ec.haxx.se/http-multipart.html

Let us know if this helps.


 0



A new Community is coming to RingCentral!

Posts are currently read-only as we transition into our new platform.

We thank you for your patience
during this downtime.

Try Workflow Builder

Did you know you can easily automate tasks like responding to SMS, team messages, and more? Plus it's included with RingCentral Video and RingEX plans!

Try RingCentral Workflow Builder

PRODUCTS
RingEX
Message
Video
Phone
OPEN ECOSYSTEM
Developer Platform
APIs
Integrated Apps
App Gallery
Developer support
Games and rewards

RESOURCES
Resource center
Blog
Product Releases
Accessibility
QUICK LINKS
App Download
RingCentral App login
Admin Portal Login
Contact Sales
© 1999-2024 RingCentral, Inc. All rights reserved. Legal Privacy Notice Site Map Contact Us