My 2 cents on the topic.
Some tipps for beginners (which would have been very helpful for me:
If you want to create a simple interface for JSON RPC and are lucky enough to have python:

The plane request to create it in a different language (here in postman):
1) get Authentication (Then the Credentials get stored as cookies, standard web auth)

where newstart9 is your database name and admin admin are your username and password
2) Then you can, like in rest, create update(write in odoo), delete like in REST
http://localhost:8069/web/dataset/call_kw/forum.post/create
{
"id": 5,
"jsonrpc": "2.0",
"method": "call",
"params": {
"model": "forum.post",
"method": "create",
"args": [
{
"name": "PowerPoint Karaoke",
"subtitle": "Die besten Erfindungen der Neuzeit"
}
]
}
Why Json-RPC is cool:
The permission concept of odoo is honored, that means you don't have to worry about it, if the user has permissions he get's the data if he doesn't he won't get it.
And most importantly you are not limited to create, update, you basically can do everything your user has permission to do. So together with minor odoo developments it's very easy to achive complex workflows compared to the very limited cumbersome REST capabilites where you need a lot of development to do basic things.
But of course you can't get Swagger/OpenAPI interface files for JSON-RPC, correct em if I'm wrong.
You could use
https://github.com/OCA/rest-framework than you get swagger/OpenAPI Interface but you still have to create everything yourself.
There are also some commercial Products
https://apps.odoo.com/apps/modules/18.0/muk_rest should be good, but never really used it myself.
As a Bonus: if you only need to get access to data have a look at web_search_read, it's a not well documented feature of odoo which they use heavily inhouse. It's basically graphql for odoo. So you tell him exactly what you need spanning multiple related models and he gives you just that. If you have to do some more complex requirements - you will save yourself a lot of tears and work compared to an REST based approach not speaking of speed as you need for the same request a lot REST requests ...