In questa guida vedremo come sfruttare le REST API di WooCommerce per effettuare la sincronizzazione remota degli ordini e dei prodotti con un gestionale realizzato in NodeJS e MongoDB.
Requisiti per attivare le REST API
Il primo requisito per l'attivazione delle REST API è l'utilizzo dei pretty permalinks sul sito dove risiede lo store. Senza questo tipo di permalink non è possibile utilizzare gli endpoint delle REST API.
Il secondo requisito è l'utilizzo di SSL con certificati validi. I certificati self-signed o l'assenza di SSL generano un errore 401 su ciascun endpoint delle API, sia in lettura che in scrittura.
Attivare le REST API
Rechiamoci nella dashboard della nostra installazione di WordPress e abilitiamo le REST API in WooCommerce → API:
Otteniamo le credenziali (consumer key e consumer secret) creando una nuova chiave:
Testiamo infine gli endpoint delle API usando un client come Postman:
Come funzionano le REST API
Le API sono strutturate in modo tale che a ciascun endpoint corrisponda un'azione diversa a seconda del verbo HTTP usato (GET
o POST
).
Nel nostro esempio con Postman, l'endpoint /wp-json/wc/v2/products/
può essere scomposto come segue:
/wp-json
: il mount point delle REST API di WordPress./wc
: il mount point delle REST API di WooCommerce./v2
: la versione delle REST API di WooCommerce in uso./products
: l'azione associata all'endpoint.
A ciascun URL vanno ovviamente aggiunti i parametri consumer_key
e consumer_secret
impostati in precedenza dato che le REST API di WooCommerce
sono autenticate. L'output restituito è in formato JSON.
A cosa servono le REST API
Le REST API di WooCommerce soppiantano le precedenti API XML-RPC di WordPress per permettere a siti Internet, Web app, applicativi Desktop e mobile di gestire da remoto uno store realizzato con WooCommerce.
Usando JSON come formato d'interscambio non solo si velocizzano le transazioni, ma si permette ad un numero maggiore di client di accedere da remoto a WooCommerce per gestire prodotti, ordini, tassonomie, attributi e utenti.
Conclusione
Abbiamo descritto la procedura necessaria per abilitare le REST API di WooCommerce e analizzato come sono strutturati gli URL degli endpoint delle API. Nei prossimi capitoli vedremo come implementare il nostro sistema gestionale in NodeJS e MongoDB.