The key to secure access to all APIs.
Oauth is the authentication service for API usage and provides secure management of requests and integrations
All the knowledge you need
Here you can find some advice to consider to approach this API. If you prefer, we provide code samples, OAS3 documentation, the ability to try the API live via the Swagger UI or import the entire collection into Postman. We also offer a Sandbox environment where you can experiment with all kinds of requests completely free of charge.
Check your APIkey in the appropriate section before you start.
Create you first Token.
Check your Credit via API.
If you prefer, you can do it by your own using APIs.
Get your stats via API.
- Oas file url https://console.openapi.com/oas/en/oauth.openapi.json
- Fork or import with Postman
- Production domain oauth.openapi.it
- Sandbox domain test.oauth.openapi.it
- Production Scopes 8
-
Sandbox Scopes 8
- GET test.oauth.openapi.it/token
- DELETE test.oauth.openapi.it/token
- POST test.oauth.openapi.it/token
- PUT test.oauth.openapi.it/token
- PATCH test.oauth.openapi.it/token
- GET test.oauth.openapi.it/scopes
- GET test.oauth.openapi.it/credit
- GET test.oauth.openapi.it/counters
Oauth (1.0.0)
Oauth is our essential authentication web service to use our services safely. Through this service you can receive, modify and see essential tokens to access all the rest methods of the bees that we provide.
Check out more at https://developers.openapi.it/services/oauth
Explore all our services at https://developers.openapi.it/services
Receive a token
With this call passing one or more scopes you receive a token that you will need to authenticate with the same scopes you passed. Tokens with expiration dates can be very useful if you want to restrict access to just the small number of scopes that your application/service needs: in this way you can avoid unwanted requests
Authorizations:
Request Body schema: application/json
scopes required | Array of strings List of scopes for which you want to be authorized to use; you can also pass an asterisk as a wild card for all methods or all domains or all endpoints. For example if I want all the methods and endpoints of a given domain '*:comparabili.openapi.it/*'; if I want all the scopes '*:*/*' |
expire | integer Deprecated |
ttl | integer The token lifespan (time-to-live) in seconds, up to one year; if not provided, when creating a token it will be set to expire in 1 year from now. The example shows how to request a token that has a lifespan of 30 days. |
Responses
Response Schema: application/json
scopes | Array of strings A list of the scopes you requested, expanded |
expire | integer A UNIX timestamp, in seconds, rappresenting the expiring date of the token |
token | string Your new token |
success | boolean |
message | string |
error | integer |
Request samples
- Payload
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
- "scopes": [
- "GET:comparabili.openapi.it/tassonomie",
- "GET:imprese.openapi.it/*",
- "*:*.openapi.it/*"
- "expire": 0,
- "ttl": 2592000
Response samples
- 200
- 406
- "scopes": [
- "POST:valutometro.altravia.com/valutazione"
- "expire": 1634223407,
- "token": "5f8711afe4754a532a7a8358",
- "success": true,
- "message": "",
- "error": null
List of all unexpired token
Method that returns all the tokens with their scopes still active for your account
Authorizations:
query Parameters
scope | string Example: scope=GET:imprese.openapi.it/base name of the scope for which to filter the tokens |
Responses
Response Schema: application/json
Array of objects | |
success | boolean |
message | string |
error | integer |
Request samples
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET"); curl_easy_setopt(hnd, CURLOPT_URL, "https://oauth.openapi.it/token?scope=SOME_STRING_VALUE"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "Authorization: Basic REPLACE_BASIC_AUTH"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
Response samples
- 200
- "data": [
- {
- "scopes": [
- "POST:videoid.altravia.com/videoId"
- "expire": 1603268553,
- "token": "5daebc49568fa1398c55186d"
- {
- "scopes": [
- "POST:videoid.altravia.com/request"
- "expire": 1604049864,
- "token": "5dbaa848568fa113ad2e7fcf"
- {
- "scopes": [
- "GET:videoid.altravia.com/request"
- "expire": 1604050325,
- "token": "5dbaaa15568fa113ad2e7fd1"
- "success": true,
- "message": "",
- "error": null
Finds a specific token
Method that returns the token you passed in the path
Authorizations:
path Parameters
token required | string Example: 5f8041e42efdfc468b6e60ea requested token |
Responses
Response Schema: application/json
Array of objects | |
success | boolean |
message | string |
error | integer |
Request samples
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET"); curl_easy_setopt(hnd, CURLOPT_URL, "https://oauth.openapi.it/token/5f8041e42efdfc468b6e60ea"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "Authorization: Basic REPLACE_BASIC_AUTH"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
Response samples
- 200
- 402
- "data": [
- {
- "scopes": [
- "GET:imprese.openapi.it/base",
- "GET:imprese.openapi.it/advance"
- "expire": 1627139406,
- "token": "5f0efd20568fa12c575182f0"
- "success": true,
- "message": "",
- "error": null
Update the entire token object
Method that allows you to modify the entire token object by passing it new ones or the same reference scopes with a new expiration
Please note that the TTL option is not available for this method.
Authorizations:
path Parameters
token required | string Example: 5f8041e42efdfc468b6e60ea requested token |
Request Body schema: application/json
scopes required | Array of strings List of scopes for which you want to be authorized to use; you can also pass an asterisk as a wild card for all methods or all domains or all endpoints. For example if I want all the methods and endpoints of a given domain '*:comparabili.openapi.it/*'; if I want all the scopes '*:*/*' |
expire | integer An expiration date in expressed as a UNIX timestamp in seconds. If not set, the date will be set one year from now |
Responses
Response Schema: application/json
Array of objects | |
success | boolean |
message | string |
error | integer |
Request samples
- Payload
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
- "scopes": [
- "GET:comparabili.openapi.it/tassonomie",
- "GET:imprese.openapi.it/*",
- "*:*.openapi.it/*"
- "expire": 1660640780
Response samples
- 200
- 403
- 404
- 406
- "data": [
- {
- "scopes": [
- "GET:comparabili.openapi.it/tassonomie"
- "expire": 1583942471,
- "token": "5f0efd20568fa12c575182f0"
- "success": true,
- "message": "",
- "error": null
Update part of token object
Method that allows you to modify individual fields of the token object by passing it new ones or the same reference scopes or a new expiration
Authorizations:
path Parameters
token required | string Example: 5f8041e42efdfc468b6e60ea requested token |
Request Body schema: application/json
scopes required | Array of strings List of scopes for which you want to be authorized to use; you can also pass an asterisk as a wild card for all methods or all domains or all endpoints. For example if I want all the methods and endpoints of a given domain '*:comparabili.openapi.it/*'; if I want all the scopes '*:*/*' |
expire | integer Deprecated |
ttl | integer The token lifespan (time-to-live) in seconds, up to one year; if not provided, when creating a token it will be set to expire in 1 year from now. The example shows how to request a token that has a lifespan of 30 days. |
Responses
Response Schema: application/json
Array of objects | |
success | boolean |
message | string |
error | integer |
Request samples
- Payload
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
- "scopes": [
- "GET:comparabili.openapi.it/tassonomie",
- "GET:imprese.openapi.it/*",
- "*:*.openapi.it/*"
- "expire": 0,
- "ttl": 2592000
Response samples
- 200
- 403
- 404
- 406
- "data": [
- {
- "scopes": [
- "GET:comparabili.openapi.it/tassonomie"
- "expire": 1583942471,
- "token": "5f0efd20568fa12c575182f0"
- "success": true,
- "message": "",
- "error": null
Delete a specific token
Method that allows you to delete a token object from your account
Authorizations:
path Parameters
token required | string Example: 5f8041e42efdfc468b6e60ea requested token |
Responses
Response Schema: application/json
success | boolean |
message | string |
error | integer |
Request samples
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "DELETE"); curl_easy_setopt(hnd, CURLOPT_URL, "https://oauth.openapi.it/token/5f8041e42efdfc468b6e60ea"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "Authorization: Basic REPLACE_BASIC_AUTH"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
Response samples
- 200
- 403
- 404
- "message": "1 deleted token",
- "success": true,
- "error": null
List of all scopes
Method that returns the list of all scopes for which you have requested the token and therefore associated with your account
Authorizations:
Responses
Response Schema: application/json
data | Array of strings |
success | boolean |
message | string |
error | integer |
Request samples
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET"); curl_easy_setopt(hnd, CURLOPT_URL, "https://oauth.openapi.it/scopes"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "Authorization: Basic REPLACE_BASIC_AUTH"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
Response samples
- 200
- "data": [
- "POST:ws.pagasubito.it/pay",
- "GET:ws.pagasubito.it/pay",
- "GET:fiori.altravia.com/date_available",
- "GET:fiori.altravia.com/countries",
- "GET:fiori.altravia.com/products",
- "POST:fiori.altravia.com/order",
- "GET:fiori.altravia.com/order",
- "GET:fiori.altravia.com/categories",
- "GET:fiori.altravia.com/shipment_date",
- "GET:splitpayment.altravia.com/root",
- "POST:videoid.altravia.com/request",
- "GET:videoid.altravia.com/request",
- "GET:visengine2.altravia.com/visure",
- "POST:visengine2.altravia.com/richiesta",
- "PUT:visengine2.altravia.com/richiesta",
- "GET:visengine2.altravia.com/richiesta",
- "GET:visengine2.altravia.com/documento",
- "GET:imprese.openapi.it/base",
- "GET:imprese.openapi.it/advance",
- "GET:imprese.openapi.it/closed",
- "GET:imprese.openapi.it/gruppoiva",
- "GET:imprese.openapi.it/pec",
- "GET:ws.pecmassiva.com/send",
- "POST:ws.pecmassiva.com/send",
- "GET:europeanvat.altravia.com/companies",
- "GET:ws.marchetemporali.com/availability",
- "GET:ws.marchetemporali.com/marche",
- "POST:ws.marchetemporali.com/check_lotto",
- "POST:ws.marchetemporali.com/marca",
- "POST:ws.marchetemporali.com/verifica",
- "POST:ws.marchetemporali.com/analisi",
- "GET:comuni.openapi.it/cap",
- "GET:comuni.openapi.it/istat",
- "GET:comuni.openapi.it/regioni",
- "GET:comuni.openapi.it/province",
- "POST:geocoding.realgest.it/geocode",
- "POST:geocoding.realgest.it/reverse",
- "GET:comuni.openapi.it/catastale",
- "GET:ws.ufficiopostale.com/dug",
- "GET:ws.ufficiopostale.com/raccomandate",
- "POST:ws.ufficiopostale.com/raccomandate",
- "PATCH:ws.ufficiopostale.com/raccomandate",
- "DELETE:ws.ufficiopostale.com/raccomandate",
- "GET:comuni.openapi.it/match",
- "POST:ws.firmadigitale.com/richiesta",
- "GET:ws.firmadigitale.com/richiesta",
- "GET:valutometro.altravia.com/immobili",
- "GET:valutometro.altravia.com/contratti",
- "GET:ws.firmadigitale.com/prodotti",
- "POST:valutometro.altravia.com/quotazione",
- "POST:valutometro.altravia.com/indirizzo",
- "POST:valutometro.altravia.com/valutazione"
- "success": true,
- "message": "",
- "error": null
Your Openapi credit
Method that returns your remaining Openapi credit
Authorizations:
Responses
Response Schema: application/json
object | |
success | boolean |
message | string |
error | integer |
Request samples
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET"); curl_easy_setopt(hnd, CURLOPT_URL, "https://oauth.openapi.it/credit"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "Authorization: Basic REPLACE_BASIC_AUTH"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
Response samples
- 200
- 404
- "data": {
- "credit": 423.38
- "success": true,
- "message": "",
- "error": null
Your overall use
Get your usage stats by scope
Authorizations:
Responses
Response Schema: application/json
object | |
success | boolean |
message | string |
error | integer |
Request samples
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET"); curl_easy_setopt(hnd, CURLOPT_URL, "https://oauth.openapi.it/counters/total"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "Authorization: Basic REPLACE_BASIC_AUTH"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
Response samples
- 200
- "data": {
- "GET:europeanvat.openapi.it/companies": {
- "counter": 14,
- "paid": 0,
- "limit": 1500
- "POST:compravenditeimmobiliari.openapi.it/search": {
- "counter": 100,
- "paid": 90,
- "limit": 10
- "success": true,
- "message": "",
- "error": null
Usage stats for a specific day
Get your usage stats by scope
Authorizations:
path Parameters
token required | string Example: 2022-01-01 The requested date, in YYYY-MM-DD format. Months and days should be with leading zeros. |
Responses
Response Schema: application/json
object | |
success | boolean |
message | string |
error | integer |
Request samples
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET"); curl_easy_setopt(hnd, CURLOPT_URL, "https://oauth.openapi.it/counters/day/%7Bday%7D"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "Authorization: Basic REPLACE_BASIC_AUTH"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
Response samples
- 200
- 404
- "data": {
- "GET:europeanvat.openapi.it/companies": {
- "counter": 14,
- "paid": 0,
- "limit": 1500
- "POST:compravenditeimmobiliari.openapi.it/search": {
- "counter": 100,
- "paid": 90,
- "limit": 10
- "success": true,
- "message": "",
- "error": null
Usage stats for a specific month
Get your usage stats by scope
Authorizations:
path Parameters
token required | string Example: 2022-01 The requested date, in YYYY-MM format. Months should be with leading zeros. |
Responses
Response Schema: application/json
object | |
success | boolean |
message | string |
error | integer |
Request samples
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET"); curl_easy_setopt(hnd, CURLOPT_URL, "https://oauth.openapi.it/counters/month/%7Bmonth%7D"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "Authorization: Basic REPLACE_BASIC_AUTH"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
Response samples
- 200
- 404
- "data": {
- "GET:europeanvat.openapi.it/companies": {
- "counter": 14,
- "paid": 0,
- "limit": 1500
- "POST:compravenditeimmobiliari.openapi.it/search": {
- "counter": 100,
- "paid": 90,
- "limit": 10
- "success": true,
- "message": "",
- "error": null
Usage stats for a specific year
Get your usage stats by scope
Authorizations:
path Parameters
token required | string Example: 2022 The requested date, in YYYY format. |
Responses
Response Schema: application/json
object | |
success | boolean |
message | string |
error | integer |
Request samples
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET"); curl_easy_setopt(hnd, CURLOPT_URL, "https://oauth.openapi.it/counters/year/%7Byear%7D"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "Authorization: Basic REPLACE_BASIC_AUTH"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
Response samples
- 200
- 404
- "data": {
- "GET:europeanvat.openapi.it/companies": {
- "counter": 14,
- "paid": 0,
- "limit": 1500
- "POST:compravenditeimmobiliari.openapi.it/search": {
- "counter": 100,
- "paid": 90,
- "limit": 10
- "success": true,
- "message": "",
- "error": null