@meshery/schemas 1.3.60 → 1.3.62

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 (82) hide show
  1. package/README.md +9 -1
  2. package/dist/cloudApi.d.mts +19666 -6714
  3. package/dist/cloudApi.d.ts +19666 -6714
  4. package/dist/cloudApi.js +1 -1
  5. package/dist/cloudApi.mjs +1 -1
  6. package/dist/constructs/v1beta1/organization_smtp/OrganizationSmtp.d.ts +2 -2
  7. package/dist/constructs/v1beta1/organization_smtp/OrganizationSmtpSchema.js +1 -1
  8. package/dist/constructs/v1beta1/organization_smtp/OrganizationSmtpSchema.mjs +1 -1
  9. package/dist/constructs/v1beta1/registry/Registry.d.ts +6 -6
  10. package/dist/constructs/v1beta1/registry/RegistrySchema.js +3 -3
  11. package/dist/constructs/v1beta1/registry/RegistrySchema.mjs +3 -3
  12. package/dist/constructs/v1beta3/academy/Academy.d.ts +18 -0
  13. package/dist/constructs/v1beta3/academy/AcademySchema.js +2 -2
  14. package/dist/constructs/v1beta3/academy/AcademySchema.mjs +2 -2
  15. package/dist/constructs/v1beta3/blowhorn_binding/BlowhornBinding.d.ts +462 -0
  16. package/dist/constructs/v1beta3/blowhorn_binding/BlowhornBinding.js +1 -0
  17. package/dist/constructs/v1beta3/blowhorn_binding/BlowhornBinding.mjs +0 -0
  18. package/dist/constructs/v1beta3/blowhorn_binding/BlowhornBindingSchema.d.ts +2 -0
  19. package/dist/constructs/v1beta3/blowhorn_binding/BlowhornBindingSchema.js +23 -0
  20. package/dist/constructs/v1beta3/blowhorn_binding/BlowhornBindingSchema.mjs +23 -0
  21. package/dist/constructs/v1beta3/blowhorn_content/BlowhornContent.d.ts +719 -0
  22. package/dist/constructs/v1beta3/blowhorn_content/BlowhornContent.js +1 -0
  23. package/dist/constructs/v1beta3/blowhorn_content/BlowhornContent.mjs +0 -0
  24. package/dist/constructs/v1beta3/blowhorn_content/BlowhornContentSchema.d.ts +2 -0
  25. package/dist/constructs/v1beta3/blowhorn_content/BlowhornContentSchema.js +43 -0
  26. package/dist/constructs/v1beta3/blowhorn_content/BlowhornContentSchema.mjs +43 -0
  27. package/dist/constructs/v1beta3/blowhorn_destination/BlowhornDestination.d.ts +516 -0
  28. package/dist/constructs/v1beta3/blowhorn_destination/BlowhornDestination.js +1 -0
  29. package/dist/constructs/v1beta3/blowhorn_destination/BlowhornDestination.mjs +0 -0
  30. package/dist/constructs/v1beta3/blowhorn_destination/BlowhornDestinationSchema.d.ts +2 -0
  31. package/dist/constructs/v1beta3/blowhorn_destination/BlowhornDestinationSchema.js +23 -0
  32. package/dist/constructs/v1beta3/blowhorn_destination/BlowhornDestinationSchema.mjs +23 -0
  33. package/dist/constructs/v1beta3/blowhorn_health/BlowhornHealth.d.ts +131 -0
  34. package/dist/constructs/v1beta3/blowhorn_health/BlowhornHealth.js +1 -0
  35. package/dist/constructs/v1beta3/blowhorn_health/BlowhornHealth.mjs +0 -0
  36. package/dist/constructs/v1beta3/blowhorn_health/BlowhornHealthSchema.d.ts +2 -0
  37. package/dist/constructs/v1beta3/blowhorn_health/BlowhornHealthSchema.js +7 -0
  38. package/dist/constructs/v1beta3/blowhorn_health/BlowhornHealthSchema.mjs +7 -0
  39. package/dist/constructs/v1beta3/blowhorn_ledger/BlowhornLedger.d.ts +1546 -0
  40. package/dist/constructs/v1beta3/blowhorn_ledger/BlowhornLedger.js +1 -0
  41. package/dist/constructs/v1beta3/blowhorn_ledger/BlowhornLedger.mjs +0 -0
  42. package/dist/constructs/v1beta3/blowhorn_ledger/BlowhornLedgerSchema.d.ts +2 -0
  43. package/dist/constructs/v1beta3/blowhorn_ledger/BlowhornLedgerSchema.js +69 -0
  44. package/dist/constructs/v1beta3/blowhorn_ledger/BlowhornLedgerSchema.mjs +69 -0
  45. package/dist/constructs/v1beta3/blowhorn_profile/BlowhornProfile.d.ts +776 -0
  46. package/dist/constructs/v1beta3/blowhorn_profile/BlowhornProfile.js +1 -0
  47. package/dist/constructs/v1beta3/blowhorn_profile/BlowhornProfile.mjs +0 -0
  48. package/dist/constructs/v1beta3/blowhorn_profile/BlowhornProfileSchema.d.ts +2 -0
  49. package/dist/constructs/v1beta3/blowhorn_profile/BlowhornProfileSchema.js +45 -0
  50. package/dist/constructs/v1beta3/blowhorn_profile/BlowhornProfileSchema.mjs +45 -0
  51. package/dist/constructs/v1beta3/blowhorn_run/BlowhornRun.d.ts +784 -0
  52. package/dist/constructs/v1beta3/blowhorn_run/BlowhornRun.js +1 -0
  53. package/dist/constructs/v1beta3/blowhorn_run/BlowhornRun.mjs +0 -0
  54. package/dist/constructs/v1beta3/blowhorn_run/BlowhornRunSchema.d.ts +2 -0
  55. package/dist/constructs/v1beta3/blowhorn_run/BlowhornRunSchema.js +51 -0
  56. package/dist/constructs/v1beta3/blowhorn_run/BlowhornRunSchema.mjs +51 -0
  57. package/dist/constructs/v1beta3/connection/Connection.d.ts +14 -14
  58. package/dist/constructs/v1beta3/connection/ConnectionSchema.js +1 -1
  59. package/dist/constructs/v1beta3/connection/ConnectionSchema.mjs +1 -1
  60. package/dist/constructs/v1beta3/environment/Environment.d.ts +12 -12
  61. package/dist/constructs/v1beta3/environment/EnvironmentSchema.js +1 -1
  62. package/dist/constructs/v1beta3/environment/EnvironmentSchema.mjs +1 -1
  63. package/dist/constructs/v1beta3/invitation/Invitation.d.ts +66 -0
  64. package/dist/constructs/v1beta3/invitation/InvitationSchema.js +1 -1
  65. package/dist/constructs/v1beta3/invitation/InvitationSchema.mjs +1 -1
  66. package/dist/constructs/v1beta3/job_lease/JobLease.d.ts +2570 -0
  67. package/dist/constructs/v1beta3/job_lease/JobLease.js +1 -0
  68. package/dist/constructs/v1beta3/job_lease/JobLease.mjs +0 -0
  69. package/dist/constructs/v1beta3/job_lease/JobLeaseSchema.d.ts +2 -0
  70. package/dist/constructs/v1beta3/job_lease/JobLeaseSchema.js +83 -0
  71. package/dist/constructs/v1beta3/job_lease/JobLeaseSchema.mjs +83 -0
  72. package/dist/constructs/v1beta3/token/Token.d.ts +4 -2
  73. package/dist/constructs/v1beta3/token/TokenSchema.js +1 -1
  74. package/dist/constructs/v1beta3/token/TokenSchema.mjs +1 -1
  75. package/dist/constructs/v1beta3/workspace/Workspace.d.ts +2 -2
  76. package/dist/constructs/v1beta3/workspace/WorkspaceSchema.js +1 -1
  77. package/dist/constructs/v1beta3/workspace/WorkspaceSchema.mjs +1 -1
  78. package/dist/mesheryApi.d.mts +24 -24
  79. package/dist/mesheryApi.d.ts +24 -24
  80. package/dist/mesheryApi.js +1 -1
  81. package/dist/mesheryApi.mjs +1 -1
  82. package/package.json +2 -1
@@ -0,0 +1,2 @@
1
+ declare const BlowhornLedgerSchema: Record<string, unknown>;
2
+ export default BlowhornLedgerSchema;
@@ -0,0 +1,69 @@
1
+ 'use strict';var e={openapi:"3.0.0",info:{title:"BlowhornLedger",description:`OpenAPI schema for the Blowhorn ledger - ledger-discriminated
2
+ idempotent sets with claim-if-absent semantics, plus contacts and
3
+ mentees.
4
+ `,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:"blowhornLedger",description:"Operations related to Blowhorn ledger entries, contacts and mentees."}],paths:{"/api/blowhorn/ledger":{get:{"x-internal":["cloud"],tags:["blowhornLedger"],summary:"List Blowhorn ledger entries",operationId:"listBlowhornLedger",description:"Returns a paginated list of Blowhorn ledger entries in the organization of the authenticated session, optionally filtered by ledger.",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"}},{name:"ledger",in:"query",required:false,description:"Filter by ledger discriminator.",schema:{type:"string"}}],responses:{200:{description:"Blowhorn ledger entries page",content:{"application/json":{schema:{type:"object",description:"Paginated collection of Blowhorn ledger entries.",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},blowhornLedgerEntries:{type:"array",items:{"x-go-type":"BlowhornLedgerEntry",$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Ledger Entry Schema",description:`Server-returned Blowhorn ledger entry as persisted by meshery-cloud.
5
+ Ledger entries form ledger-discriminated idempotent sets keyed by
6
+ (ledger, key): recording the same pair replays idempotently, and
7
+ claim-if-absent takes the entry for a holder exactly once.
8
+ `,type:"object",additionalProperties:false,required:["id","organizationId","ledger","entryKey","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn ledger entry 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"}},ledger:{type:"string",description:"Ledger discriminator naming the idempotent set.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"ledger"},"x-order":3},entryKey:{type:"string",description:"Key within the ledger. Unique per ledger.",minLength:1,maxLength:1024,"x-go-name":"EntryKey","x-oapi-codegen-extra-tags":{db:"entry_key"},"x-order":4},value:{type:"object",description:"Entry value, 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:"value"},"x-order":5},claimedBy:{type:"string",description:"Holder that claimed the entry, if any. Set only by claim-if-absent.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"claimed_by"},"x-order":6},claimedAt:{type:"string",format:"date-time",description:"Time the entry was claimed, if any. Set only by claim-if-absent.",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:"claimed_at"},"x-order":7},createdAt:{description:"Timestamp of Blowhorn ledger entry creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn ledger entry modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},description:"Blowhorn ledger entries 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:["blowhornLedger"],summary:"Record Blowhorn ledger entry",operationId:"recordBlowhornLedgerEntry",description:`Records a ledger entry, replaying idempotently on the (ledger,
9
+ key) pair: recording an existing pair returns the stored entry
10
+ with the supplied value merged. Ownership is derived from the
11
+ authenticated session; any client-supplied owner is ignored.
12
+ `,requestBody:{required:true,content:{"application/json":{schema:{type:"object",description:"Payload for recording a Blowhorn ledger entry. Contains only\nclient-settable fields; the owning `organizationId` (derived from\nthe authenticated session), the claim columns and the\nserver-generated `createdAt` / `updatedAt` timestamps are\nintentionally excluded.\n",required:["ledger","entryKey"],properties:{id:{description:"Existing Blowhorn ledger entry ID for updates; omit on record.","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"}},ledger:{type:"string",description:"Ledger discriminator naming the idempotent set.",minLength:1,maxLength:255},entryKey:{type:"string",description:"Key within the ledger. Unique per ledger.",minLength:1,maxLength:1024,"x-go-name":"EntryKey"},value:{type:"object",description:"Entry value, 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 ledger entry recorded",content:{"application/json":{schema:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Ledger Entry Schema",description:`Server-returned Blowhorn ledger entry as persisted by meshery-cloud.
13
+ Ledger entries form ledger-discriminated idempotent sets keyed by
14
+ (ledger, key): recording the same pair replays idempotently, and
15
+ claim-if-absent takes the entry for a holder exactly once.
16
+ `,type:"object",additionalProperties:false,required:["id","organizationId","ledger","entryKey","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn ledger entry 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"}},ledger:{type:"string",description:"Ledger discriminator naming the idempotent set.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"ledger"},"x-order":3},entryKey:{type:"string",description:"Key within the ledger. Unique per ledger.",minLength:1,maxLength:1024,"x-go-name":"EntryKey","x-oapi-codegen-extra-tags":{db:"entry_key"},"x-order":4},value:{type:"object",description:"Entry value, 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:"value"},"x-order":5},claimedBy:{type:"string",description:"Holder that claimed the entry, if any. Set only by claim-if-absent.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"claimed_by"},"x-order":6},claimedAt:{type:"string",format:"date-time",description:"Time the entry was claimed, if any. Set only by claim-if-absent.",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:"claimed_at"},"x-order":7},createdAt:{description:"Timestamp of Blowhorn ledger entry creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn ledger entry modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}}}}},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/ledger/{blowhornLedgerEntryId}":{get:{"x-internal":["cloud"],tags:["blowhornLedger"],summary:"Get Blowhorn ledger entry by ID",operationId:"getBlowhornLedgerEntry",parameters:[{name:"blowhornLedgerEntryId",in:"path",description:"Blowhorn ledger entry 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 ledger entry response",content:{"application/json":{schema:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Ledger Entry Schema",description:`Server-returned Blowhorn ledger entry as persisted by meshery-cloud.
17
+ Ledger entries form ledger-discriminated idempotent sets keyed by
18
+ (ledger, key): recording the same pair replays idempotently, and
19
+ claim-if-absent takes the entry for a holder exactly once.
20
+ `,type:"object",additionalProperties:false,required:["id","organizationId","ledger","entryKey","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn ledger entry 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"}},ledger:{type:"string",description:"Ledger discriminator naming the idempotent set.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"ledger"},"x-order":3},entryKey:{type:"string",description:"Key within the ledger. Unique per ledger.",minLength:1,maxLength:1024,"x-go-name":"EntryKey","x-oapi-codegen-extra-tags":{db:"entry_key"},"x-order":4},value:{type:"object",description:"Entry value, 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:"value"},"x-order":5},claimedBy:{type:"string",description:"Holder that claimed the entry, if any. Set only by claim-if-absent.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"claimed_by"},"x-order":6},claimedAt:{type:"string",format:"date-time",description:"Time the entry was claimed, if any. Set only by claim-if-absent.",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:"claimed_at"},"x-order":7},createdAt:{description:"Timestamp of Blowhorn ledger entry creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn ledger entry modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}}}}},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:["blowhornLedger"],summary:"Delete Blowhorn ledger entry",operationId:"deleteBlowhornLedgerEntry",description:"Removes the ledger entry from its idempotent set.",parameters:[{name:"blowhornLedgerEntryId",in:"path",description:"Blowhorn ledger entry 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 ledger entry 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"}}}}}}},"/api/blowhorn/ledger/{blowhornLedgerEntryId}/claim":{post:{"x-internal":["cloud"],tags:["blowhornLedger"],summary:"Claim Blowhorn ledger entry if absent",operationId:"claimIfAbsentBlowhornLedgerEntry",description:`Takes the entry for the holder named by \`holder\` when unclaimed.
21
+ An already-claimed entry is refused with a 409 - exactly-once
22
+ semantics for claim-if-absent sets.
23
+ `,parameters:[{name:"blowhornLedgerEntryId",in:"path",description:"Blowhorn ledger entry 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:"Claim-if-absent payload taking an unclaimed entry for a holder.",required:["holder"],properties:{holder:{type:"string",description:"Holder taking the entry. Refused with a 409 when the entry is already claimed.",minLength:1,maxLength:255}}}}}},responses:{200:{description:"Blowhorn ledger entry claimed",content:{"application/json":{schema:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Ledger Entry Schema",description:`Server-returned Blowhorn ledger entry as persisted by meshery-cloud.
24
+ Ledger entries form ledger-discriminated idempotent sets keyed by
25
+ (ledger, key): recording the same pair replays idempotently, and
26
+ claim-if-absent takes the entry for a holder exactly once.
27
+ `,type:"object",additionalProperties:false,required:["id","organizationId","ledger","entryKey","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn ledger entry 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"}},ledger:{type:"string",description:"Ledger discriminator naming the idempotent set.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"ledger"},"x-order":3},entryKey:{type:"string",description:"Key within the ledger. Unique per ledger.",minLength:1,maxLength:1024,"x-go-name":"EntryKey","x-oapi-codegen-extra-tags":{db:"entry_key"},"x-order":4},value:{type:"object",description:"Entry value, 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:"value"},"x-order":5},claimedBy:{type:"string",description:"Holder that claimed the entry, if any. Set only by claim-if-absent.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"claimed_by"},"x-order":6},claimedAt:{type:"string",format:"date-time",description:"Time the entry was claimed, if any. Set only by claim-if-absent.",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:"claimed_at"},"x-order":7},createdAt:{description:"Timestamp of Blowhorn ledger entry creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn ledger entry modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}}}}},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"}}}},409:{description:"Conflict - the ledger entry is already claimed",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/blowhorn/contacts":{get:{"x-internal":["cloud"],tags:["blowhornLedger"],summary:"List Blowhorn contacts",operationId:"listBlowhornContacts",description:"Returns a paginated list of Blowhorn contacts in the organization of the authenticated session, optionally filtered by platform.",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"}},{name:"platform",in:"query",required:false,description:"Filter by platform (e.g. linkedin, github).",schema:{type:"string"}}],responses:{200:{description:"Blowhorn contacts page",content:{"application/json":{schema:{type:"object",description:"Paginated collection of Blowhorn contacts.",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},blowhornContacts:{type:"array",items:{"x-go-type":"BlowhornContact",$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Contact Schema",description:`Server-returned Blowhorn contact as persisted by meshery-cloud. Contacts
28
+ are upserted per platform handle and back the credential-less platform
29
+ opt-in rows.
30
+ `,type:"object",additionalProperties:false,required:["id","organizationId","platform","handle","createdAt","updatedAt"],properties:{id:{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"},"x-order":1},organizationId:{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"},"x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2},platform:{type:"string",description:"Platform the contact belongs to (e.g. linkedin, github).",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"platform"},"x-order":3},handle:{type:"string",description:"Platform-side handle identifying the contact. Unique per platform within the organization.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"handle"},"x-order":4},displayName:{type:"string",description:"Human-readable contact name.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"display_name"},"x-order":5},profileUrl:{type:"string",description:"Platform-side profile URL for the contact.",maxLength:1024,"x-oapi-codegen-extra-tags":{db:"profile_url"},"x-order":6},metadata:{type:"object",description:"Contact metadata, 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:"metadata"},"x-order":7},createdAt:{description:"Timestamp of Blowhorn contact creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn contact modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},description:"Blowhorn contacts 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:["blowhornLedger"],summary:"Upsert Blowhorn contact",operationId:"upsertBlowhornContact",description:`Creates a new Blowhorn contact when no \`id\` is supplied, or
31
+ updates the entry matching the provided \`id\`. Contacts are keyed
32
+ by the (platform, handle) pair within the organization. Ownership
33
+ is derived from the authenticated session; any client-supplied
34
+ owner is ignored.
35
+ `,requestBody:{required:true,content:{"application/json":{schema:{type:"object",description:"Payload for creating or updating a Blowhorn contact. 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:["platform","handle"],properties:{id:{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"},"x-oapi-codegen-extra-tags":{json:"id,omitempty"}},platform:{type:"string",description:"Platform the contact belongs to (e.g. linkedin, github).",minLength:1,maxLength:255},handle:{type:"string",description:"Platform-side handle identifying the contact. Unique per platform within the organization.",minLength:1,maxLength:255},displayName:{type:"string",description:"Human-readable contact name.",maxLength:255},profileUrl:{type:"string",description:"Platform-side profile URL for the contact.",maxLength:1024},metadata:{type:"object",description:"Contact metadata, 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 contact saved",content:{"application/json":{schema:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Contact Schema",description:`Server-returned Blowhorn contact as persisted by meshery-cloud. Contacts
36
+ are upserted per platform handle and back the credential-less platform
37
+ opt-in rows.
38
+ `,type:"object",additionalProperties:false,required:["id","organizationId","platform","handle","createdAt","updatedAt"],properties:{id:{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"},"x-order":1},organizationId:{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"},"x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2},platform:{type:"string",description:"Platform the contact belongs to (e.g. linkedin, github).",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"platform"},"x-order":3},handle:{type:"string",description:"Platform-side handle identifying the contact. Unique per platform within the organization.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"handle"},"x-order":4},displayName:{type:"string",description:"Human-readable contact name.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"display_name"},"x-order":5},profileUrl:{type:"string",description:"Platform-side profile URL for the contact.",maxLength:1024,"x-oapi-codegen-extra-tags":{db:"profile_url"},"x-order":6},metadata:{type:"object",description:"Contact metadata, 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:"metadata"},"x-order":7},createdAt:{description:"Timestamp of Blowhorn contact creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn contact modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}}}}},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/mentees":{get:{"x-internal":["cloud"],tags:["blowhornLedger"],summary:"List Blowhorn mentees",operationId:"listBlowhornMentees",description:"Returns a paginated list of Blowhorn mentees 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 mentees page",content:{"application/json":{schema:{type:"object",description:"Paginated collection of Blowhorn mentees.",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},blowhornMentees:{type:"array",items:{"x-go-type":"BlowhornMentee",$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Mentee Schema",description:`Server-returned Blowhorn mentee as persisted by meshery-cloud. Mentees
39
+ track mentored subjects through stages; recording a mentee and dropping
40
+ it is a single operation that stamps the drop time.
41
+ `,type:"object",additionalProperties:false,required:["id","organizationId","subject","createdAt","updatedAt"],properties:{id:{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"},"x-order":1},organizationId:{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"},"x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2},subject:{type:"string",description:"Mentored subject.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"subject"},"x-order":3},stage:{type:"string",description:"Mentorship stage of the subject.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"stage"},"x-order":4},metadata:{type:"object",description:"Mentee metadata, 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:"metadata"},"x-order":5},droppedAt:{type:"string",format:"date-time",description:"Time the mentee was recorded and dropped, if any. Set only by the record-and-drop operation.",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:"dropped_at"},"x-order":6},createdAt:{description:"Timestamp of Blowhorn mentee creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn mentee modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},description:"Blowhorn mentees 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:["blowhornLedger"],summary:"Upsert Blowhorn mentee",operationId:"upsertBlowhornMentee",description:"Creates a new Blowhorn mentee 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.\n",requestBody:{required:true,content:{"application/json":{schema:{type:"object",description:"Payload for creating or updating a Blowhorn mentee. Contains only\nclient-settable fields; the owning `organizationId` (derived from\nthe authenticated session), the server-managed `droppedAt` and\nthe server-generated `createdAt` / `updatedAt` timestamps are\nintentionally excluded.\n",required:["subject"],properties:{id:{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"},"x-oapi-codegen-extra-tags":{json:"id,omitempty"}},subject:{type:"string",description:"Mentored subject.",minLength:1,maxLength:255},stage:{type:"string",description:"Mentorship stage of the subject.",maxLength:255},metadata:{type:"object",description:"Mentee metadata, 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 mentee saved",content:{"application/json":{schema:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Mentee Schema",description:`Server-returned Blowhorn mentee as persisted by meshery-cloud. Mentees
42
+ track mentored subjects through stages; recording a mentee and dropping
43
+ it is a single operation that stamps the drop time.
44
+ `,type:"object",additionalProperties:false,required:["id","organizationId","subject","createdAt","updatedAt"],properties:{id:{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"},"x-order":1},organizationId:{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"},"x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2},subject:{type:"string",description:"Mentored subject.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"subject"},"x-order":3},stage:{type:"string",description:"Mentorship stage of the subject.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"stage"},"x-order":4},metadata:{type:"object",description:"Mentee metadata, 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:"metadata"},"x-order":5},droppedAt:{type:"string",format:"date-time",description:"Time the mentee was recorded and dropped, if any. Set only by the record-and-drop operation.",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:"dropped_at"},"x-order":6},createdAt:{description:"Timestamp of Blowhorn mentee creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn mentee modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}}}}},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/mentees/{blowhornMenteeId}":{delete:{"x-internal":["cloud"],tags:["blowhornLedger"],summary:"Delete Blowhorn mentee",operationId:"deleteBlowhornMentee",description:"Removes the Blowhorn mentee.",parameters:[{name:"blowhornMenteeId",in:"path",description:"Blowhorn mentee 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 mentee 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"}}}}}}},"/api/blowhorn/mentees/{blowhornMenteeId}/drop":{post:{"x-internal":["cloud"],tags:["blowhornLedger"],summary:"Record and drop Blowhorn mentee",operationId:"recordAndDropBlowhornMentee",description:`Records the mentee and drops it in a single operation, stamping
45
+ the drop time on the returned entry.
46
+ `,parameters:[{name:"blowhornMenteeId",in:"path",description:"Blowhorn mentee 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:false,content:{"application/json":{schema:{type:"object",description:"Record-and-drop payload.",properties:{stage:{type:"string",description:"Final mentorship stage recorded with the drop.",maxLength:255}}}}}},responses:{200:{description:"Blowhorn mentee recorded and dropped",content:{"application/json":{schema:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Mentee Schema",description:`Server-returned Blowhorn mentee as persisted by meshery-cloud. Mentees
47
+ track mentored subjects through stages; recording a mentee and dropping
48
+ it is a single operation that stamps the drop time.
49
+ `,type:"object",additionalProperties:false,required:["id","organizationId","subject","createdAt","updatedAt"],properties:{id:{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"},"x-order":1},organizationId:{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"},"x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2},subject:{type:"string",description:"Mentored subject.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"subject"},"x-order":3},stage:{type:"string",description:"Mentorship stage of the subject.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"stage"},"x-order":4},metadata:{type:"object",description:"Mentee metadata, 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:"metadata"},"x-order":5},droppedAt:{type:"string",format:"date-time",description:"Time the mentee was recorded and dropped, if any. Set only by the record-and-drop operation.",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:"dropped_at"},"x-order":6},createdAt:{description:"Timestamp of Blowhorn mentee creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn mentee modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}}}}},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"}}}}}}}},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"}}}},409:{description:"Conflict - the ledger entry is already claimed",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}},parameters:{blowhornLedgerEntryId:{name:"blowhornLedgerEntryId",in:"path",description:"Blowhorn ledger entry 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"}}},blowhornMenteeId:{name:"blowhornMenteeId",in:"path",description:"Blowhorn mentee 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:{BlowhornLedgerEntry:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Ledger Entry Schema",description:`Server-returned Blowhorn ledger entry as persisted by meshery-cloud.
50
+ Ledger entries form ledger-discriminated idempotent sets keyed by
51
+ (ledger, key): recording the same pair replays idempotently, and
52
+ claim-if-absent takes the entry for a holder exactly once.
53
+ `,type:"object",additionalProperties:false,required:["id","organizationId","ledger","entryKey","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn ledger entry 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"}},ledger:{type:"string",description:"Ledger discriminator naming the idempotent set.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"ledger"},"x-order":3},entryKey:{type:"string",description:"Key within the ledger. Unique per ledger.",minLength:1,maxLength:1024,"x-go-name":"EntryKey","x-oapi-codegen-extra-tags":{db:"entry_key"},"x-order":4},value:{type:"object",description:"Entry value, 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:"value"},"x-order":5},claimedBy:{type:"string",description:"Holder that claimed the entry, if any. Set only by claim-if-absent.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"claimed_by"},"x-order":6},claimedAt:{type:"string",format:"date-time",description:"Time the entry was claimed, if any. Set only by claim-if-absent.",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:"claimed_at"},"x-order":7},createdAt:{description:"Timestamp of Blowhorn ledger entry creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn ledger entry modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},BlowhornContact:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Contact Schema",description:`Server-returned Blowhorn contact as persisted by meshery-cloud. Contacts
54
+ are upserted per platform handle and back the credential-less platform
55
+ opt-in rows.
56
+ `,type:"object",additionalProperties:false,required:["id","organizationId","platform","handle","createdAt","updatedAt"],properties:{id:{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"},"x-order":1},organizationId:{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"},"x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2},platform:{type:"string",description:"Platform the contact belongs to (e.g. linkedin, github).",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"platform"},"x-order":3},handle:{type:"string",description:"Platform-side handle identifying the contact. Unique per platform within the organization.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"handle"},"x-order":4},displayName:{type:"string",description:"Human-readable contact name.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"display_name"},"x-order":5},profileUrl:{type:"string",description:"Platform-side profile URL for the contact.",maxLength:1024,"x-oapi-codegen-extra-tags":{db:"profile_url"},"x-order":6},metadata:{type:"object",description:"Contact metadata, 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:"metadata"},"x-order":7},createdAt:{description:"Timestamp of Blowhorn contact creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn contact modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},BlowhornMentee:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Mentee Schema",description:`Server-returned Blowhorn mentee as persisted by meshery-cloud. Mentees
57
+ track mentored subjects through stages; recording a mentee and dropping
58
+ it is a single operation that stamps the drop time.
59
+ `,type:"object",additionalProperties:false,required:["id","organizationId","subject","createdAt","updatedAt"],properties:{id:{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"},"x-order":1},organizationId:{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"},"x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2},subject:{type:"string",description:"Mentored subject.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"subject"},"x-order":3},stage:{type:"string",description:"Mentorship stage of the subject.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"stage"},"x-order":4},metadata:{type:"object",description:"Mentee metadata, 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:"metadata"},"x-order":5},droppedAt:{type:"string",format:"date-time",description:"Time the mentee was recorded and dropped, if any. Set only by the record-and-drop operation.",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:"dropped_at"},"x-order":6},createdAt:{description:"Timestamp of Blowhorn mentee creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn mentee modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},BlowhornLedgerPayload:{type:"object",description:"Payload for recording a Blowhorn ledger entry. Contains only\nclient-settable fields; the owning `organizationId` (derived from\nthe authenticated session), the claim columns and the\nserver-generated `createdAt` / `updatedAt` timestamps are\nintentionally excluded.\n",required:["ledger","entryKey"],properties:{id:{description:"Existing Blowhorn ledger entry ID for updates; omit on record.","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"}},ledger:{type:"string",description:"Ledger discriminator naming the idempotent set.",minLength:1,maxLength:255},entryKey:{type:"string",description:"Key within the ledger. Unique per ledger.",minLength:1,maxLength:1024,"x-go-name":"EntryKey"},value:{type:"object",description:"Entry value, 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}}},BlowhornLedgerClaimRequest:{type:"object",description:"Claim-if-absent payload taking an unclaimed entry for a holder.",required:["holder"],properties:{holder:{type:"string",description:"Holder taking the entry. Refused with a 409 when the entry is already claimed.",minLength:1,maxLength:255}}},BlowhornContactPayload:{type:"object",description:"Payload for creating or updating a Blowhorn contact. 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:["platform","handle"],properties:{id:{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"},"x-oapi-codegen-extra-tags":{json:"id,omitempty"}},platform:{type:"string",description:"Platform the contact belongs to (e.g. linkedin, github).",minLength:1,maxLength:255},handle:{type:"string",description:"Platform-side handle identifying the contact. Unique per platform within the organization.",minLength:1,maxLength:255},displayName:{type:"string",description:"Human-readable contact name.",maxLength:255},profileUrl:{type:"string",description:"Platform-side profile URL for the contact.",maxLength:1024},metadata:{type:"object",description:"Contact metadata, 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}}},BlowhornMenteePayload:{type:"object",description:"Payload for creating or updating a Blowhorn mentee. Contains only\nclient-settable fields; the owning `organizationId` (derived from\nthe authenticated session), the server-managed `droppedAt` and\nthe server-generated `createdAt` / `updatedAt` timestamps are\nintentionally excluded.\n",required:["subject"],properties:{id:{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"},"x-oapi-codegen-extra-tags":{json:"id,omitempty"}},subject:{type:"string",description:"Mentored subject.",minLength:1,maxLength:255},stage:{type:"string",description:"Mentorship stage of the subject.",maxLength:255},metadata:{type:"object",description:"Mentee metadata, 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}}},BlowhornMenteeDropRequest:{type:"object",description:"Record-and-drop payload.",properties:{stage:{type:"string",description:"Final mentorship stage recorded with the drop.",maxLength:255}}},BlowhornLedgerPage:{type:"object",description:"Paginated collection of Blowhorn ledger entries.",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},blowhornLedgerEntries:{type:"array",items:{"x-go-type":"BlowhornLedgerEntry",$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Ledger Entry Schema",description:`Server-returned Blowhorn ledger entry as persisted by meshery-cloud.
60
+ Ledger entries form ledger-discriminated idempotent sets keyed by
61
+ (ledger, key): recording the same pair replays idempotently, and
62
+ claim-if-absent takes the entry for a holder exactly once.
63
+ `,type:"object",additionalProperties:false,required:["id","organizationId","ledger","entryKey","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn ledger entry 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"}},ledger:{type:"string",description:"Ledger discriminator naming the idempotent set.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"ledger"},"x-order":3},entryKey:{type:"string",description:"Key within the ledger. Unique per ledger.",minLength:1,maxLength:1024,"x-go-name":"EntryKey","x-oapi-codegen-extra-tags":{db:"entry_key"},"x-order":4},value:{type:"object",description:"Entry value, 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:"value"},"x-order":5},claimedBy:{type:"string",description:"Holder that claimed the entry, if any. Set only by claim-if-absent.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"claimed_by"},"x-order":6},claimedAt:{type:"string",format:"date-time",description:"Time the entry was claimed, if any. Set only by claim-if-absent.",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:"claimed_at"},"x-order":7},createdAt:{description:"Timestamp of Blowhorn ledger entry creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn ledger entry modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},description:"Blowhorn ledger entries included on this page of results."}}},BlowhornContactPage:{type:"object",description:"Paginated collection of Blowhorn contacts.",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},blowhornContacts:{type:"array",items:{"x-go-type":"BlowhornContact",$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Contact Schema",description:`Server-returned Blowhorn contact as persisted by meshery-cloud. Contacts
64
+ are upserted per platform handle and back the credential-less platform
65
+ opt-in rows.
66
+ `,type:"object",additionalProperties:false,required:["id","organizationId","platform","handle","createdAt","updatedAt"],properties:{id:{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"},"x-order":1},organizationId:{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"},"x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2},platform:{type:"string",description:"Platform the contact belongs to (e.g. linkedin, github).",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"platform"},"x-order":3},handle:{type:"string",description:"Platform-side handle identifying the contact. Unique per platform within the organization.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"handle"},"x-order":4},displayName:{type:"string",description:"Human-readable contact name.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"display_name"},"x-order":5},profileUrl:{type:"string",description:"Platform-side profile URL for the contact.",maxLength:1024,"x-oapi-codegen-extra-tags":{db:"profile_url"},"x-order":6},metadata:{type:"object",description:"Contact metadata, 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:"metadata"},"x-order":7},createdAt:{description:"Timestamp of Blowhorn contact creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn contact modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},description:"Blowhorn contacts included on this page of results."}}},BlowhornMenteePage:{type:"object",description:"Paginated collection of Blowhorn mentees.",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},blowhornMentees:{type:"array",items:{"x-go-type":"BlowhornMentee",$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Mentee Schema",description:`Server-returned Blowhorn mentee as persisted by meshery-cloud. Mentees
67
+ track mentored subjects through stages; recording a mentee and dropping
68
+ it is a single operation that stamps the drop time.
69
+ `,type:"object",additionalProperties:false,required:["id","organizationId","subject","createdAt","updatedAt"],properties:{id:{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"},"x-order":1},organizationId:{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"},"x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2},subject:{type:"string",description:"Mentored subject.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"subject"},"x-order":3},stage:{type:"string",description:"Mentorship stage of the subject.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"stage"},"x-order":4},metadata:{type:"object",description:"Mentee metadata, 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:"metadata"},"x-order":5},droppedAt:{type:"string",format:"date-time",description:"Time the mentee was recorded and dropped, if any. Set only by the record-and-drop operation.",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:"dropped_at"},"x-order":6},createdAt:{description:"Timestamp of Blowhorn mentee creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn mentee modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},description:"Blowhorn mentees included on this page of results."}}}}}},t=e;module.exports=t;
@@ -0,0 +1,69 @@
1
+ var e={openapi:"3.0.0",info:{title:"BlowhornLedger",description:`OpenAPI schema for the Blowhorn ledger - ledger-discriminated
2
+ idempotent sets with claim-if-absent semantics, plus contacts and
3
+ mentees.
4
+ `,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:"blowhornLedger",description:"Operations related to Blowhorn ledger entries, contacts and mentees."}],paths:{"/api/blowhorn/ledger":{get:{"x-internal":["cloud"],tags:["blowhornLedger"],summary:"List Blowhorn ledger entries",operationId:"listBlowhornLedger",description:"Returns a paginated list of Blowhorn ledger entries in the organization of the authenticated session, optionally filtered by ledger.",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"}},{name:"ledger",in:"query",required:false,description:"Filter by ledger discriminator.",schema:{type:"string"}}],responses:{200:{description:"Blowhorn ledger entries page",content:{"application/json":{schema:{type:"object",description:"Paginated collection of Blowhorn ledger entries.",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},blowhornLedgerEntries:{type:"array",items:{"x-go-type":"BlowhornLedgerEntry",$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Ledger Entry Schema",description:`Server-returned Blowhorn ledger entry as persisted by meshery-cloud.
5
+ Ledger entries form ledger-discriminated idempotent sets keyed by
6
+ (ledger, key): recording the same pair replays idempotently, and
7
+ claim-if-absent takes the entry for a holder exactly once.
8
+ `,type:"object",additionalProperties:false,required:["id","organizationId","ledger","entryKey","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn ledger entry 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"}},ledger:{type:"string",description:"Ledger discriminator naming the idempotent set.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"ledger"},"x-order":3},entryKey:{type:"string",description:"Key within the ledger. Unique per ledger.",minLength:1,maxLength:1024,"x-go-name":"EntryKey","x-oapi-codegen-extra-tags":{db:"entry_key"},"x-order":4},value:{type:"object",description:"Entry value, 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:"value"},"x-order":5},claimedBy:{type:"string",description:"Holder that claimed the entry, if any. Set only by claim-if-absent.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"claimed_by"},"x-order":6},claimedAt:{type:"string",format:"date-time",description:"Time the entry was claimed, if any. Set only by claim-if-absent.",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:"claimed_at"},"x-order":7},createdAt:{description:"Timestamp of Blowhorn ledger entry creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn ledger entry modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},description:"Blowhorn ledger entries 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:["blowhornLedger"],summary:"Record Blowhorn ledger entry",operationId:"recordBlowhornLedgerEntry",description:`Records a ledger entry, replaying idempotently on the (ledger,
9
+ key) pair: recording an existing pair returns the stored entry
10
+ with the supplied value merged. Ownership is derived from the
11
+ authenticated session; any client-supplied owner is ignored.
12
+ `,requestBody:{required:true,content:{"application/json":{schema:{type:"object",description:"Payload for recording a Blowhorn ledger entry. Contains only\nclient-settable fields; the owning `organizationId` (derived from\nthe authenticated session), the claim columns and the\nserver-generated `createdAt` / `updatedAt` timestamps are\nintentionally excluded.\n",required:["ledger","entryKey"],properties:{id:{description:"Existing Blowhorn ledger entry ID for updates; omit on record.","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"}},ledger:{type:"string",description:"Ledger discriminator naming the idempotent set.",minLength:1,maxLength:255},entryKey:{type:"string",description:"Key within the ledger. Unique per ledger.",minLength:1,maxLength:1024,"x-go-name":"EntryKey"},value:{type:"object",description:"Entry value, 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 ledger entry recorded",content:{"application/json":{schema:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Ledger Entry Schema",description:`Server-returned Blowhorn ledger entry as persisted by meshery-cloud.
13
+ Ledger entries form ledger-discriminated idempotent sets keyed by
14
+ (ledger, key): recording the same pair replays idempotently, and
15
+ claim-if-absent takes the entry for a holder exactly once.
16
+ `,type:"object",additionalProperties:false,required:["id","organizationId","ledger","entryKey","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn ledger entry 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"}},ledger:{type:"string",description:"Ledger discriminator naming the idempotent set.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"ledger"},"x-order":3},entryKey:{type:"string",description:"Key within the ledger. Unique per ledger.",minLength:1,maxLength:1024,"x-go-name":"EntryKey","x-oapi-codegen-extra-tags":{db:"entry_key"},"x-order":4},value:{type:"object",description:"Entry value, 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:"value"},"x-order":5},claimedBy:{type:"string",description:"Holder that claimed the entry, if any. Set only by claim-if-absent.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"claimed_by"},"x-order":6},claimedAt:{type:"string",format:"date-time",description:"Time the entry was claimed, if any. Set only by claim-if-absent.",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:"claimed_at"},"x-order":7},createdAt:{description:"Timestamp of Blowhorn ledger entry creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn ledger entry modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}}}}},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/ledger/{blowhornLedgerEntryId}":{get:{"x-internal":["cloud"],tags:["blowhornLedger"],summary:"Get Blowhorn ledger entry by ID",operationId:"getBlowhornLedgerEntry",parameters:[{name:"blowhornLedgerEntryId",in:"path",description:"Blowhorn ledger entry 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 ledger entry response",content:{"application/json":{schema:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Ledger Entry Schema",description:`Server-returned Blowhorn ledger entry as persisted by meshery-cloud.
17
+ Ledger entries form ledger-discriminated idempotent sets keyed by
18
+ (ledger, key): recording the same pair replays idempotently, and
19
+ claim-if-absent takes the entry for a holder exactly once.
20
+ `,type:"object",additionalProperties:false,required:["id","organizationId","ledger","entryKey","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn ledger entry 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"}},ledger:{type:"string",description:"Ledger discriminator naming the idempotent set.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"ledger"},"x-order":3},entryKey:{type:"string",description:"Key within the ledger. Unique per ledger.",minLength:1,maxLength:1024,"x-go-name":"EntryKey","x-oapi-codegen-extra-tags":{db:"entry_key"},"x-order":4},value:{type:"object",description:"Entry value, 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:"value"},"x-order":5},claimedBy:{type:"string",description:"Holder that claimed the entry, if any. Set only by claim-if-absent.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"claimed_by"},"x-order":6},claimedAt:{type:"string",format:"date-time",description:"Time the entry was claimed, if any. Set only by claim-if-absent.",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:"claimed_at"},"x-order":7},createdAt:{description:"Timestamp of Blowhorn ledger entry creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn ledger entry modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}}}}},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:["blowhornLedger"],summary:"Delete Blowhorn ledger entry",operationId:"deleteBlowhornLedgerEntry",description:"Removes the ledger entry from its idempotent set.",parameters:[{name:"blowhornLedgerEntryId",in:"path",description:"Blowhorn ledger entry 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 ledger entry 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"}}}}}}},"/api/blowhorn/ledger/{blowhornLedgerEntryId}/claim":{post:{"x-internal":["cloud"],tags:["blowhornLedger"],summary:"Claim Blowhorn ledger entry if absent",operationId:"claimIfAbsentBlowhornLedgerEntry",description:`Takes the entry for the holder named by \`holder\` when unclaimed.
21
+ An already-claimed entry is refused with a 409 - exactly-once
22
+ semantics for claim-if-absent sets.
23
+ `,parameters:[{name:"blowhornLedgerEntryId",in:"path",description:"Blowhorn ledger entry 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:"Claim-if-absent payload taking an unclaimed entry for a holder.",required:["holder"],properties:{holder:{type:"string",description:"Holder taking the entry. Refused with a 409 when the entry is already claimed.",minLength:1,maxLength:255}}}}}},responses:{200:{description:"Blowhorn ledger entry claimed",content:{"application/json":{schema:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Ledger Entry Schema",description:`Server-returned Blowhorn ledger entry as persisted by meshery-cloud.
24
+ Ledger entries form ledger-discriminated idempotent sets keyed by
25
+ (ledger, key): recording the same pair replays idempotently, and
26
+ claim-if-absent takes the entry for a holder exactly once.
27
+ `,type:"object",additionalProperties:false,required:["id","organizationId","ledger","entryKey","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn ledger entry 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"}},ledger:{type:"string",description:"Ledger discriminator naming the idempotent set.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"ledger"},"x-order":3},entryKey:{type:"string",description:"Key within the ledger. Unique per ledger.",minLength:1,maxLength:1024,"x-go-name":"EntryKey","x-oapi-codegen-extra-tags":{db:"entry_key"},"x-order":4},value:{type:"object",description:"Entry value, 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:"value"},"x-order":5},claimedBy:{type:"string",description:"Holder that claimed the entry, if any. Set only by claim-if-absent.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"claimed_by"},"x-order":6},claimedAt:{type:"string",format:"date-time",description:"Time the entry was claimed, if any. Set only by claim-if-absent.",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:"claimed_at"},"x-order":7},createdAt:{description:"Timestamp of Blowhorn ledger entry creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn ledger entry modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}}}}},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"}}}},409:{description:"Conflict - the ledger entry is already claimed",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/blowhorn/contacts":{get:{"x-internal":["cloud"],tags:["blowhornLedger"],summary:"List Blowhorn contacts",operationId:"listBlowhornContacts",description:"Returns a paginated list of Blowhorn contacts in the organization of the authenticated session, optionally filtered by platform.",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"}},{name:"platform",in:"query",required:false,description:"Filter by platform (e.g. linkedin, github).",schema:{type:"string"}}],responses:{200:{description:"Blowhorn contacts page",content:{"application/json":{schema:{type:"object",description:"Paginated collection of Blowhorn contacts.",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},blowhornContacts:{type:"array",items:{"x-go-type":"BlowhornContact",$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Contact Schema",description:`Server-returned Blowhorn contact as persisted by meshery-cloud. Contacts
28
+ are upserted per platform handle and back the credential-less platform
29
+ opt-in rows.
30
+ `,type:"object",additionalProperties:false,required:["id","organizationId","platform","handle","createdAt","updatedAt"],properties:{id:{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"},"x-order":1},organizationId:{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"},"x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2},platform:{type:"string",description:"Platform the contact belongs to (e.g. linkedin, github).",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"platform"},"x-order":3},handle:{type:"string",description:"Platform-side handle identifying the contact. Unique per platform within the organization.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"handle"},"x-order":4},displayName:{type:"string",description:"Human-readable contact name.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"display_name"},"x-order":5},profileUrl:{type:"string",description:"Platform-side profile URL for the contact.",maxLength:1024,"x-oapi-codegen-extra-tags":{db:"profile_url"},"x-order":6},metadata:{type:"object",description:"Contact metadata, 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:"metadata"},"x-order":7},createdAt:{description:"Timestamp of Blowhorn contact creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn contact modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},description:"Blowhorn contacts 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:["blowhornLedger"],summary:"Upsert Blowhorn contact",operationId:"upsertBlowhornContact",description:`Creates a new Blowhorn contact when no \`id\` is supplied, or
31
+ updates the entry matching the provided \`id\`. Contacts are keyed
32
+ by the (platform, handle) pair within the organization. Ownership
33
+ is derived from the authenticated session; any client-supplied
34
+ owner is ignored.
35
+ `,requestBody:{required:true,content:{"application/json":{schema:{type:"object",description:"Payload for creating or updating a Blowhorn contact. 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:["platform","handle"],properties:{id:{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"},"x-oapi-codegen-extra-tags":{json:"id,omitempty"}},platform:{type:"string",description:"Platform the contact belongs to (e.g. linkedin, github).",minLength:1,maxLength:255},handle:{type:"string",description:"Platform-side handle identifying the contact. Unique per platform within the organization.",minLength:1,maxLength:255},displayName:{type:"string",description:"Human-readable contact name.",maxLength:255},profileUrl:{type:"string",description:"Platform-side profile URL for the contact.",maxLength:1024},metadata:{type:"object",description:"Contact metadata, 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 contact saved",content:{"application/json":{schema:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Contact Schema",description:`Server-returned Blowhorn contact as persisted by meshery-cloud. Contacts
36
+ are upserted per platform handle and back the credential-less platform
37
+ opt-in rows.
38
+ `,type:"object",additionalProperties:false,required:["id","organizationId","platform","handle","createdAt","updatedAt"],properties:{id:{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"},"x-order":1},organizationId:{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"},"x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2},platform:{type:"string",description:"Platform the contact belongs to (e.g. linkedin, github).",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"platform"},"x-order":3},handle:{type:"string",description:"Platform-side handle identifying the contact. Unique per platform within the organization.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"handle"},"x-order":4},displayName:{type:"string",description:"Human-readable contact name.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"display_name"},"x-order":5},profileUrl:{type:"string",description:"Platform-side profile URL for the contact.",maxLength:1024,"x-oapi-codegen-extra-tags":{db:"profile_url"},"x-order":6},metadata:{type:"object",description:"Contact metadata, 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:"metadata"},"x-order":7},createdAt:{description:"Timestamp of Blowhorn contact creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn contact modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}}}}},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/mentees":{get:{"x-internal":["cloud"],tags:["blowhornLedger"],summary:"List Blowhorn mentees",operationId:"listBlowhornMentees",description:"Returns a paginated list of Blowhorn mentees 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 mentees page",content:{"application/json":{schema:{type:"object",description:"Paginated collection of Blowhorn mentees.",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},blowhornMentees:{type:"array",items:{"x-go-type":"BlowhornMentee",$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Mentee Schema",description:`Server-returned Blowhorn mentee as persisted by meshery-cloud. Mentees
39
+ track mentored subjects through stages; recording a mentee and dropping
40
+ it is a single operation that stamps the drop time.
41
+ `,type:"object",additionalProperties:false,required:["id","organizationId","subject","createdAt","updatedAt"],properties:{id:{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"},"x-order":1},organizationId:{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"},"x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2},subject:{type:"string",description:"Mentored subject.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"subject"},"x-order":3},stage:{type:"string",description:"Mentorship stage of the subject.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"stage"},"x-order":4},metadata:{type:"object",description:"Mentee metadata, 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:"metadata"},"x-order":5},droppedAt:{type:"string",format:"date-time",description:"Time the mentee was recorded and dropped, if any. Set only by the record-and-drop operation.",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:"dropped_at"},"x-order":6},createdAt:{description:"Timestamp of Blowhorn mentee creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn mentee modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},description:"Blowhorn mentees 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:["blowhornLedger"],summary:"Upsert Blowhorn mentee",operationId:"upsertBlowhornMentee",description:"Creates a new Blowhorn mentee 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.\n",requestBody:{required:true,content:{"application/json":{schema:{type:"object",description:"Payload for creating or updating a Blowhorn mentee. Contains only\nclient-settable fields; the owning `organizationId` (derived from\nthe authenticated session), the server-managed `droppedAt` and\nthe server-generated `createdAt` / `updatedAt` timestamps are\nintentionally excluded.\n",required:["subject"],properties:{id:{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"},"x-oapi-codegen-extra-tags":{json:"id,omitempty"}},subject:{type:"string",description:"Mentored subject.",minLength:1,maxLength:255},stage:{type:"string",description:"Mentorship stage of the subject.",maxLength:255},metadata:{type:"object",description:"Mentee metadata, 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 mentee saved",content:{"application/json":{schema:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Mentee Schema",description:`Server-returned Blowhorn mentee as persisted by meshery-cloud. Mentees
42
+ track mentored subjects through stages; recording a mentee and dropping
43
+ it is a single operation that stamps the drop time.
44
+ `,type:"object",additionalProperties:false,required:["id","organizationId","subject","createdAt","updatedAt"],properties:{id:{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"},"x-order":1},organizationId:{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"},"x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2},subject:{type:"string",description:"Mentored subject.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"subject"},"x-order":3},stage:{type:"string",description:"Mentorship stage of the subject.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"stage"},"x-order":4},metadata:{type:"object",description:"Mentee metadata, 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:"metadata"},"x-order":5},droppedAt:{type:"string",format:"date-time",description:"Time the mentee was recorded and dropped, if any. Set only by the record-and-drop operation.",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:"dropped_at"},"x-order":6},createdAt:{description:"Timestamp of Blowhorn mentee creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn mentee modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}}}}},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/mentees/{blowhornMenteeId}":{delete:{"x-internal":["cloud"],tags:["blowhornLedger"],summary:"Delete Blowhorn mentee",operationId:"deleteBlowhornMentee",description:"Removes the Blowhorn mentee.",parameters:[{name:"blowhornMenteeId",in:"path",description:"Blowhorn mentee 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 mentee 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"}}}}}}},"/api/blowhorn/mentees/{blowhornMenteeId}/drop":{post:{"x-internal":["cloud"],tags:["blowhornLedger"],summary:"Record and drop Blowhorn mentee",operationId:"recordAndDropBlowhornMentee",description:`Records the mentee and drops it in a single operation, stamping
45
+ the drop time on the returned entry.
46
+ `,parameters:[{name:"blowhornMenteeId",in:"path",description:"Blowhorn mentee 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:false,content:{"application/json":{schema:{type:"object",description:"Record-and-drop payload.",properties:{stage:{type:"string",description:"Final mentorship stage recorded with the drop.",maxLength:255}}}}}},responses:{200:{description:"Blowhorn mentee recorded and dropped",content:{"application/json":{schema:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Mentee Schema",description:`Server-returned Blowhorn mentee as persisted by meshery-cloud. Mentees
47
+ track mentored subjects through stages; recording a mentee and dropping
48
+ it is a single operation that stamps the drop time.
49
+ `,type:"object",additionalProperties:false,required:["id","organizationId","subject","createdAt","updatedAt"],properties:{id:{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"},"x-order":1},organizationId:{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"},"x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2},subject:{type:"string",description:"Mentored subject.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"subject"},"x-order":3},stage:{type:"string",description:"Mentorship stage of the subject.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"stage"},"x-order":4},metadata:{type:"object",description:"Mentee metadata, 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:"metadata"},"x-order":5},droppedAt:{type:"string",format:"date-time",description:"Time the mentee was recorded and dropped, if any. Set only by the record-and-drop operation.",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:"dropped_at"},"x-order":6},createdAt:{description:"Timestamp of Blowhorn mentee creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn mentee modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}}}}},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"}}}}}}}},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"}}}},409:{description:"Conflict - the ledger entry is already claimed",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}},parameters:{blowhornLedgerEntryId:{name:"blowhornLedgerEntryId",in:"path",description:"Blowhorn ledger entry 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"}}},blowhornMenteeId:{name:"blowhornMenteeId",in:"path",description:"Blowhorn mentee 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:{BlowhornLedgerEntry:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Ledger Entry Schema",description:`Server-returned Blowhorn ledger entry as persisted by meshery-cloud.
50
+ Ledger entries form ledger-discriminated idempotent sets keyed by
51
+ (ledger, key): recording the same pair replays idempotently, and
52
+ claim-if-absent takes the entry for a holder exactly once.
53
+ `,type:"object",additionalProperties:false,required:["id","organizationId","ledger","entryKey","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn ledger entry 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"}},ledger:{type:"string",description:"Ledger discriminator naming the idempotent set.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"ledger"},"x-order":3},entryKey:{type:"string",description:"Key within the ledger. Unique per ledger.",minLength:1,maxLength:1024,"x-go-name":"EntryKey","x-oapi-codegen-extra-tags":{db:"entry_key"},"x-order":4},value:{type:"object",description:"Entry value, 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:"value"},"x-order":5},claimedBy:{type:"string",description:"Holder that claimed the entry, if any. Set only by claim-if-absent.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"claimed_by"},"x-order":6},claimedAt:{type:"string",format:"date-time",description:"Time the entry was claimed, if any. Set only by claim-if-absent.",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:"claimed_at"},"x-order":7},createdAt:{description:"Timestamp of Blowhorn ledger entry creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn ledger entry modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},BlowhornContact:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Contact Schema",description:`Server-returned Blowhorn contact as persisted by meshery-cloud. Contacts
54
+ are upserted per platform handle and back the credential-less platform
55
+ opt-in rows.
56
+ `,type:"object",additionalProperties:false,required:["id","organizationId","platform","handle","createdAt","updatedAt"],properties:{id:{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"},"x-order":1},organizationId:{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"},"x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2},platform:{type:"string",description:"Platform the contact belongs to (e.g. linkedin, github).",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"platform"},"x-order":3},handle:{type:"string",description:"Platform-side handle identifying the contact. Unique per platform within the organization.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"handle"},"x-order":4},displayName:{type:"string",description:"Human-readable contact name.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"display_name"},"x-order":5},profileUrl:{type:"string",description:"Platform-side profile URL for the contact.",maxLength:1024,"x-oapi-codegen-extra-tags":{db:"profile_url"},"x-order":6},metadata:{type:"object",description:"Contact metadata, 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:"metadata"},"x-order":7},createdAt:{description:"Timestamp of Blowhorn contact creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn contact modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},BlowhornMentee:{$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Mentee Schema",description:`Server-returned Blowhorn mentee as persisted by meshery-cloud. Mentees
57
+ track mentored subjects through stages; recording a mentee and dropping
58
+ it is a single operation that stamps the drop time.
59
+ `,type:"object",additionalProperties:false,required:["id","organizationId","subject","createdAt","updatedAt"],properties:{id:{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"},"x-order":1},organizationId:{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"},"x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2},subject:{type:"string",description:"Mentored subject.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"subject"},"x-order":3},stage:{type:"string",description:"Mentorship stage of the subject.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"stage"},"x-order":4},metadata:{type:"object",description:"Mentee metadata, 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:"metadata"},"x-order":5},droppedAt:{type:"string",format:"date-time",description:"Time the mentee was recorded and dropped, if any. Set only by the record-and-drop operation.",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:"dropped_at"},"x-order":6},createdAt:{description:"Timestamp of Blowhorn mentee creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn mentee modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},BlowhornLedgerPayload:{type:"object",description:"Payload for recording a Blowhorn ledger entry. Contains only\nclient-settable fields; the owning `organizationId` (derived from\nthe authenticated session), the claim columns and the\nserver-generated `createdAt` / `updatedAt` timestamps are\nintentionally excluded.\n",required:["ledger","entryKey"],properties:{id:{description:"Existing Blowhorn ledger entry ID for updates; omit on record.","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"}},ledger:{type:"string",description:"Ledger discriminator naming the idempotent set.",minLength:1,maxLength:255},entryKey:{type:"string",description:"Key within the ledger. Unique per ledger.",minLength:1,maxLength:1024,"x-go-name":"EntryKey"},value:{type:"object",description:"Entry value, 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}}},BlowhornLedgerClaimRequest:{type:"object",description:"Claim-if-absent payload taking an unclaimed entry for a holder.",required:["holder"],properties:{holder:{type:"string",description:"Holder taking the entry. Refused with a 409 when the entry is already claimed.",minLength:1,maxLength:255}}},BlowhornContactPayload:{type:"object",description:"Payload for creating or updating a Blowhorn contact. 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:["platform","handle"],properties:{id:{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"},"x-oapi-codegen-extra-tags":{json:"id,omitempty"}},platform:{type:"string",description:"Platform the contact belongs to (e.g. linkedin, github).",minLength:1,maxLength:255},handle:{type:"string",description:"Platform-side handle identifying the contact. Unique per platform within the organization.",minLength:1,maxLength:255},displayName:{type:"string",description:"Human-readable contact name.",maxLength:255},profileUrl:{type:"string",description:"Platform-side profile URL for the contact.",maxLength:1024},metadata:{type:"object",description:"Contact metadata, 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}}},BlowhornMenteePayload:{type:"object",description:"Payload for creating or updating a Blowhorn mentee. Contains only\nclient-settable fields; the owning `organizationId` (derived from\nthe authenticated session), the server-managed `droppedAt` and\nthe server-generated `createdAt` / `updatedAt` timestamps are\nintentionally excluded.\n",required:["subject"],properties:{id:{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"},"x-oapi-codegen-extra-tags":{json:"id,omitempty"}},subject:{type:"string",description:"Mentored subject.",minLength:1,maxLength:255},stage:{type:"string",description:"Mentorship stage of the subject.",maxLength:255},metadata:{type:"object",description:"Mentee metadata, 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}}},BlowhornMenteeDropRequest:{type:"object",description:"Record-and-drop payload.",properties:{stage:{type:"string",description:"Final mentorship stage recorded with the drop.",maxLength:255}}},BlowhornLedgerPage:{type:"object",description:"Paginated collection of Blowhorn ledger entries.",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},blowhornLedgerEntries:{type:"array",items:{"x-go-type":"BlowhornLedgerEntry",$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Ledger Entry Schema",description:`Server-returned Blowhorn ledger entry as persisted by meshery-cloud.
60
+ Ledger entries form ledger-discriminated idempotent sets keyed by
61
+ (ledger, key): recording the same pair replays idempotently, and
62
+ claim-if-absent takes the entry for a holder exactly once.
63
+ `,type:"object",additionalProperties:false,required:["id","organizationId","ledger","entryKey","createdAt","updatedAt"],properties:{id:{description:"Server-generated Blowhorn ledger entry 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"}},ledger:{type:"string",description:"Ledger discriminator naming the idempotent set.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"ledger"},"x-order":3},entryKey:{type:"string",description:"Key within the ledger. Unique per ledger.",minLength:1,maxLength:1024,"x-go-name":"EntryKey","x-oapi-codegen-extra-tags":{db:"entry_key"},"x-order":4},value:{type:"object",description:"Entry value, 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:"value"},"x-order":5},claimedBy:{type:"string",description:"Holder that claimed the entry, if any. Set only by claim-if-absent.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"claimed_by"},"x-order":6},claimedAt:{type:"string",format:"date-time",description:"Time the entry was claimed, if any. Set only by claim-if-absent.",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:"claimed_at"},"x-order":7},createdAt:{description:"Timestamp of Blowhorn ledger entry creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn ledger entry modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},description:"Blowhorn ledger entries included on this page of results."}}},BlowhornContactPage:{type:"object",description:"Paginated collection of Blowhorn contacts.",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},blowhornContacts:{type:"array",items:{"x-go-type":"BlowhornContact",$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Contact Schema",description:`Server-returned Blowhorn contact as persisted by meshery-cloud. Contacts
64
+ are upserted per platform handle and back the credential-less platform
65
+ opt-in rows.
66
+ `,type:"object",additionalProperties:false,required:["id","organizationId","platform","handle","createdAt","updatedAt"],properties:{id:{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"},"x-order":1},organizationId:{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"},"x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2},platform:{type:"string",description:"Platform the contact belongs to (e.g. linkedin, github).",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"platform"},"x-order":3},handle:{type:"string",description:"Platform-side handle identifying the contact. Unique per platform within the organization.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"handle"},"x-order":4},displayName:{type:"string",description:"Human-readable contact name.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"display_name"},"x-order":5},profileUrl:{type:"string",description:"Platform-side profile URL for the contact.",maxLength:1024,"x-oapi-codegen-extra-tags":{db:"profile_url"},"x-order":6},metadata:{type:"object",description:"Contact metadata, 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:"metadata"},"x-order":7},createdAt:{description:"Timestamp of Blowhorn contact creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn contact modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},description:"Blowhorn contacts included on this page of results."}}},BlowhornMenteePage:{type:"object",description:"Paginated collection of Blowhorn mentees.",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},blowhornMentees:{type:"array",items:{"x-go-type":"BlowhornMentee",$schema:"http://json-schema.org/draft-07/schema#",title:"Blowhorn Mentee Schema",description:`Server-returned Blowhorn mentee as persisted by meshery-cloud. Mentees
67
+ track mentored subjects through stages; recording a mentee and dropping
68
+ it is a single operation that stamps the drop time.
69
+ `,type:"object",additionalProperties:false,required:["id","organizationId","subject","createdAt","updatedAt"],properties:{id:{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"},"x-order":1},organizationId:{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"},"x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id"},"x-order":2},subject:{type:"string",description:"Mentored subject.",minLength:1,maxLength:255,"x-oapi-codegen-extra-tags":{db:"subject"},"x-order":3},stage:{type:"string",description:"Mentorship stage of the subject.",maxLength:255,"x-oapi-codegen-extra-tags":{db:"stage"},"x-order":4},metadata:{type:"object",description:"Mentee metadata, 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:"metadata"},"x-order":5},droppedAt:{type:"string",format:"date-time",description:"Time the mentee was recorded and dropped, if any. Set only by the record-and-drop operation.",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:"dropped_at"},"x-order":6},createdAt:{description:"Timestamp of Blowhorn mentee creation.","x-oapi-codegen-extra-tags":{db:"created_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp of last Blowhorn mentee modification.","x-oapi-codegen-extra-tags":{db:"updated_at"},"x-order":8,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},description:"Blowhorn mentees included on this page of results."}}}}}},t=e;export{t as default};