Skip to main content

Shared Secret JWT Authentication (Tracebuzz)

With Shared Secret JWT Authentication, the CX platform generates a JWT using a secret that is shared with the Deepdesk Backend. Currently only Tracebuzz uses this method; this document uses Tracebuzz as the example.

Process​

  1. On widget load, Tracebuzz generates a JWT and passes it into the Deepdesk SDK.
  2. The Deepdesk SDK calls the Admin /session/jwt endpoint, which validates the token and sets the JWT session cookies.
  3. The access token cookie is then used to authenticate requests to the Backend.

JWT specification​

  • Signing algorithm: HS256
  • Expiry: 24 hours

Example payload​

{
"iat": 1620658801,
"exp": 1620687601,
"identity": {
"account": "<account>",
"user_id": "1234",
"user_name": "John Doe",
"user_email": "john.doe@platform.com"
},
"type": "access"
}
  • identity.account β€” Account code (e.g. vodafoneziggo).
  • identity.user_id β€” Platform user ID.
  • identity.user_name β€” Display name.
  • identity.user_email β€” User email.

Example encoded JWT​

Copy the payload above into the jwt.io debugger with your shared secret to inspect or generate tokens. For example, using the secret your-256-bit-secret produces a JWT like:

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE2MjA2NTg4MDEsImV4cCI6MTYyMDY4NzYwMSwiaWRlbnRpdHkiOnsiYWNjb3VudCI6IjxwbGF0Zm9ybT4iLCJ1c2VyX2lkIjoiMTIzNCIsInVzZXJfbmFtZSI6IkpvaG4gRG9lIiwidXNlcl9lbWFpbCI6ImpvaG4uZG9lQHBsYXRmb3JtLmNvbSJ9LCJ0eXBlIjoiYWNjZXNzIn0.nYuvVHaOI2TirhbTFvCX-086i7ZNM9f_f7YK5SL51P4

See also​