@proxima-nexus/openapi 1.0.0 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (4) hide show
  1. package/CHANGELOG.md +81 -0
  2. package/openapi.json +722 -148
  3. package/openapi.yaml +563 -134
  4. package/package.json +23 -21
package/CHANGELOG.md ADDED
@@ -0,0 +1,81 @@
1
+ # Changelog
2
+
3
+ All notable changes to the Proxima Nexus OpenAPI specification are documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [2.0.1] - 2026-02-04
9
+
10
+ ### Changed
11
+
12
+ #### Connection state enums
13
+
14
+ - **User connections** (`GET /user/{userId}/connections` query filter and connection DTOs): state enum `requested` | `active` | `rejected` | `blocked` → `incoming_request` | `outgoing_request` | `active`.
15
+ - **Event connections** (`GET /event/{eventId}/connections` query filter and connection DTOs): state enum `requested` | `active` | `rejected` | `blocked` → `requested` | `active` | `invited`.
16
+ - **Group connections** (connection DTOs): state enum aligned with the same values as event connections: `incoming_request` | `outgoing_request` | `active` | `requested` | `invited`.
17
+
18
+ #### Connection DTOs (User, Event, Group)
19
+
20
+ - **EntityConnectionDto** and related connection response DTOs: `state` is no longer in `required`; only `type` is required.
21
+ - **type** enum: removed duplicate `admin` and `owner` values from connection type enums.
22
+
23
+ ## [2.0.0] - 2025-01-29
24
+
25
+ ### Breaking changes
26
+
27
+ #### Path and parameter renames
28
+
29
+ - **User connections**
30
+ - `GET/PUT/DELETE /user/{userId}/friends/{friendUserId}` → `PUT/DELETE /user/{userId}/connections/{targetUserId}` (path param `friendUserId` → `targetUserId`)
31
+ - `GET /user/{userId}/friends` → `GET /user/{userId}/connections`
32
+ - **Event connections**
33
+ - `PUT /event/{eventId}/attendees/{userId}` → `PUT /event/{eventId}/connection/{userId}`; DELETE added for removing attendees
34
+ - `GET /event/{eventId}/attendees` → `GET /event/{eventId}/connections`
35
+ - **Group connections**
36
+ - `PUT/DELETE /group/{groupId}/members/{userId}` → `PUT/DELETE /group/{groupId}/connection/{userId}`
37
+ - `GET /group/{groupId}/members` → `GET /group/{groupId}/connections`
38
+
39
+ #### Operation ID renames
40
+
41
+ - `UserController_findOne` → `UserController_get`
42
+ - `UserController_addFriend` → `UserController_putConnection`
43
+ - `UserController_removeFriend` → `UserController_deleteConnection`
44
+ - `UserController_getFriends` → `UserController_getConnections`
45
+ - `EventController_findOne` → `EventController_get`
46
+ - `EventController_addAttendee` → `EventController_addConnection`
47
+ - `EventController_getAttendees` → `EventController_getConnections` (new `EventController_removeConnection` for DELETE)
48
+ - `GroupController_findOne` → `GroupController_get`
49
+ - `GroupController_addMember` → `GroupController_addConnection`
50
+ - `GroupController_removeMember` → `GroupController_removeConnection`
51
+ - `GroupController_getMembers` → `GroupController_getConnections`
52
+
53
+ #### Security
54
+
55
+ - All operations: security scheme `bearer` → `api_key`.
56
+
57
+ #### Request identity: header instead of body
58
+
59
+ - **Requester identity** is no longer sent in request bodies. Use the **`X-Proxima-Nexus-Requester-User-Id`** header on all relevant endpoints (create/update/delete, search, get-by-id, batch, list connections).
60
+ - **Removed** `requesterUserId` from: `CreateEntityDto`, `UpdateUserDto`, `CreateEventDto`, `UpdateEventDto`, `CreateGroupDto`, `UpdateGroupDto`.
61
+
62
+ #### Schema changes
63
+
64
+ - **Removed** `tenantId` from `UserDto`, `EventDto`, and `GroupDto`.
65
+ - **Added** `requesterConnection` (`EntityConnectionDto`) to `UserDto`, `EventDto`, and `GroupDto` for the calling user’s relationship to the entity.
66
+ - **EntityConnectionDto**: Now includes both `state` and `type`. New mutation DTOs: `MutateUserConnectionDto`, `MutateEventEntityConnectionDto`, `MutateGroupEntityConnectionDto` (with `type` only).
67
+ - **User connections**
68
+ - PUT create/update: **Required** request body `MutateUserConnectionDto` with `type` (`friend` | `blocked`).
69
+ - DELETE: **Required** query param `type` (`friend` | `blocked`); success response **200** → **204** (no body).
70
+ - **Event/group connections**
71
+ - PUT: **Required** request body `MutateEventEntityConnectionDto` or `MutateGroupEntityConnectionDto` with `type`.
72
+ - DELETE: **Required** request body (same DTO); success response **200** → **204** (no body).
73
+ - **Connection DTOs** (`UserEntityConnectionDto`, etc.): **Added** required `type`; **added** `blocked` to `state` enum.
74
+ - **Group type**: Now enum `open` | `request` | `invite` (replaces free-form string).
75
+ - **Events**: `CreateEventDto`/`EventDto`/`UpdateEventDto` add `maxNumAttendees`; `EventDto` adds `numAttendees`.
76
+ - **Groups**: `GroupDto` adds `numMembers` and `requesterConnection`.
77
+
78
+ ### Added
79
+
80
+ - Optional `state` and `type` query filters on `GET /user/{userId}/connections`, `GET /event/{eventId}/connections`, and `GET /group/{groupId}/connections`.
81
+ - Explicit 400/401 response descriptions for create and visibility errors where applicable.