@stigmer/protos 0.0.72 → 0.0.73

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 (160) hide show
  1. package/ai/stigmer/agentic/agent/v1/command_pb.js +2 -2
  2. package/ai/stigmer/agentic/agent/v1/command_pb.js.map +1 -1
  3. package/ai/stigmer/agentic/agent/v1/query_pb.js +2 -2
  4. package/ai/stigmer/agentic/agent/v1/query_pb.js.map +1 -1
  5. package/ai/stigmer/agentic/agentexecution/v1/command_pb.js +2 -2
  6. package/ai/stigmer/agentic/agentexecution/v1/command_pb.js.map +1 -1
  7. package/ai/stigmer/agentic/agentexecution/v1/query_connect.d.ts +2 -8
  8. package/ai/stigmer/agentic/agentexecution/v1/query_connect.js +2 -8
  9. package/ai/stigmer/agentic/agentexecution/v1/query_connect.js.map +1 -1
  10. package/ai/stigmer/agentic/agentexecution/v1/query_pb.d.ts +2 -8
  11. package/ai/stigmer/agentic/agentexecution/v1/query_pb.js +2 -2
  12. package/ai/stigmer/agentic/agentexecution/v1/query_pb.js.map +1 -1
  13. package/ai/stigmer/agentic/agentinstance/v1/command_pb.js +2 -2
  14. package/ai/stigmer/agentic/agentinstance/v1/command_pb.js.map +1 -1
  15. package/ai/stigmer/agentic/agentinstance/v1/query_pb.js +2 -2
  16. package/ai/stigmer/agentic/agentinstance/v1/query_pb.js.map +1 -1
  17. package/ai/stigmer/agentic/environment/v1/command_pb.js +2 -2
  18. package/ai/stigmer/agentic/environment/v1/command_pb.js.map +1 -1
  19. package/ai/stigmer/agentic/environment/v1/query_pb.js +2 -2
  20. package/ai/stigmer/agentic/environment/v1/query_pb.js.map +1 -1
  21. package/ai/stigmer/agentic/executioncontext/v1/command_pb.js +2 -2
  22. package/ai/stigmer/agentic/executioncontext/v1/command_pb.js.map +1 -1
  23. package/ai/stigmer/agentic/executioncontext/v1/query_pb.js +2 -2
  24. package/ai/stigmer/agentic/executioncontext/v1/query_pb.js.map +1 -1
  25. package/ai/stigmer/agentic/mcpserver/v1/command_pb.js +2 -2
  26. package/ai/stigmer/agentic/mcpserver/v1/command_pb.js.map +1 -1
  27. package/ai/stigmer/agentic/mcpserver/v1/query_pb.js +2 -2
  28. package/ai/stigmer/agentic/mcpserver/v1/query_pb.js.map +1 -1
  29. package/ai/stigmer/agentic/session/v1/command_pb.js +2 -2
  30. package/ai/stigmer/agentic/session/v1/command_pb.js.map +1 -1
  31. package/ai/stigmer/agentic/session/v1/query_pb.js +2 -2
  32. package/ai/stigmer/agentic/session/v1/query_pb.js.map +1 -1
  33. package/ai/stigmer/agentic/skill/v1/command_pb.js +2 -2
  34. package/ai/stigmer/agentic/skill/v1/command_pb.js.map +1 -1
  35. package/ai/stigmer/agentic/skill/v1/query_pb.js +2 -2
  36. package/ai/stigmer/agentic/skill/v1/query_pb.js.map +1 -1
  37. package/ai/stigmer/agentic/workflow/v1/command_pb.js +2 -2
  38. package/ai/stigmer/agentic/workflow/v1/command_pb.js.map +1 -1
  39. package/ai/stigmer/agentic/workflow/v1/query_pb.js +2 -2
  40. package/ai/stigmer/agentic/workflow/v1/query_pb.js.map +1 -1
  41. package/ai/stigmer/agentic/workflowexecution/v1/command_pb.js +2 -2
  42. package/ai/stigmer/agentic/workflowexecution/v1/command_pb.js.map +1 -1
  43. package/ai/stigmer/agentic/workflowexecution/v1/query_pb.js +2 -2
  44. package/ai/stigmer/agentic/workflowexecution/v1/query_pb.js.map +1 -1
  45. package/ai/stigmer/agentic/workflowinstance/v1/command_pb.js +2 -2
  46. package/ai/stigmer/agentic/workflowinstance/v1/command_pb.js.map +1 -1
  47. package/ai/stigmer/agentic/workflowinstance/v1/query_pb.js +2 -2
  48. package/ai/stigmer/agentic/workflowinstance/v1/query_pb.js.map +1 -1
  49. package/ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb.d.ts +6 -0
  50. package/ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb.js +7 -1
  51. package/ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb.js.map +1 -1
  52. package/ai/stigmer/commons/apiresource/apiresourcekind/authorization_config_pb.d.ts +28 -0
  53. package/ai/stigmer/commons/apiresource/apiresourcekind/authorization_config_pb.js +2 -1
  54. package/ai/stigmer/commons/apiresource/apiresourcekind/authorization_config_pb.js.map +1 -1
  55. package/ai/stigmer/{iam/iampolicy/v1/rpcauthorization/io_pb.d.ts → commons/rpc/authorization_config_pb.d.ts} +9 -9
  56. package/ai/stigmer/commons/rpc/authorization_config_pb.js +16 -0
  57. package/ai/stigmer/commons/rpc/authorization_config_pb.js.map +1 -0
  58. package/ai/stigmer/{iam/iampolicy/v1/rpcauthorization → commons/rpc}/method_options_pb.d.ts +4 -4
  59. package/ai/stigmer/commons/rpc/method_options_pb.js +29 -0
  60. package/ai/stigmer/commons/rpc/method_options_pb.js.map +1 -0
  61. package/ai/stigmer/iam/apikey/v1/command_pb.js +2 -2
  62. package/ai/stigmer/iam/apikey/v1/command_pb.js.map +1 -1
  63. package/ai/stigmer/iam/apikey/v1/query_pb.js +2 -2
  64. package/ai/stigmer/iam/apikey/v1/query_pb.js.map +1 -1
  65. package/ai/stigmer/iam/iampolicy/v1/command_connect.d.ts +33 -0
  66. package/ai/stigmer/iam/iampolicy/v1/command_connect.js +33 -0
  67. package/ai/stigmer/iam/iampolicy/v1/command_connect.js.map +1 -1
  68. package/ai/stigmer/iam/iampolicy/v1/command_pb.d.ts +33 -0
  69. package/ai/stigmer/iam/iampolicy/v1/command_pb.js +3 -2
  70. package/ai/stigmer/iam/iampolicy/v1/command_pb.js.map +1 -1
  71. package/ai/stigmer/iam/iampolicy/v1/query_connect.d.ts +66 -0
  72. package/ai/stigmer/iam/iampolicy/v1/query_connect.js +66 -0
  73. package/ai/stigmer/iam/iampolicy/v1/query_connect.js.map +1 -1
  74. package/ai/stigmer/iam/iampolicy/v1/query_pb.d.ts +64 -1
  75. package/ai/stigmer/iam/iampolicy/v1/query_pb.js +2 -2
  76. package/ai/stigmer/iam/iampolicy/v1/query_pb.js.map +1 -1
  77. package/ai/stigmer/iam/iampolicy/v1/spec_pb.d.ts +1 -1
  78. package/ai/stigmer/iam/identityaccount/v1/command_connect.d.ts +61 -1
  79. package/ai/stigmer/iam/identityaccount/v1/command_connect.js +61 -1
  80. package/ai/stigmer/iam/identityaccount/v1/command_connect.js.map +1 -1
  81. package/ai/stigmer/iam/identityaccount/v1/command_pb.d.ts +59 -2
  82. package/ai/stigmer/iam/identityaccount/v1/command_pb.js +2 -2
  83. package/ai/stigmer/iam/identityaccount/v1/command_pb.js.map +1 -1
  84. package/ai/stigmer/iam/identityaccount/v1/enum_pb.d.ts +1 -1
  85. package/ai/stigmer/iam/identityaccount/v1/enum_pb.js +1 -1
  86. package/ai/stigmer/iam/identityaccount/v1/io_pb.d.ts +219 -0
  87. package/ai/stigmer/iam/identityaccount/v1/io_pb.js +22 -1
  88. package/ai/stigmer/iam/identityaccount/v1/io_pb.js.map +1 -1
  89. package/ai/stigmer/iam/identityaccount/v1/query_connect.d.ts +26 -2
  90. package/ai/stigmer/iam/identityaccount/v1/query_connect.js +26 -2
  91. package/ai/stigmer/iam/identityaccount/v1/query_connect.js.map +1 -1
  92. package/ai/stigmer/iam/identityaccount/v1/query_pb.d.ts +26 -3
  93. package/ai/stigmer/iam/identityaccount/v1/query_pb.js +2 -2
  94. package/ai/stigmer/iam/identityaccount/v1/query_pb.js.map +1 -1
  95. package/ai/stigmer/iam/identityaccount/v1/spec_pb.d.ts +9 -7
  96. package/ai/stigmer/iam/identityaccount/v1/spec_pb.js.map +1 -1
  97. package/ai/stigmer/iam/identityprovider/v1/command_pb.js +2 -2
  98. package/ai/stigmer/iam/identityprovider/v1/command_pb.js.map +1 -1
  99. package/ai/stigmer/iam/identityprovider/v1/io_pb.d.ts +88 -0
  100. package/ai/stigmer/iam/identityprovider/v1/io_pb.js +16 -1
  101. package/ai/stigmer/iam/identityprovider/v1/io_pb.js.map +1 -1
  102. package/ai/stigmer/iam/identityprovider/v1/query_connect.d.ts +39 -0
  103. package/ai/stigmer/iam/identityprovider/v1/query_connect.js +39 -0
  104. package/ai/stigmer/iam/identityprovider/v1/query_connect.js.map +1 -1
  105. package/ai/stigmer/iam/identityprovider/v1/query_pb.d.ts +38 -0
  106. package/ai/stigmer/iam/identityprovider/v1/query_pb.js +3 -2
  107. package/ai/stigmer/iam/identityprovider/v1/query_pb.js.map +1 -1
  108. package/ai/stigmer/iam/identityprovider/v1/spec_pb.d.ts +60 -7
  109. package/ai/stigmer/iam/identityprovider/v1/spec_pb.js +1 -1
  110. package/ai/stigmer/iam/identityprovider/v1/spec_pb.js.map +1 -1
  111. package/ai/stigmer/iam/invitation/v1/api_pb.d.ts +132 -0
  112. package/ai/stigmer/iam/invitation/v1/api_pb.js +30 -0
  113. package/ai/stigmer/iam/invitation/v1/api_pb.js.map +1 -0
  114. package/ai/stigmer/iam/invitation/v1/command_connect.d.ts +79 -0
  115. package/ai/stigmer/iam/invitation/v1/command_connect.js +85 -0
  116. package/ai/stigmer/iam/invitation/v1/command_connect.js.map +1 -0
  117. package/ai/stigmer/iam/invitation/v1/command_pb.d.ts +80 -0
  118. package/ai/stigmer/iam/invitation/v1/command_pb.js +19 -0
  119. package/ai/stigmer/iam/invitation/v1/command_pb.js.map +1 -0
  120. package/ai/stigmer/iam/invitation/v1/enum_pb.d.ts +49 -0
  121. package/ai/stigmer/iam/invitation/v1/enum_pb.js +54 -0
  122. package/ai/stigmer/iam/invitation/v1/enum_pb.js.map +1 -0
  123. package/ai/stigmer/iam/invitation/v1/io_pb.d.ts +173 -0
  124. package/ai/stigmer/iam/invitation/v1/io_pb.js +43 -0
  125. package/ai/stigmer/iam/invitation/v1/io_pb.js.map +1 -0
  126. package/ai/stigmer/iam/invitation/v1/query_connect.d.ts +68 -0
  127. package/ai/stigmer/iam/invitation/v1/query_connect.js +74 -0
  128. package/ai/stigmer/iam/invitation/v1/query_connect.js.map +1 -0
  129. package/ai/stigmer/iam/invitation/v1/query_pb.d.ts +69 -0
  130. package/ai/stigmer/iam/invitation/v1/query_pb.js +19 -0
  131. package/ai/stigmer/iam/invitation/v1/query_pb.js.map +1 -0
  132. package/ai/stigmer/iam/invitation/v1/spec_pb.d.ts +77 -0
  133. package/ai/stigmer/iam/invitation/v1/spec_pb.js +17 -0
  134. package/ai/stigmer/iam/invitation/v1/spec_pb.js.map +1 -0
  135. package/ai/stigmer/iam/v1/enum_pb.d.ts +177 -0
  136. package/ai/stigmer/iam/v1/enum_pb.js +183 -0
  137. package/ai/stigmer/iam/v1/enum_pb.js.map +1 -0
  138. package/ai/stigmer/platform/github/v1/service_pb.js +2 -2
  139. package/ai/stigmer/platform/github/v1/service_pb.js.map +1 -1
  140. package/ai/stigmer/search/v1/io_pb.d.ts +15 -0
  141. package/ai/stigmer/search/v1/io_pb.js +1 -1
  142. package/ai/stigmer/search/v1/io_pb.js.map +1 -1
  143. package/ai/stigmer/search/v1/query_pb.js +2 -2
  144. package/ai/stigmer/search/v1/query_pb.js.map +1 -1
  145. package/ai/stigmer/tenancy/organization/v1/command_pb.js +2 -2
  146. package/ai/stigmer/tenancy/organization/v1/command_pb.js.map +1 -1
  147. package/ai/stigmer/tenancy/organization/v1/query_pb.js +2 -2
  148. package/ai/stigmer/tenancy/organization/v1/query_pb.js.map +1 -1
  149. package/ai/stigmer/tenancy/project/v1/command_pb.js +2 -2
  150. package/ai/stigmer/tenancy/project/v1/command_pb.js.map +1 -1
  151. package/ai/stigmer/tenancy/project/v1/query_pb.js +2 -2
  152. package/ai/stigmer/tenancy/project/v1/query_pb.js.map +1 -1
  153. package/package.json +1 -1
  154. package/ai/stigmer/iam/iampolicy/v1/rpcauthorization/iam_permission_pb.d.ts +0 -198
  155. package/ai/stigmer/iam/iampolicy/v1/rpcauthorization/iam_permission_pb.js +0 -203
  156. package/ai/stigmer/iam/iampolicy/v1/rpcauthorization/iam_permission_pb.js.map +0 -1
  157. package/ai/stigmer/iam/iampolicy/v1/rpcauthorization/io_pb.js +0 -16
  158. package/ai/stigmer/iam/iampolicy/v1/rpcauthorization/io_pb.js.map +0 -1
  159. package/ai/stigmer/iam/iampolicy/v1/rpcauthorization/method_options_pb.js +0 -29
  160. package/ai/stigmer/iam/iampolicy/v1/rpcauthorization/method_options_pb.js.map +0 -1
@@ -7,7 +7,7 @@ import { file_buf_validate_validate } from "../../../../../buf/validate/validate
7
7
  /**
8
8
  * Describes the file ai/stigmer/iam/identityprovider/v1/io.proto.
9
9
  */
10
- export const file_ai_stigmer_iam_identityprovider_v1_io = /*@__PURE__*/ fileDesc("CithaS9zdGlnbWVyL2lhbS9pZGVudGl0eXByb3ZpZGVyL3YxL2lvLnByb3RvEiJhaS5zdGlnbWVyLmlhbS5pZGVudGl0eXByb3ZpZGVyLnYxIi4KEklkZW50aXR5UHJvdmlkZXJJZBIYCgV2YWx1ZRgBIAEoCUIJukgGcgQQARhAIloKEUlkZW50aXR5UHJvdmlkZXJzEkUKB2VudHJpZXMYASADKAsyNC5haS5zdGlnbWVyLmlhbS5pZGVudGl0eXByb3ZpZGVyLnYxLklkZW50aXR5UHJvdmlkZXIicgoUSWRlbnRpdHlQcm92aWRlckxpc3QSEwoLdG90YWxfcGFnZXMYASABKAUSRQoHZW50cmllcxgCIAMoCzI0LmFpLnN0aWdtZXIuaWFtLmlkZW50aXR5cHJvdmlkZXIudjEuSWRlbnRpdHlQcm92aWRlcmIGcHJvdG8z", [file_ai_stigmer_iam_identityprovider_v1_api, file_buf_validate_validate]);
10
+ export const file_ai_stigmer_iam_identityprovider_v1_io = /*@__PURE__*/ fileDesc("CithaS9zdGlnbWVyL2lhbS9pZGVudGl0eXByb3ZpZGVyL3YxL2lvLnByb3RvEiJhaS5zdGlnbWVyLmlhbS5pZGVudGl0eXByb3ZpZGVyLnYxIi4KEklkZW50aXR5UHJvdmlkZXJJZBIYCgV2YWx1ZRgBIAEoCUIJukgGcgQQARhAIloKEUlkZW50aXR5UHJvdmlkZXJzEkUKB2VudHJpZXMYASADKAsyNC5haS5zdGlnbWVyLmlhbS5pZGVudGl0eXByb3ZpZGVyLnYxLklkZW50aXR5UHJvdmlkZXIicgoUSWRlbnRpdHlQcm92aWRlckxpc3QSEwoLdG90YWxfcGFnZXMYASABKAUSRQoHZW50cmllcxgCIAMoCzI0LmFpLnN0aWdtZXIuaWFtLmlkZW50aXR5cHJvdmlkZXIudjEuSWRlbnRpdHlQcm92aWRlciI3Ch9MaXN0SWRlbnRpdHlQcm92aWRlcnNCeU9yZ0lucHV0EhQKA29yZxgBIAEoCUIHukgEcgIQASItChVPcmdhbml6YXRpb25Tc29Mb29rdXASFAoDb3JnGAEgASgJQge6SARyAhABImoKD1Nzb1Byb3ZpZGVySW5mbxIUCgxkaXNwbGF5X25hbWUYASABKAkSFgoOb2lkY19jbGllbnRfaWQYAiABKAkSDgoGaXNzdWVyGAMgASgJEhkKEWV4cGVjdGVkX2F1ZGllbmNlGAQgASgJYgZwcm90bzM", [file_ai_stigmer_iam_identityprovider_v1_api, file_buf_validate_validate]);
11
11
  /**
12
12
  * Describes the message ai.stigmer.iam.identityprovider.v1.IdentityProviderId.
13
13
  * Use `create(IdentityProviderIdSchema)` to create a new message.
@@ -23,4 +23,19 @@ export const IdentityProvidersSchema = /*@__PURE__*/ messageDesc(file_ai_stigmer
23
23
  * Use `create(IdentityProviderListSchema)` to create a new message.
24
24
  */
25
25
  export const IdentityProviderListSchema = /*@__PURE__*/ messageDesc(file_ai_stigmer_iam_identityprovider_v1_io, 2);
26
+ /**
27
+ * Describes the message ai.stigmer.iam.identityprovider.v1.ListIdentityProvidersByOrgInput.
28
+ * Use `create(ListIdentityProvidersByOrgInputSchema)` to create a new message.
29
+ */
30
+ export const ListIdentityProvidersByOrgInputSchema = /*@__PURE__*/ messageDesc(file_ai_stigmer_iam_identityprovider_v1_io, 3);
31
+ /**
32
+ * Describes the message ai.stigmer.iam.identityprovider.v1.OrganizationSsoLookup.
33
+ * Use `create(OrganizationSsoLookupSchema)` to create a new message.
34
+ */
35
+ export const OrganizationSsoLookupSchema = /*@__PURE__*/ messageDesc(file_ai_stigmer_iam_identityprovider_v1_io, 4);
36
+ /**
37
+ * Describes the message ai.stigmer.iam.identityprovider.v1.SsoProviderInfo.
38
+ * Use `create(SsoProviderInfoSchema)` to create a new message.
39
+ */
40
+ export const SsoProviderInfoSchema = /*@__PURE__*/ messageDesc(file_ai_stigmer_iam_identityprovider_v1_io, 5);
26
41
  //# sourceMappingURL=io_pb.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"io_pb.js","sourceRoot":"","sources":["../../../../../../ai/stigmer/iam/identityprovider/v1/io_pb.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,+HAA+H;AAC/H,oBAAoB;AAGpB,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAErE,OAAO,EAAE,2CAA2C,EAAE,MAAM,UAAU,CAAC;AACvE,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AAGrF;;GAEG;AACH,MAAM,CAAC,MAAM,0CAA0C,GAAY,aAAa,CAC9E,QAAQ,CAAC,8cAA8c,EAAE,CAAC,2CAA2C,EAAE,0BAA0B,CAAC,CAAC,CAAC;AAgBtiB;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAmC,aAAa,CACnF,WAAW,CAAC,0CAA0C,EAAE,CAAC,CAAC,CAAC;AAgB7D;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAkC,aAAa,CACjF,WAAW,CAAC,0CAA0C,EAAE,CAAC,CAAC,CAAC;AAuB7D;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAqC,aAAa,CACvF,WAAW,CAAC,0CAA0C,EAAE,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"io_pb.js","sourceRoot":"","sources":["../../../../../../ai/stigmer/iam/identityprovider/v1/io_pb.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,+HAA+H;AAC/H,oBAAoB;AAGpB,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAErE,OAAO,EAAE,2CAA2C,EAAE,MAAM,UAAU,CAAC;AACvE,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AAGrF;;GAEG;AACH,MAAM,CAAC,MAAM,0CAA0C,GAAY,aAAa,CAC9E,QAAQ,CAAC,yuBAAyuB,EAAE,CAAC,2CAA2C,EAAE,0BAA0B,CAAC,CAAC,CAAC;AAgBj0B;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAmC,aAAa,CACnF,WAAW,CAAC,0CAA0C,EAAE,CAAC,CAAC,CAAC;AAgB7D;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAkC,aAAa,CACjF,WAAW,CAAC,0CAA0C,EAAE,CAAC,CAAC,CAAC;AAuB7D;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAqC,aAAa,CACvF,WAAW,CAAC,0CAA0C,EAAE,CAAC,CAAC,CAAC;AAiB7D;;;GAGG;AACH,MAAM,CAAC,MAAM,qCAAqC,GAAgD,aAAa,CAC7G,WAAW,CAAC,0CAA0C,EAAE,CAAC,CAAC,CAAC;AAkB7D;;;GAGG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAsC,aAAa,CACzF,WAAW,CAAC,0CAA0C,EAAE,CAAC,CAAC,CAAC;AAkD7D;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAgC,aAAa,CAC7E,WAAW,CAAC,0CAA0C,EAAE,CAAC,CAAC,CAAC"}
@@ -38,5 +38,44 @@ export declare const IdentityProviderQueryController: {
38
38
  readonly O: any;
39
39
  readonly kind: any;
40
40
  };
41
+ /**
42
+ * List all identity providers belonging to an organization.
43
+ *
44
+ * Returns every IdentityProvider whose metadata.org matches the input org.
45
+ * Typically a small set (1-3 per org), so results are not paginated.
46
+ *
47
+ * @internal
48
+ * Authorization: Requires can_view permission on the organization resource.
49
+ *
50
+ * @generated from rpc ai.stigmer.iam.identityprovider.v1.IdentityProviderQueryController.listByOrg
51
+ */
52
+ readonly listByOrg: {
53
+ readonly name: "listByOrg";
54
+ readonly I: any;
55
+ readonly O: any;
56
+ readonly kind: any;
57
+ };
58
+ /**
59
+ * Look up the SSO identity provider for an organization.
60
+ *
61
+ * Returns the SSO-relevant projection (display name, OIDC client ID, issuer)
62
+ * of the IdentityProvider where is_sso_provider is true for the given org.
63
+ * Returns NOT_FOUND if the organization has no SSO provider configured.
64
+ *
65
+ * This endpoint is called by the web app's login page before the user has
66
+ * authenticated, so it requires no authorization. The response intentionally
67
+ * omits internal IdP configuration (JWKS URI, rate limits, userinfo endpoint).
68
+ *
69
+ * @internal
70
+ * Authorization: none — unauthenticated, public endpoint for login page rendering.
71
+ *
72
+ * @generated from rpc ai.stigmer.iam.identityprovider.v1.IdentityProviderQueryController.getSsoProvider
73
+ */
74
+ readonly getSsoProvider: {
75
+ readonly name: "getSsoProvider";
76
+ readonly I: any;
77
+ readonly O: any;
78
+ readonly kind: any;
79
+ };
41
80
  };
42
81
  };
@@ -43,6 +43,45 @@ export const IdentityProviderQueryController = {
43
43
  O: IdentityProvider,
44
44
  kind: MethodKind.Unary,
45
45
  },
46
+ /**
47
+ * List all identity providers belonging to an organization.
48
+ *
49
+ * Returns every IdentityProvider whose metadata.org matches the input org.
50
+ * Typically a small set (1-3 per org), so results are not paginated.
51
+ *
52
+ * @internal
53
+ * Authorization: Requires can_view permission on the organization resource.
54
+ *
55
+ * @generated from rpc ai.stigmer.iam.identityprovider.v1.IdentityProviderQueryController.listByOrg
56
+ */
57
+ listByOrg: {
58
+ name: "listByOrg",
59
+ I: ListIdentityProvidersByOrgInput,
60
+ O: IdentityProviders,
61
+ kind: MethodKind.Unary,
62
+ },
63
+ /**
64
+ * Look up the SSO identity provider for an organization.
65
+ *
66
+ * Returns the SSO-relevant projection (display name, OIDC client ID, issuer)
67
+ * of the IdentityProvider where is_sso_provider is true for the given org.
68
+ * Returns NOT_FOUND if the organization has no SSO provider configured.
69
+ *
70
+ * This endpoint is called by the web app's login page before the user has
71
+ * authenticated, so it requires no authorization. The response intentionally
72
+ * omits internal IdP configuration (JWKS URI, rate limits, userinfo endpoint).
73
+ *
74
+ * @internal
75
+ * Authorization: none — unauthenticated, public endpoint for login page rendering.
76
+ *
77
+ * @generated from rpc ai.stigmer.iam.identityprovider.v1.IdentityProviderQueryController.getSsoProvider
78
+ */
79
+ getSsoProvider: {
80
+ name: "getSsoProvider",
81
+ I: OrganizationSsoLookup,
82
+ O: SsoProviderInfo,
83
+ kind: MethodKind.Unary,
84
+ },
46
85
  }
47
86
  };
48
87
  //# sourceMappingURL=query_connect.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"query_connect.js","sourceRoot":"","sources":["../../../../../../ai/stigmer/iam/identityprovider/v1/query_connect.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,kIAAkI;AAClI,oBAAoB;AACpB,cAAc;AAId,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD;;;;GAIG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG;IAC7C,QAAQ,EAAE,oEAAoE;IAC9E,OAAO,EAAE;QACP;;;;;;;WAOG;QACH,GAAG,EAAE;YACH,IAAI,EAAE,KAAK;YACX,CAAC,EAAE,aAAa;YAChB,CAAC,EAAE,gBAAgB;YACnB,IAAI,EAAE,UAAU,CAAC,KAAK;SACvB;QACD;;;;;;;;;;;WAWG;QACH,cAAc,EAAE;YACd,IAAI,EAAE,gBAAgB;YACtB,CAAC,EAAE,oBAAoB;YACvB,CAAC,EAAE,gBAAgB;YACnB,IAAI,EAAE,UAAU,CAAC,KAAK;SACvB;KACF;CACO,CAAC"}
1
+ {"version":3,"file":"query_connect.js","sourceRoot":"","sources":["../../../../../../ai/stigmer/iam/identityprovider/v1/query_connect.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,kIAAkI;AAClI,oBAAoB;AACpB,cAAc;AAId,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGhD;;;;GAIG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG;IAC7C,QAAQ,EAAE,oEAAoE;IAC9E,OAAO,EAAE;QACP;;;;;;;WAOG;QACH,GAAG,EAAE;YACH,IAAI,EAAE,KAAK;YACX,CAAC,EAAE,aAAa;YAChB,CAAC,EAAE,gBAAgB;YACnB,IAAI,EAAE,UAAU,CAAC,KAAK;SACvB;QACD;;;;;;;;;;;WAWG;QACH,cAAc,EAAE;YACd,IAAI,EAAE,gBAAgB;YACtB,CAAC,EAAE,oBAAoB;YACvB,CAAC,EAAE,gBAAgB;YACnB,IAAI,EAAE,UAAU,CAAC,KAAK;SACvB;QACD;;;;;;;;;;WAUG;QACH,SAAS,EAAE;YACT,IAAI,EAAE,WAAW;YACjB,CAAC,EAAE,+BAA+B;YAClC,CAAC,EAAE,iBAAiB;YACpB,IAAI,EAAE,UAAU,CAAC,KAAK;SACvB;QACD;;;;;;;;;;;;;;;WAeG;QACH,cAAc,EAAE;YACd,IAAI,EAAE,gBAAgB;YACtB,CAAC,EAAE,qBAAqB;YACxB,CAAC,EAAE,eAAe;YAClB,IAAI,EAAE,UAAU,CAAC,KAAK;SACvB;KACF;CACO,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import type { GenFile, GenService } from "@bufbuild/protobuf/codegenv1";
2
2
  import type { ApiResourceIdSchema, ApiResourceReferenceSchema } from "../../../commons/apiresource/io_pb";
3
3
  import type { IdentityProviderSchema } from "./api_pb";
4
+ import type { IdentityProvidersSchema, ListIdentityProvidersByOrgInputSchema, OrganizationSsoLookupSchema, SsoProviderInfoSchema } from "./io_pb";
4
5
  /**
5
6
  * Describes the file ai/stigmer/iam/identityprovider/v1/query.proto.
6
7
  */
@@ -41,4 +42,41 @@ export declare const IdentityProviderQueryController: GenService<{
41
42
  input: typeof ApiResourceReferenceSchema;
42
43
  output: typeof IdentityProviderSchema;
43
44
  };
45
+ /**
46
+ * List all identity providers belonging to an organization.
47
+ *
48
+ * Returns every IdentityProvider whose metadata.org matches the input org.
49
+ * Typically a small set (1-3 per org), so results are not paginated.
50
+ *
51
+ * @internal
52
+ * Authorization: Requires can_view permission on the organization resource.
53
+ *
54
+ * @generated from rpc ai.stigmer.iam.identityprovider.v1.IdentityProviderQueryController.listByOrg
55
+ */
56
+ listByOrg: {
57
+ methodKind: "unary";
58
+ input: typeof ListIdentityProvidersByOrgInputSchema;
59
+ output: typeof IdentityProvidersSchema;
60
+ };
61
+ /**
62
+ * Look up the SSO identity provider for an organization.
63
+ *
64
+ * Returns the SSO-relevant projection (display name, OIDC client ID, issuer)
65
+ * of the IdentityProvider where is_sso_provider is true for the given org.
66
+ * Returns NOT_FOUND if the organization has no SSO provider configured.
67
+ *
68
+ * This endpoint is called by the web app's login page before the user has
69
+ * authenticated, so it requires no authorization. The response intentionally
70
+ * omits internal IdP configuration (JWKS URI, rate limits, userinfo endpoint).
71
+ *
72
+ * @internal
73
+ * Authorization: none — unauthenticated, public endpoint for login page rendering.
74
+ *
75
+ * @generated from rpc ai.stigmer.iam.identityprovider.v1.IdentityProviderQueryController.getSsoProvider
76
+ */
77
+ getSsoProvider: {
78
+ methodKind: "unary";
79
+ input: typeof OrganizationSsoLookupSchema;
80
+ output: typeof SsoProviderInfoSchema;
81
+ };
44
82
  }>;
@@ -4,12 +4,13 @@
4
4
  import { fileDesc, serviceDesc } from "@bufbuild/protobuf/codegenv1";
5
5
  import { file_ai_stigmer_commons_apiresource_io } from "../../../commons/apiresource/io_pb";
6
6
  import { file_ai_stigmer_commons_apiresource_rpc_service_options } from "../../../commons/apiresource/rpc_service_options_pb";
7
- import { file_ai_stigmer_iam_iampolicy_v1_rpcauthorization_method_options } from "../../iampolicy/v1/rpcauthorization/method_options_pb";
7
+ import { file_ai_stigmer_commons_rpc_method_options } from "../../../commons/rpc/method_options_pb";
8
8
  import { file_ai_stigmer_iam_identityprovider_v1_api } from "./api_pb";
9
+ import { file_ai_stigmer_iam_identityprovider_v1_io } from "./io_pb";
9
10
  /**
10
11
  * Describes the file ai/stigmer/iam/identityprovider/v1/query.proto.
11
12
  */
12
- export const file_ai_stigmer_iam_identityprovider_v1_query = /*@__PURE__*/ fileDesc("Ci5haS9zdGlnbWVyL2lhbS9pZGVudGl0eXByb3ZpZGVyL3YxL3F1ZXJ5LnByb3RvEiJhaS5zdGlnbWVyLmlhbS5pZGVudGl0eXByb3ZpZGVyLnYxMtICCh9JZGVudGl0eVByb3ZpZGVyUXVlcnlDb250cm9sbGVyEqMBCgNnZXQSLS5haS5zdGlnbWVyLmNvbW1vbnMuYXBpcmVzb3VyY2UuQXBpUmVzb3VyY2VJZBo0LmFpLnN0aWdtZXIuaWFtLmlkZW50aXR5cHJvdmlkZXIudjEuSWRlbnRpdHlQcm92aWRlciI3wrgYMwgDEBUiBXZhbHVlKiZ1bmF1dGhvcml6ZWQgdG8gdmlldyBpZGVudGl0eSBwcm92aWRlchKCAQoOZ2V0QnlSZWZlcmVuY2USNC5haS5zdGlnbWVyLmNvbW1vbnMuYXBpcmVzb3VyY2UuQXBpUmVzb3VyY2VSZWZlcmVuY2UaNC5haS5zdGlnbWVyLmlhbS5pZGVudGl0eXByb3ZpZGVyLnYxLklkZW50aXR5UHJvdmlkZXIiBNC4GAEaBKD/KxViBnByb3RvMw", [file_ai_stigmer_commons_apiresource_io, file_ai_stigmer_commons_apiresource_rpc_service_options, file_ai_stigmer_iam_iampolicy_v1_rpcauthorization_method_options, file_ai_stigmer_iam_identityprovider_v1_api]);
13
+ export const file_ai_stigmer_iam_identityprovider_v1_query = /*@__PURE__*/ fileDesc("Ci5haS9zdGlnbWVyL2lhbS9pZGVudGl0eXByb3ZpZGVyL3YxL3F1ZXJ5LnByb3RvEiJhaS5zdGlnbWVyLmlhbS5pZGVudGl0eXByb3ZpZGVyLnYxMrIFCh9JZGVudGl0eVByb3ZpZGVyUXVlcnlDb250cm9sbGVyEqMBCgNnZXQSLS5haS5zdGlnbWVyLmNvbW1vbnMuYXBpcmVzb3VyY2UuQXBpUmVzb3VyY2VJZBo0LmFpLnN0aWdtZXIuaWFtLmlkZW50aXR5cHJvdmlkZXIudjEuSWRlbnRpdHlQcm92aWRlciI3wrgYMwgBEBUiBXZhbHVlKiZ1bmF1dGhvcml6ZWQgdG8gdmlldyBpZGVudGl0eSBwcm92aWRlchKCAQoOZ2V0QnlSZWZlcmVuY2USNC5haS5zdGlnbWVyLmNvbW1vbnMuYXBpcmVzb3VyY2UuQXBpUmVzb3VyY2VSZWZlcmVuY2UaNC5haS5zdGlnbWVyLmlhbS5pZGVudGl0eXByb3ZpZGVyLnYxLklkZW50aXR5UHJvdmlkZXIiBNC4GAES1AEKCWxpc3RCeU9yZxJDLmFpLnN0aWdtZXIuaWFtLmlkZW50aXR5cHJvdmlkZXIudjEuTGlzdElkZW50aXR5UHJvdmlkZXJzQnlPcmdJbnB1dBo1LmFpLnN0aWdtZXIuaWFtLmlkZW50aXR5cHJvdmlkZXIudjEuSWRlbnRpdHlQcm92aWRlcnMiS8K4GEcIARAeIgNvcmcqPHVuYXV0aG9yaXplZCB0byBsaXN0IGlkZW50aXR5IHByb3ZpZGVycyBpbiB0aGlzIG9yZ2FuaXphdGlvbhKGAQoOZ2V0U3NvUHJvdmlkZXISOS5haS5zdGlnbWVyLmlhbS5pZGVudGl0eXByb3ZpZGVyLnYxLk9yZ2FuaXphdGlvblNzb0xvb2t1cBozLmFpLnN0aWdtZXIuaWFtLmlkZW50aXR5cHJvdmlkZXIudjEuU3NvUHJvdmlkZXJJbmZvIgTQuBgBGgSg/ysVYgZwcm90bzM", [file_ai_stigmer_commons_apiresource_io, file_ai_stigmer_commons_apiresource_rpc_service_options, file_ai_stigmer_commons_rpc_method_options, file_ai_stigmer_iam_identityprovider_v1_api, file_ai_stigmer_iam_identityprovider_v1_io]);
13
14
  /**
14
15
  * IdentityProviderQueryController provides read operations for identity providers.
15
16
  *
@@ -1 +1 @@
1
- {"version":3,"file":"query_pb.js","sourceRoot":"","sources":["../../../../../../ai/stigmer/iam/identityprovider/v1/query_pb.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,kIAAkI;AAClI,oBAAoB;AAGpB,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAErE,OAAO,EAAE,sCAAsC,EAAE,MAAM,oCAAoC,CAAC;AAC5F,OAAO,EAAE,uDAAuD,EAAE,MAAM,qDAAqD,CAAC;AAC9H,OAAO,EAAE,gEAAgE,EAAE,MAAM,uDAAuD,CAAC;AAEzI,OAAO,EAAE,2CAA2C,EAAE,MAAM,UAAU,CAAC;AAEvE;;GAEG;AACH,MAAM,CAAC,MAAM,6CAA6C,GAAY,aAAa,CACjF,QAAQ,CAAC,okBAAokB,EAAE,CAAC,sCAAsC,EAAE,uDAAuD,EAAE,gEAAgE,EAAE,2CAA2C,CAAC,CAAC,CAAC;AAEnyB;;;;GAIG;AACH,MAAM,CAAC,MAAM,+BAA+B,GA+BvC,aAAa,CAChB,WAAW,CAAC,6CAA6C,EAAE,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"query_pb.js","sourceRoot":"","sources":["../../../../../../ai/stigmer/iam/identityprovider/v1/query_pb.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,kIAAkI;AAClI,oBAAoB;AAGpB,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAErE,OAAO,EAAE,sCAAsC,EAAE,MAAM,oCAAoC,CAAC;AAC5F,OAAO,EAAE,uDAAuD,EAAE,MAAM,qDAAqD,CAAC;AAC9H,OAAO,EAAE,0CAA0C,EAAE,MAAM,wCAAwC,CAAC;AAEpG,OAAO,EAAE,2CAA2C,EAAE,MAAM,UAAU,CAAC;AAEvE,OAAO,EAAE,0CAA0C,EAAE,MAAM,SAAS,CAAC;AAErE;;GAEG;AACH,MAAM,CAAC,MAAM,6CAA6C,GAAY,aAAa,CACjF,QAAQ,CAAC,yhCAAyhC,EAAE,CAAC,sCAAsC,EAAE,uDAAuD,EAAE,0CAA0C,EAAE,2CAA2C,EAAE,0CAA0C,CAAC,CAAC,CAAC;AAE9wC;;;;GAIG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAoEvC,aAAa,CAChB,WAAW,CAAC,6CAA6C,EAAE,CAAC,CAAC,CAAC"}
@@ -9,18 +9,19 @@ export declare const file_ai_stigmer_iam_identityprovider_v1_spec: GenFile;
9
9
  *
10
10
  * An IdentityProvider represents an external platform's trust relationship with Stigmer.
11
11
  * It is owned by an organization (e.g., "planton") and configures how Stigmer validates
12
- * tokens from that platform during token exchange. The platform forwards its OIDC
13
- * provider's access tokens to Stigmer's token exchange endpoint, which:
14
- * - Validates the token signature against the configured JWKS
15
- * - Fetches user profile data from the OIDC UserInfo endpoint
16
- * - JIT-provisions a federated identity account with email, name, and picture
17
- * - Issues a Stigmer-native token for subsequent API access
12
+ * tokens from that platform. When a user authenticates with a JWT issued by this provider,
13
+ * Stigmer validates the token signature against the configured JWKS and resolves the
14
+ * user's federated identity account by the JWT's sub claim and this provider's reference.
15
+ *
16
+ * For platform-managed IdPs, the platform is responsible for explicitly creating
17
+ * federated identity accounts before users can authenticate. For SSO providers
18
+ * (is_sso_provider = true), Stigmer auto-provisions accounts on first login.
18
19
  *
19
20
  * The spec contains only public validation configuration — no secrets are stored.
20
21
  * For OIDC-based integrators (e.g., Auth0), the jwks_uri and userinfo_endpoint
21
22
  * point to the OIDC provider's standard endpoints.
22
23
  *
23
- * Example YAML:
24
+ * Example YAML (platform delegation):
24
25
  * apiVersion: iam.stigmer.ai/v1
25
26
  * kind: IdentityProvider
26
27
  * metadata:
@@ -34,6 +35,21 @@ export declare const file_ai_stigmer_iam_identityprovider_v1_spec: GenFile;
34
35
  * expected_audience: "https://api.planton.ai/"
35
36
  * userinfo_endpoint: "https://planton-prod.us.auth0.com/userinfo"
36
37
  *
38
+ * Example YAML (self-managed SSO):
39
+ * apiVersion: iam.stigmer.ai/v1
40
+ * kind: IdentityProvider
41
+ * metadata:
42
+ * name: Acme Corp Okta
43
+ * slug: acme-okta
44
+ * org: acme
45
+ * spec:
46
+ * display_name: "Acme Corp Okta"
47
+ * jwks_uri: "https://acme.okta.com/oauth2/default/v1/keys"
48
+ * allowed_issuers: ["https://acme.okta.com/oauth2/default"]
49
+ * expected_audience: "stigmer-api"
50
+ * is_sso_provider: true
51
+ * oidc_client_id: "0oa1bcdef2ghijk3lmno"
52
+ *
37
53
  * @generated from message ai.stigmer.iam.identityprovider.v1.IdentityProviderSpec
38
54
  */
39
55
  export type IdentityProviderSpec = Message<"ai.stigmer.iam.identityprovider.v1.IdentityProviderSpec"> & {
@@ -98,6 +114,43 @@ export type IdentityProviderSpec = Message<"ai.stigmer.iam.identityprovider.v1.I
98
114
  * @generated from field: string userinfo_endpoint = 6;
99
115
  */
100
116
  userinfoEndpoint: string;
117
+ /**
118
+ * Whether this identity provider serves as the SSO login provider for its
119
+ * owning organization.
120
+ *
121
+ * When true, the Stigmer web app offers a "Sign in with [display_name]"
122
+ * option on the organization's login page and initiates the OIDC
123
+ * Authorization Code flow with PKCE using the configured oidc_client_id.
124
+ *
125
+ * On first login, SSO users are auto-provisioned: Stigmer creates a
126
+ * federated identity account from the JWT's OIDC claims and grants the
127
+ * viewer role on the organization. Org admins can upgrade viewers to
128
+ * members when ready.
129
+ *
130
+ * Constraints:
131
+ * - At most one IdentityProvider per organization can be the SSO provider.
132
+ * - An IdP used for platform-managed organization delegation cannot also
133
+ * serve as an SSO provider (different trust models).
134
+ *
135
+ * @generated from field: bool is_sso_provider = 7;
136
+ */
137
+ isSsoProvider: boolean;
138
+ /**
139
+ * OIDC client identifier for browser-based SSO login.
140
+ *
141
+ * This is the client_id registered with the external IdP (e.g., Okta,
142
+ * Azure AD) for Stigmer's web application. The web app uses this to
143
+ * build the OIDC Authorization Code request with PKCE.
144
+ *
145
+ * No client_secret is stored — the web app is a public client using PKCE
146
+ * (Proof Key for Code Exchange), which is the recommended approach for
147
+ * SPAs per OAuth 2.0 for Browser-Based Apps (RFC draft).
148
+ *
149
+ * Required when is_sso_provider is true; must be empty otherwise.
150
+ *
151
+ * @generated from field: string oidc_client_id = 8;
152
+ */
153
+ oidcClientId: string;
101
154
  };
102
155
  /**
103
156
  * Describes the message ai.stigmer.iam.identityprovider.v1.IdentityProviderSpec.
@@ -6,7 +6,7 @@ import { file_buf_validate_validate } from "../../../../../buf/validate/validate
6
6
  /**
7
7
  * Describes the file ai/stigmer/iam/identityprovider/v1/spec.proto.
8
8
  */
9
- export const file_ai_stigmer_iam_identityprovider_v1_spec = /*@__PURE__*/ fileDesc("Ci1haS9zdGlnbWVyL2lhbS9pZGVudGl0eXByb3ZpZGVyL3YxL3NwZWMucHJvdG8SImFpLnN0aWdtZXIuaWFtLmlkZW50aXR5cHJvdmlkZXIudjEi0AEKFElkZW50aXR5UHJvdmlkZXJTcGVjEh4KDGRpc3BsYXlfbmFtZRgBIAEoCUIIukgFcgMYyAESGgoIandrc191cmkYAiABKAlCCLpIBXIDGIAQEhcKD2FsbG93ZWRfaXNzdWVycxgDIAMoCRIjChFleHBlY3RlZF9hdWRpZW5jZRgEIAEoCUIIukgFcgMYyAESGQoRcmF0ZV9saW1pdF9idWRnZXQYBSABKAUSIwoRdXNlcmluZm9fZW5kcG9pbnQYBiABKAlCCLpIBXIDGIAQYgZwcm90bzM", [file_buf_validate_validate]);
9
+ export const file_ai_stigmer_iam_identityprovider_v1_spec = /*@__PURE__*/ fileDesc("Ci1haS9zdGlnbWVyL2lhbS9pZGVudGl0eXByb3ZpZGVyL3YxL3NwZWMucHJvdG8SImFpLnN0aWdtZXIuaWFtLmlkZW50aXR5cHJvdmlkZXIudjEiiwIKFElkZW50aXR5UHJvdmlkZXJTcGVjEh4KDGRpc3BsYXlfbmFtZRgBIAEoCUIIukgFcgMYyAESGgoIandrc191cmkYAiABKAlCCLpIBXIDGIAQEhcKD2FsbG93ZWRfaXNzdWVycxgDIAMoCRIjChFleHBlY3RlZF9hdWRpZW5jZRgEIAEoCUIIukgFcgMYyAESGQoRcmF0ZV9saW1pdF9idWRnZXQYBSABKAUSIwoRdXNlcmluZm9fZW5kcG9pbnQYBiABKAlCCLpIBXIDGIAQEhcKD2lzX3Nzb19wcm92aWRlchgHIAEoCBIgCg5vaWRjX2NsaWVudF9pZBgIIAEoCUIIukgFcgMYgAJiBnByb3RvMw", [file_buf_validate_validate]);
10
10
  /**
11
11
  * Describes the message ai.stigmer.iam.identityprovider.v1.IdentityProviderSpec.
12
12
  * Use `create(IdentityProviderSpecSchema)` to create a new message.
@@ -1 +1 @@
1
- {"version":3,"file":"spec_pb.js","sourceRoot":"","sources":["../../../../../../ai/stigmer/iam/identityprovider/v1/spec_pb.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,iIAAiI;AACjI,oBAAoB;AAGpB,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AAGrF;;GAEG;AACH,MAAM,CAAC,MAAM,4CAA4C,GAAY,aAAa,CAChF,QAAQ,CAAC,qZAAqZ,EAAE,CAAC,0BAA0B,CAAC,CAAC,CAAC;AAuGhc;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAqC,aAAa,CACvF,WAAW,CAAC,4CAA4C,EAAE,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"spec_pb.js","sourceRoot":"","sources":["../../../../../../ai/stigmer/iam/identityprovider/v1/spec_pb.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,iIAAiI;AACjI,oBAAoB;AAGpB,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AAGrF;;GAEG;AACH,MAAM,CAAC,MAAM,4CAA4C,GAAY,aAAa,CAChF,QAAQ,CAAC,oeAAoe,EAAE,CAAC,0BAA0B,CAAC,CAAC,CAAC;AA8J/gB;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAqC,aAAa,CACvF,WAAW,CAAC,4CAA4C,EAAE,CAAC,CAAC,CAAC"}
@@ -0,0 +1,132 @@
1
+ import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
2
+ import type { ApiResourceMetadata } from "../../../commons/apiresource/metadata_pb";
3
+ import type { ApiResourceAudit } from "../../../commons/apiresource/status_pb";
4
+ import type { InvitationState } from "./enum_pb";
5
+ import type { InvitationSpec } from "./spec_pb";
6
+ import type { Timestamp } from "@bufbuild/protobuf/wkt";
7
+ import type { Message } from "@bufbuild/protobuf";
8
+ /**
9
+ * Describes the file ai/stigmer/iam/invitation/v1/api.proto.
10
+ */
11
+ export declare const file_ai_stigmer_iam_invitation_v1_api: GenFile;
12
+ /**
13
+ * Invitation is a shareable link that grants org membership with a configurable role.
14
+ *
15
+ * Invitations support two patterns:
16
+ * - Multi-use (max_redemptions = 0): persistent org invite link, suitable for
17
+ * public sharing. Best paired with the viewer role to avoid cost exposure.
18
+ * - Single-use (max_redemptions = 1): targeted invitation for a specific person.
19
+ *
20
+ * The invite URL format is: https://<host>/invite/<token>
21
+ * where token is a server-generated cryptographically random value.
22
+ *
23
+ * Creating an invitation requires can_grant_access on the organization.
24
+ * Redeeming an invitation requires only a valid token and authentication.
25
+ *
26
+ * @generated from message ai.stigmer.iam.invitation.v1.Invitation
27
+ */
28
+ export type Invitation = Message<"ai.stigmer.iam.invitation.v1.Invitation"> & {
29
+ /**
30
+ * API version for this resource type.
31
+ *
32
+ * @generated from field: string api_version = 1;
33
+ */
34
+ apiVersion: string;
35
+ /**
36
+ * Resource kind identifier.
37
+ *
38
+ * @generated from field: string kind = 2;
39
+ */
40
+ kind: string;
41
+ /**
42
+ * Resource metadata including name, organization, and labels.
43
+ *
44
+ * @generated from field: ai.stigmer.commons.apiresource.ApiResourceMetadata metadata = 3;
45
+ */
46
+ metadata?: ApiResourceMetadata;
47
+ /**
48
+ * User-provided invitation configuration: role, expiry, and redemption limits.
49
+ *
50
+ * @generated from field: ai.stigmer.iam.invitation.v1.InvitationSpec spec = 4;
51
+ */
52
+ spec?: InvitationSpec;
53
+ /**
54
+ * System-managed state: token, lifecycle state, and redemption history.
55
+ *
56
+ * @generated from field: ai.stigmer.iam.invitation.v1.InvitationStatus status = 5;
57
+ */
58
+ status?: InvitationStatus;
59
+ };
60
+ /**
61
+ * Describes the message ai.stigmer.iam.invitation.v1.Invitation.
62
+ * Use `create(InvitationSchema)` to create a new message.
63
+ */
64
+ export declare const InvitationSchema: GenMessage<Invitation>;
65
+ /**
66
+ * InvitationStatus contains system-managed state for an invitation.
67
+ *
68
+ * @generated from message ai.stigmer.iam.invitation.v1.InvitationStatus
69
+ */
70
+ export type InvitationStatus = Message<"ai.stigmer.iam.invitation.v1.InvitationStatus"> & {
71
+ /**
72
+ * Server-generated cryptographically random token.
73
+ * Included in the invite URL: /invite/<token>
74
+ * Generated once at creation; immutable thereafter.
75
+ *
76
+ * @generated from field: string token = 1;
77
+ */
78
+ token: string;
79
+ /**
80
+ * Current lifecycle state of the invitation.
81
+ *
82
+ * @generated from field: ai.stigmer.iam.invitation.v1.InvitationState state = 2;
83
+ */
84
+ state: InvitationState;
85
+ /**
86
+ * Number of times this invitation has been successfully redeemed.
87
+ *
88
+ * @generated from field: int32 redemption_count = 3;
89
+ */
90
+ redemptionCount: number;
91
+ /**
92
+ * Audit trail of each successful redemption.
93
+ *
94
+ * @generated from field: repeated ai.stigmer.iam.invitation.v1.InvitationRedemption redemptions = 4;
95
+ */
96
+ redemptions: InvitationRedemption[];
97
+ /**
98
+ * Standard audit information (created_at, updated_at, created_by, etc.).
99
+ *
100
+ * @generated from field: ai.stigmer.commons.apiresource.ApiResourceAudit audit = 99;
101
+ */
102
+ audit?: ApiResourceAudit;
103
+ };
104
+ /**
105
+ * Describes the message ai.stigmer.iam.invitation.v1.InvitationStatus.
106
+ * Use `create(InvitationStatusSchema)` to create a new message.
107
+ */
108
+ export declare const InvitationStatusSchema: GenMessage<InvitationStatus>;
109
+ /**
110
+ * InvitationRedemption records a single successful redemption event.
111
+ *
112
+ * @generated from message ai.stigmer.iam.invitation.v1.InvitationRedemption
113
+ */
114
+ export type InvitationRedemption = Message<"ai.stigmer.iam.invitation.v1.InvitationRedemption"> & {
115
+ /**
116
+ * The identity account that redeemed the invitation.
117
+ *
118
+ * @generated from field: string identity_account_id = 1;
119
+ */
120
+ identityAccountId: string;
121
+ /**
122
+ * When the redemption occurred.
123
+ *
124
+ * @generated from field: google.protobuf.Timestamp redeemed_at = 2;
125
+ */
126
+ redeemedAt?: Timestamp;
127
+ };
128
+ /**
129
+ * Describes the message ai.stigmer.iam.invitation.v1.InvitationRedemption.
130
+ * Use `create(InvitationRedemptionSchema)` to create a new message.
131
+ */
132
+ export declare const InvitationRedemptionSchema: GenMessage<InvitationRedemption>;
@@ -0,0 +1,30 @@
1
+ // @generated by protoc-gen-es v2.2.2 with parameter "target=ts"
2
+ // @generated from file ai/stigmer/iam/invitation/v1/api.proto (package ai.stigmer.iam.invitation.v1, syntax proto3)
3
+ /* eslint-disable */
4
+ import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv1";
5
+ import { file_ai_stigmer_commons_apiresource_metadata } from "../../../commons/apiresource/metadata_pb";
6
+ import { file_ai_stigmer_commons_apiresource_status } from "../../../commons/apiresource/status_pb";
7
+ import { file_ai_stigmer_iam_invitation_v1_enum } from "./enum_pb";
8
+ import { file_ai_stigmer_iam_invitation_v1_spec } from "./spec_pb";
9
+ import { file_buf_validate_validate } from "../../../../../buf/validate/validate_pb";
10
+ import { file_google_protobuf_timestamp } from "@bufbuild/protobuf/wkt";
11
+ /**
12
+ * Describes the file ai/stigmer/iam/invitation/v1/api.proto.
13
+ */
14
+ export const file_ai_stigmer_iam_invitation_v1_api = /*@__PURE__*/ fileDesc("CiZhaS9zdGlnbWVyL2lhbS9pbnZpdGF0aW9uL3YxL2FwaS5wcm90bxIcYWkuc3RpZ21lci5pYW0uaW52aXRhdGlvbi52MSKnAgoKSW52aXRhdGlvbhItCgthcGlfdmVyc2lvbhgBIAEoCUIYukgVchMKEWlhbS5zdGlnbWVyLmFpL3YxEh8KBGtpbmQYAiABKAlCEbpIDnIMCgpJbnZpdGF0aW9uEk0KCG1ldGFkYXRhGAMgASgLMjMuYWkuc3RpZ21lci5jb21tb25zLmFwaXJlc291cmNlLkFwaVJlc291cmNlTWV0YWRhdGFCBrpIA8gBARI6CgRzcGVjGAQgASgLMiwuYWkuc3RpZ21lci5pYW0uaW52aXRhdGlvbi52MS5JbnZpdGF0aW9uU3BlYxI+CgZzdGF0dXMYBSABKAsyLi5haS5zdGlnbWVyLmlhbS5pbnZpdGF0aW9uLnYxLkludml0YXRpb25TdGF0dXMigwIKEEludml0YXRpb25TdGF0dXMSDQoFdG9rZW4YASABKAkSPAoFc3RhdGUYAiABKA4yLS5haS5zdGlnbWVyLmlhbS5pbnZpdGF0aW9uLnYxLkludml0YXRpb25TdGF0ZRIYChByZWRlbXB0aW9uX2NvdW50GAMgASgFEkcKC3JlZGVtcHRpb25zGAQgAygLMjIuYWkuc3RpZ21lci5pYW0uaW52aXRhdGlvbi52MS5JbnZpdGF0aW9uUmVkZW1wdGlvbhI/CgVhdWRpdBhjIAEoCzIwLmFpLnN0aWdtZXIuY29tbW9ucy5hcGlyZXNvdXJjZS5BcGlSZXNvdXJjZUF1ZGl0ImQKFEludml0YXRpb25SZWRlbXB0aW9uEhsKE2lkZW50aXR5X2FjY291bnRfaWQYASABKAkSLwoLcmVkZWVtZWRfYXQYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wYgZwcm90bzM", [file_ai_stigmer_commons_apiresource_metadata, file_ai_stigmer_commons_apiresource_status, file_ai_stigmer_iam_invitation_v1_enum, file_ai_stigmer_iam_invitation_v1_spec, file_buf_validate_validate, file_google_protobuf_timestamp]);
15
+ /**
16
+ * Describes the message ai.stigmer.iam.invitation.v1.Invitation.
17
+ * Use `create(InvitationSchema)` to create a new message.
18
+ */
19
+ export const InvitationSchema = /*@__PURE__*/ messageDesc(file_ai_stigmer_iam_invitation_v1_api, 0);
20
+ /**
21
+ * Describes the message ai.stigmer.iam.invitation.v1.InvitationStatus.
22
+ * Use `create(InvitationStatusSchema)` to create a new message.
23
+ */
24
+ export const InvitationStatusSchema = /*@__PURE__*/ messageDesc(file_ai_stigmer_iam_invitation_v1_api, 1);
25
+ /**
26
+ * Describes the message ai.stigmer.iam.invitation.v1.InvitationRedemption.
27
+ * Use `create(InvitationRedemptionSchema)` to create a new message.
28
+ */
29
+ export const InvitationRedemptionSchema = /*@__PURE__*/ messageDesc(file_ai_stigmer_iam_invitation_v1_api, 2);
30
+ //# sourceMappingURL=api_pb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api_pb.js","sourceRoot":"","sources":["../../../../../../ai/stigmer/iam/invitation/v1/api_pb.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,oHAAoH;AACpH,oBAAoB;AAGpB,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAErE,OAAO,EAAE,4CAA4C,EAAE,MAAM,0CAA0C,CAAC;AAExG,OAAO,EAAE,0CAA0C,EAAE,MAAM,wCAAwC,CAAC;AAEpG,OAAO,EAAE,sCAAsC,EAAE,MAAM,WAAW,CAAC;AAEnE,OAAO,EAAE,sCAAsC,EAAE,MAAM,WAAW,CAAC;AACnE,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AAErF,OAAO,EAAE,8BAA8B,EAAE,MAAM,wBAAwB,CAAC;AAGxE;;GAEG;AACH,MAAM,CAAC,MAAM,qCAAqC,GAAY,aAAa,CACzE,QAAQ,CAAC,69BAA69B,EAAE,CAAC,4CAA4C,EAAE,0CAA0C,EAAE,sCAAsC,EAAE,sCAAsC,EAAE,0BAA0B,EAAE,8BAA8B,CAAC,CAAC,CAAC;AAuDltC;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAA2B,aAAa,CACnE,WAAW,CAAC,qCAAqC,EAAE,CAAC,CAAC,CAAC;AA8CxD;;;GAGG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAiC,aAAa,CAC/E,WAAW,CAAC,qCAAqC,EAAE,CAAC,CAAC,CAAC;AAuBxD;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAqC,aAAa,CACvF,WAAW,CAAC,qCAAqC,EAAE,CAAC,CAAC,CAAC"}
@@ -0,0 +1,79 @@
1
+ /**
2
+ * InvitationCommandController handles write operations for invitations.
3
+ *
4
+ * @generated from service ai.stigmer.iam.invitation.v1.InvitationCommandController
5
+ */
6
+ export declare const InvitationCommandController: {
7
+ readonly typeName: "ai.stigmer.iam.invitation.v1.InvitationCommandController";
8
+ readonly methods: {
9
+ /**
10
+ * Create an invitation link for an organization.
11
+ *
12
+ * Generates a cryptographically random token and returns the full
13
+ * invitation resource including the token. The invite URL is
14
+ * constructed as: https://<host>/invite/<token>
15
+ *
16
+ * The specified role must be in the organization's grantable_roles.
17
+ * Platform-managed organizations cannot create invitations.
18
+ *
19
+ * @internal
20
+ * Authorization: Requires can_grant_access permission on the organization.
21
+ *
22
+ * @generated from rpc ai.stigmer.iam.invitation.v1.InvitationCommandController.create
23
+ */
24
+ readonly create: {
25
+ readonly name: "create";
26
+ readonly I: any;
27
+ readonly O: any;
28
+ readonly kind: any;
29
+ };
30
+ /**
31
+ * Revoke an active invitation, preventing further redemptions.
32
+ *
33
+ * Sets the invitation state to revoked. Idempotent — revoking an
34
+ * already-revoked invitation is a no-op.
35
+ *
36
+ * @internal
37
+ * Authorization is handled in the handler: loads the invitation,
38
+ * resolves its organization, and checks can_grant_access on the org.
39
+ * Proto-level auth is skipped because the input (InvitationId) does
40
+ * not directly identify the org.
41
+ *
42
+ * @generated from rpc ai.stigmer.iam.invitation.v1.InvitationCommandController.revoke
43
+ */
44
+ readonly revoke: {
45
+ readonly name: "revoke";
46
+ readonly I: any;
47
+ readonly O: any;
48
+ readonly kind: any;
49
+ };
50
+ /**
51
+ * Redeem an invitation to join an organization.
52
+ *
53
+ * Creates an IAM policy granting the invitation's configured role to
54
+ * the authenticated user on the invitation's organization. The
55
+ * redemption is atomic: the IAM policy is created and the redemption
56
+ * count is incremented in a single operation.
57
+ *
58
+ * Validation:
59
+ * - Invitation must be in active state
60
+ * - Invitation must not be expired
61
+ * - Invitation must not have reached max_redemptions (if > 0)
62
+ * - Redeemer must not already be a member of the organization
63
+ *
64
+ * @internal
65
+ * Authorization: The token itself is the authorization mechanism.
66
+ * The redeemer's identity is resolved from the authentication header.
67
+ * FGA authorization is skipped — any authenticated user with a valid
68
+ * token can redeem.
69
+ *
70
+ * @generated from rpc ai.stigmer.iam.invitation.v1.InvitationCommandController.redeem
71
+ */
72
+ readonly redeem: {
73
+ readonly name: "redeem";
74
+ readonly I: any;
75
+ readonly O: any;
76
+ readonly kind: any;
77
+ };
78
+ };
79
+ };