@proxima-nexus/openapi 2.2.0 → 2.3.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.
package/CHANGELOG.md CHANGED
@@ -5,6 +5,26 @@ All notable changes to the Proxima Nexus OpenAPI specification are documented in
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [2.3.1] - 2026-03-04
9
+
10
+ ### Changed
11
+
12
+ - **Connection types**
13
+ - Added `associated_group` to connection `type` enums across event, group, and event-series connection DTOs and related responses, so clients can distinguish when a group is linked to an event or series as an associated organizer rather than just an attendee/admin/owner.
14
+ - `GetEventsDto` and other connection-type-based filters now accept `associated_group` as a valid value.
15
+
16
+ ## [2.3.0] - 2026-03-04
17
+
18
+ ### Added
19
+
20
+ - **Group event series**
21
+ - `GET /group/{groupId}/event-series`: list event series associated with a group, returned as `EventSeriesEntityConnectionDto` objects (including connection `type`, `state`, and `seriesId`).
22
+ - **Event series batch lookup**
23
+ - `POST /event-series/batch`: fetch multiple event series in a single call using `GetEventSeriesDto.seriesIds`.
24
+ - **Schemas**
25
+ - `EventSeriesEntityConnectionDto`: describes a user/group connection to an event series (timestamps, connection `type`/`state`, and `seriesId`).
26
+ - `GetEventSeriesDto`: request body for batch series lookup by IDs.
27
+
8
28
  ## [2.2.0] - 2026-03-02
9
29
 
10
30
  ### Added
package/openapi.json CHANGED
@@ -1169,7 +1169,8 @@
1169
1169
  "enum": [
1170
1170
  "attendee",
1171
1171
  "admin",
1172
- "owner"
1172
+ "owner",
1173
+ "associated_group"
1173
1174
  ]
1174
1175
  }
1175
1176
  }
@@ -1867,6 +1868,45 @@
1867
1868
  ]
1868
1869
  }
1869
1870
  },
1871
+ "/group/{groupId}/event-series": {
1872
+ "get": {
1873
+ "operationId": "GroupController_getEventSeries",
1874
+ "summary": "Get event series of a group",
1875
+ "parameters": [
1876
+ {
1877
+ "name": "groupId",
1878
+ "required": true,
1879
+ "in": "path",
1880
+ "schema": {
1881
+ "type": "string"
1882
+ }
1883
+ }
1884
+ ],
1885
+ "responses": {
1886
+ "200": {
1887
+ "description": "Event series returned",
1888
+ "content": {
1889
+ "application/json": {
1890
+ "schema": {
1891
+ "type": "array",
1892
+ "items": {
1893
+ "$ref": "#/components/schemas/EventSeriesEntityConnectionDto"
1894
+ }
1895
+ }
1896
+ }
1897
+ }
1898
+ }
1899
+ },
1900
+ "tags": [
1901
+ "group"
1902
+ ],
1903
+ "security": [
1904
+ {
1905
+ "api_key": []
1906
+ }
1907
+ ]
1908
+ }
1909
+ },
1870
1910
  "/group/batch": {
1871
1911
  "post": {
1872
1912
  "operationId": "GroupController_getBatch",
@@ -2113,6 +2153,46 @@
2113
2153
  ]
2114
2154
  }
2115
2155
  },
2156
+ "/event-series/batch": {
2157
+ "post": {
2158
+ "operationId": "EventSeriesController_getBatch",
2159
+ "summary": "Get a batch of event series by IDs",
2160
+ "parameters": [],
2161
+ "requestBody": {
2162
+ "required": true,
2163
+ "content": {
2164
+ "application/json": {
2165
+ "schema": {
2166
+ "$ref": "#/components/schemas/GetEventSeriesDto"
2167
+ }
2168
+ }
2169
+ }
2170
+ },
2171
+ "responses": {
2172
+ "200": {
2173
+ "description": "Event series returned",
2174
+ "content": {
2175
+ "application/json": {
2176
+ "schema": {
2177
+ "type": "array",
2178
+ "items": {
2179
+ "$ref": "#/components/schemas/EventSeriesDto"
2180
+ }
2181
+ }
2182
+ }
2183
+ }
2184
+ }
2185
+ },
2186
+ "tags": [
2187
+ "event-series"
2188
+ ],
2189
+ "security": [
2190
+ {
2191
+ "api_key": []
2192
+ }
2193
+ ]
2194
+ }
2195
+ },
2116
2196
  "/event-series/{seriesId}/events": {
2117
2197
  "get": {
2118
2198
  "operationId": "EventSeriesController_getInstances",
@@ -2311,6 +2391,7 @@
2311
2391
  "attendee",
2312
2392
  "admin",
2313
2393
  "owner",
2394
+ "associated_group",
2314
2395
  "member",
2315
2396
  "friend",
2316
2397
  "blocked",
@@ -2508,6 +2589,7 @@
2508
2589
  "attendee",
2509
2590
  "admin",
2510
2591
  "owner",
2592
+ "associated_group",
2511
2593
  "member",
2512
2594
  "friend",
2513
2595
  "blocked",
@@ -2575,6 +2657,7 @@
2575
2657
  "attendee",
2576
2658
  "admin",
2577
2659
  "owner",
2660
+ "associated_group",
2578
2661
  "member",
2579
2662
  "friend",
2580
2663
  "blocked",
@@ -2623,6 +2706,7 @@
2623
2706
  "attendee",
2624
2707
  "admin",
2625
2708
  "owner",
2709
+ "associated_group",
2626
2710
  "member",
2627
2711
  "friend",
2628
2712
  "blocked",
@@ -2912,7 +2996,8 @@
2912
2996
  "enum": [
2913
2997
  "attendee",
2914
2998
  "admin",
2915
- "owner"
2999
+ "owner",
3000
+ "associated_group"
2916
3001
  ]
2917
3002
  }
2918
3003
  },
@@ -3162,6 +3247,55 @@
3162
3247
  "type"
3163
3248
  ]
3164
3249
  },
3250
+ "EventSeriesEntityConnectionDto": {
3251
+ "type": "object",
3252
+ "properties": {
3253
+ "createdAt": {
3254
+ "type": "string",
3255
+ "description": "Date/time the connection was created (ISO string)",
3256
+ "example": "2024-05-01T12:34:56.789Z"
3257
+ },
3258
+ "updatedAt": {
3259
+ "type": "string",
3260
+ "description": "Date/time the connection was last updated (ISO string)",
3261
+ "example": "2024-05-02T12:34:56.789Z"
3262
+ },
3263
+ "type": {
3264
+ "type": "string",
3265
+ "description": "Connection type",
3266
+ "enum": [
3267
+ "attendee",
3268
+ "admin",
3269
+ "owner",
3270
+ "associated_group",
3271
+ "member",
3272
+ "friend",
3273
+ "blocked",
3274
+ "none"
3275
+ ]
3276
+ },
3277
+ "state": {
3278
+ "type": "string",
3279
+ "description": "Connection state",
3280
+ "enum": [
3281
+ "incoming_request",
3282
+ "outgoing_request",
3283
+ "active",
3284
+ "requested",
3285
+ "invited"
3286
+ ]
3287
+ },
3288
+ "seriesId": {
3289
+ "type": "string",
3290
+ "description": "Event series ID",
3291
+ "example": "series-123"
3292
+ }
3293
+ },
3294
+ "required": [
3295
+ "type",
3296
+ "seriesId"
3297
+ ]
3298
+ },
3165
3299
  "GetGroupsDto": {
3166
3300
  "type": "object",
3167
3301
  "properties": {
@@ -3448,6 +3582,25 @@
3448
3582
  "example": 50
3449
3583
  }
3450
3584
  }
3585
+ },
3586
+ "GetEventSeriesDto": {
3587
+ "type": "object",
3588
+ "properties": {
3589
+ "seriesIds": {
3590
+ "description": "The IDs of the event series",
3591
+ "example": [
3592
+ "series-123",
3593
+ "series-456"
3594
+ ],
3595
+ "type": "array",
3596
+ "items": {
3597
+ "type": "string"
3598
+ }
3599
+ }
3600
+ },
3601
+ "required": [
3602
+ "seriesIds"
3603
+ ]
3451
3604
  }
3452
3605
  }
3453
3606
  }
package/openapi.yaml CHANGED
@@ -771,6 +771,7 @@ paths:
771
771
  - attendee
772
772
  - admin
773
773
  - owner
774
+ - associated_group
774
775
  - name: X-Proxima-Nexus-Requester-User-Id
775
776
  in: header
776
777
  description: >-
@@ -1216,6 +1217,29 @@ paths:
1216
1217
  - group
1217
1218
  security:
1218
1219
  - api_key: []
1220
+ /group/{groupId}/event-series:
1221
+ get:
1222
+ operationId: GroupController_getEventSeries
1223
+ summary: Get event series of a group
1224
+ parameters:
1225
+ - name: groupId
1226
+ required: true
1227
+ in: path
1228
+ schema:
1229
+ type: string
1230
+ responses:
1231
+ '200':
1232
+ description: Event series returned
1233
+ content:
1234
+ application/json:
1235
+ schema:
1236
+ type: array
1237
+ items:
1238
+ $ref: '#/components/schemas/EventSeriesEntityConnectionDto'
1239
+ tags:
1240
+ - group
1241
+ security:
1242
+ - api_key: []
1219
1243
  /group/batch:
1220
1244
  post:
1221
1245
  operationId: GroupController_getBatch
@@ -1372,6 +1396,30 @@ paths:
1372
1396
  - event-series
1373
1397
  security:
1374
1398
  - api_key: []
1399
+ /event-series/batch:
1400
+ post:
1401
+ operationId: EventSeriesController_getBatch
1402
+ summary: Get a batch of event series by IDs
1403
+ parameters: []
1404
+ requestBody:
1405
+ required: true
1406
+ content:
1407
+ application/json:
1408
+ schema:
1409
+ $ref: '#/components/schemas/GetEventSeriesDto'
1410
+ responses:
1411
+ '200':
1412
+ description: Event series returned
1413
+ content:
1414
+ application/json:
1415
+ schema:
1416
+ type: array
1417
+ items:
1418
+ $ref: '#/components/schemas/EventSeriesDto'
1419
+ tags:
1420
+ - event-series
1421
+ security:
1422
+ - api_key: []
1375
1423
  /event-series/{seriesId}/events:
1376
1424
  get:
1377
1425
  operationId: EventSeriesController_getInstances
@@ -1517,6 +1565,7 @@ components:
1517
1565
  - attendee
1518
1566
  - admin
1519
1567
  - owner
1568
+ - associated_group
1520
1569
  - member
1521
1570
  - friend
1522
1571
  - blocked
@@ -1661,6 +1710,7 @@ components:
1661
1710
  - attendee
1662
1711
  - admin
1663
1712
  - owner
1713
+ - associated_group
1664
1714
  - member
1665
1715
  - friend
1666
1716
  - blocked
@@ -1712,6 +1762,7 @@ components:
1712
1762
  - attendee
1713
1763
  - admin
1714
1764
  - owner
1765
+ - associated_group
1715
1766
  - member
1716
1767
  - friend
1717
1768
  - blocked
@@ -1750,6 +1801,7 @@ components:
1750
1801
  - attendee
1751
1802
  - admin
1752
1803
  - owner
1804
+ - associated_group
1753
1805
  - member
1754
1806
  - friend
1755
1807
  - blocked
@@ -1967,6 +2019,7 @@ components:
1967
2019
  - attendee
1968
2020
  - admin
1969
2021
  - owner
2022
+ - associated_group
1970
2023
  required:
1971
2024
  - type
1972
2025
  GetEventsDto:
@@ -2143,6 +2196,45 @@ components:
2143
2196
  - owner
2144
2197
  required:
2145
2198
  - type
2199
+ EventSeriesEntityConnectionDto:
2200
+ type: object
2201
+ properties:
2202
+ createdAt:
2203
+ type: string
2204
+ description: Date/time the connection was created (ISO string)
2205
+ example: '2024-05-01T12:34:56.789Z'
2206
+ updatedAt:
2207
+ type: string
2208
+ description: Date/time the connection was last updated (ISO string)
2209
+ example: '2024-05-02T12:34:56.789Z'
2210
+ type:
2211
+ type: string
2212
+ description: Connection type
2213
+ enum:
2214
+ - attendee
2215
+ - admin
2216
+ - owner
2217
+ - associated_group
2218
+ - member
2219
+ - friend
2220
+ - blocked
2221
+ - none
2222
+ state:
2223
+ type: string
2224
+ description: Connection state
2225
+ enum:
2226
+ - incoming_request
2227
+ - outgoing_request
2228
+ - active
2229
+ - requested
2230
+ - invited
2231
+ seriesId:
2232
+ type: string
2233
+ description: Event series ID
2234
+ example: series-123
2235
+ required:
2236
+ - type
2237
+ - seriesId
2146
2238
  GetGroupsDto:
2147
2239
  type: object
2148
2240
  properties:
@@ -2357,3 +2449,16 @@ components:
2357
2449
  type: number
2358
2450
  description: Maximum number of attendees per event instance (null = unlimited)
2359
2451
  example: 50
2452
+ GetEventSeriesDto:
2453
+ type: object
2454
+ properties:
2455
+ seriesIds:
2456
+ description: The IDs of the event series
2457
+ example:
2458
+ - series-123
2459
+ - series-456
2460
+ type: array
2461
+ items:
2462
+ type: string
2463
+ required:
2464
+ - seriesIds
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@proxima-nexus/openapi",
3
- "version": "2.2.0",
3
+ "version": "2.3.1",
4
4
  "description": "OpenAPI specification for Proxima Nexus",
5
5
  "main": "openapi.json",
6
6
  "types": "openapi.json",