title: CURL as plain URL string
body: <p>Good morning.</p>
  
  <p>I'm developing a small media player with built in support for audio recognition using the <a href="http://developer.echonest.com" rel="nofollow">Echonest API</a>. I've dealt with API's before and know how to submit and parse results, but the other API's provided simple <code>POST/GET</code> examples in their documentation thus opening it up to almost every situation regardless of language or platform.</p>
  
  <p>The Echonest API however, only provides CURL examples. CURL is something I've never dealt with. I'm working in <code>Delphi XE3</code>, or <code>Firemonkey 2</code> to be specific, and thus there's no built in CURL library or components. There are a few third-party ones available, but I'm not confident they're up to date as they're listing Delphi 6 as being their development environment, and brief searches indicate they're no longer working with modern versions of Delphi (whether this is true or not is a different story).</p>
  
  <p>As I'm wanting to try and keep things as cross-platform as possible to potentially compile an <code>OS X</code> version at a future date, and feel confident in dealing with <code>POST</code> and <code>GET</code> already, how would I go about 'translating' this CURL command into something I could use with <code>Indy</code> (for example);</p>
  
  <pre><code>curl -F "api_key=FILDTEOIK2HBORODV" -F "filetype=mp3" -F "track=@audio.mp3" "http://developer.echonest.com/api/v4/track/upload"
  </code></pre>
  
  <p>This was taken directly from their <a href="http://developer.echonest.com/docs/v4/track.html#upload" rel="nofollow">API documentation</a>, and is used for uploading a track to their service.</p>
  
  <p>I'm not sure on the specifics regarding CURL and so before I go throwing random data at the service, I felt it best to see whether the SO community can give a brief explanation and example that I can work from. The explanation is much more valuable than the example in any case, but an example may serve well for anyone else who happens to stumble upon a similar problem.</p>
  
  <p>Regards,
  Scott Pritchard.</p>