Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Document Notification API V2 #202

Open
Foorack opened this issue Dec 3, 2022 · 10 comments
Open

Document Notification API V2 #202

Foorack opened this issue Dec 3, 2022 · 10 comments
Labels
Priority: Medium Normal priority Type: Undocumented Endpoint Wow! This is new! This is unchartered terrirory and is only recommended by experienced comitters

Comments

@Foorack
Copy link
Member

Foorack commented Dec 3, 2022

Old API: /auth/user/notifications

New API: /notifications

Objects and everything are COMPLETELY different. This is a complete rewrite.

@Foorack
Copy link
Member Author

Foorack commented Dec 3, 2022

/notifications/<not_UUID>/respond

@Foorack
Copy link
Member Author

Foorack commented Dec 3, 2022

Both V1 and V2 share not_ prefix, but are stored in completely separate tables/collections. They are not interchangeable.

@Foorack Foorack added Priority: Medium Normal priority Type: Undocumented Endpoint Wow! This is new! This is unchartered terrirory and is only recommended by experienced comitters labels Dec 3, 2022
@Rexios80
Copy link
Collaborator

Rexios80 commented Dec 3, 2022

Is there a new websocket endpoint as well?

@Foorack
Copy link
Member Author

Foorack commented Dec 3, 2022

@Rexios80 No but it sends new kinds of objects down the websocket IIRC :-)

@Rexios80
Copy link
Collaborator

Rexios80 commented Dec 3, 2022

Are there equivalent objects just with different type strings?

@Foorack
Copy link
Member Author

Foorack commented Dec 3, 2022

What? The Notification objects are completely different. In the Websocket it is indentified by a different type.

@Rexios80
Copy link
Collaborator

Rexios80 commented Dec 3, 2022

I meant equivalent as in they represent the same event. The answer should be yes.

@Rexios80
Copy link
Collaborator

Rexios80 commented Dec 3, 2022

So if I understood it correctly... only the group events are new in the websocket? Everything else is the same?

@Rexios80
Copy link
Collaborator

How do we want to handle this? I see a few options:

  1. Rename the old APIs

    • Old notification APIs become: OldNotificaiton, OldNotificationsApi, etc.
    • New notification APIs are Notification, NoficationsApi, etc.
  2. Name the new notifications APIs something else

    • Old notification APIs remain unchanged
    • New notification APIs are NotificationV2, NotificationsApiV2, etc.
  3. Remove any references to the old APIs and name the new ones the same

If we do decide to keep the old notification APIs around, should we deprecate them?

@SGA-max-faxalv
Copy link

Huh? Just because there is a V2 doesn't mean V1 is deprecated.

Notifications from both V1 and V2 share namespace (a.k.a not_), but a not_ from V1 must be sent to the V1 endpoint, and a V2 notification to a V2 endpoint. VRChat will likely run both in parallel for a very long time, so we definitively need to support both.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Priority: Medium Normal priority Type: Undocumented Endpoint Wow! This is new! This is unchartered terrirory and is only recommended by experienced comitters
Development

No branches or pull requests

3 participants