In terms of HTTP response codes, Salmon shouldn't care whether or not it receives back a 200, 201 or 202 response.
"The server MAY provisionally accept the salmon at this point and return a 202 Accepted response. This allows the server to perform the subsequent steps asynchronously."
This assumes that the server is going to complete the request asynchronously. If the server actually completes the request synchronously it has to lie and return 202 even though the accurate response would be 200/201.
This came to my attention as I was implementing Salmon on CouchDB. In Couch there is a synchronous document storage handler that you could configure to accept and store Salmon updates. Because it is synchronous (from the Couch docs:) "the status code for an update function response is hardcoded to be 200/201 unless an error occurs."[source]
Thanks,
Max Ogden