@meshery/schemas 1.3.61 → 1.3.63

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 (30) hide show
  1. package/dist/cloudApi.d.mts +12864 -13987
  2. package/dist/cloudApi.d.ts +12864 -13987
  3. package/dist/cloudApi.js +1 -1
  4. package/dist/cloudApi.mjs +1 -1
  5. package/dist/constructs/v1beta1/organization_smtp/OrganizationSmtp.d.ts +8 -8
  6. package/dist/constructs/v1beta1/organization_smtp/OrganizationSmtpSchema.js +2 -2
  7. package/dist/constructs/v1beta1/organization_smtp/OrganizationSmtpSchema.mjs +2 -2
  8. package/dist/constructs/v1beta2/core/Core.d.ts +9 -0
  9. package/dist/constructs/v1beta2/core/CoreSchema.js +1 -1
  10. package/dist/constructs/v1beta2/core/CoreSchema.mjs +1 -1
  11. package/dist/constructs/v1beta3/academy/Academy.d.ts +18 -0
  12. package/dist/constructs/v1beta3/academy/AcademySchema.js +2 -2
  13. package/dist/constructs/v1beta3/academy/AcademySchema.mjs +2 -2
  14. package/dist/constructs/v1beta3/blowhorn_profile/BlowhornProfile.d.ts +47 -131
  15. package/dist/constructs/v1beta3/blowhorn_profile/BlowhornProfileSchema.js +35 -39
  16. package/dist/constructs/v1beta3/blowhorn_profile/BlowhornProfileSchema.mjs +35 -39
  17. package/dist/constructs/v1beta3/design/Design.d.ts +4014 -2033
  18. package/dist/constructs/v1beta3/design/DesignSchema.js +24 -4
  19. package/dist/constructs/v1beta3/design/DesignSchema.mjs +24 -4
  20. package/dist/constructs/v1beta3/event/Event.d.ts +57 -0
  21. package/dist/constructs/v1beta3/event/EventSchema.js +1 -1
  22. package/dist/constructs/v1beta3/event/EventSchema.mjs +1 -1
  23. package/dist/constructs/v1beta3/invitation/Invitation.d.ts +66 -0
  24. package/dist/constructs/v1beta3/invitation/InvitationSchema.js +1 -1
  25. package/dist/constructs/v1beta3/invitation/InvitationSchema.mjs +1 -1
  26. package/dist/permissions.d.mts +1 -211
  27. package/dist/permissions.d.ts +1 -211
  28. package/dist/permissions.js +1 -1
  29. package/dist/permissions.mjs +1 -1
  30. package/package.json +1 -1
@@ -31,26 +31,6 @@ export interface paths {
31
31
  patch?: never;
32
32
  trace?: never;
33
33
  };
34
- "/api/blowhorn/profiles/by-subject": {
35
- parameters: {
36
- query?: never;
37
- header?: never;
38
- path?: never;
39
- cookie?: never;
40
- };
41
- /**
42
- * Get Blowhorn profile by subject
43
- * @description Returns the Blowhorn profile keyed by the given subject within the organization of the authenticated session.
44
- */
45
- get: operations["getBlowhornProfileBySubject"];
46
- put?: never;
47
- post?: never;
48
- delete?: never;
49
- options?: never;
50
- head?: never;
51
- patch?: never;
52
- trace?: never;
53
- };
54
34
  "/api/blowhorn/profiles/{blowhornProfileId}": {
55
35
  parameters: {
56
36
  query?: never;
@@ -82,11 +62,11 @@ export interface components {
82
62
  schemas: {
83
63
  /**
84
64
  * Blowhorn Profile Schema
85
- * @description Server-returned Blowhorn profile as persisted by meshery-cloud. A profile
86
- * binds a subject to a slug with free-form attributes, scoped by
87
- * organization and keyed by subject. Subject-to-slug resolution stays
88
- * Blowhorn-side; organization, user and team identity are reused from the
89
- * existing constructs. Profiles soft-delete, and renames are guarded
65
+ * @description Server-returned Blowhorn profile settings as persisted by meshery-cloud.
66
+ * A profile holds only the Blowhorn-specific slug and free-form attributes
67
+ * for an existing Layer5 user, scoped by organization and keyed by userId.
68
+ * User identity and organization membership are reused from the existing
69
+ * identity constructs and are not re-modelled here. Profiles soft-delete, and renames are guarded
90
70
  * server-side.
91
71
  */
92
72
  BlowhornProfile: {
@@ -100,8 +80,11 @@ export interface components {
100
80
  * @description Owning organization ID. Derived from the authenticated session, never client-settable.
101
81
  */
102
82
  organizationId: string;
103
- /** @description Subject the profile is keyed by. */
104
- subject: string;
83
+ /**
84
+ * Format: uuid
85
+ * @description ID of the existing Layer5 user the profile settings belong to.
86
+ */
87
+ userId: string;
105
88
  /** @description Unique slug for the profile within the organization. Renames are guarded server-side. */
106
89
  slug: string;
107
90
  /** @description Free-form profile attributes, stored as a JSON blob. */
@@ -134,8 +117,11 @@ export interface components {
134
117
  * @description Existing Blowhorn profile ID for updates; omit on create.
135
118
  */
136
119
  id?: string;
137
- /** @description Subject the profile is keyed by. */
138
- subject: string;
120
+ /**
121
+ * Format: uuid
122
+ * @description ID of the existing Layer5 user the profile settings belong to.
123
+ */
124
+ userId: string;
139
125
  /** @description Unique slug for the profile within the organization. Renames are guarded server-side. */
140
126
  slug: string;
141
127
  /** @description Free-form profile attributes, stored as a JSON blob. */
@@ -161,8 +147,11 @@ export interface components {
161
147
  * @description Owning organization ID. Derived from the authenticated session, never client-settable.
162
148
  */
163
149
  organizationId: string;
164
- /** @description Subject the profile is keyed by. */
165
- subject: string;
150
+ /**
151
+ * Format: uuid
152
+ * @description ID of the existing Layer5 user the profile settings belong to.
153
+ */
154
+ userId: string;
166
155
  /** @description Unique slug for the profile within the organization. Renames are guarded server-side. */
167
156
  slug: string;
168
157
  /** @description Free-form profile attributes, stored as a JSON blob. */
@@ -296,8 +285,11 @@ export interface operations {
296
285
  * @description Owning organization ID. Derived from the authenticated session, never client-settable.
297
286
  */
298
287
  organizationId: string;
299
- /** @description Subject the profile is keyed by. */
300
- subject: string;
288
+ /**
289
+ * Format: uuid
290
+ * @description ID of the existing Layer5 user the profile settings belong to.
291
+ */
292
+ userId: string;
301
293
  /** @description Unique slug for the profile within the organization. Renames are guarded server-side. */
302
294
  slug: string;
303
295
  /** @description Free-form profile attributes, stored as a JSON blob. */
@@ -356,8 +348,11 @@ export interface operations {
356
348
  * @description Existing Blowhorn profile ID for updates; omit on create.
357
349
  */
358
350
  id?: string;
359
- /** @description Subject the profile is keyed by. */
360
- subject: string;
351
+ /**
352
+ * Format: uuid
353
+ * @description ID of the existing Layer5 user the profile settings belong to.
354
+ */
355
+ userId: string;
361
356
  /** @description Unique slug for the profile within the organization. Renames are guarded server-side. */
362
357
  slug: string;
363
358
  /** @description Free-form profile attributes, stored as a JSON blob. */
@@ -383,90 +378,11 @@ export interface operations {
383
378
  * @description Owning organization ID. Derived from the authenticated session, never client-settable.
384
379
  */
385
380
  organizationId: string;
386
- /** @description Subject the profile is keyed by. */
387
- subject: string;
388
- /** @description Unique slug for the profile within the organization. Renames are guarded server-side. */
389
- slug: string;
390
- /** @description Free-form profile attributes, stored as a JSON blob. */
391
- attributes?: Record<string, never>;
392
- /**
393
- * Format: date-time
394
- * @description Timestamp of Blowhorn profile creation.
395
- */
396
- createdAt: string;
397
- /**
398
- * Format: date-time
399
- * @description Timestamp of last Blowhorn profile modification.
400
- */
401
- updatedAt: string;
402
- /**
403
- * Format: date-time
404
- * @description Timestamp when the Blowhorn profile was soft-deleted.
405
- */
406
- deletedAt?: string | null;
407
- };
408
- };
409
- };
410
- /** @description Invalid request body or request param */
411
- 400: {
412
- headers: {
413
- [name: string]: unknown;
414
- };
415
- content: {
416
- "text/plain": string;
417
- };
418
- };
419
- /** @description Expired JWT token used or insufficient privilege */
420
- 401: {
421
- headers: {
422
- [name: string]: unknown;
423
- };
424
- content: {
425
- "text/plain": string;
426
- };
427
- };
428
- /** @description Internal server error */
429
- 500: {
430
- headers: {
431
- [name: string]: unknown;
432
- };
433
- content: {
434
- "text/plain": string;
435
- };
436
- };
437
- };
438
- };
439
- getBlowhornProfileBySubject: {
440
- parameters: {
441
- query: {
442
- /** @description Subject the profile is keyed by. */
443
- subject: string;
444
- };
445
- header?: never;
446
- path?: never;
447
- cookie?: never;
448
- };
449
- requestBody?: never;
450
- responses: {
451
- /** @description Blowhorn profile response */
452
- 200: {
453
- headers: {
454
- [name: string]: unknown;
455
- };
456
- content: {
457
- "application/json": {
458
381
  /**
459
382
  * Format: uuid
460
- * @description Server-generated Blowhorn profile ID.
383
+ * @description ID of the existing Layer5 user the profile settings belong to.
461
384
  */
462
- id: string;
463
- /**
464
- * Format: uuid
465
- * @description Owning organization ID. Derived from the authenticated session, never client-settable.
466
- */
467
- organizationId: string;
468
- /** @description Subject the profile is keyed by. */
469
- subject: string;
385
+ userId: string;
470
386
  /** @description Unique slug for the profile within the organization. Renames are guarded server-side. */
471
387
  slug: string;
472
388
  /** @description Free-form profile attributes, stored as a JSON blob. */
@@ -507,15 +423,6 @@ export interface operations {
507
423
  "text/plain": string;
508
424
  };
509
425
  };
510
- /** @description Result not found */
511
- 404: {
512
- headers: {
513
- [name: string]: unknown;
514
- };
515
- content: {
516
- "text/plain": string;
517
- };
518
- };
519
426
  /** @description Internal server error */
520
427
  500: {
521
428
  headers: {
@@ -556,8 +463,11 @@ export interface operations {
556
463
  * @description Owning organization ID. Derived from the authenticated session, never client-settable.
557
464
  */
558
465
  organizationId: string;
559
- /** @description Subject the profile is keyed by. */
560
- subject: string;
466
+ /**
467
+ * Format: uuid
468
+ * @description ID of the existing Layer5 user the profile settings belong to.
469
+ */
470
+ userId: string;
561
471
  /** @description Unique slug for the profile within the organization. Renames are guarded server-side. */
562
472
  slug: string;
563
473
  /** @description Free-form profile attributes, stored as a JSON blob. */
@@ -636,8 +546,11 @@ export interface operations {
636
546
  * @description Existing Blowhorn profile ID for updates; omit on create.
637
547
  */
638
548
  id?: string;
639
- /** @description Subject the profile is keyed by. */
640
- subject: string;
549
+ /**
550
+ * Format: uuid
551
+ * @description ID of the existing Layer5 user the profile settings belong to.
552
+ */
553
+ userId: string;
641
554
  /** @description Unique slug for the profile within the organization. Renames are guarded server-side. */
642
555
  slug: string;
643
556
  /** @description Free-form profile attributes, stored as a JSON blob. */
@@ -663,8 +576,11 @@ export interface operations {
663
576
  * @description Owning organization ID. Derived from the authenticated session, never client-settable.
664
577
  */
665
578
  organizationId: string;
666
- /** @description Subject the profile is keyed by. */
667
- subject: string;
579
+ /**
580
+ * Format: uuid
581
+ * @description ID of the existing Layer5 user the profile settings belong to.
582
+ */
583
+ userId: string;
668
584
  /** @description Unique slug for the profile within the organization. Renames are guarded server-side. */
669
585
  slug: string;
670
586
  /** @description Free-form profile attributes, stored as a JSON blob. */
@@ -1,45 +1,41 @@
1
- 'use strict';var e={openapi:"3.0.0",info:{title:"BlowhornProfile",description:`OpenAPI schema for Blowhorn profiles - subject-to-slug records with
2
- free-form attributes, scoped by organization and keyed by subject.
3
- `,version:"v1beta3",contact:{name:"Meshery Maintainers",email:"maintainers@meshery.io",url:"https://meshery.io"},license:{name:"Apache 2.0",url:"https://www.apache.org/licenses/LICENSE-2.0.html"}},security:[{jwt:[]}],tags:[{name:"blowhornProfiles",description:"Operations related to Blowhorn profiles."}],paths:{"/api/blowhorn/profiles":{get:{"x-internal":["cloud"],tags:["blowhornProfiles"],summary:"List Blowhorn profiles",operationId:"listBlowhornProfiles",description:"Returns a paginated list of Blowhorn profiles in the organization of the authenticated session.",parameters:[{name:"page",in:"query",description:"Get responses by page",schema:{type:"integer",minimum:0}},{name:"pageSize",in:"query",description:"Number of items per page (canonical camelCase form).",schema:{type:"integer",minimum:1}},{name:"pagesize",in:"query",description:"Number of items per page. Deprecated alias of pageSize;\ncanonical `pageSize` wins when both are present.\n",deprecated:true,schema:{type:"integer",minimum:1}},{name:"search",in:"query",description:"Get responses that match search param value",schema:{type:"string"}},{name:"order",in:"query",description:"Get ordered responses",schema:{type:"string"}}],responses:{200:{description:"Blowhorn profiles page",content:{"application/json":{schema:{type:"object",description:"Paginated collection of Blowhorn profiles.",properties:{page:{type:"integer",description:"Current page number of the result set.",minimum:0},pageSize:{type:"integer",description:"Number of items per page.",minimum:1},totalCount:{type:"integer",description:"Total number of items available.",minimum:0},blowhornProfiles:{type:"array",items:{"x-go-type":"BlowhornProfile",$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Profile Schema",description:`Server-returned Blowhorn profile as persisted by meshery-cloud. A profile
4
- binds a subject to a slug with free-form attributes, scoped by
5
- organization and keyed by subject. Subject-to-slug resolution stays
6
- Blowhorn-side; organization, user and team identity are reused from the
7
- existing constructs. Profiles soft-delete, and renames are guarded
1
+ 'use strict';var e={openapi:"3.0.0",info:{title:"BlowhornProfile",description:`OpenAPI schema for Blowhorn profile settings - the Blowhorn-specific
2
+ slug and attributes for an existing Layer5 user, scoped by organization.
3
+ Identity and organization membership are not modelled here; resolve them
4
+ through the existing identity user and organization operations.
5
+ `,version:"v1beta3",contact:{name:"Meshery Maintainers",email:"maintainers@meshery.io",url:"https://meshery.io"},license:{name:"Apache 2.0",url:"https://www.apache.org/licenses/LICENSE-2.0.html"}},security:[{jwt:[]}],tags:[{name:"blowhornProfiles",description:"Operations related to Blowhorn profiles."}],paths:{"/api/blowhorn/profiles":{get:{"x-internal":["cloud"],tags:["blowhornProfiles"],summary:"List Blowhorn profiles",operationId:"listBlowhornProfiles",description:"Returns a paginated list of Blowhorn profiles in the organization of the authenticated session.",parameters:[{name:"page",in:"query",description:"Get responses by page",schema:{type:"integer",minimum:0}},{name:"pageSize",in:"query",description:"Number of items per page (canonical camelCase form).",schema:{type:"integer",minimum:1}},{name:"pagesize",in:"query",description:"Number of items per page. Deprecated alias of pageSize;\ncanonical `pageSize` wins when both are present.\n",deprecated:true,schema:{type:"integer",minimum:1}},{name:"search",in:"query",description:"Get responses that match search param value",schema:{type:"string"}},{name:"order",in:"query",description:"Get ordered responses",schema:{type:"string"}}],responses:{200:{description:"Blowhorn profiles page",content:{"application/json":{schema:{type:"object",description:"Paginated collection of Blowhorn profiles.",properties:{page:{type:"integer",description:"Current page number of the result set.",minimum:0},pageSize:{type:"integer",description:"Number of items per page.",minimum:1},totalCount:{type:"integer",description:"Total number of items available.",minimum:0},blowhornProfiles:{type:"array",items:{"x-go-type":"BlowhornProfile",$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Profile Schema",description:`Server-returned Blowhorn profile settings as persisted by meshery-cloud.
6
+ A profile holds only the Blowhorn-specific slug and free-form attributes
7
+ for an existing Layer5 user, scoped by organization and keyed by userId.
8
+ User identity and organization membership are reused from the existing
9
+ identity constructs and are not re-modelled here. Profiles soft-delete, and renames are guarded
8
10
  server-side.
9
- `,type:"object",additionalProperties:false,required:["id","organizationId","subject","slug","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn profile ID.","x-order":1,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},organizationId:{description:"Owning organization ID. Derived from the authenticated session, never client-settable.","x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},subject:{type:"string",description:"Subject the profile is keyed by.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"subject"},"x-order":3},slug:{type:"string",description:"Unique slug for the profile within the organization. Renames are guarded server-side.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"slug"},"x-order":4},attributes:{type:"object",description:"Free-form profile attributes, stored as a JSON blob.","x-go-type":"core.Map","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-go-type-skip-optional-pointer":true,"x-oapi-codegen-extra-tags":{db:"attributes"},"x-order":5},createdAt:{description:"Timestamp of Blowhorn profile creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn profile modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the Blowhorn profile was soft-deleted.",nullable:true,"x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt,omitempty"},"x-order":8}}},description:"Blowhorn profiles included on this page of results."}}}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}},post:{"x-internal":["cloud"],tags:["blowhornProfiles"],summary:"Upsert Blowhorn profile",operationId:"upsertBlowhornProfile",description:"Creates a new Blowhorn profile when no `id` is supplied, or\nupdates the entry matching the provided `id`. Ownership is\nderived from the authenticated session; any client-supplied\nowner is ignored. Slug renames are guarded server-side.\n",requestBody:{required:true,content:{"application/json":{schema:{type:"object",description:"Payload for creating or updating a Blowhorn profile. Contains\nonly client-settable fields; the owning `organizationId` (derived\nfrom the authenticated session) and the server-generated\n`createdAt` / `updatedAt` timestamps are intentionally excluded.\n",required:["subject","slug"],properties:{id:{description:"Existing Blowhorn profile ID for updates; omit on create.","x-oapi-codegen-extra-tags":{json:"id,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},subject:{type:"string",description:"Subject the profile is keyed by.",minLength:1,maxLength:255},slug:{type:"string",description:"Unique slug for the profile within the organization. Renames are guarded server-side.",minLength:1,maxLength:255},attributes:{type:"object",description:"Free-form profile attributes, stored as a JSON blob.","x-go-type":"core.Map","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-go-type-skip-optional-pointer":true}}}}}},responses:{200:{description:"Blowhorn profile saved",content:{"application/json":{schema:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Profile Schema",description:`Server-returned Blowhorn profile as persisted by meshery-cloud. A profile
10
- binds a subject to a slug with free-form attributes, scoped by
11
- organization and keyed by subject. Subject-to-slug resolution stays
12
- Blowhorn-side; organization, user and team identity are reused from the
13
- existing constructs. Profiles soft-delete, and renames are guarded
11
+ `,type:"object",additionalProperties:false,required:["id","organizationId","userId","slug","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn profile ID.","x-order":1,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},organizationId:{description:"Owning organization ID. Derived from the authenticated session, never client-settable.","x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},userId:{description:"ID of the existing Layer5 user the profile settings belong to.","x-go-name":"UserID","x-oapi-codegen-extra-tags":{db:"user_id"},"x-order":3,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},slug:{type:"string",description:"Unique slug for the profile within the organization. Renames are guarded server-side.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"slug"},"x-order":4},attributes:{type:"object",description:"Free-form profile attributes, stored as a JSON blob.","x-go-type":"core.Map","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-go-type-skip-optional-pointer":true,"x-oapi-codegen-extra-tags":{db:"attributes"},"x-order":5},createdAt:{description:"Timestamp of Blowhorn profile creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn profile modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the Blowhorn profile was soft-deleted.",nullable:true,"x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt,omitempty"},"x-order":8}}},description:"Blowhorn profiles included on this page of results."}}}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}},post:{"x-internal":["cloud"],tags:["blowhornProfiles"],summary:"Upsert Blowhorn profile",operationId:"upsertBlowhornProfile",description:"Creates a new Blowhorn profile when no `id` is supplied, or\nupdates the entry matching the provided `id`. Ownership is\nderived from the authenticated session; any client-supplied\nowner is ignored. Slug renames are guarded server-side.\n",requestBody:{required:true,content:{"application/json":{schema:{type:"object",description:"Payload for creating or updating a Blowhorn profile. Contains\nonly client-settable fields; the owning `organizationId` (derived\nfrom the authenticated session) and the server-generated\n`createdAt` / `updatedAt` timestamps are intentionally excluded.\n",required:["userId","slug"],properties:{id:{description:"Existing Blowhorn profile ID for updates; omit on create.","x-oapi-codegen-extra-tags":{json:"id,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},userId:{description:"ID of the existing Layer5 user the profile settings belong to.","x-go-name":"UserID",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},slug:{type:"string",description:"Unique slug for the profile within the organization. Renames are guarded server-side.",minLength:1,maxLength:255},attributes:{type:"object",description:"Free-form profile attributes, stored as a JSON blob.","x-go-type":"core.Map","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-go-type-skip-optional-pointer":true}}}}}},responses:{200:{description:"Blowhorn profile saved",content:{"application/json":{schema:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Profile Schema",description:`Server-returned Blowhorn profile settings as persisted by meshery-cloud.
12
+ A profile holds only the Blowhorn-specific slug and free-form attributes
13
+ for an existing Layer5 user, scoped by organization and keyed by userId.
14
+ User identity and organization membership are reused from the existing
15
+ identity constructs and are not re-modelled here. Profiles soft-delete, and renames are guarded
14
16
  server-side.
15
- `,type:"object",additionalProperties:false,required:["id","organizationId","subject","slug","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn profile ID.","x-order":1,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},organizationId:{description:"Owning organization ID. Derived from the authenticated session, never client-settable.","x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},subject:{type:"string",description:"Subject the profile is keyed by.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"subject"},"x-order":3},slug:{type:"string",description:"Unique slug for the profile within the organization. Renames are guarded server-side.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"slug"},"x-order":4},attributes:{type:"object",description:"Free-form profile attributes, stored as a JSON blob.","x-go-type":"core.Map","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-go-type-skip-optional-pointer":true,"x-oapi-codegen-extra-tags":{db:"attributes"},"x-order":5},createdAt:{description:"Timestamp of Blowhorn profile creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn profile modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the Blowhorn profile was soft-deleted.",nullable:true,"x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt,omitempty"},"x-order":8}}}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/blowhorn/profiles/by-subject":{get:{"x-internal":["cloud"],tags:["blowhornProfiles"],summary:"Get Blowhorn profile by subject",operationId:"getBlowhornProfileBySubject",description:"Returns the Blowhorn profile keyed by the given subject within the organization of the authenticated session.",parameters:[{name:"subject",in:"query",required:true,description:"Subject the profile is keyed by.",schema:{type:"string"}}],responses:{200:{description:"Blowhorn profile response",content:{"application/json":{schema:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Profile Schema",description:`Server-returned Blowhorn profile as persisted by meshery-cloud. A profile
16
- binds a subject to a slug with free-form attributes, scoped by
17
- organization and keyed by subject. Subject-to-slug resolution stays
18
- Blowhorn-side; organization, user and team identity are reused from the
19
- existing constructs. Profiles soft-delete, and renames are guarded
17
+ `,type:"object",additionalProperties:false,required:["id","organizationId","userId","slug","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn profile ID.","x-order":1,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},organizationId:{description:"Owning organization ID. Derived from the authenticated session, never client-settable.","x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},userId:{description:"ID of the existing Layer5 user the profile settings belong to.","x-go-name":"UserID","x-oapi-codegen-extra-tags":{db:"user_id"},"x-order":3,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},slug:{type:"string",description:"Unique slug for the profile within the organization. Renames are guarded server-side.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"slug"},"x-order":4},attributes:{type:"object",description:"Free-form profile attributes, stored as a JSON blob.","x-go-type":"core.Map","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-go-type-skip-optional-pointer":true,"x-oapi-codegen-extra-tags":{db:"attributes"},"x-order":5},createdAt:{description:"Timestamp of Blowhorn profile creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn profile modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the Blowhorn profile was soft-deleted.",nullable:true,"x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt,omitempty"},"x-order":8}}}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/blowhorn/profiles/{blowhornProfileId}":{get:{"x-internal":["cloud"],tags:["blowhornProfiles"],summary:"Get Blowhorn profile by ID",operationId:"getBlowhornProfile",parameters:[{name:"blowhornProfileId",in:"path",description:"Blowhorn profile ID",required:true,schema:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}}}],responses:{200:{description:"Blowhorn profile response",content:{"application/json":{schema:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Profile Schema",description:`Server-returned Blowhorn profile settings as persisted by meshery-cloud.
18
+ A profile holds only the Blowhorn-specific slug and free-form attributes
19
+ for an existing Layer5 user, scoped by organization and keyed by userId.
20
+ User identity and organization membership are reused from the existing
21
+ identity constructs and are not re-modelled here. Profiles soft-delete, and renames are guarded
20
22
  server-side.
21
- `,type:"object",additionalProperties:false,required:["id","organizationId","subject","slug","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn profile ID.","x-order":1,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},organizationId:{description:"Owning organization ID. Derived from the authenticated session, never client-settable.","x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},subject:{type:"string",description:"Subject the profile is keyed by.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"subject"},"x-order":3},slug:{type:"string",description:"Unique slug for the profile within the organization. Renames are guarded server-side.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"slug"},"x-order":4},attributes:{type:"object",description:"Free-form profile attributes, stored as a JSON blob.","x-go-type":"core.Map","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-go-type-skip-optional-pointer":true,"x-oapi-codegen-extra-tags":{db:"attributes"},"x-order":5},createdAt:{description:"Timestamp of Blowhorn profile creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn profile modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the Blowhorn profile was soft-deleted.",nullable:true,"x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt,omitempty"},"x-order":8}}}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},404:{description:"Result not found",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/blowhorn/profiles/{blowhornProfileId}":{get:{"x-internal":["cloud"],tags:["blowhornProfiles"],summary:"Get Blowhorn profile by ID",operationId:"getBlowhornProfile",parameters:[{name:"blowhornProfileId",in:"path",description:"Blowhorn profile ID",required:true,schema:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}}}],responses:{200:{description:"Blowhorn profile response",content:{"application/json":{schema:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Profile Schema",description:`Server-returned Blowhorn profile as persisted by meshery-cloud. A profile
22
- binds a subject to a slug with free-form attributes, scoped by
23
- organization and keyed by subject. Subject-to-slug resolution stays
24
- Blowhorn-side; organization, user and team identity are reused from the
25
- existing constructs. Profiles soft-delete, and renames are guarded
23
+ `,type:"object",additionalProperties:false,required:["id","organizationId","userId","slug","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn profile ID.","x-order":1,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},organizationId:{description:"Owning organization ID. Derived from the authenticated session, never client-settable.","x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},userId:{description:"ID of the existing Layer5 user the profile settings belong to.","x-go-name":"UserID","x-oapi-codegen-extra-tags":{db:"user_id"},"x-order":3,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},slug:{type:"string",description:"Unique slug for the profile within the organization. Renames are guarded server-side.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"slug"},"x-order":4},attributes:{type:"object",description:"Free-form profile attributes, stored as a JSON blob.","x-go-type":"core.Map","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-go-type-skip-optional-pointer":true,"x-oapi-codegen-extra-tags":{db:"attributes"},"x-order":5},createdAt:{description:"Timestamp of Blowhorn profile creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn profile modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the Blowhorn profile was soft-deleted.",nullable:true,"x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt,omitempty"},"x-order":8}}}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},404:{description:"Result not found",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}},put:{"x-internal":["cloud"],tags:["blowhornProfiles"],summary:"Update Blowhorn profile",operationId:"updateBlowhornProfile",description:"Updates the Blowhorn profile matching the path ID. Slug renames are guarded server-side.",parameters:[{name:"blowhornProfileId",in:"path",description:"Blowhorn profile ID",required:true,schema:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}}}],requestBody:{required:true,content:{"application/json":{schema:{type:"object",description:"Payload for creating or updating a Blowhorn profile. Contains\nonly client-settable fields; the owning `organizationId` (derived\nfrom the authenticated session) and the server-generated\n`createdAt` / `updatedAt` timestamps are intentionally excluded.\n",required:["userId","slug"],properties:{id:{description:"Existing Blowhorn profile ID for updates; omit on create.","x-oapi-codegen-extra-tags":{json:"id,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},userId:{description:"ID of the existing Layer5 user the profile settings belong to.","x-go-name":"UserID",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},slug:{type:"string",description:"Unique slug for the profile within the organization. Renames are guarded server-side.",minLength:1,maxLength:255},attributes:{type:"object",description:"Free-form profile attributes, stored as a JSON blob.","x-go-type":"core.Map","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-go-type-skip-optional-pointer":true}}}}}},responses:{200:{description:"Blowhorn profile updated",content:{"application/json":{schema:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Profile Schema",description:`Server-returned Blowhorn profile settings as persisted by meshery-cloud.
24
+ A profile holds only the Blowhorn-specific slug and free-form attributes
25
+ for an existing Layer5 user, scoped by organization and keyed by userId.
26
+ User identity and organization membership are reused from the existing
27
+ identity constructs and are not re-modelled here. Profiles soft-delete, and renames are guarded
26
28
  server-side.
27
- `,type:"object",additionalProperties:false,required:["id","organizationId","subject","slug","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn profile ID.","x-order":1,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},organizationId:{description:"Owning organization ID. Derived from the authenticated session, never client-settable.","x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},subject:{type:"string",description:"Subject the profile is keyed by.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"subject"},"x-order":3},slug:{type:"string",description:"Unique slug for the profile within the organization. Renames are guarded server-side.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"slug"},"x-order":4},attributes:{type:"object",description:"Free-form profile attributes, stored as a JSON blob.","x-go-type":"core.Map","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-go-type-skip-optional-pointer":true,"x-oapi-codegen-extra-tags":{db:"attributes"},"x-order":5},createdAt:{description:"Timestamp of Blowhorn profile creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn profile modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the Blowhorn profile was soft-deleted.",nullable:true,"x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt,omitempty"},"x-order":8}}}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},404:{description:"Result not found",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}},put:{"x-internal":["cloud"],tags:["blowhornProfiles"],summary:"Update Blowhorn profile",operationId:"updateBlowhornProfile",description:"Updates the Blowhorn profile matching the path ID. Slug renames are guarded server-side.",parameters:[{name:"blowhornProfileId",in:"path",description:"Blowhorn profile ID",required:true,schema:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}}}],requestBody:{required:true,content:{"application/json":{schema:{type:"object",description:"Payload for creating or updating a Blowhorn profile. Contains\nonly client-settable fields; the owning `organizationId` (derived\nfrom the authenticated session) and the server-generated\n`createdAt` / `updatedAt` timestamps are intentionally excluded.\n",required:["subject","slug"],properties:{id:{description:"Existing Blowhorn profile ID for updates; omit on create.","x-oapi-codegen-extra-tags":{json:"id,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},subject:{type:"string",description:"Subject the profile is keyed by.",minLength:1,maxLength:255},slug:{type:"string",description:"Unique slug for the profile within the organization. Renames are guarded server-side.",minLength:1,maxLength:255},attributes:{type:"object",description:"Free-form profile attributes, stored as a JSON blob.","x-go-type":"core.Map","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-go-type-skip-optional-pointer":true}}}}}},responses:{200:{description:"Blowhorn profile updated",content:{"application/json":{schema:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Profile Schema",description:`Server-returned Blowhorn profile as persisted by meshery-cloud. A profile
28
- binds a subject to a slug with free-form attributes, scoped by
29
- organization and keyed by subject. Subject-to-slug resolution stays
30
- Blowhorn-side; organization, user and team identity are reused from the
31
- existing constructs. Profiles soft-delete, and renames are guarded
29
+ `,type:"object",additionalProperties:false,required:["id","organizationId","userId","slug","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn profile ID.","x-order":1,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},organizationId:{description:"Owning organization ID. Derived from the authenticated session, never client-settable.","x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},userId:{description:"ID of the existing Layer5 user the profile settings belong to.","x-go-name":"UserID","x-oapi-codegen-extra-tags":{db:"user_id"},"x-order":3,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},slug:{type:"string",description:"Unique slug for the profile within the organization. Renames are guarded server-side.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"slug"},"x-order":4},attributes:{type:"object",description:"Free-form profile attributes, stored as a JSON blob.","x-go-type":"core.Map","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-go-type-skip-optional-pointer":true,"x-oapi-codegen-extra-tags":{db:"attributes"},"x-order":5},createdAt:{description:"Timestamp of Blowhorn profile creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn profile modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the Blowhorn profile was soft-deleted.",nullable:true,"x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt,omitempty"},"x-order":8}}}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},404:{description:"Result not found",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}},delete:{"x-internal":["cloud"],tags:["blowhornProfiles"],summary:"Delete Blowhorn profile",operationId:"deleteBlowhornProfile",description:"Soft-deletes the Blowhorn profile.",parameters:[{name:"blowhornProfileId",in:"path",description:"Blowhorn profile ID",required:true,schema:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}}}],responses:{204:{description:"Blowhorn profile deleted"},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},404:{description:"Result not found",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}}},components:{securitySchemes:{jwt:{type:"http",scheme:"Bearer [REDACTED]",bearerFormat:"JWT"}},responses:{400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},404:{description:"Result not found",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}},parameters:{blowhornProfileId:{name:"blowhornProfileId",in:"path",description:"Blowhorn profile ID",required:true,schema:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}}},page:{name:"page",in:"query",description:"Get responses by page",schema:{type:"integer",minimum:0}},pageSize:{name:"pageSize",in:"query",description:"Number of items per page (canonical camelCase form).",schema:{type:"integer",minimum:1}},pagesize:{name:"pagesize",in:"query",description:"Number of items per page. Deprecated alias of pageSize;\ncanonical `pageSize` wins when both are present.\n",deprecated:true,schema:{type:"integer",minimum:1}},search:{name:"search",in:"query",description:"Get responses that match search param value",schema:{type:"string"}},order:{name:"order",in:"query",description:"Get ordered responses",schema:{type:"string"}}},schemas:{BlowhornProfile:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Profile Schema",description:`Server-returned Blowhorn profile settings as persisted by meshery-cloud.
30
+ A profile holds only the Blowhorn-specific slug and free-form attributes
31
+ for an existing Layer5 user, scoped by organization and keyed by userId.
32
+ User identity and organization membership are reused from the existing
33
+ identity constructs and are not re-modelled here. Profiles soft-delete, and renames are guarded
32
34
  server-side.
33
- `,type:"object",additionalProperties:false,required:["id","organizationId","subject","slug","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn profile ID.","x-order":1,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},organizationId:{description:"Owning organization ID. Derived from the authenticated session, never client-settable.","x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},subject:{type:"string",description:"Subject the profile is keyed by.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"subject"},"x-order":3},slug:{type:"string",description:"Unique slug for the profile within the organization. Renames are guarded server-side.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"slug"},"x-order":4},attributes:{type:"object",description:"Free-form profile attributes, stored as a JSON blob.","x-go-type":"core.Map","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-go-type-skip-optional-pointer":true,"x-oapi-codegen-extra-tags":{db:"attributes"},"x-order":5},createdAt:{description:"Timestamp of Blowhorn profile creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn profile modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the Blowhorn profile was soft-deleted.",nullable:true,"x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt,omitempty"},"x-order":8}}}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},404:{description:"Result not found",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}},delete:{"x-internal":["cloud"],tags:["blowhornProfiles"],summary:"Delete Blowhorn profile",operationId:"deleteBlowhornProfile",description:"Soft-deletes the Blowhorn profile.",parameters:[{name:"blowhornProfileId",in:"path",description:"Blowhorn profile ID",required:true,schema:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}}}],responses:{204:{description:"Blowhorn profile deleted"},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},404:{description:"Result not found",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}}},components:{securitySchemes:{jwt:{type:"http",scheme:"Bearer [REDACTED]",bearerFormat:"JWT"}},responses:{400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},404:{description:"Result not found",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}},parameters:{blowhornProfileId:{name:"blowhornProfileId",in:"path",description:"Blowhorn profile ID",required:true,schema:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}}},page:{name:"page",in:"query",description:"Get responses by page",schema:{type:"integer",minimum:0}},pageSize:{name:"pageSize",in:"query",description:"Number of items per page (canonical camelCase form).",schema:{type:"integer",minimum:1}},pagesize:{name:"pagesize",in:"query",description:"Number of items per page. Deprecated alias of pageSize;\ncanonical `pageSize` wins when both are present.\n",deprecated:true,schema:{type:"integer",minimum:1}},search:{name:"search",in:"query",description:"Get responses that match search param value",schema:{type:"string"}},order:{name:"order",in:"query",description:"Get ordered responses",schema:{type:"string"}}},schemas:{BlowhornProfile:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Profile Schema",description:`Server-returned Blowhorn profile as persisted by meshery-cloud. A profile
34
- binds a subject to a slug with free-form attributes, scoped by
35
- organization and keyed by subject. Subject-to-slug resolution stays
36
- Blowhorn-side; organization, user and team identity are reused from the
37
- existing constructs. Profiles soft-delete, and renames are guarded
35
+ `,type:"object",additionalProperties:false,required:["id","organizationId","userId","slug","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn profile ID.","x-order":1,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},organizationId:{description:"Owning organization ID. Derived from the authenticated session, never client-settable.","x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},userId:{description:"ID of the existing Layer5 user the profile settings belong to.","x-go-name":"UserID","x-oapi-codegen-extra-tags":{db:"user_id"},"x-order":3,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},slug:{type:"string",description:"Unique slug for the profile within the organization. Renames are guarded server-side.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"slug"},"x-order":4},attributes:{type:"object",description:"Free-form profile attributes, stored as a JSON blob.","x-go-type":"core.Map","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-go-type-skip-optional-pointer":true,"x-oapi-codegen-extra-tags":{db:"attributes"},"x-order":5},createdAt:{description:"Timestamp of Blowhorn profile creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn profile modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the Blowhorn profile was soft-deleted.",nullable:true,"x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt,omitempty"},"x-order":8}}},BlowhornProfilePayload:{type:"object",description:"Payload for creating or updating a Blowhorn profile. Contains\nonly client-settable fields; the owning `organizationId` (derived\nfrom the authenticated session) and the server-generated\n`createdAt` / `updatedAt` timestamps are intentionally excluded.\n",required:["userId","slug"],properties:{id:{description:"Existing Blowhorn profile ID for updates; omit on create.","x-oapi-codegen-extra-tags":{json:"id,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},userId:{description:"ID of the existing Layer5 user the profile settings belong to.","x-go-name":"UserID",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},slug:{type:"string",description:"Unique slug for the profile within the organization. Renames are guarded server-side.",minLength:1,maxLength:255},attributes:{type:"object",description:"Free-form profile attributes, stored as a JSON blob.","x-go-type":"core.Map","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-go-type-skip-optional-pointer":true}}},BlowhornProfilePage:{type:"object",description:"Paginated collection of Blowhorn profiles.",properties:{page:{type:"integer",description:"Current page number of the result set.",minimum:0},pageSize:{type:"integer",description:"Number of items per page.",minimum:1},totalCount:{type:"integer",description:"Total number of items available.",minimum:0},blowhornProfiles:{type:"array",items:{"x-go-type":"BlowhornProfile",$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Profile Schema",description:`Server-returned Blowhorn profile settings as persisted by meshery-cloud.
36
+ A profile holds only the Blowhorn-specific slug and free-form attributes
37
+ for an existing Layer5 user, scoped by organization and keyed by userId.
38
+ User identity and organization membership are reused from the existing
39
+ identity constructs and are not re-modelled here. Profiles soft-delete, and renames are guarded
38
40
  server-side.
39
- `,type:"object",additionalProperties:false,required:["id","organizationId","subject","slug","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn profile ID.","x-order":1,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},organizationId:{description:"Owning organization ID. Derived from the authenticated session, never client-settable.","x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},subject:{type:"string",description:"Subject the profile is keyed by.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"subject"},"x-order":3},slug:{type:"string",description:"Unique slug for the profile within the organization. Renames are guarded server-side.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"slug"},"x-order":4},attributes:{type:"object",description:"Free-form profile attributes, stored as a JSON blob.","x-go-type":"core.Map","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-go-type-skip-optional-pointer":true,"x-oapi-codegen-extra-tags":{db:"attributes"},"x-order":5},createdAt:{description:"Timestamp of Blowhorn profile creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn profile modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the Blowhorn profile was soft-deleted.",nullable:true,"x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt,omitempty"},"x-order":8}}},BlowhornProfilePayload:{type:"object",description:"Payload for creating or updating a Blowhorn profile. Contains\nonly client-settable fields; the owning `organizationId` (derived\nfrom the authenticated session) and the server-generated\n`createdAt` / `updatedAt` timestamps are intentionally excluded.\n",required:["subject","slug"],properties:{id:{description:"Existing Blowhorn profile ID for updates; omit on create.","x-oapi-codegen-extra-tags":{json:"id,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},subject:{type:"string",description:"Subject the profile is keyed by.",minLength:1,maxLength:255},slug:{type:"string",description:"Unique slug for the profile within the organization. Renames are guarded server-side.",minLength:1,maxLength:255},attributes:{type:"object",description:"Free-form profile attributes, stored as a JSON blob.","x-go-type":"core.Map","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-go-type-skip-optional-pointer":true}}},BlowhornProfilePage:{type:"object",description:"Paginated collection of Blowhorn profiles.",properties:{page:{type:"integer",description:"Current page number of the result set.",minimum:0},pageSize:{type:"integer",description:"Number of items per page.",minimum:1},totalCount:{type:"integer",description:"Total number of items available.",minimum:0},blowhornProfiles:{type:"array",items:{"x-go-type":"BlowhornProfile",$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Profile Schema",description:`Server-returned Blowhorn profile as persisted by meshery-cloud. A profile
40
- binds a subject to a slug with free-form attributes, scoped by
41
- organization and keyed by subject. Subject-to-slug resolution stays
42
- Blowhorn-side; organization, user and team identity are reused from the
43
- existing constructs. Profiles soft-delete, and renames are guarded
44
- server-side.
45
- `,type:"object",additionalProperties:false,required:["id","organizationId","subject","slug","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn profile ID.","x-order":1,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},organizationId:{description:"Owning organization ID. Derived from the authenticated session, never client-settable.","x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},subject:{type:"string",description:"Subject the profile is keyed by.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"subject"},"x-order":3},slug:{type:"string",description:"Unique slug for the profile within the organization. Renames are guarded server-side.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"slug"},"x-order":4},attributes:{type:"object",description:"Free-form profile attributes, stored as a JSON blob.","x-go-type":"core.Map","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-go-type-skip-optional-pointer":true,"x-oapi-codegen-extra-tags":{db:"attributes"},"x-order":5},createdAt:{description:"Timestamp of Blowhorn profile creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn profile modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the Blowhorn profile was soft-deleted.",nullable:true,"x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt,omitempty"},"x-order":8}}},description:"Blowhorn profiles included on this page of results."}}}}}},t=e;module.exports=t;
41
+ `,type:"object",additionalProperties:false,required:["id","organizationId","userId","slug","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn profile ID.","x-order":1,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},organizationId:{description:"Owning organization ID. Derived from the authenticated session, never client-settable.","x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},userId:{description:"ID of the existing Layer5 user the profile settings belong to.","x-go-name":"UserID","x-oapi-codegen-extra-tags":{db:"user_id"},"x-order":3,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},slug:{type:"string",description:"Unique slug for the profile within the organization. Renames are guarded server-side.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"slug"},"x-order":4},attributes:{type:"object",description:"Free-form profile attributes, stored as a JSON blob.","x-go-type":"core.Map","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-go-type-skip-optional-pointer":true,"x-oapi-codegen-extra-tags":{db:"attributes"},"x-order":5},createdAt:{description:"Timestamp of Blowhorn profile creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn profile modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the Blowhorn profile was soft-deleted.",nullable:true,"x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core",name:"core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt,omitempty"},"x-order":8}}},description:"Blowhorn profiles included on this page of results."}}}}}},t=e;module.exports=t;