@graph8/sdk 0.251.0 → 0.260.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (350) hide show
  1. package/README.md +9 -2
  2. package/dist/cli.js +216 -0
  3. package/dist/index.d.mts +104 -7
  4. package/dist/index.d.ts +104 -7
  5. package/dist/index.js +44 -3
  6. package/dist/index.js.map +1 -1
  7. package/dist/index.mjs +44 -3
  8. package/dist/index.mjs.map +1 -1
  9. package/dist/react.d.mts +102 -7
  10. package/dist/react.d.ts +102 -7
  11. package/dist/react.js +62 -11
  12. package/dist/react.js.map +1 -1
  13. package/dist/react.mjs +53 -12
  14. package/dist/react.mjs.map +1 -1
  15. package/dist/types/README.md +7 -0
  16. package/dist/types/agency.d.ts +20 -0
  17. package/dist/types/agentSetup.d.ts +57 -0
  18. package/dist/types/api.d.ts +127 -0
  19. package/dist/types/appClient.d.ts +99 -0
  20. package/dist/types/appPlatform.d.ts +269 -0
  21. package/dist/types/appTokens.d.ts +125 -0
  22. package/dist/types/apps.d.ts +130 -0
  23. package/dist/types/audiences.d.ts +88 -0
  24. package/dist/types/calendar.d.ts +55 -0
  25. package/dist/types/campaigns.d.ts +61 -0
  26. package/dist/types/chat.d.ts +35 -0
  27. package/dist/types/cli.d.ts +14 -0
  28. package/dist/types/companies.d.ts +123 -0
  29. package/dist/types/contacts.d.ts +200 -0
  30. package/dist/types/copilot.d.ts +31 -0
  31. package/dist/types/core.d.ts +1052 -0
  32. package/dist/types/deals.d.ts +215 -0
  33. package/dist/types/enrich.d.ts +51 -0
  34. package/dist/types/fields.d.ts +84 -0
  35. package/dist/types/forms.d.ts +16 -0
  36. package/dist/types/http.d.ts +141 -0
  37. package/dist/types/inbox.d.ts +123 -0
  38. package/dist/types/index.d.ts +63 -0
  39. package/dist/types/intent.d.ts +196 -0
  40. package/dist/types/lists.d.ts +44 -0
  41. package/dist/types/mailboxes.d.ts +240 -0
  42. package/dist/types/marketplace.d.ts +62 -0
  43. package/dist/types/meetings.d.ts +70 -0
  44. package/dist/types/newsletter.d.ts +212 -0
  45. package/dist/types/notes.d.ts +57 -0
  46. package/dist/types/objects.d.ts +281 -0
  47. package/dist/types/pipelines.d.ts +135 -0
  48. package/dist/types/quotes.d.ts +143 -0
  49. package/dist/types/react.d.ts +978 -0
  50. package/dist/types/search.d.ts +99 -0
  51. package/dist/types/sequences.d.ts +255 -0
  52. package/dist/types/signals.d.ts +28 -0
  53. package/dist/types/skills.d.ts +176 -0
  54. package/dist/types/snippet.d.ts +24 -0
  55. package/dist/types/studio.d.ts +161 -0
  56. package/dist/types/tasks.d.ts +101 -0
  57. package/dist/types/types.d.ts +45 -0
  58. package/dist/types/utils.d.ts +21 -0
  59. package/dist/types/version.d.ts +10 -0
  60. package/dist/types/visitors.d.ts +29 -0
  61. package/dist/types/voice.d.ts +304 -0
  62. package/dist/types/webhooks.d.ts +71 -0
  63. package/dist/types/workflows.d.ts +229 -0
  64. package/docs/agents.md +748 -0
  65. package/docs/api/README.md +165 -0
  66. package/docs/api/accounts.d.ts +396 -0
  67. package/docs/api/accounts.md +644 -0
  68. package/docs/api/adCampaigns.d.ts +707 -0
  69. package/docs/api/adCampaigns.md +1091 -0
  70. package/docs/api/adCreatives.d.ts +996 -0
  71. package/docs/api/adCreatives.md +1708 -0
  72. package/docs/api/agency.d.ts +556 -0
  73. package/docs/api/agency.md +845 -0
  74. package/docs/api/agent.d.ts +330 -0
  75. package/docs/api/agent.md +514 -0
  76. package/docs/api/agents.d.ts +1622 -0
  77. package/docs/api/agents.md +2860 -0
  78. package/docs/api/aiInbox.d.ts +1984 -0
  79. package/docs/api/aiInbox.md +3490 -0
  80. package/docs/api/analytics.d.ts +1273 -0
  81. package/docs/api/analytics.md +2095 -0
  82. package/docs/api/apiKeys.d.ts +252 -0
  83. package/docs/api/apiKeys.md +318 -0
  84. package/docs/api/appDeployments.d.ts +236 -0
  85. package/docs/api/appDeployments.md +471 -0
  86. package/docs/api/appDomains.d.ts +171 -0
  87. package/docs/api/appDomains.md +281 -0
  88. package/docs/api/appLogs.d.ts +120 -0
  89. package/docs/api/appLogs.md +159 -0
  90. package/docs/api/appObjects.d.ts +415 -0
  91. package/docs/api/appObjects.md +568 -0
  92. package/docs/api/appPages.d.ts +557 -0
  93. package/docs/api/appPages.md +796 -0
  94. package/docs/api/appPlatformTokens.d.ts +123 -0
  95. package/docs/api/appPlatformTokens.md +172 -0
  96. package/docs/api/appointments.d.ts +2361 -0
  97. package/docs/api/appointments.md +3917 -0
  98. package/docs/api/apps.d.ts +822 -0
  99. package/docs/api/apps.md +1342 -0
  100. package/docs/api/assertUpsert.d.ts +286 -0
  101. package/docs/api/assertUpsert.md +370 -0
  102. package/docs/api/audienceSyncs.d.ts +259 -0
  103. package/docs/api/audienceSyncs.md +395 -0
  104. package/docs/api/brandKit.d.ts +686 -0
  105. package/docs/api/brandKit.md +1133 -0
  106. package/docs/api/bugReports.d.ts +181 -0
  107. package/docs/api/bugReports.md +268 -0
  108. package/docs/api/by-path.md +3260 -0
  109. package/docs/api/calendarInvites.d.ts +117 -0
  110. package/docs/api/calendarInvites.md +148 -0
  111. package/docs/api/campaignWorkflows.d.ts +152 -0
  112. package/docs/api/campaignWorkflows.md +200 -0
  113. package/docs/api/campaigns.d.ts +721 -0
  114. package/docs/api/campaigns.md +1236 -0
  115. package/docs/api/channels.d.ts +171 -0
  116. package/docs/api/channels.md +235 -0
  117. package/docs/api/cliCampaigns.d.ts +205 -0
  118. package/docs/api/cliCampaigns.md +256 -0
  119. package/docs/api/cliPipelines.d.ts +324 -0
  120. package/docs/api/cliPipelines.md +562 -0
  121. package/docs/api/clickHouse.d.ts +115 -0
  122. package/docs/api/clickHouse.md +138 -0
  123. package/docs/api/companies.d.ts +1636 -0
  124. package/docs/api/companies.md +2211 -0
  125. package/docs/api/companyIntelligence.d.ts +299 -0
  126. package/docs/api/companyIntelligence.md +488 -0
  127. package/docs/api/contacts.d.ts +2173 -0
  128. package/docs/api/contacts.md +3143 -0
  129. package/docs/api/content.d.ts +968 -0
  130. package/docs/api/content.md +1667 -0
  131. package/docs/api/contentGridSkills.d.ts +177 -0
  132. package/docs/api/contentGridSkills.md +271 -0
  133. package/docs/api/copilot.d.ts +1017 -0
  134. package/docs/api/copilot.md +1765 -0
  135. package/docs/api/crmSyncs.d.ts +215 -0
  136. package/docs/api/crmSyncs.md +301 -0
  137. package/docs/api/customerSuccess.d.ts +491 -0
  138. package/docs/api/customerSuccess.md +776 -0
  139. package/docs/api/deals.d.ts +1696 -0
  140. package/docs/api/deals.md +2432 -0
  141. package/docs/api/deliverability.d.ts +418 -0
  142. package/docs/api/deliverability.md +677 -0
  143. package/docs/api/desk.d.ts +1765 -0
  144. package/docs/api/desk.md +3007 -0
  145. package/docs/api/dialer.d.ts +1185 -0
  146. package/docs/api/dialer.md +2166 -0
  147. package/docs/api/dialerAnalytics.d.ts +187 -0
  148. package/docs/api/dialerAnalytics.md +257 -0
  149. package/docs/api/documents.d.ts +895 -0
  150. package/docs/api/documents.md +1440 -0
  151. package/docs/api/duplicates.d.ts +195 -0
  152. package/docs/api/duplicates.md +315 -0
  153. package/docs/api/eSign.d.ts +38 -0
  154. package/docs/api/eSign.md +54 -0
  155. package/docs/api/eSignature.d.ts +242 -0
  156. package/docs/api/eSignature.md +341 -0
  157. package/docs/api/enrichment.d.ts +3207 -0
  158. package/docs/api/enrichment.md +5225 -0
  159. package/docs/api/events.d.ts +115 -0
  160. package/docs/api/events.md +105 -0
  161. package/docs/api/fields.d.ts +482 -0
  162. package/docs/api/fields.md +566 -0
  163. package/docs/api/forms.d.ts +1012 -0
  164. package/docs/api/forms.md +1542 -0
  165. package/docs/api/gtmCampaigns.d.ts +662 -0
  166. package/docs/api/gtmCampaigns.md +1044 -0
  167. package/docs/api/gtmContext.d.ts +1187 -0
  168. package/docs/api/gtmContext.md +2112 -0
  169. package/docs/api/gtmDeliverability.d.ts +60 -0
  170. package/docs/api/gtmDeliverability.md +63 -0
  171. package/docs/api/gtmKnowledgeBase.d.ts +76 -0
  172. package/docs/api/gtmKnowledgeBase.md +91 -0
  173. package/docs/api/gtmLaunchHelpers.d.ts +123 -0
  174. package/docs/api/gtmLaunchHelpers.md +148 -0
  175. package/docs/api/gtmLibrary.d.ts +448 -0
  176. package/docs/api/gtmLibrary.md +780 -0
  177. package/docs/api/health.d.ts +39 -0
  178. package/docs/api/health.md +58 -0
  179. package/docs/api/imageLibrary.d.ts +341 -0
  180. package/docs/api/imageLibrary.md +569 -0
  181. package/docs/api/imports.d.ts +157 -0
  182. package/docs/api/imports.md +174 -0
  183. package/docs/api/inbox.d.ts +709 -0
  184. package/docs/api/inbox.md +1067 -0
  185. package/docs/api/install.d.ts +213 -0
  186. package/docs/api/install.md +317 -0
  187. package/docs/api/installedApps.d.ts +131 -0
  188. package/docs/api/installedApps.md +241 -0
  189. package/docs/api/integrationStatus.d.ts +142 -0
  190. package/docs/api/integrationStatus.md +205 -0
  191. package/docs/api/integrations.d.ts +2327 -0
  192. package/docs/api/integrations.md +3791 -0
  193. package/docs/api/intent.d.ts +482 -0
  194. package/docs/api/intent.md +858 -0
  195. package/docs/api/knowledge.d.ts +501 -0
  196. package/docs/api/knowledge.md +843 -0
  197. package/docs/api/knowledgeBase.d.ts +84 -0
  198. package/docs/api/knowledgeBase.md +96 -0
  199. package/docs/api/landingPages.d.ts +1411 -0
  200. package/docs/api/landingPages.md +2488 -0
  201. package/docs/api/leads.d.ts +133 -0
  202. package/docs/api/leads.md +180 -0
  203. package/docs/api/library.d.ts +217 -0
  204. package/docs/api/library.md +338 -0
  205. package/docs/api/linkedIn.d.ts +227 -0
  206. package/docs/api/linkedIn.md +289 -0
  207. package/docs/api/linkedInOutreach.d.ts +727 -0
  208. package/docs/api/linkedInOutreach.md +990 -0
  209. package/docs/api/lists.d.ts +1106 -0
  210. package/docs/api/lists.md +1609 -0
  211. package/docs/api/logs.d.ts +71 -0
  212. package/docs/api/logs.md +70 -0
  213. package/docs/api/mailboxes.d.ts +1050 -0
  214. package/docs/api/mailboxes.md +1690 -0
  215. package/docs/api/marketingIntelligence.d.ts +256 -0
  216. package/docs/api/marketingIntelligence.md +454 -0
  217. package/docs/api/marketplace.d.ts +3173 -0
  218. package/docs/api/marketplace.md +5953 -0
  219. package/docs/api/mcp.d.ts +69 -0
  220. package/docs/api/mcp.md +69 -0
  221. package/docs/api/me.d.ts +54 -0
  222. package/docs/api/me.md +56 -0
  223. package/docs/api/meetings.d.ts +539 -0
  224. package/docs/api/meetings.md +747 -0
  225. package/docs/api/newsletter.d.ts +1613 -0
  226. package/docs/api/newsletter.md +2746 -0
  227. package/docs/api/notes.d.ts +517 -0
  228. package/docs/api/notes.md +888 -0
  229. package/docs/api/notifications.d.ts +94 -0
  230. package/docs/api/notifications.md +105 -0
  231. package/docs/api/objects.d.ts +621 -0
  232. package/docs/api/objects.md +1098 -0
  233. package/docs/api/openSearch.d.ts +234 -0
  234. package/docs/api/openSearch.md +297 -0
  235. package/docs/api/ops.d.ts +299 -0
  236. package/docs/api/ops.md +339 -0
  237. package/docs/api/orgGovernance.d.ts +393 -0
  238. package/docs/api/orgGovernance.md +623 -0
  239. package/docs/api/orgVideos.d.ts +184 -0
  240. package/docs/api/orgVideos.md +252 -0
  241. package/docs/api/organizationSettings.d.ts +626 -0
  242. package/docs/api/organizationSettings.md +911 -0
  243. package/docs/api/phoneNumbers.d.ts +484 -0
  244. package/docs/api/phoneNumbers.md +777 -0
  245. package/docs/api/profile.d.ts +329 -0
  246. package/docs/api/profile.md +540 -0
  247. package/docs/api/programmaticPages.d.ts +400 -0
  248. package/docs/api/programmaticPages.md +626 -0
  249. package/docs/api/providerDomains.d.ts +866 -0
  250. package/docs/api/providerDomains.md +1446 -0
  251. package/docs/api/providerUsage.d.ts +129 -0
  252. package/docs/api/providerUsage.md +186 -0
  253. package/docs/api/public.d.ts +69 -0
  254. package/docs/api/public.md +78 -0
  255. package/docs/api/publicCopilot.d.ts +67 -0
  256. package/docs/api/publicCopilot.md +80 -0
  257. package/docs/api/publicSignals.d.ts +66 -0
  258. package/docs/api/publicSignals.md +71 -0
  259. package/docs/api/publicVisitors.d.ts +97 -0
  260. package/docs/api/publicVisitors.md +118 -0
  261. package/docs/api/quotes.d.ts +1564 -0
  262. package/docs/api/quotes.md +2553 -0
  263. package/docs/api/radar.d.ts +808 -0
  264. package/docs/api/radar.md +1431 -0
  265. package/docs/api/radarReports.d.ts +208 -0
  266. package/docs/api/radarReports.md +306 -0
  267. package/docs/api/recordRoles.d.ts +143 -0
  268. package/docs/api/recordRoles.md +175 -0
  269. package/docs/api/repos.d.ts +146 -0
  270. package/docs/api/repos.md +211 -0
  271. package/docs/api/research.d.ts +295 -0
  272. package/docs/api/research.md +534 -0
  273. package/docs/api/revenue.d.ts +402 -0
  274. package/docs/api/revenue.md +608 -0
  275. package/docs/api/revenueAnalytics.d.ts +147 -0
  276. package/docs/api/revenueAnalytics.md +212 -0
  277. package/docs/api/revenueLifecycle.d.ts +207 -0
  278. package/docs/api/revenueLifecycle.md +274 -0
  279. package/docs/api/revenueRecords.d.ts +372 -0
  280. package/docs/api/revenueRecords.md +563 -0
  281. package/docs/api/roles.d.ts +431 -0
  282. package/docs/api/roles.md +812 -0
  283. package/docs/api/salesCoach.d.ts +877 -0
  284. package/docs/api/salesCoach.md +1540 -0
  285. package/docs/api/sandbox.d.ts +210 -0
  286. package/docs/api/sandbox.md +380 -0
  287. package/docs/api/scans.d.ts +104 -0
  288. package/docs/api/scans.md +136 -0
  289. package/docs/api/scheduleBuy.d.ts +293 -0
  290. package/docs/api/scheduleBuy.md +431 -0
  291. package/docs/api/scraping.d.ts +266 -0
  292. package/docs/api/scraping.md +383 -0
  293. package/docs/api/sdrAnalytics.d.ts +138 -0
  294. package/docs/api/sdrAnalytics.md +246 -0
  295. package/docs/api/search.d.ts +598 -0
  296. package/docs/api/search.md +866 -0
  297. package/docs/api/seo.d.ts +447 -0
  298. package/docs/api/seo.md +660 -0
  299. package/docs/api/sequenceLifecycle.d.ts +439 -0
  300. package/docs/api/sequenceLifecycle.md +513 -0
  301. package/docs/api/sequences.d.ts +1936 -0
  302. package/docs/api/sequences.md +3232 -0
  303. package/docs/api/settings.d.ts +448 -0
  304. package/docs/api/settings.md +731 -0
  305. package/docs/api/signals.d.ts +1441 -0
  306. package/docs/api/signals.md +2526 -0
  307. package/docs/api/signatures.d.ts +719 -0
  308. package/docs/api/signatures.md +1247 -0
  309. package/docs/api/skills.d.ts +230 -0
  310. package/docs/api/skills.md +466 -0
  311. package/docs/api/snippet.d.ts +85 -0
  312. package/docs/api/snippet.md +106 -0
  313. package/docs/api/socialPublishing.d.ts +824 -0
  314. package/docs/api/socialPublishing.md +1245 -0
  315. package/docs/api/studioDocuments.d.ts +244 -0
  316. package/docs/api/studioDocuments.md +348 -0
  317. package/docs/api/support.d.ts +90 -0
  318. package/docs/api/support.md +76 -0
  319. package/docs/api/suppressions.d.ts +241 -0
  320. package/docs/api/suppressions.md +343 -0
  321. package/docs/api/surveys.d.ts +847 -0
  322. package/docs/api/surveys.md +1223 -0
  323. package/docs/api/tasks.d.ts +813 -0
  324. package/docs/api/tasks.md +1344 -0
  325. package/docs/api/teamMembers.d.ts +668 -0
  326. package/docs/api/teamMembers.md +1040 -0
  327. package/docs/api/teams.d.ts +784 -0
  328. package/docs/api/teams.md +1395 -0
  329. package/docs/api/usage.d.ts +277 -0
  330. package/docs/api/usage.md +389 -0
  331. package/docs/api/visitors.d.ts +690 -0
  332. package/docs/api/visitors.md +1075 -0
  333. package/docs/api/voice.d.ts +4661 -0
  334. package/docs/api/voice.md +7905 -0
  335. package/docs/api/webAnalytics.d.ts +964 -0
  336. package/docs/api/webAnalytics.md +1452 -0
  337. package/docs/api/webChat.d.ts +1704 -0
  338. package/docs/api/webChat.md +2048 -0
  339. package/docs/api/webhooks.d.ts +251 -0
  340. package/docs/api/webhooks.md +386 -0
  341. package/docs/api/websiteEditor.d.ts +324 -0
  342. package/docs/api/websiteEditor.md +517 -0
  343. package/docs/api/work.d.ts +2298 -0
  344. package/docs/api/work.md +3096 -0
  345. package/docs/api/workbench.d.ts +2962 -0
  346. package/docs/api/workbench.md +4884 -0
  347. package/docs/api/workflows.d.ts +1218 -0
  348. package/docs/api/workflows.md +2302 -0
  349. package/docs/sdk-clients.md +4339 -0
  350. package/package.json +10 -3
@@ -0,0 +1,1040 @@
1
+ <!-- Generated by sdk/js/scripts/generate-agent-docs.ts from developer-contract/openapi.json. Regenerated on every build. -->
2
+
3
+ # `g8.api.teamMembers`: Team members
4
+
5
+ 21 operations (7 read, 8 write, 2 destructive, 3 billable, 1 external).
6
+
7
+ No hand-written client covers this area. Call it through `g8.api.teamMembers.*` as shown below, or by operationId with `g8.api.call(operationId, input)`.
8
+
9
+ Every example below assumes this setup (server-side, API key):
10
+
11
+ ```ts
12
+ import { g8 } from "@graph8/sdk";
13
+
14
+ g8.init({ apiKey: process.env.G8_API_KEY! });
15
+ ```
16
+
17
+ Example values are placeholders that match each field's type. Only required fields are shown. Every example is type-checked against the SDK in CI.
18
+
19
+ Exact TypeScript types for every operation on this page, and every schema they use: [teamMembers.d.ts](teamMembers.d.ts).
20
+
21
+ ## Operations
22
+
23
+ | Call | HTTP | Tier | Scope | Summary |
24
+ |---|---|---|---|---|
25
+ | [`cloneTeamMember`](#op-cloneteammember) | `POST /api/v1/team-members/{team_member_id}/clone` | write | `team:write` | Clone Team Member |
26
+ | [`createTeamMember`](#op-createteammember) | `POST /api/v1/team-members` | write | `team:write` | Create Team Member |
27
+ | [`createTeamMemberNote`](#op-createteammembernote) | `POST /api/v1/team-members/{team_member_id}/notes` | write | `team:write` | Create Team Member Note |
28
+ | [`deleteTeamMember`](#op-deleteteammember) | `DELETE /api/v1/team-members/{team_member_id}` | destructive | `team:delete` | Delete Team Member |
29
+ | [`deleteTeamMemberNote`](#op-deleteteammembernote) | `DELETE /api/v1/team-members/{team_member_id}/notes/{note_id}` | destructive | `team:delete` | Delete Team Member Note |
30
+ | [`enrichMyProfileFromLinkedin`](#op-enrichmyprofilefromlinkedin) | `POST /api/v1/team-members/me/enrich-linkedin` | billable | `team:run` | Enrich My Profile From Linkedin |
31
+ | [`enrichTeamMemberFromLinkedin`](#op-enrichteammemberfromlinkedin) | `POST /api/v1/team-members/{team_member_id}/enrich-linkedin` | billable | `team:run` | Enrich Team Member From Linkedin |
32
+ | [`generateMemberPost`](#op-generatememberpost) | `POST /api/v1/team-members/{team_member_id}/generate-post` | billable | `team:run` | Generate Member Post |
33
+ | [`getMyTeamMember`](#op-getmyteammember) | `GET /api/v1/team-members/me` | read | `team:read` | Get My Team Member |
34
+ | [`getTeamMember`](#op-getteammember) | `GET /api/v1/team-members/{team_member_id}` | read | `team:read` | Get Team Member |
35
+ | [`getTeamMemberCompanies`](#op-getteammembercompanies) | `GET /api/v1/team-members/{team_member_id}/companies` | read | `team:read` | Get Team Member Companies |
36
+ | [`getTeamMemberContent`](#op-getteammembercontent) | `GET /api/v1/team-members/{team_member_id}/content` | read | `team:read` | Get Team Member Content |
37
+ | [`getTeamMemberDeals`](#op-getteammemberdeals) | `GET /api/v1/team-members/{team_member_id}/deals` | read | `team:read` | Get Team Member Deals |
38
+ | [`importMySocialProfile`](#op-importmysocialprofile) | `POST /api/v1/team-members/me/import-social` | write | `team:write` | Import My Social Profile |
39
+ | [`listTeamMemberNotes`](#op-listteammembernotes) | `GET /api/v1/team-members/{team_member_id}/notes` | read | `team:read` | List Team Member Notes |
40
+ | [`listTeamMembers`](#op-listteammembers) | `GET /api/v1/team-members` | read | `team:read` | List Team Members |
41
+ | [`syncMyDesktopProfile`](#op-syncmydesktopprofile) | `POST /api/v1/team-members/me/sync-desktop-profile` | write | `team:write` | Sync My Desktop Profile |
42
+ | [`syncTeamMembers`](#op-syncteammembers) | `POST /api/v1/team-members/sync` | external | `team:run` | Sync Team Members |
43
+ | [`updateMyTeamMember`](#op-updatemyteammember) | `PATCH /api/v1/team-members/me` | write | `team:write` | Update My Team Member |
44
+ | [`updateTeamMember`](#op-updateteammember) | `PATCH /api/v1/team-members/{team_member_id}` | write | `team:write` | Update Team Member |
45
+ | [`updateTeamMemberNote`](#op-updateteammembernote) | `PUT /api/v1/team-members/{team_member_id}/notes/{note_id}` | write | `team:write` | Update Team Member Note |
46
+
47
+ ---
48
+
49
+ <a id="op-cloneteammember"></a>
50
+
51
+ ### `g8.api.teamMembers.cloneTeamMember(input)`
52
+
53
+ **Clone Team Member**
54
+
55
+ - HTTP: `POST /api/v1/team-members/{team_member_id}/clone`
56
+ - operationId: `clone_team_member_team_members__team_member_id__clone_post` (also callable as `g8.api.call("clone_team_member_team_members__team_member_id__clone_post", input)`)
57
+ - Tier: `write`: creates or changes records; the SDK sends an Idempotency-Key and retries transient failures
58
+ - API-key scope: `team:write`
59
+
60
+ Create an AI clone of a member, carrying their voice and expertise.
61
+
62
+ A NEW roster record, marked as a clone. The original is untouched, and the
63
+ clone is excluded from the directory list unless `include_clones=true`.
64
+
65
+ **Input**
66
+
67
+ | Field | Type | Required | Description |
68
+ |---|---|---|---|
69
+ | `path.team_member_id` | `string` | yes | Team member id. |
70
+ | `body` | `MemberCloneRequest` | yes | Request body; fields below. |
71
+
72
+ Body fields (`MemberCloneRequest`):
73
+
74
+ | Field | Type | Required | Description |
75
+ |---|---|---|---|
76
+ | `body.name` | `string \| null` | no | Name for the clone. Defaults to '<Original Name> (AI Clone)'. |
77
+
78
+ **Returns** `ApiResponse_OrgPayload_`: the envelope `{ data: OrgPayload, ... }`. `g8.api` returns the envelope as-is, so read `result.data`.
79
+
80
+ Other envelope fields: `pagination` (PaginationMeta).
81
+
82
+ **Example**
83
+
84
+ ```ts
85
+ const result = await g8.api.teamMembers.cloneTeamMember({ path: { team_member_id: "id" }, body: {} });
86
+ ```
87
+
88
+ ---
89
+
90
+ <a id="op-createteammember"></a>
91
+
92
+ ### `g8.api.teamMembers.createTeamMember(input)`
93
+
94
+ **Create Team Member**
95
+
96
+ - HTTP: `POST /api/v1/team-members`
97
+ - operationId: `create_team_member_team_members_post` (also callable as `g8.api.call("create_team_member_team_members_post", input)`)
98
+ - Tier: `write`: creates or changes records; the SDK sends an Idempotency-Key and retries transient failures
99
+ - API-key scope: `team:write`
100
+
101
+ Add someone to the roster.
102
+
103
+ This creates a DIRECTORY record, not a login. It does not invite anyone,
104
+ grant any permission, or put them in the identity provider - a member
105
+ created here can own a deal and be assigned a task, and cannot sign in.
106
+
107
+ **Input**
108
+
109
+ | Field | Type | Required | Description |
110
+ |---|---|---|---|
111
+ | `body` | `MemberCreateRequest` | yes | Request body; fields below. |
112
+
113
+ Body fields (`MemberCreateRequest`):
114
+
115
+ | Field | Type | Required | Description |
116
+ |---|---|---|---|
117
+ | `body.name` | `string` | yes | Full name. min length 1, max length 255 |
118
+ | `body.department` | `string \| null` | no | Department. max length 100 |
119
+ | `body.email` | `string (email) \| null` | no | Email address. |
120
+ | `body.linkedin_url` | `string \| null` | no | LinkedIn profile URL. |
121
+ | `body.phone` | `string \| null` | no | Phone number. max length 50 |
122
+ | `body.title` | `string \| null` | no | Job title. max length 255 |
123
+
124
+ **Returns** `ApiResponse_OrgPayload_`: the envelope `{ data: OrgPayload, ... }`. `g8.api` returns the envelope as-is, so read `result.data`.
125
+
126
+ Other envelope fields: `pagination` (PaginationMeta).
127
+
128
+ **Example**
129
+
130
+ ```ts
131
+ const result = await g8.api.teamMembers.createTeamMember({ body: { name: "Example" } });
132
+ ```
133
+
134
+ ---
135
+
136
+ <a id="op-createteammembernote"></a>
137
+
138
+ ### `g8.api.teamMembers.createTeamMemberNote(input)`
139
+
140
+ **Create Team Member Note**
141
+
142
+ - HTTP: `POST /api/v1/team-members/{team_member_id}/notes`
143
+ - operationId: `create_team_member_note_team_members__team_member_id__notes_post` (also callable as `g8.api.call("create_team_member_note_team_members__team_member_id__notes_post", input)`)
144
+ - Tier: `write`: creates or changes records; the SDK sends an Idempotency-Key and retries transient failures
145
+ - API-key scope: `team:write`
146
+
147
+ Leave an internal note on a member.
148
+
149
+ MENTIONING SOMEONE NOTIFIES THEM. Mentions carry an id, a name and
150
+ optionally an email, and the note itself is org-internal.
151
+
152
+ **Input**
153
+
154
+ | Field | Type | Required | Description |
155
+ |---|---|---|---|
156
+ | `path.team_member_id` | `string` | yes | Team member id. |
157
+ | `body` | `MemberNoteCreateRequest` | yes | Request body; fields below. |
158
+
159
+ Body fields (`MemberNoteCreateRequest`):
160
+
161
+ | Field | Type | Required | Description |
162
+ |---|---|---|---|
163
+ | `body.content` | `string` | yes | Note content. |
164
+ | `body.mentioned_users` | `Array<MemberNoteMention>` | no | |
165
+
166
+ **Returns** `ApiResponse_OrgPayload_`: the envelope `{ data: OrgPayload, ... }`. `g8.api` returns the envelope as-is, so read `result.data`.
167
+
168
+ Other envelope fields: `pagination` (PaginationMeta).
169
+
170
+ **Example**
171
+
172
+ ```ts
173
+ const result = await g8.api.teamMembers.createTeamMemberNote({ path: { team_member_id: "id" }, body: { content: "example" } });
174
+ ```
175
+
176
+ ---
177
+
178
+ <a id="op-deleteteammember"></a>
179
+
180
+ ### `g8.api.teamMembers.deleteTeamMember(input)`
181
+
182
+ **Delete Team Member**
183
+
184
+ - HTTP: `DELETE /api/v1/team-members/{team_member_id}`
185
+ - operationId: `delete_team_member_team_members__team_member_id__delete` (also callable as `g8.api.call("delete_team_member_team_members__team_member_id__delete", input)`)
186
+ - Tier: `destructive`: deletes or archives data; confirm with a human before calling
187
+ - API-key scope: `team:delete`
188
+
189
+ Remove someone from the roster.
190
+
191
+ This does NOT remove them from the organisation or revoke their login -
192
+ that is a different decision and it is not published on this API. What it
193
+ does remove is the row that deals and tasks point at as their owner.
194
+
195
+ **Input**
196
+
197
+ | Field | Type | Required | Description |
198
+ |---|---|---|---|
199
+ | `path.team_member_id` | `string` | yes | Team member id. |
200
+
201
+ **Returns** `ApiResponse_OrgPayload_`: the envelope `{ data: OrgPayload, ... }`. `g8.api` returns the envelope as-is, so read `result.data`.
202
+
203
+ Other envelope fields: `pagination` (PaginationMeta).
204
+
205
+ **Example**
206
+
207
+ ```ts
208
+ // destructive: deletes or archives data; confirm with a human before calling.
209
+ const result = await g8.api.teamMembers.deleteTeamMember({ path: { team_member_id: "id" } });
210
+ ```
211
+
212
+ ---
213
+
214
+ <a id="op-deleteteammembernote"></a>
215
+
216
+ ### `g8.api.teamMembers.deleteTeamMemberNote(input)`
217
+
218
+ **Delete Team Member Note**
219
+
220
+ - HTTP: `DELETE /api/v1/team-members/{team_member_id}/notes/{note_id}`
221
+ - operationId: `delete_team_member_note_team_members__team_member_id__notes__note_id__delete` (also callable as `g8.api.call("delete_team_member_note_team_members__team_member_id__notes__note_id__delete", input)`)
222
+ - Tier: `destructive`: deletes or archives data; confirm with a human before calling
223
+ - API-key scope: `team:delete`
224
+
225
+ Delete a note.
226
+
227
+ **Input**
228
+
229
+ | Field | Type | Required | Description |
230
+ |---|---|---|---|
231
+ | `path.team_member_id` | `string` | yes | Team member id. |
232
+ | `path.note_id` | `string` | yes | Note id. |
233
+
234
+ **Returns** `ApiResponse_OrgPayload_`: the envelope `{ data: OrgPayload, ... }`. `g8.api` returns the envelope as-is, so read `result.data`.
235
+
236
+ Other envelope fields: `pagination` (PaginationMeta).
237
+
238
+ **Example**
239
+
240
+ ```ts
241
+ // destructive: deletes or archives data; confirm with a human before calling.
242
+ const result = await g8.api.teamMembers.deleteTeamMemberNote({ path: { team_member_id: "id", note_id: "id" } });
243
+ ```
244
+
245
+ ---
246
+
247
+ <a id="op-enrichmyprofilefromlinkedin"></a>
248
+
249
+ ### `g8.api.teamMembers.enrichMyProfileFromLinkedin(input)`
250
+
251
+ **Enrich My Profile From Linkedin**
252
+
253
+ - HTTP: `POST /api/v1/team-members/me/enrich-linkedin`
254
+ - operationId: `enrich_my_profile_from_linkedin_team_members_me_enrich_linkedin_post` (also callable as `g8.api.call("enrich_my_profile_from_linkedin_team_members_me_enrich_linkedin_post", input)`)
255
+ - Tier: `billable`: spends credits; the SDK never blindly retries it; confirm cost before bulk use
256
+ - API-key scope: `team:run`
257
+
258
+ Fill the key-holder's own record from their LinkedIn profile.
259
+
260
+ THIS SPENDS ENRICHMENT CREDIT - it calls a paid provider - which is why it
261
+ gates on `team:run` rather than plain write.
262
+
263
+ `overwrite` defaults to false, so it fills EMPTY fields only. Turning it
264
+ on replaces values the person wrote themselves.
265
+
266
+ **Input**
267
+
268
+ | Field | Type | Required | Description |
269
+ |---|---|---|---|
270
+ | `body` | `MemberLinkedInEnrichRequest` | yes | Request body; fields below. |
271
+
272
+ Body fields (`MemberLinkedInEnrichRequest`):
273
+
274
+ | Field | Type | Required | Description |
275
+ |---|---|---|---|
276
+ | `body.linkedin_url` | `string` | yes | LinkedIn profile URL to enrich from. |
277
+ | `body.overwrite` | `boolean` | no | Replace fields the person has already filled. Default fills empty fields only. default `false` |
278
+
279
+ **Returns** `ApiResponse_OrgPayload_`: the envelope `{ data: OrgPayload, ... }`. `g8.api` returns the envelope as-is, so read `result.data`.
280
+
281
+ Other envelope fields: `pagination` (PaginationMeta).
282
+
283
+ **Example**
284
+
285
+ ```ts
286
+ // billable: spends credits; the SDK never blindly retries it; confirm cost before bulk use.
287
+ const result = await g8.api.teamMembers.enrichMyProfileFromLinkedin({ body: { linkedin_url: "https://example.com" } });
288
+ ```
289
+
290
+ ---
291
+
292
+ <a id="op-enrichteammemberfromlinkedin"></a>
293
+
294
+ ### `g8.api.teamMembers.enrichTeamMemberFromLinkedin(input)`
295
+
296
+ **Enrich Team Member From Linkedin**
297
+
298
+ - HTTP: `POST /api/v1/team-members/{team_member_id}/enrich-linkedin`
299
+ - operationId: `enrich_team_member_from_linkedin_team_members__team_member_id__enrich_linkedin_post` (also callable as `g8.api.call("enrich_team_member_from_linkedin_team_members__team_member_id__enrich_linkedin_post", input)`)
300
+ - Tier: `billable`: spends credits; the SDK never blindly retries it; confirm cost before bulk use
301
+ - API-key scope: `team:run`
302
+
303
+ Fill somebody else's record from their LinkedIn profile.
304
+
305
+ THIS SPENDS ENRICHMENT CREDIT. `overwrite` defaults to false, so it fills
306
+ empty fields only.
307
+
308
+ **Input**
309
+
310
+ | Field | Type | Required | Description |
311
+ |---|---|---|---|
312
+ | `path.team_member_id` | `string` | yes | Team member id. |
313
+ | `body` | `MemberLinkedInEnrichRequest` | yes | Request body; fields below. |
314
+
315
+ Body fields (`MemberLinkedInEnrichRequest`):
316
+
317
+ | Field | Type | Required | Description |
318
+ |---|---|---|---|
319
+ | `body.linkedin_url` | `string` | yes | LinkedIn profile URL to enrich from. |
320
+ | `body.overwrite` | `boolean` | no | Replace fields the person has already filled. Default fills empty fields only. default `false` |
321
+
322
+ **Returns** `ApiResponse_OrgPayload_`: the envelope `{ data: OrgPayload, ... }`. `g8.api` returns the envelope as-is, so read `result.data`.
323
+
324
+ Other envelope fields: `pagination` (PaginationMeta).
325
+
326
+ **Example**
327
+
328
+ ```ts
329
+ // billable: spends credits; the SDK never blindly retries it; confirm cost before bulk use.
330
+ const result = await g8.api.teamMembers.enrichTeamMemberFromLinkedin({
331
+ path: { team_member_id: "id" },
332
+ body: { linkedin_url: "https://example.com" },
333
+ });
334
+ ```
335
+
336
+ ---
337
+
338
+ <a id="op-generatememberpost"></a>
339
+
340
+ ### `g8.api.teamMembers.generateMemberPost(input)`
341
+
342
+ **Generate Member Post**
343
+
344
+ - HTTP: `POST /api/v1/team-members/{team_member_id}/generate-post`
345
+ - operationId: `generate_member_post_team_members__team_member_id__generate_post_post` (also callable as `g8.api.call("generate_member_post_team_members__team_member_id__generate_post_post", input)`)
346
+ - Tier: `billable`: spends credits; the SDK never blindly retries it; confirm cost before bulk use
347
+ - API-key scope: `team:run`
348
+
349
+ Draft a social post in this member's voice.
350
+
351
+ THIS RUNS A MODEL and therefore spends credits, which is why it gates on
352
+ `team:run`. It DRAFTS: nothing is posted anywhere.
353
+
354
+ **Input**
355
+
356
+ | Field | Type | Required | Description |
357
+ |---|---|---|---|
358
+ | `path.team_member_id` | `string` | yes | Team member id. |
359
+
360
+ **Returns** `ApiResponse_OrgPayload_`: the envelope `{ data: OrgPayload, ... }`. `g8.api` returns the envelope as-is, so read `result.data`.
361
+
362
+ Other envelope fields: `pagination` (PaginationMeta).
363
+
364
+ **Example**
365
+
366
+ ```ts
367
+ // billable: spends credits; the SDK never blindly retries it; confirm cost before bulk use.
368
+ const result = await g8.api.teamMembers.generateMemberPost({ path: { team_member_id: "id" } });
369
+ ```
370
+
371
+ ---
372
+
373
+ <a id="op-getmyteammember"></a>
374
+
375
+ ### `g8.api.teamMembers.getMyTeamMember(input?)`
376
+
377
+ **Get My Team Member**
378
+
379
+ - HTTP: `GET /api/v1/team-members/me`
380
+ - operationId: `get_my_team_member_team_members_me_get` (also callable as `g8.api.call("get_my_team_member_team_members_me_get", input)`)
381
+ - Tier: `read`: reads data; safe to call and to retry
382
+ - API-key scope: `team:read`
383
+
384
+ The roster record of the person who minted this key.
385
+
386
+ AUTO-CREATES the record if that person has none yet, which is why an
387
+ organisation-scoped key is refused here rather than being given a
388
+ synthetic identity to create a record for.
389
+
390
+ **Input**
391
+
392
+ | Field | Type | Required | Description |
393
+ |---|---|---|---|
394
+ | `query.include_preferences` | `boolean` | no | Include the member's preferences blob. default `false` |
395
+
396
+ **Returns** `ApiResponse_OrgPayload_`: the envelope `{ data: OrgPayload, ... }`. `g8.api` returns the envelope as-is, so read `result.data`.
397
+
398
+ Other envelope fields: `pagination` (PaginationMeta).
399
+
400
+ **Example**
401
+
402
+ ```ts
403
+ const result = await g8.api.teamMembers.getMyTeamMember();
404
+ ```
405
+
406
+ ---
407
+
408
+ <a id="op-getteammember"></a>
409
+
410
+ ### `g8.api.teamMembers.getTeamMember(input)`
411
+
412
+ **Get Team Member**
413
+
414
+ - HTTP: `GET /api/v1/team-members/{team_member_id}`
415
+ - operationId: `get_team_member_team_members__team_member_id__get` (also callable as `g8.api.call("get_team_member_team_members__team_member_id__get", input)`)
416
+ - Tier: `read`: reads data; safe to call and to retry
417
+ - API-key scope: `team:read`
418
+
419
+ One roster record. A directory read, not an administrative one.
420
+
421
+ **Input**
422
+
423
+ | Field | Type | Required | Description |
424
+ |---|---|---|---|
425
+ | `path.team_member_id` | `string` | yes | Team member id. |
426
+ | `query.include_preferences` | `boolean` | no | Include the member's preferences blob. default `false` |
427
+
428
+ **Returns** `ApiResponse_OrgPayload_`: the envelope `{ data: OrgPayload, ... }`. `g8.api` returns the envelope as-is, so read `result.data`.
429
+
430
+ Other envelope fields: `pagination` (PaginationMeta).
431
+
432
+ **Example**
433
+
434
+ ```ts
435
+ const result = await g8.api.teamMembers.getTeamMember({ path: { team_member_id: "id" } });
436
+ ```
437
+
438
+ ---
439
+
440
+ <a id="op-getteammembercompanies"></a>
441
+
442
+ ### `g8.api.teamMembers.getTeamMemberCompanies(input)`
443
+
444
+ **Get Team Member Companies**
445
+
446
+ - HTTP: `GET /api/v1/team-members/{team_member_id}/companies`
447
+ - operationId: `get_team_member_companies_team_members__team_member_id__companies_get` (also callable as `g8.api.call("get_team_member_companies_team_members__team_member_id__companies_get", input)`)
448
+ - Tier: `read`: reads data; safe to call and to retry
449
+ - API-key scope: `team:read`
450
+
451
+ The companies this person owns.
452
+
453
+ **Input**
454
+
455
+ | Field | Type | Required | Description |
456
+ |---|---|---|---|
457
+ | `path.team_member_id` | `string` | yes | Team member id. |
458
+ | `query.limit` | `integer` | no | default `100` |
459
+ | `query.offset` | `integer` | no | default `0` |
460
+
461
+ **Returns** `ApiResponse_OrgListPayload_`: the envelope `{ data: OrgListPayload, ... }`. `g8.api` returns the envelope as-is, so read `result.data`.
462
+
463
+ Other envelope fields: `pagination` (PaginationMeta).
464
+
465
+ `OrgListPayload` fields:
466
+
467
+ | Field | Type | Required | Description |
468
+ |---|---|---|---|
469
+ | `items` | `Array<unknown>` | no | |
470
+
471
+ **Example**
472
+
473
+ ```ts
474
+ const result = await g8.api.teamMembers.getTeamMemberCompanies({ path: { team_member_id: "id" } });
475
+ ```
476
+
477
+ ---
478
+
479
+ <a id="op-getteammembercontent"></a>
480
+
481
+ ### `g8.api.teamMembers.getTeamMemberContent(input)`
482
+
483
+ **Get Team Member Content**
484
+
485
+ - HTTP: `GET /api/v1/team-members/{team_member_id}/content`
486
+ - operationId: `get_team_member_content_team_members__team_member_id__content_get` (also callable as `g8.api.call("get_team_member_content_team_members__team_member_id__content_get", input)`)
487
+ - Tier: `read`: reads data; safe to call and to retry
488
+ - API-key scope: `team:read`
489
+
490
+ Content written in this person's voice, including anything drafted for them.
491
+
492
+ **Input**
493
+
494
+ | Field | Type | Required | Description |
495
+ |---|---|---|---|
496
+ | `path.team_member_id` | `string` | yes | Team member id. |
497
+ | `query.limit` | `integer` | no | default `100` |
498
+ | `query.offset` | `integer` | no | default `0` |
499
+
500
+ **Returns** `ApiResponse_OrgListPayload_`: the envelope `{ data: OrgListPayload, ... }`. `g8.api` returns the envelope as-is, so read `result.data`.
501
+
502
+ Other envelope fields: `pagination` (PaginationMeta).
503
+
504
+ `OrgListPayload` fields:
505
+
506
+ | Field | Type | Required | Description |
507
+ |---|---|---|---|
508
+ | `items` | `Array<unknown>` | no | |
509
+
510
+ **Example**
511
+
512
+ ```ts
513
+ const result = await g8.api.teamMembers.getTeamMemberContent({ path: { team_member_id: "id" } });
514
+ ```
515
+
516
+ ---
517
+
518
+ <a id="op-getteammemberdeals"></a>
519
+
520
+ ### `g8.api.teamMembers.getTeamMemberDeals(input)`
521
+
522
+ **Get Team Member Deals**
523
+
524
+ - HTTP: `GET /api/v1/team-members/{team_member_id}/deals`
525
+ - operationId: `get_team_member_deals_team_members__team_member_id__deals_get` (also callable as `g8.api.call("get_team_member_deals_team_members__team_member_id__deals_get", input)`)
526
+ - Tier: `read`: reads data; safe to call and to retry
527
+ - API-key scope: `team:read`
528
+
529
+ The deals this person owns. The quickest answer to "what is on X's plate".
530
+
531
+ **Input**
532
+
533
+ | Field | Type | Required | Description |
534
+ |---|---|---|---|
535
+ | `path.team_member_id` | `string` | yes | Team member id. |
536
+ | `query.limit` | `integer` | no | default `100` |
537
+ | `query.offset` | `integer` | no | default `0` |
538
+
539
+ **Returns** `ApiResponse_OrgListPayload_`: the envelope `{ data: OrgListPayload, ... }`. `g8.api` returns the envelope as-is, so read `result.data`.
540
+
541
+ Other envelope fields: `pagination` (PaginationMeta).
542
+
543
+ `OrgListPayload` fields:
544
+
545
+ | Field | Type | Required | Description |
546
+ |---|---|---|---|
547
+ | `items` | `Array<unknown>` | no | |
548
+
549
+ **Example**
550
+
551
+ ```ts
552
+ const result = await g8.api.teamMembers.getTeamMemberDeals({ path: { team_member_id: "id" } });
553
+ ```
554
+
555
+ ---
556
+
557
+ <a id="op-importmysocialprofile"></a>
558
+
559
+ ### `g8.api.teamMembers.importMySocialProfile(input)`
560
+
561
+ **Import My Social Profile**
562
+
563
+ - HTTP: `POST /api/v1/team-members/me/import-social`
564
+ - operationId: `import_my_social_profile_team_members_me_import_social_post` (also callable as `g8.api.call("import_my_social_profile_team_members_me_import_social_post", input)`)
565
+ - Tier: `write`: creates or changes records; the SDK sends an Idempotency-Key and retries transient failures
566
+ - API-key scope: `team:write`
567
+
568
+ Fill the key-holder's own record from a LinkedIn or Twitter profile.
569
+
570
+ The profile arrives in the body - nothing is fetched and no credit is
571
+ spent. EMPTY fields are filled; values the person wrote are kept. Skills
572
+ MERGE into expertise (capped at 15), up to three `recent_posts` are
573
+ appended to the writing samples (ten kept), and a sent `job_history`
574
+ REPLACES the stored one.
575
+
576
+ **Input**
577
+
578
+ | Field | Type | Required | Description |
579
+ |---|---|---|---|
580
+ | `body` | `MemberSocialImportRequest` | yes | Request body; fields below. |
581
+
582
+ Body fields (`MemberSocialImportRequest`):
583
+
584
+ | Field | Type | Required | Description |
585
+ |---|---|---|---|
586
+ | `body.platform` | `"linkedin" \| "twitter"` | yes | Where the profile came from. |
587
+ | `body.profile_url` | `string` | yes | Profile URL. |
588
+ | `body.about` | `string \| null` | no | Full bio / about section. |
589
+ | `body.avatar_url` | `string \| null` | no | Profile picture URL. |
590
+ | `body.bio` | `string \| null` | no | Twitter bio. |
591
+ | `body.current_company` | `string \| null` | no | Current company name. |
592
+ | `body.current_title` | `string \| null` | no | Current job title. |
593
+ | `body.followers` | `string \| null` | no | Follower count. |
594
+ | `body.following` | `string \| null` | no | Following count. |
595
+ | `body.headline` | `string \| null` | no | LinkedIn headline or Twitter bio. |
596
+ | `body.job_history` | `Array<MemberJobHistoryItem> \| null` | no | Full job history. REPLACES the stored history when sent. |
597
+ | `body.location` | `string \| null` | no | Location. |
598
+ | `body.name` | `string \| null` | no | Display name. |
599
+ | `body.recent_posts` | `Array<Record<string, unknown>> \| null` | no | Recent posts, used as writing samples. Each needs `text`; `scraped_at` is optional. At most three are taken per call. |
600
+ | `body.skills` | `Array<string> \| null` | no | Skills / expertise list. |
601
+ | `body.username` | `string \| null` | no | Twitter username. |
602
+ | `body.website` | `string \| null` | no | Personal website URL. |
603
+
604
+ **Returns** `ApiResponse_OrgPayload_`: the envelope `{ data: OrgPayload, ... }`. `g8.api` returns the envelope as-is, so read `result.data`.
605
+
606
+ Other envelope fields: `pagination` (PaginationMeta).
607
+
608
+ **Example**
609
+
610
+ ```ts
611
+ const result = await g8.api.teamMembers.importMySocialProfile({ body: { platform: "linkedin", profile_url: "https://example.com" } });
612
+ ```
613
+
614
+ ---
615
+
616
+ <a id="op-listteammembernotes"></a>
617
+
618
+ ### `g8.api.teamMembers.listTeamMemberNotes(input)`
619
+
620
+ **List Team Member Notes**
621
+
622
+ - HTTP: `GET /api/v1/team-members/{team_member_id}/notes`
623
+ - operationId: `list_team_member_notes_team_members__team_member_id__notes_get` (also callable as `g8.api.call("list_team_member_notes_team_members__team_member_id__notes_get", input)`)
624
+ - Tier: `read`: reads data; safe to call and to retry
625
+ - API-key scope: `team:read`
626
+
627
+ Internal notes colleagues keep on this person. Never customer-facing.
628
+
629
+ **Input**
630
+
631
+ | Field | Type | Required | Description |
632
+ |---|---|---|---|
633
+ | `path.team_member_id` | `string` | yes | Team member id. |
634
+
635
+ **Returns** `ApiResponse_OrgListPayload_`: the envelope `{ data: OrgListPayload, ... }`. `g8.api` returns the envelope as-is, so read `result.data`.
636
+
637
+ Other envelope fields: `pagination` (PaginationMeta).
638
+
639
+ `OrgListPayload` fields:
640
+
641
+ | Field | Type | Required | Description |
642
+ |---|---|---|---|
643
+ | `items` | `Array<unknown>` | no | |
644
+
645
+ **Example**
646
+
647
+ ```ts
648
+ const result = await g8.api.teamMembers.listTeamMemberNotes({ path: { team_member_id: "id" } });
649
+ ```
650
+
651
+ ---
652
+
653
+ <a id="op-listteammembers"></a>
654
+
655
+ ### `g8.api.teamMembers.listTeamMembers(input?)`
656
+
657
+ **List Team Members**
658
+
659
+ - HTTP: `GET /api/v1/team-members`
660
+ - operationId: `list_team_members_team_members_get` (also callable as `g8.api.call("list_team_members_team_members_get", input)`)
661
+ - Tier: `read`: reads data; safe to call and to retry
662
+ - API-key scope: `team:read`
663
+
664
+ Everyone in the organisation's roster.
665
+
666
+ On the app's DIRECTORY router, not its admin one: this is what every deal
667
+ owner and task assignee picker resolves names through, so it is gated on
668
+ `settings:read` OR `team:read` rather than on administrator access.
669
+
670
+ **Input**
671
+
672
+ | Field | Type | Required | Description |
673
+ |---|---|---|---|
674
+ | `query.status` | `string \| null` | no | Filter by status. |
675
+ | `query.source` | `string \| null` | no | Filter by how the record was created: `propelauth`, `manual` or `clone`. |
676
+ | `query.search` | `string \| null` | no | Match on name or email. |
677
+ | `query.include_clones` | `boolean` | no | Include AI clone records. default `false` |
678
+ | `query.sync` | `boolean` | no | Pull the identity provider's membership list before answering. Slower, and it WRITES: it creates a member row for anyone in the organisation who has none yet. default `false` |
679
+ | `query.limit` | `integer` | no | default `100` |
680
+ | `query.offset` | `integer` | no | default `0` |
681
+
682
+ **Returns** `ApiResponse_OrgListPayload_`: the envelope `{ data: OrgListPayload, ... }`. `g8.api` returns the envelope as-is, so read `result.data`.
683
+
684
+ Other envelope fields: `pagination` (PaginationMeta).
685
+
686
+ `OrgListPayload` fields:
687
+
688
+ | Field | Type | Required | Description |
689
+ |---|---|---|---|
690
+ | `items` | `Array<unknown>` | no | |
691
+
692
+ **Example**
693
+
694
+ ```ts
695
+ const result = await g8.api.teamMembers.listTeamMembers();
696
+ ```
697
+
698
+ ---
699
+
700
+ <a id="op-syncmydesktopprofile"></a>
701
+
702
+ ### `g8.api.teamMembers.syncMyDesktopProfile(input)`
703
+
704
+ **Sync My Desktop Profile**
705
+
706
+ - HTTP: `POST /api/v1/team-members/me/sync-desktop-profile`
707
+ - operationId: `sync_my_desktop_profile_team_members_me_sync_desktop_profile_post` (also callable as `g8.api.call("sync_my_desktop_profile_team_members_me_sync_desktop_profile_post", input)`)
708
+ - Tier: `write`: creates or changes records; the SDK sends an Idempotency-Key and retries transient failures
709
+ - API-key scope: `team:write`
710
+
711
+ Fill the key-holder's own record from a desktop-client profile record.
712
+
713
+ The shape is the graph8 Desktop app's local profile record. EMPTY fields
714
+ only - a value the person already has is never overwritten, including the
715
+ job history. Skills and interests merge (capped at 15 each); education,
716
+ follower counts, recommendations and accomplishments land in the member's
717
+ preferences blob.
718
+
719
+ **Input**
720
+
721
+ | Field | Type | Required | Description |
722
+ |---|---|---|---|
723
+ | `body` | `MemberDesktopProfileSyncRequest` | yes | Request body; fields below. |
724
+
725
+ Body fields (`MemberDesktopProfileSyncRequest`):
726
+
727
+ | Field | Type | Required | Description |
728
+ |---|---|---|---|
729
+ | `body.about` | `string \| null` | no | |
730
+ | `body.accomplishments_json` | `Array<Record<string, unknown>> \| null` | no | |
731
+ | `body.banner_photo_url` | `string \| null` | no | |
732
+ | `body.captured_at` | `string \| null` | no | |
733
+ | `body.connection_count` | `integer \| null` | no | |
734
+ | `body.education_json` | `Array<MemberDesktopEducationItem> \| null` | no | |
735
+ | `body.experiences_json` | `Array<MemberDesktopExperienceItem> \| null` | no | |
736
+ | `body.first_name` | `string \| null` | no | |
737
+ | `body.follower_count` | `integer \| null` | no | |
738
+ | `body.full_name` | `string \| null` | no | |
739
+ | `body.headline` | `string \| null` | no | |
740
+ | `body.interests_json` | `Array<MemberDesktopInterestItem> \| null` | no | |
741
+ | `body.is_hiring` | `boolean \| null` | no | |
742
+ | `body.is_open_to_work` | `boolean \| null` | no | |
743
+ | `body.last_name` | `string \| null` | no | |
744
+ | `body.linkedin_id` | `string \| null` | no | |
745
+ | `body.location` | `string \| null` | no | |
746
+ | `body.profile_photo_url` | `string \| null` | no | |
747
+ | `body.profile_url` | `string \| null` | no | |
748
+ | `body.recommendations_json` | `Array<Record<string, unknown>> \| null` | no | |
749
+ | `body.skills_json` | `Array<MemberDesktopSkillItem> \| null` | no | |
750
+
751
+ **Returns** `ApiResponse_OrgPayload_`: the envelope `{ data: OrgPayload, ... }`. `g8.api` returns the envelope as-is, so read `result.data`.
752
+
753
+ Other envelope fields: `pagination` (PaginationMeta).
754
+
755
+ **Example**
756
+
757
+ ```ts
758
+ const result = await g8.api.teamMembers.syncMyDesktopProfile({ body: {} });
759
+ ```
760
+
761
+ ---
762
+
763
+ <a id="op-syncteammembers"></a>
764
+
765
+ ### `g8.api.teamMembers.syncTeamMembers(input?)`
766
+
767
+ **Sync Team Members**
768
+
769
+ - HTTP: `POST /api/v1/team-members/sync`
770
+ - operationId: `sync_team_members_team_members_sync_post` (also callable as `g8.api.call("sync_team_members_team_members_sync_post", input)`)
771
+ - Tier: `external`: reaches real people (sends email/SMS, places a call, launches a send); the SDK never blindly retries it; confirm with a human first
772
+ - API-key scope: `team:run`
773
+
774
+ Create a roster record for every org member who has none yet.
775
+
776
+ Reads the identity provider, so it gates on `team:run` rather than plain
777
+ write. IDEMPOTENT: it only ever fills gaps, and the response says how many
778
+ it created, so running it twice is a no-op rather than a duplicate.
779
+
780
+ **Input**: none.
781
+
782
+ **Returns** `ApiResponse_OrgPayload_`: the envelope `{ data: OrgPayload, ... }`. `g8.api` returns the envelope as-is, so read `result.data`.
783
+
784
+ Other envelope fields: `pagination` (PaginationMeta).
785
+
786
+ **Example**
787
+
788
+ ```ts
789
+ // external: reaches real people (sends email/SMS, places a call, launches a send); the SDK never blindly retries it; confirm with a human first.
790
+ const result = await g8.api.teamMembers.syncTeamMembers();
791
+ ```
792
+
793
+ ---
794
+
795
+ <a id="op-updatemyteammember"></a>
796
+
797
+ ### `g8.api.teamMembers.updateMyTeamMember(input)`
798
+
799
+ **Update My Team Member**
800
+
801
+ - HTTP: `PATCH /api/v1/team-members/me`
802
+ - operationId: `update_my_team_member_team_members_me_patch` (also callable as `g8.api.call("update_my_team_member_team_members_me_patch", input)`)
803
+ - Tier: `write`: creates or changes records; the SDK sends an Idempotency-Key and retries transient failures
804
+ - API-key scope: `team:write`
805
+
806
+ Edit the key-holder's own roster record. Omitted fields are left alone.
807
+
808
+ **Input**
809
+
810
+ | Field | Type | Required | Description |
811
+ |---|---|---|---|
812
+ | `body` | `MemberUpdateRequest` | yes | Request body; fields below. |
813
+
814
+ Body fields (`MemberUpdateRequest`):
815
+
816
+ | Field | Type | Required | Description |
817
+ |---|---|---|---|
818
+ | `body.achievements` | `Array<string> \| null` | no | |
819
+ | `body.avatar_url` | `string \| null` | no | |
820
+ | `body.bio_full` | `string \| null` | no | |
821
+ | `body.bio_short` | `string \| null` | no | |
822
+ | `body.certifications` | `Array<string> \| null` | no | |
823
+ | `body.company` | `string \| null` | no | max length 255 |
824
+ | `body.custom_notes` | `string \| null` | no | |
825
+ | `body.department` | `string \| null` | no | max length 100 |
826
+ | `body.expertise_areas` | `Array<string> \| null` | no | |
827
+ | `body.languages` | `Array<string> \| null` | no | |
828
+ | `body.linkedin_url` | `string \| null` | no | |
829
+ | `body.name` | `string \| null` | no | min length 1, max length 255 |
830
+ | `body.personal_interests` | `Array<string> \| null` | no | |
831
+ | `body.personal_website` | `string \| null` | no | |
832
+ | `body.phone` | `string \| null` | no | max length 50 |
833
+ | `body.preferences` | `Record<string, unknown> \| null` | no | Merged into the member's preferences blob, key by key. |
834
+ | `body.responsibilities` | `string \| null` | no | |
835
+ | `body.timezone` | `string \| null` | no | max length 100 |
836
+ | `body.title` | `string \| null` | no | max length 255 |
837
+ | `body.tools_platforms` | `Array<string> \| null` | no | |
838
+ | `body.topics_of_interest` | `Array<string> \| null` | no | |
839
+ | `body.twitter_url` | `string \| null` | no | |
840
+ | `body.voice_tone` | `string \| null` | no | max length 50 |
841
+
842
+ **Returns** `ApiResponse_OrgPayload_`: the envelope `{ data: OrgPayload, ... }`. `g8.api` returns the envelope as-is, so read `result.data`.
843
+
844
+ Other envelope fields: `pagination` (PaginationMeta).
845
+
846
+ **Example**
847
+
848
+ ```ts
849
+ const result = await g8.api.teamMembers.updateMyTeamMember({ body: {} });
850
+ ```
851
+
852
+ ---
853
+
854
+ <a id="op-updateteammember"></a>
855
+
856
+ ### `g8.api.teamMembers.updateTeamMember(input)`
857
+
858
+ **Update Team Member**
859
+
860
+ - HTTP: `PATCH /api/v1/team-members/{team_member_id}`
861
+ - operationId: `update_team_member_team_members__team_member_id__patch` (also callable as `g8.api.call("update_team_member_team_members__team_member_id__patch", input)`)
862
+ - Tier: `write`: creates or changes records; the SDK sends an Idempotency-Key and retries transient failures
863
+ - API-key scope: `team:write`
864
+
865
+ Edit somebody else's roster record. Omitted fields are left alone.
866
+
867
+ **Input**
868
+
869
+ | Field | Type | Required | Description |
870
+ |---|---|---|---|
871
+ | `path.team_member_id` | `string` | yes | Team member id. |
872
+ | `body` | `MemberUpdateRequest` | yes | Request body; fields below. |
873
+
874
+ Body fields (`MemberUpdateRequest`):
875
+
876
+ | Field | Type | Required | Description |
877
+ |---|---|---|---|
878
+ | `body.achievements` | `Array<string> \| null` | no | |
879
+ | `body.avatar_url` | `string \| null` | no | |
880
+ | `body.bio_full` | `string \| null` | no | |
881
+ | `body.bio_short` | `string \| null` | no | |
882
+ | `body.certifications` | `Array<string> \| null` | no | |
883
+ | `body.company` | `string \| null` | no | max length 255 |
884
+ | `body.custom_notes` | `string \| null` | no | |
885
+ | `body.department` | `string \| null` | no | max length 100 |
886
+ | `body.expertise_areas` | `Array<string> \| null` | no | |
887
+ | `body.languages` | `Array<string> \| null` | no | |
888
+ | `body.linkedin_url` | `string \| null` | no | |
889
+ | `body.name` | `string \| null` | no | min length 1, max length 255 |
890
+ | `body.personal_interests` | `Array<string> \| null` | no | |
891
+ | `body.personal_website` | `string \| null` | no | |
892
+ | `body.phone` | `string \| null` | no | max length 50 |
893
+ | `body.preferences` | `Record<string, unknown> \| null` | no | Merged into the member's preferences blob, key by key. |
894
+ | `body.responsibilities` | `string \| null` | no | |
895
+ | `body.timezone` | `string \| null` | no | max length 100 |
896
+ | `body.title` | `string \| null` | no | max length 255 |
897
+ | `body.tools_platforms` | `Array<string> \| null` | no | |
898
+ | `body.topics_of_interest` | `Array<string> \| null` | no | |
899
+ | `body.twitter_url` | `string \| null` | no | |
900
+ | `body.voice_tone` | `string \| null` | no | max length 50 |
901
+
902
+ **Returns** `ApiResponse_OrgPayload_`: the envelope `{ data: OrgPayload, ... }`. `g8.api` returns the envelope as-is, so read `result.data`.
903
+
904
+ Other envelope fields: `pagination` (PaginationMeta).
905
+
906
+ **Example**
907
+
908
+ ```ts
909
+ const result = await g8.api.teamMembers.updateTeamMember({ path: { team_member_id: "id" }, body: {} });
910
+ ```
911
+
912
+ ---
913
+
914
+ <a id="op-updateteammembernote"></a>
915
+
916
+ ### `g8.api.teamMembers.updateTeamMemberNote(input)`
917
+
918
+ **Update Team Member Note**
919
+
920
+ - HTTP: `PUT /api/v1/team-members/{team_member_id}/notes/{note_id}`
921
+ - operationId: `update_team_member_note_team_members__team_member_id__notes__note_id__put` (also callable as `g8.api.call("update_team_member_note_team_members__team_member_id__notes__note_id__put", input)`)
922
+ - Tier: `write`: creates or changes records; the SDK sends an Idempotency-Key and retries transient failures
923
+ - API-key scope: `team:write`
924
+
925
+ Rewrite a note. `content` REPLACES the whole body rather than appending.
926
+
927
+ **Input**
928
+
929
+ | Field | Type | Required | Description |
930
+ |---|---|---|---|
931
+ | `path.team_member_id` | `string` | yes | Team member id. |
932
+ | `path.note_id` | `string` | yes | Note id. |
933
+ | `body` | `MemberNoteUpdateRequest` | yes | Request body; fields below. |
934
+
935
+ Body fields (`MemberNoteUpdateRequest`):
936
+
937
+ | Field | Type | Required | Description |
938
+ |---|---|---|---|
939
+ | `body.content` | `string` | yes | Updated note content. |
940
+ | `body.mentioned_users` | `Array<MemberNoteMention>` | no | |
941
+
942
+ **Returns** `ApiResponse_OrgPayload_`: the envelope `{ data: OrgPayload, ... }`. `g8.api` returns the envelope as-is, so read `result.data`.
943
+
944
+ Other envelope fields: `pagination` (PaginationMeta).
945
+
946
+ **Example**
947
+
948
+ ```ts
949
+ const result = await g8.api.teamMembers.updateTeamMemberNote({
950
+ path: { team_member_id: "id", note_id: "id" },
951
+ body: { content: "example" },
952
+ });
953
+ ```
954
+
955
+ ---
956
+
957
+ ## Referenced types
958
+
959
+ Named types that appear in the tables above. Full TypeScript definitions: `G8Contract.<Name>` (`import type { G8Contract } from "@graph8/sdk"`).
960
+
961
+ <a id="type-memberdesktopeducationitem"></a>
962
+
963
+ ### `MemberDesktopEducationItem`
964
+
965
+ Mirrors `team_members.DesktopEducationItem`.
966
+
967
+ | Field | Type | Required | Description |
968
+ |---|---|---|---|
969
+ | `dates` | `string \| null` | no | |
970
+ | `degree` | `string \| null` | no | |
971
+ | `field` | `string \| null` | no | |
972
+ | `school` | `string \| null` | no | |
973
+
974
+ <a id="type-memberdesktopexperienceitem"></a>
975
+
976
+ ### `MemberDesktopExperienceItem`
977
+
978
+ Mirrors `team_members.DesktopExperienceItem`.
979
+
980
+ | Field | Type | Required | Description |
981
+ |---|---|---|---|
982
+ | `company` | `string \| null` | no | |
983
+ | `companyUrl` | `string \| null` | no | |
984
+ | `dates` | `string \| null` | no | `<start> - <end>`; an end of `Present` marks the current role. |
985
+ | `description` | `string \| null` | no | |
986
+ | `duration` | `string \| null` | no | |
987
+ | `employment_type` | `string \| null` | no | |
988
+ | `location` | `string \| null` | no | |
989
+ | `title` | `string \| null` | no | |
990
+
991
+ <a id="type-memberdesktopinterestitem"></a>
992
+
993
+ ### `MemberDesktopInterestItem`
994
+
995
+ Mirrors `team_members.DesktopInterestItem`.
996
+
997
+ | Field | Type | Required | Description |
998
+ |---|---|---|---|
999
+ | `name` | `string` | yes | |
1000
+ | `type` | `string \| null` | no | |
1001
+
1002
+ <a id="type-memberdesktopskillitem"></a>
1003
+
1004
+ ### `MemberDesktopSkillItem`
1005
+
1006
+ Mirrors `team_members.DesktopSkillItem`.
1007
+
1008
+ | Field | Type | Required | Description |
1009
+ |---|---|---|---|
1010
+ | `name` | `string` | yes | |
1011
+ | `endorsements` | `integer \| null` | no | |
1012
+
1013
+ <a id="type-memberjobhistoryitem"></a>
1014
+
1015
+ ### `MemberJobHistoryItem`
1016
+
1017
+ Mirrors `team_members.JobHistoryItem`.
1018
+
1019
+ | Field | Type | Required | Description |
1020
+ |---|---|---|---|
1021
+ | `company` | `string \| null` | no | |
1022
+ | `description` | `string \| null` | no | |
1023
+ | `duration` | `string \| null` | no | |
1024
+ | `end_date` | `string \| null` | no | |
1025
+ | `is_current` | `boolean` | no | default `false` |
1026
+ | `location` | `string \| null` | no | |
1027
+ | `start_date` | `string \| null` | no | |
1028
+ | `title` | `string \| null` | no | |
1029
+
1030
+ <a id="type-membernotemention"></a>
1031
+
1032
+ ### `MemberNoteMention`
1033
+
1034
+ Mirrors `team_members.TeamMemberMentionedUserDto`.
1035
+
1036
+ | Field | Type | Required | Description |
1037
+ |---|---|---|---|
1038
+ | `id` | `string` | yes | |
1039
+ | `name` | `string` | yes | |
1040
+ | `email` | `string \| null` | no | |