Depends on whether you are semantic or not. Both GET and POST have an internal value if you create an HTML-based API. But in general, GET is used to retrieve data, POST is used to send data.
The biggest difference is that GET puts all the data in a URL (which may be limited in size), while POST sends it as part of the HTTP request data. If you allow data entry using GET requests, you also make many web exploits much easier, such as CSRF. Someone can simply make a pre-filled link to an action of a vulnerable form (say, a password change form?), Send it to unsuspecting users who click on it and unknowingly change their password.
In addition, no browser will warn the user if he refreshes the GET page, which performs data entry (which will make a duplicate entry, if you are not careful), but in POST most browsers will show a warning.
source share