@vrplatform/api 1.3.1-4565 → 1.3.1-4578

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.
@@ -551,7 +551,7 @@ export interface paths {
551
551
  };
552
552
  get?: never;
553
553
  put?: never;
554
- /** @description Connect an app and create the connection. Provider integrations must return stable account identity. The built-in API app receives server-generated connection identity. */
554
+ /** @description Connect an app and create the connection. OAuth defaults to https://portal.vrplatform.app/callback/ when redirectTo is omitted. The legacy production /callback path is normalized to /callback/. Provider integrations must return stable account identity. The built-in API app receives server-generated connection identity. */
555
555
  post: operations["connectAppConnection"];
556
556
  delete?: never;
557
557
  options?: never;
@@ -585,7 +585,7 @@ export interface paths {
585
585
  };
586
586
  get?: never;
587
587
  put?: never;
588
- /** @description Get a redirect URL to connect an app through OAuth2.0 */
588
+ /** @description Get a redirect URL to connect an app through OAuth2.0. Defaults to https://portal.vrplatform.app/callback/ when redirectTo is omitted. Normalizes the legacy production /callback path to /callback/. */
589
589
  post: operations["connectConnection"];
590
590
  delete?: never;
591
591
  options?: never;
@@ -672,7 +672,7 @@ export interface paths {
672
672
  };
673
673
  get?: never;
674
674
  put?: never;
675
- /** @description Reconnect an existing app connection. The built-in API app preserves its existing server-generated identity. */
675
+ /** @description Reconnect an existing app connection. OAuth defaults to https://portal.vrplatform.app/callback/ when redirectTo is omitted. The legacy production /callback path is normalized to /callback/. The built-in API app preserves its existing server-generated identity. */
676
676
  post: operations["reconnectAppConnection"];
677
677
  delete?: never;
678
678
  options?: never;
@@ -1557,7 +1557,8 @@ export interface paths {
1557
1557
  path?: never;
1558
1558
  cookie?: never;
1559
1559
  };
1560
- get?: never;
1560
+ /** @description List users in one regional data partition with their team memberships and owner accesses. Select the partition with x-data-region. */
1561
+ get: operations["getInternalUsers"];
1561
1562
  put?: never;
1562
1563
  /** @description Create or update a platform user by email, optionally granting an initial team membership. Used by the identity provider signup hooks. A duplicate email belonging to another user is rejected as a user error. */
1563
1564
  post: operations["postInternalUsers"];
@@ -1839,7 +1840,7 @@ export interface paths {
1839
1840
  path?: never;
1840
1841
  cookie?: never;
1841
1842
  };
1842
- /** @description UI bootstrap call: the authenticated user plus the resolved team (embedded-session team, x-team-id header, or the oldest active membership), including membership, owner access, effective feature IDs, issue counts, and frontend setup context. Embedded identities use sub instead of email, so user.email is null for them. */
1843
+ /** @description UI bootstrap call: the authenticated user plus the resolved team (embedded-session team, x-team-id header, or the oldest active membership), including placement, partner managed-team region discovery, membership, owner access, effective feature IDs, issue counts, and frontend setup context. Embedded identities use sub instead of email, so user.email is null for them. */
1843
1844
  get: operations["getMe"];
1844
1845
  put?: never;
1845
1846
  post?: never;
@@ -2245,7 +2246,7 @@ export interface paths {
2245
2246
  path?: never;
2246
2247
  cookie?: never;
2247
2248
  };
2248
- /** @description List members of the partner itself with their child-team memberships */
2249
+ /** @description List members of the partner itself with their partner-team role, status, invitation timestamp, and child-team memberships */
2249
2250
  get: operations["getPartnerMembers"];
2250
2251
  put?: never;
2251
2252
  post?: never;
@@ -2289,6 +2290,23 @@ export interface paths {
2289
2290
  patch?: never;
2290
2291
  trace?: never;
2291
2292
  };
2293
+ "/partner/owner-statements": {
2294
+ parameters: {
2295
+ query?: never;
2296
+ header?: never;
2297
+ path?: never;
2298
+ cookie?: never;
2299
+ };
2300
+ /** @description List VRT teams in one regional partition of the partner portfolio with owner statement counts by status. Supports team-name search, pagination, and ordering by each status count. Select the partition with x-data-region. */
2301
+ get: operations["getPartnerOwnerStatements"];
2302
+ put?: never;
2303
+ post?: never;
2304
+ delete?: never;
2305
+ options?: never;
2306
+ head?: never;
2307
+ patch?: never;
2308
+ trace?: never;
2309
+ };
2292
2310
  "/partner/users": {
2293
2311
  parameters: {
2294
2312
  query?: never;
@@ -2296,7 +2314,7 @@ export interface paths {
2296
2314
  path?: never;
2297
2315
  cookie?: never;
2298
2316
  };
2299
- /** @description List users across the partner portfolio (the partner and all of its teams) with their team memberships and owner accesses */
2317
+ /** @description List child-team users across one regional partition of the partner portfolio with their team memberships and owner accesses. Users who belong to the partner team itself are excluded. Select the partition with x-data-region. */
2300
2318
  get: operations["getPartnerUsers"];
2301
2319
  put?: never;
2302
2320
  post?: never;
@@ -2313,7 +2331,7 @@ export interface paths {
2313
2331
  path?: never;
2314
2332
  cookie?: never;
2315
2333
  };
2316
- /** @description Get a single portfolio user with their memberships across the partner and all of its teams, plus owner accesses */
2334
+ /** @description Get a single portfolio user with memberships and owner accesses from one regional partition. Select the partition with x-data-region. */
2317
2335
  get: operations["getPartnerUser"];
2318
2336
  put?: never;
2319
2337
  post?: never;
@@ -3870,7 +3888,7 @@ export interface paths {
3870
3888
  path?: never;
3871
3889
  cookie?: never;
3872
3890
  };
3873
- /** @description Get List of all Teams */
3891
+ /** @description List accessible teams in one regional data partition. Partner callers can select the partition with x-data-region. */
3874
3892
  get: operations["getTeams"];
3875
3893
  put?: never;
3876
3894
  /** @description Create team */
@@ -3888,7 +3906,7 @@ export interface paths {
3888
3906
  path?: never;
3889
3907
  cookie?: never;
3890
3908
  };
3891
- /** @description List cursor-paginated materialized issue summaries across accessible teams. */
3909
+ /** @description List cursor-paginated materialized issue summaries across accessible teams in one regional data partition. Partner callers can select the partition with x-data-region. */
3892
3910
  get: operations["getTeamsIssues"];
3893
3911
  put?: never;
3894
3912
  post?: never;
@@ -3905,7 +3923,7 @@ export interface paths {
3905
3923
  path?: never;
3906
3924
  cookie?: never;
3907
3925
  };
3908
- /** @description Look up teams by name */
3926
+ /** @description Look up accessible teams by name in one regional data partition. Partner callers can select the partition with x-data-region. */
3909
3927
  get: operations["getTeamsLookup"];
3910
3928
  put?: never;
3911
3929
  post?: never;
@@ -14899,10 +14917,7 @@ export interface operations {
14899
14917
  content: {
14900
14918
  "application/json": {
14901
14919
  appId: string;
14902
- /**
14903
- * Format: uri
14904
- * @default https://portal.vrplatform.app
14905
- */
14920
+ /** Format: uri */
14906
14921
  redirectTo?: string;
14907
14922
  };
14908
14923
  };
@@ -29566,6 +29581,207 @@ export interface operations {
29566
29581
  };
29567
29582
  };
29568
29583
  };
29584
+ getInternalUsers: {
29585
+ parameters: {
29586
+ query?: {
29587
+ /** @description Filter by email, secondary email, first name, last name, or full name */
29588
+ search?: string;
29589
+ limit?: number;
29590
+ page?: number;
29591
+ offset?: number;
29592
+ };
29593
+ header?: {
29594
+ /** @description Selects the regional data partition for this regional collection read. It does not change the authenticated team context. */
29595
+ "x-data-region"?: "ap" | "crunchy" | "eu" | "hostaway" | "us";
29596
+ };
29597
+ path?: never;
29598
+ cookie?: never;
29599
+ };
29600
+ requestBody?: never;
29601
+ responses: {
29602
+ /** @description Successful response */
29603
+ 200: {
29604
+ headers: {
29605
+ [name: string]: unknown;
29606
+ };
29607
+ content: {
29608
+ "application/json": {
29609
+ data: {
29610
+ /** Format: uuid */
29611
+ id: string;
29612
+ firstName: string | null;
29613
+ lastName: string | null;
29614
+ /** Format: email */
29615
+ email: string;
29616
+ secondaryEmails: string[];
29617
+ /** @description User kind (e.g. user, owner) */
29618
+ type?: string | null;
29619
+ lastSeen: string | null;
29620
+ createdAt: string | null;
29621
+ memberships: {
29622
+ /** Format: uuid */
29623
+ teamId: string;
29624
+ teamName: string;
29625
+ role?: string | null;
29626
+ status?: string | null;
29627
+ lastInvitedAt: string | null;
29628
+ }[];
29629
+ ownerAccesses: {
29630
+ /** Format: uuid */
29631
+ teamId: string;
29632
+ contactId: string | null;
29633
+ ownerId: string | null;
29634
+ role?: string | null;
29635
+ /** @description Owner contact name */
29636
+ name?: string | null;
29637
+ }[];
29638
+ }[];
29639
+ pagination: {
29640
+ /** @default 100 */
29641
+ limit: number;
29642
+ /** @default 1 */
29643
+ page: number;
29644
+ total: number;
29645
+ totalPage: number;
29646
+ nextPage?: number;
29647
+ };
29648
+ };
29649
+ };
29650
+ };
29651
+ /** @description Bad request */
29652
+ 400: {
29653
+ headers: {
29654
+ [name: string]: unknown;
29655
+ };
29656
+ content: {
29657
+ "application/json": {
29658
+ code: string;
29659
+ message: string;
29660
+ links?: {
29661
+ docs: string;
29662
+ schema: string;
29663
+ };
29664
+ issues?: {
29665
+ message: string;
29666
+ path?: (string | number)[];
29667
+ schema?: string;
29668
+ }[];
29669
+ context?: unknown;
29670
+ };
29671
+ };
29672
+ };
29673
+ /** @description Unauthorized */
29674
+ 401: {
29675
+ headers: {
29676
+ [name: string]: unknown;
29677
+ };
29678
+ content: {
29679
+ "application/json": {
29680
+ code: string;
29681
+ message: string;
29682
+ links?: {
29683
+ docs: string;
29684
+ schema: string;
29685
+ };
29686
+ issues?: {
29687
+ message: string;
29688
+ path?: (string | number)[];
29689
+ schema?: string;
29690
+ }[];
29691
+ context?: unknown;
29692
+ };
29693
+ };
29694
+ };
29695
+ /** @description Forbidden */
29696
+ 403: {
29697
+ headers: {
29698
+ [name: string]: unknown;
29699
+ };
29700
+ content: {
29701
+ "application/json": {
29702
+ code: string;
29703
+ message: string;
29704
+ links?: {
29705
+ docs: string;
29706
+ schema: string;
29707
+ };
29708
+ issues?: {
29709
+ message: string;
29710
+ path?: (string | number)[];
29711
+ schema?: string;
29712
+ }[];
29713
+ context?: unknown;
29714
+ };
29715
+ };
29716
+ };
29717
+ /** @description Not found */
29718
+ 404: {
29719
+ headers: {
29720
+ [name: string]: unknown;
29721
+ };
29722
+ content: {
29723
+ "application/json": {
29724
+ code: string;
29725
+ message: string;
29726
+ links?: {
29727
+ docs: string;
29728
+ schema: string;
29729
+ };
29730
+ issues?: {
29731
+ message: string;
29732
+ path?: (string | number)[];
29733
+ schema?: string;
29734
+ }[];
29735
+ context?: unknown;
29736
+ };
29737
+ };
29738
+ };
29739
+ /** @description Internal server error */
29740
+ 500: {
29741
+ headers: {
29742
+ [name: string]: unknown;
29743
+ };
29744
+ content: {
29745
+ "application/json": {
29746
+ code: string;
29747
+ message: string;
29748
+ links?: {
29749
+ docs: string;
29750
+ schema: string;
29751
+ };
29752
+ issues?: {
29753
+ message: string;
29754
+ path?: (string | number)[];
29755
+ schema?: string;
29756
+ }[];
29757
+ context?: unknown;
29758
+ };
29759
+ };
29760
+ };
29761
+ /** @description Service unavailable */
29762
+ 503: {
29763
+ headers: {
29764
+ [name: string]: unknown;
29765
+ };
29766
+ content: {
29767
+ "application/json": {
29768
+ code: string;
29769
+ message: string;
29770
+ links?: {
29771
+ docs: string;
29772
+ schema: string;
29773
+ };
29774
+ issues?: {
29775
+ message: string;
29776
+ path?: (string | number)[];
29777
+ schema?: string;
29778
+ }[];
29779
+ context?: unknown;
29780
+ };
29781
+ };
29782
+ };
29783
+ };
29784
+ };
29569
29785
  postInternalUsers: {
29570
29786
  parameters: {
29571
29787
  query?: never;
@@ -35301,6 +35517,10 @@ export interface operations {
35301
35517
  name: string | null;
35302
35518
  slug: string;
35303
35519
  /** @enum {string} */
35520
+ dataRegion: "ap" | "crunchy" | "eu" | "hostaway" | "us";
35521
+ /** Format: uri */
35522
+ apiBaseUrl: string;
35523
+ /** @enum {string} */
35304
35524
  type: "propertyManager" | "partner";
35305
35525
  partnerId: string | null;
35306
35526
  isGeneralLedger: boolean;
@@ -35374,6 +35594,18 @@ export interface operations {
35374
35594
  ownerNeedsReviewId: string | null;
35375
35595
  guideOnboardingStatus: ("skipped" | "completed") | null;
35376
35596
  } | null;
35597
+ partnerContext: {
35598
+ managedTeamRegions: {
35599
+ /** @enum {string} */
35600
+ dataRegion: "ap" | "crunchy" | "eu" | "hostaway" | "us";
35601
+ /** Format: uri */
35602
+ apiBaseUrl: string;
35603
+ counts: {
35604
+ active: number;
35605
+ inactive: number;
35606
+ };
35607
+ }[];
35608
+ } | null;
35377
35609
  };
35378
35610
  };
35379
35611
  };
@@ -39270,6 +39502,10 @@ export interface operations {
39270
39502
  /** Format: email */
39271
39503
  email: string;
39272
39504
  secondaryEmails: string[];
39505
+ /** @enum {string} */
39506
+ role: "admin" | "user";
39507
+ status: ("active" | "inactive" | "unconfirmed") | null;
39508
+ lastInvitedAt: string | null;
39273
39509
  partnerId: string | null;
39274
39510
  name: string | null;
39275
39511
  firstName: string | null;
@@ -39756,6 +39992,198 @@ export interface operations {
39756
39992
  };
39757
39993
  };
39758
39994
  };
39995
+ getPartnerOwnerStatements: {
39996
+ parameters: {
39997
+ query?: {
39998
+ /** @description Filter by team name */
39999
+ search?: string;
40000
+ /** @description Owner statement status count to sort by */
40001
+ sortBy?: "draft" | "inReview" | "published";
40002
+ /** @description Sort direction, defaults to asc */
40003
+ sortDirection?: "asc" | "desc";
40004
+ limit?: number;
40005
+ page?: number;
40006
+ offset?: number;
40007
+ };
40008
+ header?: {
40009
+ /** @description Selects the regional data partition for this regional collection read. It does not change the authenticated team context. */
40010
+ "x-data-region"?: "ap" | "crunchy" | "eu" | "hostaway" | "us";
40011
+ };
40012
+ path?: never;
40013
+ cookie?: never;
40014
+ };
40015
+ requestBody?: never;
40016
+ responses: {
40017
+ /** @description Successful response */
40018
+ 200: {
40019
+ headers: {
40020
+ [name: string]: unknown;
40021
+ };
40022
+ content: {
40023
+ "application/json": {
40024
+ data: {
40025
+ /** Format: uuid */
40026
+ id: string;
40027
+ name: string;
40028
+ logo?: string;
40029
+ /**
40030
+ * Format: date-time
40031
+ * @description Timestamp string with date, time, milliseconds, and timezone.
40032
+ * @example 2024-01-15T12:30:00.000+00:00
40033
+ */
40034
+ createdAt: string;
40035
+ ownerStatements: {
40036
+ draft: number;
40037
+ inReview: number;
40038
+ published: number;
40039
+ };
40040
+ }[];
40041
+ pagination: {
40042
+ /** @default 100 */
40043
+ limit: number;
40044
+ /** @default 1 */
40045
+ page: number;
40046
+ total: number;
40047
+ totalPage: number;
40048
+ nextPage?: number;
40049
+ };
40050
+ };
40051
+ };
40052
+ };
40053
+ /** @description Bad request */
40054
+ 400: {
40055
+ headers: {
40056
+ [name: string]: unknown;
40057
+ };
40058
+ content: {
40059
+ "application/json": {
40060
+ code: string;
40061
+ message: string;
40062
+ links?: {
40063
+ docs: string;
40064
+ schema: string;
40065
+ };
40066
+ issues?: {
40067
+ message: string;
40068
+ path?: (string | number)[];
40069
+ schema?: string;
40070
+ }[];
40071
+ context?: unknown;
40072
+ };
40073
+ };
40074
+ };
40075
+ /** @description Unauthorized */
40076
+ 401: {
40077
+ headers: {
40078
+ [name: string]: unknown;
40079
+ };
40080
+ content: {
40081
+ "application/json": {
40082
+ code: string;
40083
+ message: string;
40084
+ links?: {
40085
+ docs: string;
40086
+ schema: string;
40087
+ };
40088
+ issues?: {
40089
+ message: string;
40090
+ path?: (string | number)[];
40091
+ schema?: string;
40092
+ }[];
40093
+ context?: unknown;
40094
+ };
40095
+ };
40096
+ };
40097
+ /** @description Forbidden */
40098
+ 403: {
40099
+ headers: {
40100
+ [name: string]: unknown;
40101
+ };
40102
+ content: {
40103
+ "application/json": {
40104
+ code: string;
40105
+ message: string;
40106
+ links?: {
40107
+ docs: string;
40108
+ schema: string;
40109
+ };
40110
+ issues?: {
40111
+ message: string;
40112
+ path?: (string | number)[];
40113
+ schema?: string;
40114
+ }[];
40115
+ context?: unknown;
40116
+ };
40117
+ };
40118
+ };
40119
+ /** @description Not found */
40120
+ 404: {
40121
+ headers: {
40122
+ [name: string]: unknown;
40123
+ };
40124
+ content: {
40125
+ "application/json": {
40126
+ code: string;
40127
+ message: string;
40128
+ links?: {
40129
+ docs: string;
40130
+ schema: string;
40131
+ };
40132
+ issues?: {
40133
+ message: string;
40134
+ path?: (string | number)[];
40135
+ schema?: string;
40136
+ }[];
40137
+ context?: unknown;
40138
+ };
40139
+ };
40140
+ };
40141
+ /** @description Internal server error */
40142
+ 500: {
40143
+ headers: {
40144
+ [name: string]: unknown;
40145
+ };
40146
+ content: {
40147
+ "application/json": {
40148
+ code: string;
40149
+ message: string;
40150
+ links?: {
40151
+ docs: string;
40152
+ schema: string;
40153
+ };
40154
+ issues?: {
40155
+ message: string;
40156
+ path?: (string | number)[];
40157
+ schema?: string;
40158
+ }[];
40159
+ context?: unknown;
40160
+ };
40161
+ };
40162
+ };
40163
+ /** @description Service unavailable */
40164
+ 503: {
40165
+ headers: {
40166
+ [name: string]: unknown;
40167
+ };
40168
+ content: {
40169
+ "application/json": {
40170
+ code: string;
40171
+ message: string;
40172
+ links?: {
40173
+ docs: string;
40174
+ schema: string;
40175
+ };
40176
+ issues?: {
40177
+ message: string;
40178
+ path?: (string | number)[];
40179
+ schema?: string;
40180
+ }[];
40181
+ context?: unknown;
40182
+ };
40183
+ };
40184
+ };
40185
+ };
40186
+ };
39759
40187
  getPartnerUsers: {
39760
40188
  parameters: {
39761
40189
  query?: {
@@ -39775,7 +40203,10 @@ export interface operations {
39775
40203
  page?: number;
39776
40204
  offset?: number;
39777
40205
  };
39778
- header?: never;
40206
+ header?: {
40207
+ /** @description Selects the regional data partition for this regional collection read. It does not change the authenticated team context. */
40208
+ "x-data-region"?: "ap" | "crunchy" | "eu" | "hostaway" | "us";
40209
+ };
39779
40210
  path?: never;
39780
40211
  cookie?: never;
39781
40212
  };
@@ -39967,7 +40398,10 @@ export interface operations {
39967
40398
  getPartnerUser: {
39968
40399
  parameters: {
39969
40400
  query?: never;
39970
- header?: never;
40401
+ header?: {
40402
+ /** @description Selects the regional data partition for this regional collection read. It does not change the authenticated team context. */
40403
+ "x-data-region"?: "ap" | "crunchy" | "eu" | "hostaway" | "us";
40404
+ };
39971
40405
  path: {
39972
40406
  id: string;
39973
40407
  };
@@ -77309,7 +77743,10 @@ export interface operations {
77309
77743
  page?: number;
77310
77744
  offset?: number;
77311
77745
  };
77312
- header?: never;
77746
+ header?: {
77747
+ /** @description Selects the regional data partition for this regional collection read. It does not change the authenticated team context. */
77748
+ "x-data-region"?: "ap" | "crunchy" | "eu" | "hostaway" | "us";
77749
+ };
77313
77750
  path?: never;
77314
77751
  cookie?: never;
77315
77752
  };
@@ -78011,7 +78448,10 @@ export interface operations {
78011
78448
  /** @description Opaque pagination cursor returned by a previous response. Pass it back unchanged. */
78012
78449
  cursor?: string;
78013
78450
  };
78014
- header?: never;
78451
+ header?: {
78452
+ /** @description Selects the regional data partition for this regional collection read. It does not change the authenticated team context. */
78453
+ "x-data-region"?: "ap" | "crunchy" | "eu" | "hostaway" | "us";
78454
+ };
78015
78455
  path?: never;
78016
78456
  cookie?: never;
78017
78457
  };
@@ -78863,7 +79303,10 @@ export interface operations {
78863
79303
  page?: number;
78864
79304
  offset?: number;
78865
79305
  };
78866
- header?: never;
79306
+ header?: {
79307
+ /** @description Selects the regional data partition for this regional collection read. It does not change the authenticated team context. */
79308
+ "x-data-region"?: "ap" | "crunchy" | "eu" | "hostaway" | "us";
79309
+ };
78867
79310
  path?: never;
78868
79311
  cookie?: never;
78869
79312
  };