bereach 0.1.1

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 (451) hide show
  1. package/FUNCTIONS.md +90 -0
  2. package/README.md +530 -0
  3. package/RUNTIMES.md +48 -0
  4. package/esm/core.d.ts +10 -0
  5. package/esm/core.d.ts.map +1 -0
  6. package/esm/core.js +13 -0
  7. package/esm/core.js.map +1 -0
  8. package/esm/funcs/campaigns-filter.d.ts +20 -0
  9. package/esm/funcs/campaigns-filter.d.ts.map +1 -0
  10. package/esm/funcs/campaigns-filter.js +106 -0
  11. package/esm/funcs/campaigns-filter.js.map +1 -0
  12. package/esm/funcs/campaigns-get-stats.d.ts +18 -0
  13. package/esm/funcs/campaigns-get-stats.d.ts.map +1 -0
  14. package/esm/funcs/campaigns-get-stats.js +101 -0
  15. package/esm/funcs/campaigns-get-stats.js.map +1 -0
  16. package/esm/funcs/campaigns-get-status.d.ts +18 -0
  17. package/esm/funcs/campaigns-get-status.d.ts.map +1 -0
  18. package/esm/funcs/campaigns-get-status.js +101 -0
  19. package/esm/funcs/campaigns-get-status.js.map +1 -0
  20. package/esm/funcs/campaigns-sync-actions.d.ts +18 -0
  21. package/esm/funcs/campaigns-sync-actions.d.ts.map +1 -0
  22. package/esm/funcs/campaigns-sync-actions.js +101 -0
  23. package/esm/funcs/campaigns-sync-actions.js.map +1 -0
  24. package/esm/funcs/linkedin-actions-accept-invitation.d.ts +18 -0
  25. package/esm/funcs/linkedin-actions-accept-invitation.d.ts.map +1 -0
  26. package/esm/funcs/linkedin-actions-accept-invitation.js +95 -0
  27. package/esm/funcs/linkedin-actions-accept-invitation.js.map +1 -0
  28. package/esm/funcs/linkedin-actions-connect-profile.d.ts +18 -0
  29. package/esm/funcs/linkedin-actions-connect-profile.d.ts.map +1 -0
  30. package/esm/funcs/linkedin-actions-connect-profile.js +95 -0
  31. package/esm/funcs/linkedin-actions-connect-profile.js.map +1 -0
  32. package/esm/funcs/linkedin-actions-like-comment.d.ts +18 -0
  33. package/esm/funcs/linkedin-actions-like-comment.d.ts.map +1 -0
  34. package/esm/funcs/linkedin-actions-like-comment.js +95 -0
  35. package/esm/funcs/linkedin-actions-like-comment.js.map +1 -0
  36. package/esm/funcs/linkedin-actions-list-invitations.d.ts +18 -0
  37. package/esm/funcs/linkedin-actions-list-invitations.d.ts.map +1 -0
  38. package/esm/funcs/linkedin-actions-list-invitations.js +97 -0
  39. package/esm/funcs/linkedin-actions-list-invitations.js.map +1 -0
  40. package/esm/funcs/linkedin-actions-publish-post.d.ts +18 -0
  41. package/esm/funcs/linkedin-actions-publish-post.d.ts.map +1 -0
  42. package/esm/funcs/linkedin-actions-publish-post.js +95 -0
  43. package/esm/funcs/linkedin-actions-publish-post.js.map +1 -0
  44. package/esm/funcs/linkedin-actions-reply-to-comment.d.ts +18 -0
  45. package/esm/funcs/linkedin-actions-reply-to-comment.d.ts.map +1 -0
  46. package/esm/funcs/linkedin-actions-reply-to-comment.js +95 -0
  47. package/esm/funcs/linkedin-actions-reply-to-comment.js.map +1 -0
  48. package/esm/funcs/linkedin-actions-send-message.d.ts +18 -0
  49. package/esm/funcs/linkedin-actions-send-message.d.ts.map +1 -0
  50. package/esm/funcs/linkedin-actions-send-message.js +95 -0
  51. package/esm/funcs/linkedin-actions-send-message.js.map +1 -0
  52. package/esm/funcs/linkedin-chat-find-conversation.d.ts +25 -0
  53. package/esm/funcs/linkedin-chat-find-conversation.d.ts.map +1 -0
  54. package/esm/funcs/linkedin-chat-find-conversation.js +102 -0
  55. package/esm/funcs/linkedin-chat-find-conversation.js.map +1 -0
  56. package/esm/funcs/linkedin-chat-get-messages.d.ts +22 -0
  57. package/esm/funcs/linkedin-chat-get-messages.d.ts.map +1 -0
  58. package/esm/funcs/linkedin-chat-get-messages.js +99 -0
  59. package/esm/funcs/linkedin-chat-get-messages.js.map +1 -0
  60. package/esm/funcs/linkedin-chat-list-conversations.d.ts +18 -0
  61. package/esm/funcs/linkedin-chat-list-conversations.d.ts.map +1 -0
  62. package/esm/funcs/linkedin-chat-list-conversations.js +95 -0
  63. package/esm/funcs/linkedin-chat-list-conversations.js.map +1 -0
  64. package/esm/funcs/linkedin-chat-search-conversations.d.ts +18 -0
  65. package/esm/funcs/linkedin-chat-search-conversations.d.ts.map +1 -0
  66. package/esm/funcs/linkedin-chat-search-conversations.js +95 -0
  67. package/esm/funcs/linkedin-chat-search-conversations.js.map +1 -0
  68. package/esm/funcs/linkedin-scrapers-collect-comment-replies.d.ts +18 -0
  69. package/esm/funcs/linkedin-scrapers-collect-comment-replies.d.ts.map +1 -0
  70. package/esm/funcs/linkedin-scrapers-collect-comment-replies.js +95 -0
  71. package/esm/funcs/linkedin-scrapers-collect-comment-replies.js.map +1 -0
  72. package/esm/funcs/linkedin-scrapers-collect-comments.d.ts +18 -0
  73. package/esm/funcs/linkedin-scrapers-collect-comments.d.ts.map +1 -0
  74. package/esm/funcs/linkedin-scrapers-collect-comments.js +95 -0
  75. package/esm/funcs/linkedin-scrapers-collect-comments.js.map +1 -0
  76. package/esm/funcs/linkedin-scrapers-collect-likes.d.ts +18 -0
  77. package/esm/funcs/linkedin-scrapers-collect-likes.d.ts.map +1 -0
  78. package/esm/funcs/linkedin-scrapers-collect-likes.js +95 -0
  79. package/esm/funcs/linkedin-scrapers-collect-likes.js.map +1 -0
  80. package/esm/funcs/linkedin-scrapers-collect-posts.d.ts +18 -0
  81. package/esm/funcs/linkedin-scrapers-collect-posts.d.ts.map +1 -0
  82. package/esm/funcs/linkedin-scrapers-collect-posts.js +95 -0
  83. package/esm/funcs/linkedin-scrapers-collect-posts.js.map +1 -0
  84. package/esm/funcs/linkedin-scrapers-visit-company.d.ts +18 -0
  85. package/esm/funcs/linkedin-scrapers-visit-company.d.ts.map +1 -0
  86. package/esm/funcs/linkedin-scrapers-visit-company.js +95 -0
  87. package/esm/funcs/linkedin-scrapers-visit-company.js.map +1 -0
  88. package/esm/funcs/linkedin-scrapers-visit-profile.d.ts +18 -0
  89. package/esm/funcs/linkedin-scrapers-visit-profile.d.ts.map +1 -0
  90. package/esm/funcs/linkedin-scrapers-visit-profile.js +95 -0
  91. package/esm/funcs/linkedin-scrapers-visit-profile.js.map +1 -0
  92. package/esm/funcs/linkedin-search-resolve-parameters.d.ts +47 -0
  93. package/esm/funcs/linkedin-search-resolve-parameters.d.ts.map +1 -0
  94. package/esm/funcs/linkedin-search-resolve-parameters.js +124 -0
  95. package/esm/funcs/linkedin-search-resolve-parameters.js.map +1 -0
  96. package/esm/funcs/linkedin-search-search-by-url.d.ts +69 -0
  97. package/esm/funcs/linkedin-search-search-by-url.d.ts.map +1 -0
  98. package/esm/funcs/linkedin-search-search-by-url.js +146 -0
  99. package/esm/funcs/linkedin-search-search-by-url.js.map +1 -0
  100. package/esm/funcs/linkedin-search-search-companies.d.ts +75 -0
  101. package/esm/funcs/linkedin-search-search-companies.d.ts.map +1 -0
  102. package/esm/funcs/linkedin-search-search-companies.js +152 -0
  103. package/esm/funcs/linkedin-search-search-companies.js.map +1 -0
  104. package/esm/funcs/linkedin-search-search-jobs.d.ts +96 -0
  105. package/esm/funcs/linkedin-search-search-jobs.d.ts.map +1 -0
  106. package/esm/funcs/linkedin-search-search-jobs.js +173 -0
  107. package/esm/funcs/linkedin-search-search-jobs.js.map +1 -0
  108. package/esm/funcs/linkedin-search-search-people.d.ts +83 -0
  109. package/esm/funcs/linkedin-search-search-people.d.ts.map +1 -0
  110. package/esm/funcs/linkedin-search-search-people.js +160 -0
  111. package/esm/funcs/linkedin-search-search-people.js.map +1 -0
  112. package/esm/funcs/linkedin-search-search-posts.d.ts +71 -0
  113. package/esm/funcs/linkedin-search-search-posts.d.ts.map +1 -0
  114. package/esm/funcs/linkedin-search-search-posts.js +148 -0
  115. package/esm/funcs/linkedin-search-search-posts.js.map +1 -0
  116. package/esm/funcs/linkedin-search-unified-search.d.ts +55 -0
  117. package/esm/funcs/linkedin-search-unified-search.d.ts.map +1 -0
  118. package/esm/funcs/linkedin-search-unified-search.js +132 -0
  119. package/esm/funcs/linkedin-search-unified-search.js.map +1 -0
  120. package/esm/funcs/profile-get-credits.d.ts +18 -0
  121. package/esm/funcs/profile-get-credits.d.ts.map +1 -0
  122. package/esm/funcs/profile-get-credits.js +84 -0
  123. package/esm/funcs/profile-get-credits.js.map +1 -0
  124. package/esm/funcs/profile-get-followers.d.ts +18 -0
  125. package/esm/funcs/profile-get-followers.d.ts.map +1 -0
  126. package/esm/funcs/profile-get-followers.js +97 -0
  127. package/esm/funcs/profile-get-followers.js.map +1 -0
  128. package/esm/funcs/profile-get-limits.d.ts +18 -0
  129. package/esm/funcs/profile-get-limits.d.ts.map +1 -0
  130. package/esm/funcs/profile-get-limits.js +84 -0
  131. package/esm/funcs/profile-get-limits.js.map +1 -0
  132. package/esm/funcs/profile-get-linked-in-profile.d.ts +18 -0
  133. package/esm/funcs/profile-get-linked-in-profile.d.ts.map +1 -0
  134. package/esm/funcs/profile-get-linked-in-profile.js +84 -0
  135. package/esm/funcs/profile-get-linked-in-profile.js.map +1 -0
  136. package/esm/funcs/profile-get-posts.d.ts +18 -0
  137. package/esm/funcs/profile-get-posts.d.ts.map +1 -0
  138. package/esm/funcs/profile-get-posts.js +97 -0
  139. package/esm/funcs/profile-get-posts.js.map +1 -0
  140. package/esm/funcs/profile-refresh.d.ts +18 -0
  141. package/esm/funcs/profile-refresh.d.ts.map +1 -0
  142. package/esm/funcs/profile-refresh.js +84 -0
  143. package/esm/funcs/profile-refresh.js.map +1 -0
  144. package/esm/hooks/hooks.d.ts +25 -0
  145. package/esm/hooks/hooks.d.ts.map +1 -0
  146. package/esm/hooks/hooks.js +82 -0
  147. package/esm/hooks/hooks.js.map +1 -0
  148. package/esm/hooks/index.d.ts +3 -0
  149. package/esm/hooks/index.d.ts.map +1 -0
  150. package/esm/hooks/index.js +6 -0
  151. package/esm/hooks/index.js.map +1 -0
  152. package/esm/hooks/registration.d.ts +3 -0
  153. package/esm/hooks/registration.d.ts.map +1 -0
  154. package/esm/hooks/registration.js +12 -0
  155. package/esm/hooks/registration.js.map +1 -0
  156. package/esm/hooks/types.d.ts +76 -0
  157. package/esm/hooks/types.d.ts.map +1 -0
  158. package/esm/hooks/types.js +5 -0
  159. package/esm/hooks/types.js.map +1 -0
  160. package/esm/index.d.ts +6 -0
  161. package/esm/index.d.ts.map +1 -0
  162. package/esm/index.js +8 -0
  163. package/esm/index.js.map +1 -0
  164. package/esm/lib/base64.d.ts +10 -0
  165. package/esm/lib/base64.d.ts.map +1 -0
  166. package/esm/lib/base64.js +31 -0
  167. package/esm/lib/base64.js.map +1 -0
  168. package/esm/lib/config.d.ts +38 -0
  169. package/esm/lib/config.d.ts.map +1 -0
  170. package/esm/lib/config.js +34 -0
  171. package/esm/lib/config.js.map +1 -0
  172. package/esm/lib/dlv.d.ts +14 -0
  173. package/esm/lib/dlv.d.ts.map +1 -0
  174. package/esm/lib/dlv.js +46 -0
  175. package/esm/lib/dlv.js.map +1 -0
  176. package/esm/lib/encodings.d.ts +53 -0
  177. package/esm/lib/encodings.d.ts.map +1 -0
  178. package/esm/lib/encodings.js +370 -0
  179. package/esm/lib/encodings.js.map +1 -0
  180. package/esm/lib/env.d.ts +15 -0
  181. package/esm/lib/env.d.ts.map +1 -0
  182. package/esm/lib/env.js +44 -0
  183. package/esm/lib/env.js.map +1 -0
  184. package/esm/lib/files.d.ts +13 -0
  185. package/esm/lib/files.d.ts.map +1 -0
  186. package/esm/lib/files.js +73 -0
  187. package/esm/lib/files.js.map +1 -0
  188. package/esm/lib/http.d.ts +67 -0
  189. package/esm/lib/http.d.ts.map +1 -0
  190. package/esm/lib/http.js +209 -0
  191. package/esm/lib/http.js.map +1 -0
  192. package/esm/lib/is-plain-object.d.ts +2 -0
  193. package/esm/lib/is-plain-object.d.ts.map +1 -0
  194. package/esm/lib/is-plain-object.js +38 -0
  195. package/esm/lib/is-plain-object.js.map +1 -0
  196. package/esm/lib/logger.d.ts +6 -0
  197. package/esm/lib/logger.d.ts.map +1 -0
  198. package/esm/lib/logger.js +5 -0
  199. package/esm/lib/logger.js.map +1 -0
  200. package/esm/lib/matchers.d.ts +59 -0
  201. package/esm/lib/matchers.d.ts.map +1 -0
  202. package/esm/lib/matchers.js +202 -0
  203. package/esm/lib/matchers.js.map +1 -0
  204. package/esm/lib/primitives.d.ts +26 -0
  205. package/esm/lib/primitives.d.ts.map +1 -0
  206. package/esm/lib/primitives.js +103 -0
  207. package/esm/lib/primitives.js.map +1 -0
  208. package/esm/lib/retries.d.ts +38 -0
  209. package/esm/lib/retries.d.ts.map +1 -0
  210. package/esm/lib/retries.js +150 -0
  211. package/esm/lib/retries.js.map +1 -0
  212. package/esm/lib/schemas.d.ts +21 -0
  213. package/esm/lib/schemas.d.ts.map +1 -0
  214. package/esm/lib/schemas.js +57 -0
  215. package/esm/lib/schemas.js.map +1 -0
  216. package/esm/lib/sdks.d.ts +63 -0
  217. package/esm/lib/sdks.d.ts.map +1 -0
  218. package/esm/lib/sdks.js +258 -0
  219. package/esm/lib/sdks.js.map +1 -0
  220. package/esm/lib/security.d.ts +83 -0
  221. package/esm/lib/security.d.ts.map +1 -0
  222. package/esm/lib/security.js +138 -0
  223. package/esm/lib/security.js.map +1 -0
  224. package/esm/lib/url.d.ts +5 -0
  225. package/esm/lib/url.d.ts.map +1 -0
  226. package/esm/lib/url.js +22 -0
  227. package/esm/lib/url.js.map +1 -0
  228. package/esm/models/errors/bereach-default-error.d.ts +10 -0
  229. package/esm/models/errors/bereach-default-error.d.ts.map +1 -0
  230. package/esm/models/errors/bereach-default-error.js +30 -0
  231. package/esm/models/errors/bereach-default-error.js.map +1 -0
  232. package/esm/models/errors/bereach-error.d.ts +19 -0
  233. package/esm/models/errors/bereach-error.d.ts.map +1 -0
  234. package/esm/models/errors/bereach-error.js +26 -0
  235. package/esm/models/errors/bereach-error.js.map +1 -0
  236. package/esm/models/errors/collect-linked-in-likes.d.ts +211 -0
  237. package/esm/models/errors/collect-linked-in-likes.d.ts.map +1 -0
  238. package/esm/models/errors/collect-linked-in-likes.js +306 -0
  239. package/esm/models/errors/collect-linked-in-likes.js.map +1 -0
  240. package/esm/models/errors/http-client-errors.d.ts +44 -0
  241. package/esm/models/errors/http-client-errors.d.ts.map +1 -0
  242. package/esm/models/errors/http-client-errors.js +56 -0
  243. package/esm/models/errors/http-client-errors.js.map +1 -0
  244. package/esm/models/errors/index.d.ts +7 -0
  245. package/esm/models/errors/index.d.ts.map +1 -0
  246. package/esm/models/errors/index.js +10 -0
  247. package/esm/models/errors/index.js.map +1 -0
  248. package/esm/models/errors/response-validation-error.d.ts +26 -0
  249. package/esm/models/errors/response-validation-error.d.ts.map +1 -0
  250. package/esm/models/errors/response-validation-error.js +37 -0
  251. package/esm/models/errors/response-validation-error.js.map +1 -0
  252. package/esm/models/errors/sdk-validation-error.d.ts +21 -0
  253. package/esm/models/errors/sdk-validation-error.d.ts.map +1 -0
  254. package/esm/models/errors/sdk-validation-error.js +52 -0
  255. package/esm/models/errors/sdk-validation-error.js.map +1 -0
  256. package/esm/models/index.d.ts +2 -0
  257. package/esm/models/index.d.ts.map +1 -0
  258. package/esm/models/index.js +5 -0
  259. package/esm/models/index.js.map +1 -0
  260. package/esm/models/operations/get-campaign-stats-response.d.ts +1627 -0
  261. package/esm/models/operations/get-campaign-stats-response.d.ts.map +1 -0
  262. package/esm/models/operations/get-campaign-stats-response.js +1002 -0
  263. package/esm/models/operations/get-campaign-stats-response.js.map +1 -0
  264. package/esm/models/operations/index.d.ts +3 -0
  265. package/esm/models/operations/index.d.ts.map +1 -0
  266. package/esm/models/operations/index.js +6 -0
  267. package/esm/models/operations/index.js.map +1 -0
  268. package/esm/models/operations/send-linked-in-message-response.d.ts +2350 -0
  269. package/esm/models/operations/send-linked-in-message-response.d.ts.map +1 -0
  270. package/esm/models/operations/send-linked-in-message-response.js +1585 -0
  271. package/esm/models/operations/send-linked-in-message-response.js.map +1 -0
  272. package/esm/models/security.d.ts +12 -0
  273. package/esm/models/security.d.ts.map +1 -0
  274. package/esm/models/security.js +12 -0
  275. package/esm/models/security.js.map +1 -0
  276. package/esm/sdk/campaigns.d.ts +35 -0
  277. package/esm/sdk/campaigns.d.ts.map +1 -0
  278. package/esm/sdk/campaigns.js +50 -0
  279. package/esm/sdk/campaigns.js.map +1 -0
  280. package/esm/sdk/index.d.ts +2 -0
  281. package/esm/sdk/index.d.ts.map +1 -0
  282. package/esm/sdk/index.js +5 -0
  283. package/esm/sdk/index.js.map +1 -0
  284. package/esm/sdk/linkedin-actions.d.ts +54 -0
  285. package/esm/sdk/linkedin-actions.d.ts.map +1 -0
  286. package/esm/sdk/linkedin-actions.js +78 -0
  287. package/esm/sdk/linkedin-actions.js.map +1 -0
  288. package/esm/sdk/linkedin-chat.d.ts +44 -0
  289. package/esm/sdk/linkedin-chat.d.ts.map +1 -0
  290. package/esm/sdk/linkedin-chat.js +59 -0
  291. package/esm/sdk/linkedin-chat.js.map +1 -0
  292. package/esm/sdk/linkedin-scrapers.d.ts +47 -0
  293. package/esm/sdk/linkedin-scrapers.d.ts.map +1 -0
  294. package/esm/sdk/linkedin-scrapers.js +68 -0
  295. package/esm/sdk/linkedin-scrapers.js.map +1 -0
  296. package/esm/sdk/linkedin-search.d.ts +424 -0
  297. package/esm/sdk/linkedin-search.d.ts.map +1 -0
  298. package/esm/sdk/linkedin-search.js +448 -0
  299. package/esm/sdk/linkedin-search.js.map +1 -0
  300. package/esm/sdk/profile.d.ts +47 -0
  301. package/esm/sdk/profile.d.ts.map +1 -0
  302. package/esm/sdk/profile.js +68 -0
  303. package/esm/sdk/profile.js.map +1 -0
  304. package/esm/sdk/sdk.d.ts +22 -0
  305. package/esm/sdk/sdk.d.ts.map +1 -0
  306. package/esm/sdk/sdk.js +37 -0
  307. package/esm/sdk/sdk.js.map +1 -0
  308. package/esm/types/async.d.ts +23 -0
  309. package/esm/types/async.d.ts.map +1 -0
  310. package/esm/types/async.js +28 -0
  311. package/esm/types/async.js.map +1 -0
  312. package/esm/types/blobs.d.ts +4 -0
  313. package/esm/types/blobs.d.ts.map +1 -0
  314. package/esm/types/blobs.js +25 -0
  315. package/esm/types/blobs.js.map +1 -0
  316. package/esm/types/const-date-time.d.ts +3 -0
  317. package/esm/types/const-date-time.d.ts.map +1 -0
  318. package/esm/types/const-date-time.js +10 -0
  319. package/esm/types/const-date-time.js.map +1 -0
  320. package/esm/types/default-to-zero-value.d.ts +12 -0
  321. package/esm/types/default-to-zero-value.d.ts.map +1 -0
  322. package/esm/types/default-to-zero-value.js +31 -0
  323. package/esm/types/default-to-zero-value.js.map +1 -0
  324. package/esm/types/enums.d.ts +9 -0
  325. package/esm/types/enums.d.ts.map +1 -0
  326. package/esm/types/enums.js +27 -0
  327. package/esm/types/enums.js.map +1 -0
  328. package/esm/types/fp.d.ts +31 -0
  329. package/esm/types/fp.d.ts.map +1 -0
  330. package/esm/types/fp.js +31 -0
  331. package/esm/types/fp.js.map +1 -0
  332. package/esm/types/index.d.ts +10 -0
  333. package/esm/types/index.d.ts.map +1 -0
  334. package/esm/types/index.js +10 -0
  335. package/esm/types/index.js.map +1 -0
  336. package/esm/types/operations.d.ts +27 -0
  337. package/esm/types/operations.d.ts.map +1 -0
  338. package/esm/types/operations.js +77 -0
  339. package/esm/types/operations.js.map +1 -0
  340. package/esm/types/primitives.d.ts +11 -0
  341. package/esm/types/primitives.d.ts.map +1 -0
  342. package/esm/types/primitives.js +132 -0
  343. package/esm/types/primitives.js.map +1 -0
  344. package/esm/types/rfcdate.d.ts +21 -0
  345. package/esm/types/rfcdate.d.ts.map +1 -0
  346. package/esm/types/rfcdate.js +43 -0
  347. package/esm/types/rfcdate.js.map +1 -0
  348. package/esm/types/smart-union.d.ts +7 -0
  349. package/esm/types/smart-union.d.ts.map +1 -0
  350. package/esm/types/smart-union.js +117 -0
  351. package/esm/types/smart-union.js.map +1 -0
  352. package/esm/types/streams.d.ts +2 -0
  353. package/esm/types/streams.d.ts.map +1 -0
  354. package/esm/types/streams.js +15 -0
  355. package/esm/types/streams.js.map +1 -0
  356. package/esm/types/unrecognized.d.ts +16 -0
  357. package/esm/types/unrecognized.d.ts.map +1 -0
  358. package/esm/types/unrecognized.js +31 -0
  359. package/esm/types/unrecognized.js.map +1 -0
  360. package/examples/linkedinScrapersCollectLikes.example.ts +30 -0
  361. package/jsr.json +27 -0
  362. package/package.json +62 -0
  363. package/src/core.ts +13 -0
  364. package/src/funcs/campaigns-filter.ts +227 -0
  365. package/src/funcs/campaigns-get-stats.ts +222 -0
  366. package/src/funcs/campaigns-get-status.ts +222 -0
  367. package/src/funcs/campaigns-sync-actions.ts +222 -0
  368. package/src/funcs/linkedin-actions-accept-invitation.ts +215 -0
  369. package/src/funcs/linkedin-actions-connect-profile.ts +215 -0
  370. package/src/funcs/linkedin-actions-like-comment.ts +215 -0
  371. package/src/funcs/linkedin-actions-list-invitations.ts +220 -0
  372. package/src/funcs/linkedin-actions-publish-post.ts +215 -0
  373. package/src/funcs/linkedin-actions-reply-to-comment.ts +215 -0
  374. package/src/funcs/linkedin-actions-send-message.ts +215 -0
  375. package/src/funcs/linkedin-chat-find-conversation.ts +222 -0
  376. package/src/funcs/linkedin-chat-get-messages.ts +219 -0
  377. package/src/funcs/linkedin-chat-list-conversations.ts +215 -0
  378. package/src/funcs/linkedin-chat-search-conversations.ts +218 -0
  379. package/src/funcs/linkedin-scrapers-collect-comment-replies.ts +218 -0
  380. package/src/funcs/linkedin-scrapers-collect-comments.ts +215 -0
  381. package/src/funcs/linkedin-scrapers-collect-likes.ts +215 -0
  382. package/src/funcs/linkedin-scrapers-collect-posts.ts +215 -0
  383. package/src/funcs/linkedin-scrapers-visit-company.ts +215 -0
  384. package/src/funcs/linkedin-scrapers-visit-profile.ts +215 -0
  385. package/src/funcs/linkedin-search-resolve-parameters.ts +250 -0
  386. package/src/funcs/linkedin-search-search-by-url.ts +266 -0
  387. package/src/funcs/linkedin-search-search-companies.ts +272 -0
  388. package/src/funcs/linkedin-search-search-jobs.ts +293 -0
  389. package/src/funcs/linkedin-search-search-people.ts +280 -0
  390. package/src/funcs/linkedin-search-search-posts.ts +268 -0
  391. package/src/funcs/linkedin-search-unified-search.ts +251 -0
  392. package/src/funcs/profile-get-credits.ts +195 -0
  393. package/src/funcs/profile-get-followers.ts +220 -0
  394. package/src/funcs/profile-get-limits.ts +195 -0
  395. package/src/funcs/profile-get-linked-in-profile.ts +195 -0
  396. package/src/funcs/profile-get-posts.ts +220 -0
  397. package/src/funcs/profile-refresh.ts +195 -0
  398. package/src/hooks/hooks.ts +132 -0
  399. package/src/hooks/index.ts +6 -0
  400. package/src/hooks/registration.ts +14 -0
  401. package/src/hooks/types.ts +107 -0
  402. package/src/index.ts +9 -0
  403. package/src/lib/base64.ts +39 -0
  404. package/src/lib/config.ts +67 -0
  405. package/src/lib/dlv.ts +53 -0
  406. package/src/lib/encodings.ts +501 -0
  407. package/src/lib/env.ts +57 -0
  408. package/src/lib/files.ts +82 -0
  409. package/src/lib/http.ts +323 -0
  410. package/src/lib/is-plain-object.ts +43 -0
  411. package/src/lib/logger.ts +9 -0
  412. package/src/lib/matchers.ts +353 -0
  413. package/src/lib/primitives.ts +150 -0
  414. package/src/lib/retries.ts +218 -0
  415. package/src/lib/schemas.ts +94 -0
  416. package/src/lib/sdks.ts +406 -0
  417. package/src/lib/security.ts +263 -0
  418. package/src/lib/url.ts +33 -0
  419. package/src/models/errors/bereach-default-error.ts +40 -0
  420. package/src/models/errors/bereach-error.ts +35 -0
  421. package/src/models/errors/collect-linked-in-likes.ts +494 -0
  422. package/src/models/errors/http-client-errors.ts +62 -0
  423. package/src/models/errors/index.ts +10 -0
  424. package/src/models/errors/response-validation-error.ts +50 -0
  425. package/src/models/errors/sdk-validation-error.ts +54 -0
  426. package/src/models/index.ts +5 -0
  427. package/src/models/operations/get-campaign-stats-response.ts +3409 -0
  428. package/src/models/operations/index.ts +6 -0
  429. package/src/models/operations/send-linked-in-message-response.ts +4903 -0
  430. package/src/models/security.ts +26 -0
  431. package/src/sdk/campaigns.ts +83 -0
  432. package/src/sdk/index.ts +5 -0
  433. package/src/sdk/linkedin-actions.ts +135 -0
  434. package/src/sdk/linkedin-chat.ts +92 -0
  435. package/src/sdk/linkedin-scrapers.ts +117 -0
  436. package/src/sdk/linkedin-search.ts +505 -0
  437. package/src/sdk/profile.ts +109 -0
  438. package/src/sdk/sdk.ts +43 -0
  439. package/src/types/async.ts +68 -0
  440. package/src/types/blobs.ts +33 -0
  441. package/src/types/const-date-time.ts +15 -0
  442. package/src/types/default-to-zero-value.ts +33 -0
  443. package/src/types/enums.ts +45 -0
  444. package/src/types/fp.ts +50 -0
  445. package/src/types/index.ts +13 -0
  446. package/src/types/operations.ts +105 -0
  447. package/src/types/primitives.ts +168 -0
  448. package/src/types/rfcdate.ts +54 -0
  449. package/src/types/smart-union.ts +153 -0
  450. package/src/types/streams.ts +21 -0
  451. package/src/types/unrecognized.ts +35 -0
@@ -0,0 +1,505 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { linkedinSearchResolveParameters } from "../funcs/linkedin-search-resolve-parameters.js";
6
+ import { linkedinSearchSearchByUrl } from "../funcs/linkedin-search-search-by-url.js";
7
+ import { linkedinSearchSearchCompanies } from "../funcs/linkedin-search-search-companies.js";
8
+ import { linkedinSearchSearchJobs } from "../funcs/linkedin-search-search-jobs.js";
9
+ import { linkedinSearchSearchPeople } from "../funcs/linkedin-search-search-people.js";
10
+ import { linkedinSearchSearchPosts } from "../funcs/linkedin-search-search-posts.js";
11
+ import { linkedinSearchUnifiedSearch } from "../funcs/linkedin-search-unified-search.js";
12
+ import { ClientSDK, RequestOptions } from "../lib/sdks.js";
13
+ import * as operations from "../models/operations/index.js";
14
+ import { unwrapAsync } from "../types/fp.js";
15
+
16
+ export class LinkedinSearch extends ClientSDK {
17
+ /**
18
+ * Unified LinkedIn Search — posts, people, companies, jobs
19
+ *
20
+ * @remarks
21
+ * # Unified LinkedIn Search
22
+ *
23
+ * This is the **all-in-one** search endpoint. It accepts any of the 4 categories (posts, people, companies, jobs) and returns structured results.
24
+ *
25
+ * ## When to use this endpoint
26
+ * Use this endpoint when you need to search across categories dynamically (e.g. the user chooses the category at runtime). For a simpler interface with category-specific documentation, use the dedicated endpoints:
27
+ * - `POST /search/linkedin/posts` — search posts
28
+ * - `POST /search/linkedin/people` — search people
29
+ * - `POST /search/linkedin/companies` — search companies
30
+ * - `POST /search/linkedin/jobs` — search jobs
31
+ * - `POST /search/linkedin/url` — search by pasting a LinkedIn search URL
32
+ *
33
+ * ## Two ways to search
34
+ * 1. **Structured**: pass `category` + `keywords` + optional filters
35
+ * 2. **URL-based**: pass a LinkedIn search `url` — the endpoint parses it automatically
36
+ *
37
+ * Explicit parameters always override URL-derived values.
38
+ *
39
+ * ## Keyword syntax (Boolean operators)
40
+ * Keywords support LinkedIn Boolean search syntax for precise matching:
41
+ * - **Exact phrase**: wrap in double quotes — `"outreach automation"` matches only that exact phrase
42
+ * - **AND**: both terms required — `outreach AND linkedin` (default when terms are space-separated)
43
+ * - **OR**: either term — `CEO OR founder OR owner`
44
+ * - **NOT**: exclude — `manager NOT assistant`
45
+ * - **Parentheses**: group — `(CEO OR CTO) AND SaaS`
46
+ *
47
+ * Operators must be **UPPERCASE** (`AND`, `OR`, `NOT`). Lowercase is treated as plain text. Wildcards (`*`) and `+`/`-` are not supported. Precedence: Quotes → Parentheses → NOT → AND → OR.
48
+ *
49
+ * Without quotes, a multi-word query like `outreach automation` is treated as `outreach AND automation`, which may return broad results. Use `"outreach automation"` for exact matching.
50
+ *
51
+ * ## Resolving filter IDs
52
+ * Many filters (location, industry, company, school) require LinkedIn numeric IDs. Use `POST /search/linkedin/parameters` to convert text (e.g. "San Francisco") into IDs (e.g. "103644278").
53
+ *
54
+ * ## Pagination
55
+ * Use `start` (offset, default 0) and `count` (page size, default 10, max 50). The response includes `paging.total` and `hasMore` to control iteration.
56
+ *
57
+ * ## Credits
58
+ * 1 credit per 20 items returned (minimum 1 credit if any results, 0 if empty).
59
+ */
60
+ async unifiedSearch(
61
+ request: operations.SearchLinkedInRequest,
62
+ options?: RequestOptions,
63
+ ): Promise<operations.SearchLinkedInResponse> {
64
+ return unwrapAsync(linkedinSearchUnifiedSearch(
65
+ this,
66
+ request,
67
+ options,
68
+ ));
69
+ }
70
+
71
+ /**
72
+ * Search LinkedIn Posts
73
+ *
74
+ * @remarks
75
+ * # Search LinkedIn Posts
76
+ *
77
+ * Search LinkedIn's content index for posts matching your keywords and filters. Returns structured post data including full text, engagement metrics, author info, and URLs.
78
+ *
79
+ * ## Required parameters
80
+ * - **keywords** (string, required): The search terms to match against post content. Examples: `"AI automation"`, `"remote work trends"`, `"SaaS growth strategies"`.
81
+ *
82
+ * ## Keyword syntax (Boolean operators)
83
+ * Keywords support LinkedIn Boolean search syntax:
84
+ * - **Exact phrase**: `"outreach automation"` — matches only that exact phrase
85
+ * - **AND**: `AI AND marketing` — both terms required (spaces default to AND)
86
+ * - **OR**: `"growth hacking" OR "growth marketing"` — either term
87
+ * - **NOT**: `outreach NOT webinar` — exclude unwanted terms
88
+ * - **Parentheses**: `(AI OR ML) AND "case study"` — group logic
89
+ *
90
+ * Operators must be **UPPERCASE**. Precedence: Quotes > Parentheses > NOT > AND > OR.
91
+ *
92
+ * ## Available filters
93
+ * | Filter | Type | Description |
94
+ * |--------|------|-------------|
95
+ * | `sortBy` | `"relevance"` \| `"date"` | Sort by relevance (default) or most recent first |
96
+ * | `datePosted` | `"past-24h"` \| `"past-week"` \| `"past-month"` | Filter by publication recency |
97
+ * | `contentType` | `"images"` \| `"videos"` \| `"documents"` | Filter by media type |
98
+ * | `authorIndustry` | string[] | Author's industry IDs (resolve via `/search/linkedin/parameters` with type=`INDUSTRY`) |
99
+ * | `authorCompany` | string[] | Author's company IDs (resolve via `/search/linkedin/parameters` with type=`COMPANY`) |
100
+ *
101
+ * ## Response fields (per item)
102
+ * | Field | Type | Description |
103
+ * |-------|------|-------------|
104
+ * | `postUrl` | string | Direct URL to the LinkedIn post |
105
+ * | `text` | string | Full post text content |
106
+ * | `date` | number | Publication timestamp (ms since epoch) |
107
+ * | `likesCount` | number | Total reactions |
108
+ * | `commentsCount` | number | Total comments |
109
+ * | `sharesCount` | number | Total shares/reposts |
110
+ * | `author.name` | string | Author's display name |
111
+ * | `author.profileUrl` | string | Author's LinkedIn profile URL |
112
+ * | `author.headline` | string | Author's headline |
113
+ * | `author.isCompany` | boolean | Whether the author is a company page |
114
+ * | `isRepost` | boolean | Whether this is a repost of another post |
115
+ *
116
+ * ## Pagination
117
+ * - Default page size: 10, max: 50
118
+ * - Use `start` + `count` to paginate: `start=0, count=10` → page 1, `start=10, count=10` → page 2
119
+ * - Check `hasMore` in the response to know if more pages exist
120
+ * - `paging.total` gives the estimated total number of results
121
+ *
122
+ * ## Example workflows
123
+ * 1. **Content research**: Search for trending topics → analyze top posts → extract engagement patterns
124
+ * 2. **Lead generation**: Search for posts about problems your product solves → extract author profiles
125
+ * 3. **Competitive intelligence**: Search for competitor mentions → track sentiment and engagement
126
+ *
127
+ * ## Credits
128
+ * 1 credit per 20 items returned (minimum 1 credit if any results, 0 if empty).
129
+ */
130
+ async searchPosts(
131
+ request: operations.SearchLinkedInPostsRequest,
132
+ options?: RequestOptions,
133
+ ): Promise<operations.SearchLinkedInPostsResponse> {
134
+ return unwrapAsync(linkedinSearchSearchPosts(
135
+ this,
136
+ request,
137
+ options,
138
+ ));
139
+ }
140
+
141
+ /**
142
+ * Search LinkedIn People
143
+ *
144
+ * @remarks
145
+ * # Search LinkedIn People
146
+ *
147
+ * Find professionals on LinkedIn by name, title, company, location, industry, and more. Returns structured profile data including name, headline, current positions, and connection degree.
148
+ *
149
+ * ## Parameters
150
+ * - **keywords** (optional): Search terms matched against name, headline, company, skills, and bio
151
+ * - You can search by filters alone (no keywords) — e.g. find all 2nd-degree connections in Paris
152
+ *
153
+ * ## Keyword syntax (Boolean operators)
154
+ * Keywords support LinkedIn Boolean search syntax:
155
+ * - **Exact phrase**: `"product manager"` — matches only that exact title
156
+ * - **AND**: `engineer AND startup` — both terms required (spaces default to AND)
157
+ * - **OR**: `CEO OR founder OR CTO` — any of the terms
158
+ * - **NOT**: `manager NOT assistant` — exclude unwanted terms
159
+ * - **Parentheses**: `(CEO OR CTO) AND SaaS` — group logic
160
+ *
161
+ * Operators must be **UPPERCASE**. Precedence: Quotes > Parentheses > NOT > AND > OR.
162
+ *
163
+ * ## Available filters
164
+ * | Filter | Type | Description | Resolve IDs via |
165
+ * |--------|------|-------------|------------------|
166
+ * | `connectionDegree` | `["F"\|"S"\|"O"]` | Connection level: F=1st, S=2nd, O=3rd+ | — |
167
+ * | `firstName` | string | Exact first name match | — |
168
+ * | `lastName` | string | Exact last name match | — |
169
+ * | `title` | string | Current job title (supports `\|` OR syntax: `"CEO\|CTO"`) | — |
170
+ * | `connectionOf` | string | Profile URN — find their connections | — |
171
+ * | `profileLanguage` | string[] | ISO 639-1 codes: `["en","fr"]` | — |
172
+ * | `location` | string[] | Geo IDs | `/search/linkedin/parameters` type=`GEO` |
173
+ * | `industry` | string[] | Industry IDs | `/search/linkedin/parameters` type=`INDUSTRY` |
174
+ * | `currentCompany` | string[] | Company IDs (current employer) | `/search/linkedin/parameters` type=`COMPANY` |
175
+ * | `pastCompany` | string[] | Company IDs (past employer) | `/search/linkedin/parameters` type=`COMPANY` |
176
+ * | `school` | string[] | School/university IDs | `/search/linkedin/parameters` type=`SCHOOL` |
177
+ *
178
+ * ## Response fields (per item)
179
+ * | Field | Type | Description |
180
+ * |-------|------|-------------|
181
+ * | `name` | string | Full display name |
182
+ * | `profileUrl` | string | LinkedIn profile URL |
183
+ * | `headline` | string\|null | Professional headline |
184
+ * | `location` | string\|null | Geographic location |
185
+ * | `profilePicture` | string\|null | Profile photo URL |
186
+ * | `networkDistance` | string\|null | `DISTANCE_1`, `DISTANCE_2`, `DISTANCE_3`, or `OUT_OF_NETWORK` |
187
+ * | `currentPositions` | array | Current job positions with `company` and `role` |
188
+ *
189
+ * ## Pagination
190
+ * - Default page size: 10, max: 50
191
+ * - Use `start` + `count` to paginate. Check `hasMore` for more pages.
192
+ * - LinkedIn caps total visible results at ~1,000 for most searches.
193
+ *
194
+ * ## Example workflows
195
+ * 1. **Prospect list building**: Search by title + location + industry → build a targeted outreach list
196
+ * 2. **Recruiting**: Search by title + company + school → find qualified candidates
197
+ * 3. **Network mapping**: Search `connectionOf` + filters → explore someone's network
198
+ *
199
+ * ## Multi-step workflow with filter ID resolution
200
+ * ```
201
+ * Step 1: POST /search/linkedin/parameters { type: 'GEO', keywords: 'San Francisco' }
202
+ * → returns [{ id: '102277331', title: 'San Francisco, CA' }]
203
+ * Step 2: POST /search/linkedin/parameters { type: 'COMPANY', keywords: 'Google' }
204
+ * → returns [{ id: '1441', title: 'Google' }]
205
+ * Step 3: POST /search/linkedin/people { keywords: 'product manager', location: ['102277331'], currentCompany: ['1441'] }
206
+ * → returns matching people
207
+ * ```
208
+ *
209
+ * ## Credits
210
+ * 1 credit per 20 items returned (minimum 1 credit if any results, 0 if empty).
211
+ */
212
+ async searchPeople(
213
+ request: operations.SearchLinkedInPeopleRequest,
214
+ options?: RequestOptions,
215
+ ): Promise<operations.SearchLinkedInPeopleResponse> {
216
+ return unwrapAsync(linkedinSearchSearchPeople(
217
+ this,
218
+ request,
219
+ options,
220
+ ));
221
+ }
222
+
223
+ /**
224
+ * Search LinkedIn Companies
225
+ *
226
+ * @remarks
227
+ * # Search LinkedIn Companies
228
+ *
229
+ * Find companies on LinkedIn by name, industry, location, and employee count. Returns structured company data including name, industry, location, and follower count.
230
+ *
231
+ * ## Parameters
232
+ * - **keywords** (optional): Search terms matched against company name, description, and specialties
233
+ *
234
+ * ## Keyword syntax (Boolean operators)
235
+ * Keywords support LinkedIn Boolean search syntax:
236
+ * - **Exact phrase**: `"artificial intelligence"` — matches only that exact phrase
237
+ * - **AND**: `fintech AND payments` — both terms required (spaces default to AND)
238
+ * - **OR**: `SaaS OR "cloud computing"` — either term
239
+ * - **NOT**: `consulting NOT staffing` — exclude unwanted terms
240
+ * - **Parentheses**: `(AI OR ML) AND healthcare` — group logic
241
+ *
242
+ * Operators must be **UPPERCASE**. Precedence: Quotes > Parentheses > NOT > AND > OR.
243
+ *
244
+ * ## Available filters
245
+ * | Filter | Type | Description | Resolve IDs via |
246
+ * |--------|------|-------------|------------------|
247
+ * | `location` | string[] | HQ geo IDs | `/search/linkedin/parameters` type=`GEO` |
248
+ * | `industry` | string[] | Industry IDs | `/search/linkedin/parameters` type=`INDUSTRY` |
249
+ * | `companySize` | string[] | Employee count codes (see below) | — |
250
+ *
251
+ * ### Company size codes
252
+ * | Code | Employees |
253
+ * |------|-----------|
254
+ * | `A` | 1–10 |
255
+ * | `B` | 11–50 |
256
+ * | `C` | 51–200 |
257
+ * | `D` | 201–500 |
258
+ * | `E` | 501–1,000 |
259
+ * | `F` | 1,001–5,000 |
260
+ * | `G` | 5,001–10,000 |
261
+ * | `H` | 10,001+ |
262
+ * | `I` | Self-employed |
263
+ *
264
+ * ## Response fields (per item)
265
+ * | Field | Type | Description |
266
+ * |-------|------|-------------|
267
+ * | `name` | string | Company display name |
268
+ * | `profileUrl` | string | LinkedIn company page URL |
269
+ * | `summary` | string\|null | Company tagline/description |
270
+ * | `industry` | string\|null | Primary industry |
271
+ * | `location` | string\|null | HQ location |
272
+ * | `followersCount` | number\|null | Number of LinkedIn followers |
273
+ *
274
+ * ## Pagination
275
+ * - Default page size: 10, max: 50
276
+ * - Use `start` + `count` to paginate. Check `hasMore` for more pages.
277
+ *
278
+ * ## Example workflows
279
+ * 1. **Market research**: Search by industry + location → map the competitive landscape
280
+ * 2. **Sales targeting**: Search by industry + size → build a list of target accounts
281
+ * 3. **Partnership discovery**: Search by keywords + location → find potential partners
282
+ *
283
+ * ## Credits
284
+ * 1 credit per 20 items returned (minimum 1 credit if any results, 0 if empty).
285
+ */
286
+ async searchCompanies(
287
+ request: operations.SearchLinkedInCompaniesRequest,
288
+ options?: RequestOptions,
289
+ ): Promise<operations.SearchLinkedInCompaniesResponse> {
290
+ return unwrapAsync(linkedinSearchSearchCompanies(
291
+ this,
292
+ request,
293
+ options,
294
+ ));
295
+ }
296
+
297
+ /**
298
+ * Search LinkedIn Jobs
299
+ *
300
+ * @remarks
301
+ * # Search LinkedIn Jobs
302
+ *
303
+ * Find job listings on LinkedIn by keywords, location, job type, experience level, and workplace type.
304
+ *
305
+ * ## Parameters
306
+ * - **keywords** (optional): Search terms matched against job title, company name, and description
307
+ *
308
+ * ## Keyword syntax (Boolean operators)
309
+ * Keywords support LinkedIn Boolean search syntax:
310
+ * - **Exact phrase**: `"frontend engineer"` — matches only that exact title
311
+ * - **AND**: `React AND TypeScript` — both terms required (spaces default to AND)
312
+ * - **OR**: `"frontend engineer" OR "front-end developer"` — either term
313
+ * - **NOT**: `engineer NOT intern` — exclude unwanted terms
314
+ * - **Parentheses**: `(React OR Vue) AND "senior engineer"` — group logic
315
+ *
316
+ * Operators must be **UPPERCASE**. Precedence: Quotes > Parentheses > NOT > AND > OR.
317
+ *
318
+ * ## Available filters
319
+ * | Filter | Type | Description | Resolve IDs via |
320
+ * |--------|------|-------------|------------------|
321
+ * | `location` | string[] | Geo IDs | `/search/linkedin/parameters` type=`GEO` |
322
+ * | `datePosted` | string | `"past-24h"` \| `"past-week"` \| `"past-month"` | — |
323
+ * | `sortBy` | string | `"relevance"` \| `"date"` | — |
324
+ * | `jobType` | string[] | Employment type codes (see below) | — |
325
+ * | `experienceLevel` | string[] | Seniority codes (see below) | — |
326
+ * | `workplaceType` | string[] | Work location codes (see below) | — |
327
+ *
328
+ * ### Job type codes
329
+ * | Code | Type |
330
+ * |------|------|
331
+ * | `F` | Full-time |
332
+ * | `P` | Part-time |
333
+ * | `C` | Contract |
334
+ * | `T` | Temporary |
335
+ * | `I` | Internship |
336
+ * | `V` | Volunteer |
337
+ * | `O` | Other |
338
+ *
339
+ * ### Experience level codes
340
+ * | Code | Level |
341
+ * |------|-------|
342
+ * | `1` | Internship |
343
+ * | `2` | Entry level |
344
+ * | `3` | Associate |
345
+ * | `4` | Mid-Senior level |
346
+ * | `5` | Director |
347
+ * | `6` | Executive |
348
+ *
349
+ * ### Workplace type codes
350
+ * | Code | Type |
351
+ * |------|------|
352
+ * | `1` | On-site |
353
+ * | `2` | Remote |
354
+ * | `3` | Hybrid |
355
+ *
356
+ * ## Response fields (per item)
357
+ * | Field | Type | Description |
358
+ * |-------|------|-------------|
359
+ * | `title` | string | Job title |
360
+ * | `company` | string\|null | Hiring company name |
361
+ * | `companyUrl` | string\|null | Company LinkedIn page URL |
362
+ * | `companyLogo` | string\|null | Company logo URL |
363
+ * | `location` | string\|null | Job location |
364
+ * | `workplaceType` | string\|null | On-site / Remote / Hybrid |
365
+ * | `postedAt` | string\|null | Human-readable posting time (e.g. `"2 days ago"`) |
366
+ * | `jobUrl` | string | Direct URL to the job listing |
367
+ * | `listingId` | string | LinkedIn job listing ID |
368
+ *
369
+ * ## Pagination
370
+ * - Default page size: 10, max: 50
371
+ * - Use `start` + `count` to paginate. Check `hasMore` for more pages.
372
+ *
373
+ * ## Example workflows
374
+ * 1. **Job monitoring**: Search by title + location → track new openings in your area
375
+ * 2. **Competitive hiring analysis**: Search by company keywords → see what roles competitors are hiring for
376
+ * 3. **Market demand research**: Search by skills → gauge demand for specific expertise
377
+ *
378
+ * ## Credits
379
+ * 1 credit per 20 items returned (minimum 1 credit if any results, 0 if empty).
380
+ */
381
+ async searchJobs(
382
+ request: operations.SearchLinkedInJobsRequest,
383
+ options?: RequestOptions,
384
+ ): Promise<operations.SearchLinkedInJobsResponse> {
385
+ return unwrapAsync(linkedinSearchSearchJobs(
386
+ this,
387
+ request,
388
+ options,
389
+ ));
390
+ }
391
+
392
+ /**
393
+ * Search LinkedIn by URL
394
+ *
395
+ * @remarks
396
+ * # Search LinkedIn by URL
397
+ *
398
+ * Paste any LinkedIn search URL and the endpoint will automatically extract the category, keywords, and all filters from it, then execute the search and return structured results.
399
+ *
400
+ * ## When to use this endpoint
401
+ * - A user gives you a LinkedIn search URL and you want to get the results programmatically
402
+ * - You want to replicate a search the user performed in their browser
403
+ * - You want to automate searches based on bookmarked LinkedIn search URLs
404
+ *
405
+ * ## Supported URL formats
406
+ * The endpoint supports all standard LinkedIn search URLs:
407
+ * - `https://www.linkedin.com/search/results/people/?keywords=engineer`
408
+ * - `https://www.linkedin.com/search/results/content/?keywords=AI&sortBy=%22date_posted%22`
409
+ * - `https://www.linkedin.com/search/results/companies/?keywords=startup&companyHqGeo=%5B%22103644278%22%5D`
410
+ * - `https://www.linkedin.com/jobs/search/?keywords=frontend&location=Paris`
411
+ * - `https://www.linkedin.com/search/results/all/?keywords=test` (treated as people search)
412
+ *
413
+ * ## URL path → Category mapping
414
+ * | URL path segment | Category |
415
+ * |------------------|----------|
416
+ * | `/results/content/` | posts |
417
+ * | `/results/people/` | people |
418
+ * | `/results/companies/` | companies |
419
+ * | `/results/all/` | people |
420
+ * | `/jobs/search/` | jobs |
421
+ *
422
+ * ## Extracted parameters
423
+ * The following URL query parameters are parsed and mapped to search filters:
424
+ * - `keywords` → keywords
425
+ * - `network` → connectionDegree (people)
426
+ * - `geoUrn` / `companyHqGeo` → location
427
+ * - `industry` → industry
428
+ * - `company` / `currentCompany` → currentCompany
429
+ * - `pastCompany` → pastCompany
430
+ * - `school` → school
431
+ * - `profileLanguage` → profileLanguage
432
+ * - `connectionOf` → connectionOf
433
+ * - `firstName` / `lastName` → firstName / lastName
434
+ * - `title` → title
435
+ * - `companySize` → companySize (companies)
436
+ * - `sortBy` → sortBy
437
+ * - `datePosted` → datePosted
438
+ * - `f_TPR` → datePosted (jobs)
439
+ * - `f_JT` → jobType (jobs)
440
+ * - `f_E` → experienceLevel (jobs)
441
+ * - `f_WT` → workplaceType (jobs)
442
+ *
443
+ * ## Pagination override
444
+ * You can optionally pass `start` and `count` to override the pagination embedded in the URL.
445
+ *
446
+ * ## Credits
447
+ * 1 credit per 20 items returned (minimum 1 credit if any results, 0 if empty).
448
+ */
449
+ async searchByUrl(
450
+ request: operations.SearchLinkedInByUrlRequest,
451
+ options?: RequestOptions,
452
+ ): Promise<operations.SearchLinkedInByUrlResponse> {
453
+ return unwrapAsync(linkedinSearchSearchByUrl(
454
+ this,
455
+ request,
456
+ options,
457
+ ));
458
+ }
459
+
460
+ /**
461
+ * Resolve text to LinkedIn search parameter IDs (typeahead)
462
+ *
463
+ * @remarks
464
+ * # Resolve Search Parameters
465
+ *
466
+ * Converts human-readable text into LinkedIn numeric IDs required by search filters. This is a **prerequisite step** before using location, industry, company, or school filters in any search endpoint.
467
+ *
468
+ * ## Supported types
469
+ * | Type | Description | Use with filter |
470
+ * |------|-------------|------------------|
471
+ * | `GEO` | Geographic locations (cities, regions, countries) | `location` filter in people, companies, jobs |
472
+ * | `COMPANY` | Companies and organizations | `currentCompany`, `pastCompany`, `authorCompany` |
473
+ * | `INDUSTRY` | Industries and sectors | `industry`, `authorIndustry` |
474
+ * | `SCHOOL` | Schools and universities | `school` filter in people search |
475
+ * | `CONNECTIONS` | Your LinkedIn connections by name | Identify connection URNs |
476
+ * | `PEOPLE` | Any LinkedIn user by name | Identify profile URNs for `connectionOf` |
477
+ *
478
+ * ## How to use
479
+ * ```
480
+ * Step 1: POST /search/linkedin/parameters { type: 'GEO', keywords: 'Paris' }
481
+ * → [{ id: '105015875', title: 'Paris, Île-de-France, France', type: 'GEO' }]
482
+ * Step 2: POST /search/linkedin/people { location: ['105015875'], keywords: 'engineer' }
483
+ * → returns engineers in Paris
484
+ * ```
485
+ *
486
+ * ## Response format
487
+ * Each item contains `id` (the LinkedIn numeric ID to use in filters), `title` (human-readable label), and `type` (the parameter type).
488
+ *
489
+ * ## Tips
490
+ * - Use short, specific keywords for best results (e.g. `"Paris"` not `"Paris, France"`)
491
+ * - The API returns up to `limit` results (default 10, max 50)
492
+ * - Results are ranked by relevance
493
+ * - IDs are stable — you can cache them for repeated searches
494
+ */
495
+ async resolveParameters(
496
+ request: operations.ResolveLinkedInSearchParametersRequest,
497
+ options?: RequestOptions,
498
+ ): Promise<operations.ResolveLinkedInSearchParametersResponse> {
499
+ return unwrapAsync(linkedinSearchResolveParameters(
500
+ this,
501
+ request,
502
+ options,
503
+ ));
504
+ }
505
+ }
@@ -0,0 +1,109 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { profileGetCredits } from "../funcs/profile-get-credits.js";
6
+ import { profileGetFollowers } from "../funcs/profile-get-followers.js";
7
+ import { profileGetLimits } from "../funcs/profile-get-limits.js";
8
+ import { profileGetLinkedInProfile } from "../funcs/profile-get-linked-in-profile.js";
9
+ import { profileGetPosts } from "../funcs/profile-get-posts.js";
10
+ import { profileRefresh } from "../funcs/profile-refresh.js";
11
+ import { ClientSDK, RequestOptions } from "../lib/sdks.js";
12
+ import * as operations from "../models/operations/index.js";
13
+ import { unwrapAsync } from "../types/fp.js";
14
+
15
+ export class Profile extends ClientSDK {
16
+ /**
17
+ * Get authenticated user's LinkedIn profile
18
+ *
19
+ * @remarks
20
+ * Returns the authenticated user's stored LinkedIn profile data from the database. No LinkedIn API call, no credits consumed. Call /me/linkedin/refresh first to populate enriched data (positions, education, etc.).
21
+ */
22
+ async getLinkedInProfile(
23
+ options?: RequestOptions,
24
+ ): Promise<operations.GetMyLinkedInProfileResponse> {
25
+ return unwrapAsync(profileGetLinkedInProfile(
26
+ this,
27
+ options,
28
+ ));
29
+ }
30
+
31
+ /**
32
+ * Refresh authenticated user's LinkedIn profile
33
+ *
34
+ * @remarks
35
+ * Re-fetches the authenticated user's LinkedIn profile from the Voyager API and updates stored data (positions, education, location, connections count, verification status). No credits consumed.
36
+ */
37
+ async refresh(
38
+ options?: RequestOptions,
39
+ ): Promise<operations.RefreshMyLinkedInProfileResponse> {
40
+ return unwrapAsync(profileRefresh(
41
+ this,
42
+ options,
43
+ ));
44
+ }
45
+
46
+ /**
47
+ * Get authenticated user's LinkedIn posts
48
+ *
49
+ * @remarks
50
+ * Returns paginated posts from the authenticated user's own LinkedIn profile. No credits consumed. Requires valid LinkedIn credentials and a stored profileUrn (call /me/linkedin/refresh first if needed).
51
+ */
52
+ async getPosts(
53
+ request?: operations.GetMyLinkedInPostsRequest | undefined,
54
+ options?: RequestOptions,
55
+ ): Promise<operations.GetMyLinkedInPostsResponse> {
56
+ return unwrapAsync(profileGetPosts(
57
+ this,
58
+ request,
59
+ options,
60
+ ));
61
+ }
62
+
63
+ /**
64
+ * Get authenticated user's LinkedIn followers
65
+ *
66
+ * @remarks
67
+ * Returns a paginated list of the authenticated user's LinkedIn followers. LinkedIn caps visible results at ~1 000. No credits consumed. Requires valid LinkedIn credentials.
68
+ */
69
+ async getFollowers(
70
+ request?: operations.GetMyLinkedInFollowersRequest | undefined,
71
+ options?: RequestOptions,
72
+ ): Promise<operations.GetMyLinkedInFollowersResponse> {
73
+ return unwrapAsync(profileGetFollowers(
74
+ this,
75
+ request,
76
+ options,
77
+ ));
78
+ }
79
+
80
+ /**
81
+ * Get current LinkedIn rate limit status
82
+ *
83
+ * @remarks
84
+ * Returns the current rate limit status for all LinkedIn action types. Includes current usage, effective limits (with workspace multiplier applied), remaining quotas, minimum delay between actions in seconds, and next reset times. No credits consumed.
85
+ */
86
+ async getLimits(
87
+ options?: RequestOptions,
88
+ ): Promise<operations.GetMyLimitsResponse> {
89
+ return unwrapAsync(profileGetLimits(
90
+ this,
91
+ options,
92
+ ));
93
+ }
94
+
95
+ /**
96
+ * Get current BeReach credit balance
97
+ *
98
+ * @remarks
99
+ * Returns the current credit balance for the workspace. Includes credits used, total limit, remaining credits, and usage percentage. No credits consumed.
100
+ */
101
+ async getCredits(
102
+ options?: RequestOptions,
103
+ ): Promise<operations.GetMyCreditsResponse> {
104
+ return unwrapAsync(profileGetCredits(
105
+ this,
106
+ options,
107
+ ));
108
+ }
109
+ }
package/src/sdk/sdk.ts ADDED
@@ -0,0 +1,43 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { ClientSDK } from "../lib/sdks.js";
6
+ import { Campaigns } from "./campaigns.js";
7
+ import { LinkedinActions } from "./linkedin-actions.js";
8
+ import { LinkedinChat } from "./linkedin-chat.js";
9
+ import { LinkedinScrapers } from "./linkedin-scrapers.js";
10
+ import { LinkedinSearch } from "./linkedin-search.js";
11
+ import { Profile } from "./profile.js";
12
+
13
+ export class Bereach extends ClientSDK {
14
+ private _linkedinScrapers?: LinkedinScrapers;
15
+ get linkedinScrapers(): LinkedinScrapers {
16
+ return (this._linkedinScrapers ??= new LinkedinScrapers(this._options));
17
+ }
18
+
19
+ private _linkedinSearch?: LinkedinSearch;
20
+ get linkedinSearch(): LinkedinSearch {
21
+ return (this._linkedinSearch ??= new LinkedinSearch(this._options));
22
+ }
23
+
24
+ private _linkedinActions?: LinkedinActions;
25
+ get linkedinActions(): LinkedinActions {
26
+ return (this._linkedinActions ??= new LinkedinActions(this._options));
27
+ }
28
+
29
+ private _profile?: Profile;
30
+ get profile(): Profile {
31
+ return (this._profile ??= new Profile(this._options));
32
+ }
33
+
34
+ private _linkedinChat?: LinkedinChat;
35
+ get linkedinChat(): LinkedinChat {
36
+ return (this._linkedinChat ??= new LinkedinChat(this._options));
37
+ }
38
+
39
+ private _campaigns?: Campaigns;
40
+ get campaigns(): Campaigns {
41
+ return (this._campaigns ??= new Campaigns(this._options));
42
+ }
43
+ }