@proxima-nexus/openapi 2.5.0 → 2.7.0

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,13 @@ 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.6.0] - 2026-08-12
9
+
10
+ ### Added
11
+
12
+ - **Transfer group ownership**
13
+ - `PUT /group/{groupId}/owner/{userId}`: transfers ownership to an existing admin and demotes the current owner to admin. Only the current owner may call it; the target must already be an active admin.
14
+
8
15
  ## [2.5.0] - 2026-08-12
9
16
 
10
17
  ### Added
package/openapi.json CHANGED
@@ -187,6 +187,33 @@
187
187
  ]
188
188
  }
189
189
  },
190
+ "/user/count": {
191
+ "get": {
192
+ "operationId": "UserController_count",
193
+ "summary": "Count users in the tenant",
194
+ "parameters": [],
195
+ "responses": {
196
+ "200": {
197
+ "description": "Count returned",
198
+ "content": {
199
+ "application/json": {
200
+ "schema": {
201
+ "$ref": "#/components/schemas/EntityCountDto"
202
+ }
203
+ }
204
+ }
205
+ }
206
+ },
207
+ "tags": [
208
+ "user"
209
+ ],
210
+ "security": [
211
+ {
212
+ "api_key": []
213
+ }
214
+ ]
215
+ }
216
+ },
190
217
  "/user/{userId}": {
191
218
  "get": {
192
219
  "operationId": "UserController_get",
@@ -928,6 +955,33 @@
928
955
  ]
929
956
  }
930
957
  },
958
+ "/event/count": {
959
+ "get": {
960
+ "operationId": "EventController_count",
961
+ "summary": "Count events in the tenant",
962
+ "parameters": [],
963
+ "responses": {
964
+ "200": {
965
+ "description": "Count returned",
966
+ "content": {
967
+ "application/json": {
968
+ "schema": {
969
+ "$ref": "#/components/schemas/EntityCountDto"
970
+ }
971
+ }
972
+ }
973
+ }
974
+ },
975
+ "tags": [
976
+ "event"
977
+ ],
978
+ "security": [
979
+ {
980
+ "api_key": []
981
+ }
982
+ ]
983
+ }
984
+ },
931
985
  "/event/{eventId}": {
932
986
  "get": {
933
987
  "operationId": "EventController_get",
@@ -1492,6 +1546,33 @@
1492
1546
  ]
1493
1547
  }
1494
1548
  },
1549
+ "/group/count": {
1550
+ "get": {
1551
+ "operationId": "GroupController_count",
1552
+ "summary": "Count groups in the tenant",
1553
+ "parameters": [],
1554
+ "responses": {
1555
+ "200": {
1556
+ "description": "Count returned",
1557
+ "content": {
1558
+ "application/json": {
1559
+ "schema": {
1560
+ "$ref": "#/components/schemas/EntityCountDto"
1561
+ }
1562
+ }
1563
+ }
1564
+ }
1565
+ },
1566
+ "tags": [
1567
+ "group"
1568
+ ],
1569
+ "security": [
1570
+ {
1571
+ "api_key": []
1572
+ }
1573
+ ]
1574
+ }
1575
+ },
1495
1576
  "/group/{groupId}": {
1496
1577
  "get": {
1497
1578
  "operationId": "GroupController_get",
@@ -1752,6 +1833,62 @@
1752
1833
  ]
1753
1834
  }
1754
1835
  },
1836
+ "/group/{groupId}/owner/{userId}": {
1837
+ "put": {
1838
+ "operationId": "GroupController_transferOwnership",
1839
+ "summary": "Transfer group ownership to an admin",
1840
+ "description": "Transfers ownership to :userId (who must already be an active admin) and demotes the current owner to admin. Only the current owner may perform this.",
1841
+ "parameters": [
1842
+ {
1843
+ "name": "groupId",
1844
+ "required": true,
1845
+ "in": "path",
1846
+ "schema": {
1847
+ "type": "string"
1848
+ }
1849
+ },
1850
+ {
1851
+ "name": "userId",
1852
+ "required": true,
1853
+ "in": "path",
1854
+ "schema": {
1855
+ "type": "string"
1856
+ }
1857
+ },
1858
+ {
1859
+ "name": "X-Proxima-Nexus-Requester-User-Id",
1860
+ "in": "header",
1861
+ "description": "ID of the current owner transferring ownership",
1862
+ "required": true,
1863
+ "schema": {
1864
+ "type": "string"
1865
+ }
1866
+ }
1867
+ ],
1868
+ "responses": {
1869
+ "200": {
1870
+ "description": "Ownership transferred"
1871
+ },
1872
+ "400": {
1873
+ "description": "New owner is not an admin, or transfer target is invalid"
1874
+ },
1875
+ "401": {
1876
+ "description": "Only the group owner can transfer ownership"
1877
+ },
1878
+ "404": {
1879
+ "description": "Group not found"
1880
+ }
1881
+ },
1882
+ "tags": [
1883
+ "group"
1884
+ ],
1885
+ "security": [
1886
+ {
1887
+ "api_key": []
1888
+ }
1889
+ ]
1890
+ }
1891
+ },
1755
1892
  "/group/{groupId}/connections": {
1756
1893
  "get": {
1757
1894
  "operationId": "GroupController_getConnections",
@@ -2533,6 +2670,19 @@
2533
2670
  "birthDate"
2534
2671
  ]
2535
2672
  },
2673
+ "EntityCountDto": {
2674
+ "type": "object",
2675
+ "properties": {
2676
+ "count": {
2677
+ "type": "number",
2678
+ "description": "Number of entities in the tenant",
2679
+ "example": 1234
2680
+ }
2681
+ },
2682
+ "required": [
2683
+ "count"
2684
+ ]
2685
+ },
2536
2686
  "UpdateUserDto": {
2537
2687
  "type": "object",
2538
2688
  "properties": {
package/openapi.yaml CHANGED
@@ -128,6 +128,22 @@ paths:
128
128
  - user
129
129
  security:
130
130
  - api_key: []
131
+ /user/count:
132
+ get:
133
+ operationId: UserController_count
134
+ summary: Count users in the tenant
135
+ parameters: []
136
+ responses:
137
+ '200':
138
+ description: Count returned
139
+ content:
140
+ application/json:
141
+ schema:
142
+ $ref: '#/components/schemas/EntityCountDto'
143
+ tags:
144
+ - user
145
+ security:
146
+ - api_key: []
131
147
  /user/{userId}:
132
148
  get:
133
149
  operationId: UserController_get
@@ -616,6 +632,22 @@ paths:
616
632
  - event
617
633
  security:
618
634
  - api_key: []
635
+ /event/count:
636
+ get:
637
+ operationId: EventController_count
638
+ summary: Count events in the tenant
639
+ parameters: []
640
+ responses:
641
+ '200':
642
+ description: Count returned
643
+ content:
644
+ application/json:
645
+ schema:
646
+ $ref: '#/components/schemas/EntityCountDto'
647
+ tags:
648
+ - event
649
+ security:
650
+ - api_key: []
619
651
  /event/{eventId}:
620
652
  get:
621
653
  operationId: EventController_get
@@ -980,6 +1012,22 @@ paths:
980
1012
  - group
981
1013
  security:
982
1014
  - api_key: []
1015
+ /group/count:
1016
+ get:
1017
+ operationId: GroupController_count
1018
+ summary: Count groups in the tenant
1019
+ parameters: []
1020
+ responses:
1021
+ '200':
1022
+ description: Count returned
1023
+ content:
1024
+ application/json:
1025
+ schema:
1026
+ $ref: '#/components/schemas/EntityCountDto'
1027
+ tags:
1028
+ - group
1029
+ security:
1030
+ - api_key: []
983
1031
  /group/{groupId}:
984
1032
  get:
985
1033
  operationId: GroupController_get
@@ -1140,6 +1188,43 @@ paths:
1140
1188
  - group
1141
1189
  security:
1142
1190
  - api_key: []
1191
+ /group/{groupId}/owner/{userId}:
1192
+ put:
1193
+ operationId: GroupController_transferOwnership
1194
+ summary: Transfer group ownership to an admin
1195
+ description: >-
1196
+ Transfers ownership to :userId (who must already be an active admin) and demotes the current owner to admin.
1197
+ Only the current owner may perform this.
1198
+ parameters:
1199
+ - name: groupId
1200
+ required: true
1201
+ in: path
1202
+ schema:
1203
+ type: string
1204
+ - name: userId
1205
+ required: true
1206
+ in: path
1207
+ schema:
1208
+ type: string
1209
+ - name: X-Proxima-Nexus-Requester-User-Id
1210
+ in: header
1211
+ description: ID of the current owner transferring ownership
1212
+ required: true
1213
+ schema:
1214
+ type: string
1215
+ responses:
1216
+ '200':
1217
+ description: Ownership transferred
1218
+ '400':
1219
+ description: New owner is not an admin, or transfer target is invalid
1220
+ '401':
1221
+ description: Only the group owner can transfer ownership
1222
+ '404':
1223
+ description: Group not found
1224
+ tags:
1225
+ - group
1226
+ security:
1227
+ - api_key: []
1143
1228
  /group/{groupId}/connections:
1144
1229
  get:
1145
1230
  operationId: GroupController_getConnections
@@ -1665,6 +1750,15 @@ components:
1665
1750
  required:
1666
1751
  - gender
1667
1752
  - birthDate
1753
+ EntityCountDto:
1754
+ type: object
1755
+ properties:
1756
+ count:
1757
+ type: number
1758
+ description: Number of entities in the tenant
1759
+ example: 1234
1760
+ required:
1761
+ - count
1668
1762
  UpdateUserDto:
1669
1763
  type: object
1670
1764
  properties:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@proxima-nexus/openapi",
3
- "version": "2.5.0",
3
+ "version": "2.7.0",
4
4
  "description": "OpenAPI specification for Proxima Nexus",
5
5
  "main": "openapi.json",
6
6
  "types": "openapi.json",