Mostrare i suoi animali sul suo sito web (web service)

AllevatoreRifugio

Ha già un sito internet per il suo allevamento o il suo rifugio e vuole presentarvi i suoi animali senza inserirli due volte? Il web service degli animali è un indirizzo web che restituisce le informazioni pubbliche dei suoi animali in formato JSON, un formato leggibile dai siti internet. Il suo sito le legge a ogni visita e le mostra come preferisce: lei aggiorna gli animali nell'applicazione e il suo sito si aggiorna da solo.

È disponibile per gli spazi Allevatore e Rifugio. Se il suo rifugio offre anche una pensione, vengono condivisi solo gli animali del rifugio: gli animali affidati dai clienti della pensione non lo sono mai. Uno spazio solo pensione non ha animali da condividere.

Attivare il web service

  1. Apra il menu laterale, sezione Organizzazione > Impostazioni.
  2. Tocchi la riga Pagina pubblica e sito.
  3. Nella scheda I tuoi animali sul tuo sito web, attivi Consenti il web service degli animali.

L'impostazione viene salvata subito: compare l'indirizzo del web service con il pulsante Copia l'indirizzo, seguito da un esempio pronto da incollare in una pagina del suo sito e dal pulsante Copia l'esempio. Trasmetta l'uno o l'altro alla persona che si occupa del suo sito.

Il web service è disattivato per impostazione predefinita. È indipendente dal suo sito Son Espace Santé: funziona anche se quest'ultimo è disattivato (i link alle sue pagine pubbliche sono allora vuoti).

Veda anche Pagina pubblica e sito: se non ha un sito internet, quello fornito da Son Espace Santé presenta già i suoi animali, senza alcun codice.

Cosa viene condiviso, e cosa mai

Il web service condivide solo ciò che un visitatore vede già sulla sua pagina pubblica.

PerInformazioni condivise
Tutti gli animaliNome, specie, razza, sesso, data di nascita, descrizione, foto principale, ultimo peso, iscrizione LOF e conferma, test genetici. Una galleria di foto tratta dalle pubblicazioni pubbliche del diario dell'animale (al massimo 12 foto per animale).
AllevatoreDisponibilità del maschio da monta e condizioni di monta (solo se il maschio è indicato come disponibile). Le cucciolate in corso, con i loro cuccioli e il loro stato (disponibile, prenotato, venduto).
RifugioStato (adottabile, in stallo, prenotato), categoria, storia, carattere, compatibilità con altri animali e bambini, profilo dell'adottante ideale, morsi e uso della museruola.
Mai condivisi: numero di microchip, passaporto, salute, identità della famiglia affidataria, posizione nel rifugio, commenti interni, etichette, pubblicazioni del diario non pubbliche.

Non compaiono nell'elenco nemmeno gli animali nascosti o archiviati e, per un rifugio, gli animali in quarantena o non visibili sulla pagina pubblica.

Per il suo webmaster

Questa parte si rivolge alla persona che realizza il suo sito internet.

L'indirizzo

L'applicazione mostra l'indirizzo esatto del suo web service. Ha la forma https://server.sonespacesante.com/fr/organization/ws_public/<ID>/PublicAnimals/, dove <ID> è il numero della sua organizzazione. Sostituisca fr con en, de, it, es o pt per ottenere i nomi delle specie in un'altra lingua.

Parametri facoltativi, da aggiungere dopo l'indirizzo (?species=…&litters=all):

  • species=<code>: solo gli animali di una specie, indicata dal suo codice (il campo species.code della risposta).
  • litters=all: include anche le cucciolate concluse; per impostazione predefinita vengono restituite solo le cucciolate in corso.
  • lang=<code>: lingua dei nomi delle specie, al posto di quella dell'indirizzo.

Utilizzo

  • L'indirizzo si richiama direttamente dal browser dei visitatori, da qualsiasi sito: nessuna chiave, nessun accesso, nessun server intermedio necessario.
  • Le risposte sono conservate in cache per 5 minuti: una modifica fatta nell'applicazione può richiedere fino a 5 minuti per comparire.
  • Ogni visitatore è limitato a 90 chiamate al minuto, più che sufficienti per una visualizzazione normale.
  • Se il web service non è attivato, l'indirizzo risponde con un errore 403 e il codice PublicApiDisabled. Se l'organizzazione non esiste, risponde con un errore 404 e il codice OrganizationNotFound.
  • Gli indirizzi delle foto (photo, photos[].url) sono stabili e reindirizzano all'immagine: li usi così come sono in <img src>. Non copi l'indirizzo verso cui reindirizzano: scade dopo un'ora.

Esempio di risposta

Risposta abbreviata, per un allevamento:

{
  "success": true, "version": 1, "generatedAt": "2026-10-04T13:00:00Z",
  "organization": {"id": 12, "name": "…", "types": ["breeder"], "logo": "https://…",
                   "city": "Lyon", "publicUrl": "https://apps.sonespacesante.com/elevage/…-12"},
  "count": 1,
  "animals": [{
    "id": 345, "activity": "breeder", "name": "Rex",
    "species": {"code": "…", "name": "Chien"}, "race": "Berger australien",
    "gender": "m", "birthday": "2022-01-01", "isDead": false, "description": "…",
    "photo": "https://…", "photos": [{"url": "https://…", "date": "2026-09-01"}],
    "weight": {"value": 24.5, "unit": "kg", "date": "2026-09-01"},
    "publicUrl": "https://…/345", "isLOF": true, "isConfirmed": true, "geneticTests": "",
    "breeder": {"isStud": true, "stud": {"fee": 800, "terms": "…"}}
  }],
  "litters": [{
    "id": 8, "name": "Rex x Luna 2026", "year": 2026, "matingDate": "2026-07-01",
    "birthDate": null, "expectedBirthDate": "2026-09-02", "description": "…", "isClosed": false,
    "father": {"id": 345, "name": "Rex", "race": "…", "photo": "https://…"},
    "mother": {…},
    "counts": {"total": 6, "available": 3, "reserved": 2, "sold": 1},
    "puppies": [{"id": 901, "name": "Bleu", "gender": "m", "birthday": "2026-09-02", "race": "…",
                 "color": "#3366ff", "photo": "https://…", "photos": [], "status": "available"}]
  }]
}

Per un rifugio, ogni animale ha un blocco refuge al posto del blocco breeder:

"refuge": {
  "status": "ADOPTABLE" | "FOSTER" | "RESERVED" | null, "statusSince": "…",
  "adoptionAvailable": true, "category": {"name": "…", "color": "…"} | null,
  "history": "…", "character": "…", "agreements": "…", "adoptingProfile": "…",
  "biting": false, "muzzle": false
}

Lo stato di un cucciolo (status) vale available (disponibile), reserved (prenotato) o sold (venduto). Quello di un animale del rifugio vale ADOPTABLE (adottabile), FOSTER (in stallo) o RESERVED (prenotato).

Esempio di visualizzazione

È l'esempio proposto dal pulsante Copia l'esempio: mostra la foto, il nome e la descrizione di ogni animale. Sostituisca l'indirizzo con il suo.

<div id="animals"></div>
<script>
fetch('https://server.sonespacesante.com/fr/organization/ws_public/<ID>/PublicAnimals/')
  .then(r => r.json())
  .then(data => {
    const list = document.getElementById('animals');
    data.animals.forEach(a => {
      const card = document.createElement('div');
      if (a.photo) {
        const img = document.createElement('img');
        img.src = a.photo; img.alt = a.name; img.width = 200;
        card.appendChild(img);
      }
      const name = document.createElement('h3');
      name.textContent = a.name;
      const text = document.createElement('p');
      text.textContent = a.description;
      card.append(name, text);
      list.appendChild(card);
    });
  });
</script>

I testi sono inseriti con textContent, mai con innerHTML: è la buona pratica per mostrare senza rischi testi provenienti da altre fonti.

Domande frequenti

Ho modificato un animale, ma il mio sito mostra ancora la vecchia versione.

Le informazioni sono conservate in memoria per 5 minuti: attenda qualche minuto, poi ricarichi la pagina del suo sito.

Come interrompere la condivisione?

Disattivi Consenti il web service degli animali in Impostazioni > Pagina pubblica e sito (la modifica viene salvata subito). L'indirizzo smette di restituire i suoi animali al più tardi 5 minuti dopo.

Posso non mostrare un animale in particolare?

Sì: lo nasconda o lo archivi. Per un rifugio, può anche togliere la spunta alla sua visibilità sulla pagina pubblica nella sua scheda.