Change API from `post` to `put` to avoid ambiguity

The request sent in the original `post` function is actually an HTTP PUT request. This PR changed the name from `post` to `put` to avoid ambiguity.