Level2, level3, and full channels now require authentication


Starting from 2023-08-01 we started receiving errors “level2, level3, and full channels now require authentication. Exchange WebSocket Authentication | Coinbase Cloud Failed to subscribe” using wss://ws-feed.pro.coinbase.com and subscribe (level2 channel).

Is it new changes that force authentication for level2?
Previously we didn’t have this problem and all worked perfectly.

Yes, see:


Hey @vladislav.karpovich! Welcome to the forum! We hope your question was answered. If you still have any questions feel free to ask them here. Also @muktupavels thank you for actively helping out the community, we really appreciate it!

Thank you for quick response.

Could you advise on signature generation. It’s not totally clear what it should contain.

Based on the documentation it builds from 4 parameters, but seems like they are for API signature, not for Websocket connection

Could you provide example of how signature should look like for subscribe?

Thank you in advance

timestamp + GET/users/self/verify

We don’t need to pass api-key or passphrase for signature generation, right?
Just timestamp + hardcoded string

// Request
    "type": "subscribe",
    "product_ids": [
    "channels": [
    "signature": "...",
    "key": "...",
    "passphrase": "...",
    "timestamp": "..."

You need to pass same data to websocket subscribe message that you send as headers with REST API. Difference is only in message that is used to generate signature - timestamp + hardcoded string.

Now all is clear, thank you :slightly_smiling_face: