Wave Up Developers FR

Quickstart

A first result in the sandbox, in five steps.

1. Get your test key

Wave Up gives you a wu_sk_test_… key when your account is opened. Keep it on your server: it must never appear in a browser, a mobile app or a code repository.

2. Create a session from your server

curl https://sandbox.api.waveup-health.fr/v1/sessions \
  -H "Authorization: Bearer $WAVEUP_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "zone": "thoracolumbar_spine",
    "patient": { "sex": "female", "height_cm": 165, "weight_kg": 62 },
    "locale": "fr-FR",
    "modules": ["cartography", "questionnaires"],
    "reference": "DOSSIER-2026-0042"
  }'

201 response:

{
  "id": "ses_UZaJ3Siu2NWNtHBxRaicid4T",
  "client_token": "eyJhbGciOiJFZERTQSJ9…",
  "embed_url": "https://sandbox.embed.waveup-health.fr/v1/s/ses_UZaJ3Siu2NWNtHBxRaicid4T",
  "expires_at": "2026-10-04T14:32:00.000Z"
}

Pass only client_token to your page.

3. Display the component

<div id="evaluation"></div>
<script src="https://embed.waveup-health.fr/v1/sdk.js"></script>
<script>
  const ev = WaveUp.mount('#evaluation', { clientToken: '…' })
  ev.on('completed', ({ sessionId }) => fetch(`/my-server/assessments/${sessionId}/retrieve`, { method: 'POST' }))
</script>

The SDK infers the environment from the token: nothing else to configure.

4. Retrieve the result

On the completed event, your server calls:

curl https://sandbox.api.waveup-health.fr/v1/sessions/ses_UZaJ3Siu2NWNtHBxRaicid4T/result \
  -H "Authorization: Bearer $WAVEUP_KEY"

The result is deleted 15 minutes after it is first retrieved (or 15 minutes after sending). The co-branded PDF is at report_url, with the same key.

5. Keep the resume bundle

Store resume_bundle in your patient record. It lets you reopen the assessment or regenerate the PDF in another language, although Wave Up has kept nothing.