title: Cannot exchange authorization code for long-lived access token with SurveyMonkey API
body: <p>I've got the initial half of an OAuth flow working with the SurveyMonkey API, but when I try to exchange the short-lived authorization code for a long-lived OAuth access token, I get an HTTP 400 response. This is step 3 of <a href="https://developer.surveymonkey.com/mashery/guide_oauth" rel="nofollow">the SurveyMonkey OAuth Guide.</a></p>
  
  <p>Here's a scrubbed version of the full exchange:</p>
  
  <pre><code>POST /oauth/token?api_key=&lt;removed&gt; HTTP/1.1
  Accept: application/json
  Accept-Encoding: gzip, deflate, compress
  Content-Length: 338
  Content-Type: application/json; charset=utf-8
  Host: api.surveymonkey.net
  User-Agent: HTTPie/0.7.2
  
  {
      "client_id": "&lt;removed&gt;",
      "client_secret": "&lt;removed&gt;",
      "code": "dKkIJYnimBli3TMHoTdHoT-zkzkUFzfHeaWJJyPVmrYG35R5Q-jLLU-Y7Fg3BR0n3tVTQ6sAmDnwVxHXSjZVdiYTJ7u7SWbLCKgQa061bKJYXSpRhTsEL0v5GMWcMEBC2vje5UjRHp3SScFQEwIIjHKZH5raC5RQJJh.JYWEOqw8Iy-2Ds7km1zYaHGGlxqu",
      "grant_type": "authorization_code",
      "redirect_uri": "https://app.hubspotqa.com"
  }
  
  HTTP/1.1 400 Bad Request
  Cache-Control: no-store
  Connection: keep-alive
  Content-Length: 96
  Content-Type: application/json; charset=UTF-8
  Date: Fri, 24 Jan 2014 00:05:53 GMT
  SM-Request-ID: 41264d11-b93d-4f8b-ad1a-c656ccfa268b
  Server: nginx
  
  {
      "error": "invalid_request",
      "error_description": "Invalid POST body or Content-Type received."
  }
  </code></pre>
  
  <p>I'm able to reproduce the exact same error using other HTTP clients as well, but I have no trouble manually getting an access token using <a href="https://developer.surveymonkey.com/api_console" rel="nofollow">the SurveyMonkey API console.</a> What am I doing wrong?</p>
  
  <hr>
  
  <p><sub>
  <em>Side question: the OAuth guide says that step 3 accepts a <code>redirect_uri</code> but <a href="https://github.com/SurveyMonkey/python_guides/blob/master/guides/authorization.py#L115" rel="nofollow">the example Python guide uses <code>redirect_url</code>.</a> Which is the correct parameter? Can I omit it entirely? My server certainly does not care about getting redirected anywhere.</em>
  </sub></p>