Elune Connections

Documentació de la Partner API

Referència completa per integrar notificacions Apple Wallet i Google Wallet

1

1. Autenticació

Totes les peticions a l'API han d'incloure la teva API Key a la capçalera de la petició.

Inclou aquesta capçalera a totes les peticions a l'API.
Capçaleres
X-API-Key: your_api_key_here
Mantén la teva API Key segura. No l'exposis en codi de frontend ni en repositoris públics.

Com obtenir la teva API Key

Inicia sessió al panell d'Elune i ves a Configuració → API. Allà trobaràs la teva clau i podràs regenerar-la si cal.

2

2. Registre d'empresa

Registra una nova empresa al sistema. Aquest és el primer pas per començar a usar l'API.

POST /register

Crea un nou compte d'empresa amb les dades proporcionades.

Camp Tipus Obligatori Descripció
namestringSíNom de l'empresa
emailstringSíCorreu electrònic de contacte
phonestringNoTelèfon de contacte
addressstringNoAdreça física
Exemple de petició
{
  "name": "Mi Empresa SL",
  "email": "info@miempresa.com",
  "phone": "+34 600 000 000"
}
Exemple de resposta
{
  "id": "emp_a1b2c3d4",
  "api_key": "ek_live_xxxxxxxxxxxxxxxxxxxx",
  "created_at": "2025-01-15T10:30:00Z"
}
Desa la API key retornada — es mostra una sola vegada i no es pot recuperar.
3

3. Configuració

Actualitza la configuració visual de la teva empresa i els valors per defecte de les notificacions.

PUT /company/config

Actualitza la configuració de l'empresa. S'accepten actualitzacions parcials — envia només els camps que vols canviar.

Camp Tipus Obligatori Descripció
colorstringNoColor primari de marca (hex)
textColorstringNoColor del text (hex)
notificationTitlestringNoTítol de notificació per defecte
pointsNamestringNoNom personalitzat per als teus punts (p. ex. Estrelles, Crèdits)
rewardsEnabledbooleanNoActiva / desactiva el catàleg de recompenses
Els colors de marca s'apliquen a totes les targetes emeses per la teva empresa llevat que es sobreescriguin a nivell de model de targeta.
4

4. Models de targeta (Referencias)

Els models de targeta defineixen la plantilla visual per a un conjunt de targetes emeses. Pots tenir múltiples models, cadascun amb el seu propi disseny.

POST /refs

Crea un nou model de targeta amb la configuració indicada.

Camp Tipus Obligatori Descripció
namestringSíNom del model
descriptionstringNoDescripció curta (visible a la targeta)
colorstringNoColor primari alternatiu (hex)
textColorstringNoColor del text alternatiu (hex)
pointsEnabledbooleanNoActiva punts de fidelitat per a aquest model
rewardsEnabledbooleanNoActiva el catàleg de recompenses per a aquest model
GET /refs

Retorna tots els models de targeta de la teva empresa.

PUT /refs/:refId

Actualitza un model de targeta específic. S'accepten actualitzacions parcials.

DELETE /refs/:refId

Elimina un model de targeta. Les targetes ja emeses no es veuen afectades.

5

5. Targetes emeses

Les targetes emeses són els passis digitals reals que els usuaris finals afegeixen a Apple Wallet o Google Wallet.

POST /cards

Crea una nova targeta per a un usuari final. Retorna la URL del passi per compartir o incrustar en un codi QR.

Camp Tipus Obligatori Descripció
refIdstringSíID del model de targeta
userNamestringSíNom complet de l'usuari
userEmailstringNoCorreu electrònic de l'usuari
userPhonestringNoTelèfon de l'usuari
customFieldsobjectNoObjecte clau-valor amb camps addicionals de l'usuari
Exemple de resposta
{
  "cardId": "card_x9y8z7w6",
  "passUrl": "https://wallet.eluneconnections.com/pass/card_x9y8z7w6",
  "qrCode": "data:image/png;base64,..."
}
GET /cards/:cardId

Obté l'estat actual d'una targeta específica.

GET /cards

Llista totes les targetes emeses per la teva empresa o un model específic.

DELETE /cards/:cardId

Desactiva una targeta. L'usuari deixarà de rebre notificacions.

6

6. Notificacions

Envia notificacions push directament a la pantalla de bloqueig dels usuaris que tenen la teva targeta.

POST /notifications/bulk

Envia una notificació a totes les targetes, o filtra per valors de camp.

Camp Tipus Obligatori Descripció
titlestringSíTítol de la notificació (màx. 40 caràcters)
bodystringSíCos de la notificació (màx. 120 caràcters)
filtersarrayNoArray d'objectes de filtre per arribar a un subconjunt de targetes
Cada objecte de filtre té tres claus: field (string), operator (eq / neq / contains / gt / lt) i value.
Exemple de petició
{
  "title": "¡Oferta especial!",
  "body": "2x1 en cafés hoy hasta las 18h ☕",
  "filters": [
    { "field": "city", "operator": "eq", "value": "Barcelona" }
  ]
}
POST /notifications/single

Envia una notificació a una targeta específica pel seu ID.

Camp Tipus Obligatori Descripció
cardIdstringSíID de la targeta destinatària
titlestringSíTítol de la notificació (màx. 40 caràcters)
bodystringSíCos de la notificació (màx. 120 caràcters)
7

7. Punts i recompenses

Gestiona els punts de fidelitat i un catàleg de recompenses canviables.

POST /points/add

Afegeix punts a una o més targetes (massiu o individual).

Camp Tipus Obligatori Descripció
pointsnumberSíNombre de punts a afegir o restar
conceptstringNoEtiqueta de transacció visible a l'historial
cardIdstringNoID de la targeta destinatària
filtersarrayNoArray d'objectes de filtre per arribar a un subconjunt de targetes
POST /points/subtract

Resta punts d'una o més targetes.

GET /points/balance/:cardId

Obté el saldo de punts actual d'una targeta.

GET /points/history/:cardId

Obté l'historial complet de transaccions d'una targeta.

POST /rewards/redeem

Canvia una recompensa per a una targeta.

Camp Tipus Obligatori Descripció
cardIdstringSíID de la targeta destinatària
rewardIdstringSíID de la recompensa a canviar
GET /rewards

Llista totes les recompenses del teu catàleg.

8

8. Webhooks

Registra un endpoint HTTPS per rebre esdeveniments en temps real d'Elune.

POST /webhooks

Registra una URL de webhook per a un tipus d'esdeveniment específic.

Camp Tipus Obligatori Descripció
urlstringSíLa teva URL d'endpoint HTTPS
eventstringSíTipus d'esdeveniment al qual subscriure's

Tipus d'esdeveniments disponibles

card.addedS'ha afegit una nova targeta a un wallet
card.deletedS'ha eliminat una targeta d'un wallet
points.addedS'han afegit punts a una targeta
reward.redeemedUn usuari ha canviat una recompensa
Els payloads de webhook estan signats amb HMAC-SHA256. Verifica la capçalera X-Elune-Signature per garantir l'autenticitat.
Si el teu endpoint retorna un estat diferent de 2xx, Elune ho reintentarà fins a 3 vegades amb retard exponencial.
GET /webhooks

Llista tots els webhooks registrats per a la teva empresa.

DELETE /webhooks/:webhookId

Elimina un registre de webhook.

9

9. Imatges

Puja logotips i banners per a la teva empresa o models de targeta específics.

POST /images/logo

Puja per URL Proporciona una URL d'imatge accessible públicament.

Puja per fitxer Puja el fitxer d'imatge directament.

POST /images/banner

Proporciona una URL d'imatge accessible públicament.

Ordre de resolució del banner
  1. Banner del model
  2. Banner de l'empresa
  3. Banner per defecte

Pots fixar un banner a nivell d'empresa com a fallback i sobreescriure'l per model de targeta.

10

10. Gestió d'errors

Totes les respostes d'error segueixen un format consistent.

Exemple de resposta
{
  "error": "invalid_api_key",
  "message": "The provided API key is missing or invalid.",
  "statusCode": 401
}
Codis HTTP habituals Descripció
200Petició correcta
201Recurs creat
202Acceptat per a processament asíncron
400Petició invàlida
401API Key absent o invàlida
403Quota superada
404Recurs no trobat
500Error intern del servidor
11

Referència ràpida — Tots els endpoints

Mètode Ruta Auth Descripció
POST/registerCapRegistrar empresa
PUT/company/configAPI KeyActualitzar configuració
POST/images/bannerAPI KeyPujar banner
POST/images/logoAPI KeyPujar logotip
POST/refsAPI KeyCrear model de targeta
GET/refsAPI KeyLlistar models
PUT/refs/:refIdAPI KeyActualitzar model
DELETE/refs/:refIdAPI KeyEliminar model
POST/cardsAPI KeyCrear targeta
GET/cards/:cardIdAPI KeyEstat de targeta
GET/cardsAPI KeyLlistar targetes
DELETE/cards/:cardIdAPI KeyDesactivar targeta
POST/notifications/bulkAPI KeyNotificació massiva
POST/notifications/singleAPI KeyNotificació individual
POST/points/addAPI KeyAfegir punts
POST/points/subtractAPI KeyRestar punts
GET/points/balance/:idAPI KeySaldo
GET/points/history/:idAPI KeyHistorial
POST/rewards/redeemAPI KeyCanviar
GET/rewardsAPI KeyRecompenses
POST/webhooksAPI KeyRegistrar empresa
GET/webhooksAPI KeyLlistar models
DELETE/webhooks/:idAPI KeyEliminar model
POST/register
Registrar empresa
PUT/company/config
Actualitzar configuració
POST/refs
Crear model de targeta
POST/cards
Crear targeta
POST/notifications/bulk
Notificació massiva
POST/notifications/single
Notificació individual
POST/points/add
Afegir punts
POST/rewards/redeem
Canviar