Aller au contenu principal
NSFNSF Platform

Documentation API

Guide d'integration NSF API v1

Base URLs, authentification, pagination, idempotence, webhooks signes, erreurs standardisees et exemples SDK-ready.

ISO-readyANTIC-awareHMAC webhooks

Getting Started

  1. Creer un compte SociosPhone puis ouvrir la console developpeur.
  2. Creer une application sandbox.
  3. Generer une cle API sandbox affichee une seule fois.
  4. Tester les endpoints publics et webhooks.
  5. Demander la validation production pour les APIs partenaires.

Authentification

Public API Key
Partner API Key
OAuth/JWT utilisateur
Admin JWT
Webhook signature secret
curl https://www.nsfcm.com/api/v1/explorer/clubs \
  -H "X-API-Key: nsf_test_xxxxx"

Format standard reponse API

// Succes
{
  "success": true,
  "data": {},
  "meta": {}
}

// Erreur
{
  "success": false,
  "error": {
    "code": "INVALID_REQUEST",
    "message": "Description lisible",
    "details": {}
  }
}

Pagination standard

GET /api/v1/explorer/clubs?page=1&limit=20

{
  "meta": {
    "page": 1,
    "limit": 20,
    "total": 100,
    "totalPages": 5
  }
}

Rate limiting

  • Public: 60 req/min
  • Partner: 600 req/min
  • Admin: selon role
  • Sensitive APIs: strict

Idempotency

Pour paiements, dons, wallet, SSURS et cartes recharge, envoyez toujours un UUID dans l'en-tete suivant.

Idempotency-Key: 6f8b9d7c-2e9d-4d62-b0e8-9cc0f0f7f531

Webhooks signes

Chaque webhook inclut `X-NSF-Signature` et `X-NSF-Timestamp`. Rejetez les timestamps de plus de 5 minutes.

donation.successdonation.failedpayment.successpayment.failedrecharge_card.redeemedtombola.winner_selectedps3.prediction_evaluatedssurs.contribution_successwallet.transaction_created
import crypto from "crypto"

function verifyNsfWebhook(secret, timestamp, payload, signature) {
  const expected = crypto
    .createHmac("sha256", secret)
    .update(`${timestamp}.${payload}`)
    .digest("hex")
  return crypto.timingSafeEqual(Buffer.from(expected), Buffer.from(signature))
}

Table des erreurs

INVALID_REQUEST
UNAUTHORIZED
FORBIDDEN
NOT_FOUND
RATE_LIMITED
INTERNAL_ERROR

Endpoints documentes

public - Public

Catalogue API

Liste officielle des endpoints v1 exposes par www.nsfcm.com.

GET /api/v1/catalog
// Scopes: explorer:read

public - Public API Key optionnelle

Explorer Sportif API

Recherche clubs, federations, selections, legendes et donnees sportives publiques.

GET /api/v1/explorer/search?q=canon
// Scopes: explorer:read

public - Public API Key optionnelle

Clubs API

Liste des clubs et fiche detaillee par slug.

GET /api/v1/clubs/:slug
// Scopes: clubs:read

public - Public API Key optionnelle

Federations API

Liste des federations et fiche detaillee par slug.

GET /api/v1/federations/:slug
// Scopes: federations:read

public - Public API Key optionnelle

Legendes API

Profils anciennes gloires, carrieres, trophees et highlights.

GET /api/v1/legends/:slug
// Scopes: legends:read

public - Public API Key optionnelle

Transparence API

Vue publique des volumes collectes et redistributions NSF.

GET /api/v1/transparency/overview
// Scopes: transparency:read

public - Public API Key optionnelle

PS3 Public API

Matchs ouverts, details match, classement et recompenses.

GET /api/v1/ps3/matches
// Scopes: ps3:read

public - Public API Key optionnelle

TCI Public API

Campagnes entreprises actives et lots publics.

GET /api/v1/tci/campaigns
// Scopes: tci:read

public - Public API Key optionnelle

Rewards Catalog API

Catalogue recompenses et avantages disponibles.

GET /api/v1/rewards
// Scopes: rewards:read

public - Public API Key optionnelle

SSURS Fund Public API

Fonds sante communautaires agreges par club.

GET /api/v1/ssurs/funds/clubs/:clubId
// Scopes: ssurs:public

public - Public API Key optionnelle

SociosPhone Public Profile API

Profil public limite par SociosPhone ID sans donnees sensibles.

GET /api/v1/sociosphones/public/:id
// Scopes: sociosphone:public

public - Public API Key optionnelle + anti-bruteforce

CRS Card Validation API

Validation protegee des cartes de recharge supporters.

POST /api/v1/recharge-cards/validate
// Scopes: crs:validate

user - Cookie session / JWT utilisateur

SociosPhone Private API

Endpoint utilisateur protege par session NSF.

GET /api/v1/sociosphones/me
// Scopes: sociosphone:me

private - Cookie session / JWT utilisateur

Wallet Balance API

Point d'entree protege pour solde wallet et ledger utilisateur.

GET /api/v1/wallet/me
// Scopes: wallet:read

private - Cookie session / JWT utilisateur

Scoring & Risk API

Point d'entree protege pour scores utilisateur.

GET /api/v1/scores/me
// Scopes: scores:read

partner - Partner API Key

SSURS Quote API

Simulation du complement SSURS sur un don.

POST /api/v1/ssurs/quote
// Scopes: ssurs:quote

partner - Partner API Key

Investor API

Projections, produits investisseurs et leads sandbox.

GET /api/v1/invest/projections
// Scopes: invest:read

partner - Partner API Key + Idempotency-Key

Donations Partner API

Creation sandbox d'intentions de dons partenaires.

POST /api/v1/donations/intents
// Scopes: donations:partner

private - Partner API Key forte + signatures

NSF Pay API

Creation sandbox de paiement et reference de suivi.

POST /api/v1/payments
// Scopes: payments:write