linkdapi 1.0.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.
- package/LICENSE +21 -0
- package/README.md +716 -0
- package/dist/client.d.ts +708 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +1008 -0
- package/dist/client.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +10 -0
- package/dist/index.js.map +1 -0
- package/package.json +49 -0
package/dist/client.d.ts
ADDED
|
@@ -0,0 +1,708 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* LinkdAPI Node.js SDK
|
|
3
|
+
*
|
|
4
|
+
* A high-level client for interacting with the LinkdAPI service.
|
|
5
|
+
*
|
|
6
|
+
* This client provides:
|
|
7
|
+
* - Automatic retry mechanism for failed requests
|
|
8
|
+
* - Type-annotated methods for better IDE support
|
|
9
|
+
* - Connection pooling for improved performance
|
|
10
|
+
* - Comprehensive error handling
|
|
11
|
+
*
|
|
12
|
+
* Basic Usage:
|
|
13
|
+
* ```typescript
|
|
14
|
+
* const api = new LinkdAPI({ apiKey: "your_api_key" });
|
|
15
|
+
* const profile = await api.getProfileOverview("ryanroslansky");
|
|
16
|
+
* console.log(profile);
|
|
17
|
+
* ```
|
|
18
|
+
*
|
|
19
|
+
* @see https://linkdapi.com/?p=signup - Get your API key (100 free credits)
|
|
20
|
+
*/
|
|
21
|
+
export interface ClientConfig {
|
|
22
|
+
/** Your LinkdAPI authentication key. Get one at https://linkdapi.com/?p=signup */
|
|
23
|
+
apiKey: string;
|
|
24
|
+
/** Base URL for the API (default: "https://linkdapi.com") */
|
|
25
|
+
baseUrl?: string;
|
|
26
|
+
/** Request timeout in milliseconds (default: 30000) */
|
|
27
|
+
timeout?: number;
|
|
28
|
+
/** Maximum retry attempts for failed requests (default: 3) */
|
|
29
|
+
maxRetries?: number;
|
|
30
|
+
/** Initial delay between retries in milliseconds (default: 1000). Delay increases with each retry. */
|
|
31
|
+
retryDelay?: number;
|
|
32
|
+
}
|
|
33
|
+
export declare class LinkdAPIError extends Error {
|
|
34
|
+
constructor(message: string);
|
|
35
|
+
}
|
|
36
|
+
export declare class HTTPError extends LinkdAPIError {
|
|
37
|
+
readonly statusCode: number;
|
|
38
|
+
readonly statusText: string;
|
|
39
|
+
readonly responseBody?: string;
|
|
40
|
+
constructor(statusCode: number, statusText: string, responseBody?: string);
|
|
41
|
+
}
|
|
42
|
+
export declare class NetworkError extends LinkdAPIError {
|
|
43
|
+
readonly cause?: Error;
|
|
44
|
+
constructor(message: string, cause?: Error);
|
|
45
|
+
}
|
|
46
|
+
export declare class TimeoutError extends LinkdAPIError {
|
|
47
|
+
constructor(message?: string);
|
|
48
|
+
}
|
|
49
|
+
export declare class LinkdAPI {
|
|
50
|
+
private readonly apiKey;
|
|
51
|
+
private readonly baseUrl;
|
|
52
|
+
private readonly timeout;
|
|
53
|
+
private readonly maxRetries;
|
|
54
|
+
private readonly retryDelay;
|
|
55
|
+
constructor(config: ClientConfig);
|
|
56
|
+
private getHeaders;
|
|
57
|
+
private sendRequest;
|
|
58
|
+
/**
|
|
59
|
+
* Get basic profile information by username.
|
|
60
|
+
*
|
|
61
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/profile/overview
|
|
62
|
+
*
|
|
63
|
+
* @param username - The LinkedIn username to look up
|
|
64
|
+
* @returns Profile overview data
|
|
65
|
+
*/
|
|
66
|
+
getProfileOverview(username: string): Promise<Record<string, unknown>>;
|
|
67
|
+
/**
|
|
68
|
+
* Get profile details information by URN.
|
|
69
|
+
*
|
|
70
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/profile/details
|
|
71
|
+
*
|
|
72
|
+
* @param urn - The LinkedIn URN (Uniform Resource Name) for the profile
|
|
73
|
+
* @returns Detailed profile information
|
|
74
|
+
*/
|
|
75
|
+
getProfileDetails(urn: string): Promise<Record<string, unknown>>;
|
|
76
|
+
/**
|
|
77
|
+
* Get contact details for a profile by username.
|
|
78
|
+
*
|
|
79
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/profile/contact-info
|
|
80
|
+
*
|
|
81
|
+
* @param username - The LinkedIn username to look up
|
|
82
|
+
* @returns Contact information including email, phone, and websites
|
|
83
|
+
*/
|
|
84
|
+
getContactInfo(username: string): Promise<Record<string, unknown>>;
|
|
85
|
+
/**
|
|
86
|
+
* Get complete work experience by URN.
|
|
87
|
+
*
|
|
88
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/profile/full-experience
|
|
89
|
+
*
|
|
90
|
+
* @param urn - The LinkedIn URN for the profile
|
|
91
|
+
* @returns Complete work experience information
|
|
92
|
+
*/
|
|
93
|
+
getFullExperience(urn: string): Promise<Record<string, unknown>>;
|
|
94
|
+
/**
|
|
95
|
+
* Get lists of professional certifications by URN.
|
|
96
|
+
*
|
|
97
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/profile/certifications
|
|
98
|
+
*
|
|
99
|
+
* @param urn - The LinkedIn URN for the profile
|
|
100
|
+
* @returns Certification information
|
|
101
|
+
*/
|
|
102
|
+
getCertifications(urn: string): Promise<Record<string, unknown>>;
|
|
103
|
+
/**
|
|
104
|
+
* Get full education information by URN.
|
|
105
|
+
*
|
|
106
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/profile/education
|
|
107
|
+
*
|
|
108
|
+
* @param urn - The LinkedIn URN for the profile
|
|
109
|
+
* @returns Education history
|
|
110
|
+
*/
|
|
111
|
+
getEducation(urn: string): Promise<Record<string, unknown>>;
|
|
112
|
+
/**
|
|
113
|
+
* Get profile skills by URN.
|
|
114
|
+
*
|
|
115
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/profile/skills
|
|
116
|
+
*
|
|
117
|
+
* @param urn - The LinkedIn URN for the profile
|
|
118
|
+
* @returns Skills information
|
|
119
|
+
*/
|
|
120
|
+
getSkills(urn: string): Promise<Record<string, unknown>>;
|
|
121
|
+
/**
|
|
122
|
+
* Get social network metrics by username.
|
|
123
|
+
*
|
|
124
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/profile/social-matrix
|
|
125
|
+
*
|
|
126
|
+
* @param username - The LinkedIn username to look up
|
|
127
|
+
* @returns Social metrics including connections and followers count
|
|
128
|
+
*/
|
|
129
|
+
getSocialMatrix(username: string): Promise<Record<string, unknown>>;
|
|
130
|
+
/**
|
|
131
|
+
* Get profile given and received recommendations by URN.
|
|
132
|
+
*
|
|
133
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/profile/recommendations
|
|
134
|
+
*
|
|
135
|
+
* @param urn - The LinkedIn URN for the profile
|
|
136
|
+
* @returns Recommendations data
|
|
137
|
+
*/
|
|
138
|
+
getRecommendations(urn: string): Promise<Record<string, unknown>>;
|
|
139
|
+
/**
|
|
140
|
+
* Get similar profiles for a given profile using its URN.
|
|
141
|
+
*
|
|
142
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/profile/similar
|
|
143
|
+
*
|
|
144
|
+
* @param urn - The LinkedIn URN for the profile
|
|
145
|
+
* @returns List of similar profiles
|
|
146
|
+
*/
|
|
147
|
+
getSimilarProfiles(urn: string): Promise<Record<string, unknown>>;
|
|
148
|
+
/**
|
|
149
|
+
* Get about this profile such as last update and verification info.
|
|
150
|
+
*
|
|
151
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/profile/about
|
|
152
|
+
*
|
|
153
|
+
* @param urn - The LinkedIn URN for the profile
|
|
154
|
+
* @returns Profile about information
|
|
155
|
+
*/
|
|
156
|
+
getProfileAbout(urn: string): Promise<Record<string, unknown>>;
|
|
157
|
+
/**
|
|
158
|
+
* Get all reactions for given profile by URN.
|
|
159
|
+
*
|
|
160
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/profile/reactions
|
|
161
|
+
*
|
|
162
|
+
* @param urn - The LinkedIn URN for the profile
|
|
163
|
+
* @param cursor - Pagination cursor (optional)
|
|
164
|
+
* @returns Reactions data with pagination information
|
|
165
|
+
*/
|
|
166
|
+
getProfileReactions(urn: string, cursor?: string): Promise<Record<string, unknown>>;
|
|
167
|
+
/**
|
|
168
|
+
* Get profile interests by URN.
|
|
169
|
+
*
|
|
170
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/profile/interests
|
|
171
|
+
*
|
|
172
|
+
* @param urn - The LinkedIn URN for the profile
|
|
173
|
+
* @returns Profile interests information
|
|
174
|
+
*/
|
|
175
|
+
getProfileInterests(urn: string): Promise<Record<string, unknown>>;
|
|
176
|
+
/**
|
|
177
|
+
* Get full profile data in 1 request (everything included).
|
|
178
|
+
*
|
|
179
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/profile/full
|
|
180
|
+
*
|
|
181
|
+
* @param options - Either username or urn must be provided
|
|
182
|
+
* @param options.username - The LinkedIn username
|
|
183
|
+
* @param options.urn - The LinkedIn URN for the profile
|
|
184
|
+
* @returns Complete profile data including all information
|
|
185
|
+
*/
|
|
186
|
+
getFullProfile(options: {
|
|
187
|
+
username?: string;
|
|
188
|
+
urn?: string;
|
|
189
|
+
}): Promise<Record<string, unknown>>;
|
|
190
|
+
/**
|
|
191
|
+
* Get profile services by URN.
|
|
192
|
+
*
|
|
193
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/profile/services
|
|
194
|
+
*
|
|
195
|
+
* @param urn - The LinkedIn URN for the profile
|
|
196
|
+
* @returns Profile services information
|
|
197
|
+
*/
|
|
198
|
+
getProfileServices(urn: string): Promise<Record<string, unknown>>;
|
|
199
|
+
/**
|
|
200
|
+
* Get profile URN by username.
|
|
201
|
+
*
|
|
202
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/profile/username-to-urn
|
|
203
|
+
*
|
|
204
|
+
* @param username - The LinkedIn username for the profile
|
|
205
|
+
* @returns Profile URN
|
|
206
|
+
*/
|
|
207
|
+
getProfileUrn(username: string): Promise<Record<string, unknown>>;
|
|
208
|
+
/**
|
|
209
|
+
* Get all featured posts for a given profile using its URN.
|
|
210
|
+
*
|
|
211
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/posts/featured
|
|
212
|
+
*
|
|
213
|
+
* @param urn - The LinkedIn URN for the profile
|
|
214
|
+
* @returns List of featured posts
|
|
215
|
+
*/
|
|
216
|
+
getFeaturedPosts(urn: string): Promise<Record<string, unknown>>;
|
|
217
|
+
/**
|
|
218
|
+
* Retrieve all posts for a given profile URN.
|
|
219
|
+
*
|
|
220
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/posts/all
|
|
221
|
+
*
|
|
222
|
+
* @param urn - The LinkedIn URN of the profile
|
|
223
|
+
* @param cursor - Pagination cursor (default is empty)
|
|
224
|
+
* @param start - Start index for pagination (default is 0)
|
|
225
|
+
* @returns List of posts with pagination info
|
|
226
|
+
*/
|
|
227
|
+
getAllPosts(urn: string, cursor?: string, start?: number): Promise<Record<string, unknown>>;
|
|
228
|
+
/**
|
|
229
|
+
* Retrieve information about a specific post using its URN.
|
|
230
|
+
*
|
|
231
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/posts/info
|
|
232
|
+
*
|
|
233
|
+
* @param urn - The URN of the LinkedIn post
|
|
234
|
+
* @returns Detailed post information
|
|
235
|
+
*/
|
|
236
|
+
getPostInfo(urn: string): Promise<Record<string, unknown>>;
|
|
237
|
+
/**
|
|
238
|
+
* Get comments for a specific LinkedIn post.
|
|
239
|
+
*
|
|
240
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/posts/comments
|
|
241
|
+
*
|
|
242
|
+
* @param urn - The URN of the post
|
|
243
|
+
* @param start - Starting index for pagination (default is 0)
|
|
244
|
+
* @param count - Number of comments to fetch per request (default is 10)
|
|
245
|
+
* @param cursor - Cursor for pagination (default is empty)
|
|
246
|
+
* @returns A list of comments and pagination metadata
|
|
247
|
+
*/
|
|
248
|
+
getPostComments(urn: string, start?: number, count?: number, cursor?: string): Promise<Record<string, unknown>>;
|
|
249
|
+
/**
|
|
250
|
+
* Retrieve all users who liked or reacted to a given post.
|
|
251
|
+
*
|
|
252
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/posts/likes
|
|
253
|
+
*
|
|
254
|
+
* @param urn - The URN of the LinkedIn post
|
|
255
|
+
* @param start - Pagination start index (default is 0)
|
|
256
|
+
* @returns List of users who liked/reacted to the post
|
|
257
|
+
*/
|
|
258
|
+
getPostLikes(urn: string, start?: number): Promise<Record<string, unknown>>;
|
|
259
|
+
/**
|
|
260
|
+
* Retrieve all comments made by a profile using their URN.
|
|
261
|
+
*
|
|
262
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/comments/all
|
|
263
|
+
*
|
|
264
|
+
* @param urn - The LinkedIn profile URN
|
|
265
|
+
* @param cursor - Pagination cursor (default is empty)
|
|
266
|
+
* @returns List of comments made by the user
|
|
267
|
+
*/
|
|
268
|
+
getAllComments(urn: string, cursor?: string): Promise<Record<string, unknown>>;
|
|
269
|
+
/**
|
|
270
|
+
* Get all users who reacted to one or more comment URNs.
|
|
271
|
+
*
|
|
272
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/comments/likes
|
|
273
|
+
*
|
|
274
|
+
* @param urns - Comma-separated URNs of comments
|
|
275
|
+
* @param start - Pagination start index (default is 0)
|
|
276
|
+
* @returns List of users who liked or reacted to the comments
|
|
277
|
+
*/
|
|
278
|
+
getCommentLikes(urns: string, start?: number): Promise<Record<string, unknown>>;
|
|
279
|
+
/**
|
|
280
|
+
* Get API service status.
|
|
281
|
+
*
|
|
282
|
+
* @returns Service status information
|
|
283
|
+
*/
|
|
284
|
+
getServiceStatus(): Promise<Record<string, unknown>>;
|
|
285
|
+
/**
|
|
286
|
+
* Search companies by name.
|
|
287
|
+
*
|
|
288
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/companies/name-lookup
|
|
289
|
+
*
|
|
290
|
+
* @param query - The search query (can be 1 character or multiple)
|
|
291
|
+
* @returns List of matching companies
|
|
292
|
+
*/
|
|
293
|
+
companyNameLookup(query: string): Promise<Record<string, unknown>>;
|
|
294
|
+
/**
|
|
295
|
+
* Get company details either by ID or name.
|
|
296
|
+
*
|
|
297
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/companies/company/info
|
|
298
|
+
*
|
|
299
|
+
* @param options - Either companyId or name must be provided
|
|
300
|
+
* @param options.companyId - Company ID
|
|
301
|
+
* @param options.name - Company name
|
|
302
|
+
* @returns Company details information
|
|
303
|
+
*/
|
|
304
|
+
getCompanyInfo(options: {
|
|
305
|
+
companyId?: string;
|
|
306
|
+
name?: string;
|
|
307
|
+
}): Promise<Record<string, unknown>>;
|
|
308
|
+
/**
|
|
309
|
+
* Get similar companies by ID.
|
|
310
|
+
*
|
|
311
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/companies/company/similar
|
|
312
|
+
*
|
|
313
|
+
* @param companyId - Company ID
|
|
314
|
+
* @returns List of similar companies
|
|
315
|
+
*/
|
|
316
|
+
getSimilarCompanies(companyId: string): Promise<Record<string, unknown>>;
|
|
317
|
+
/**
|
|
318
|
+
* Get company employees data by ID.
|
|
319
|
+
*
|
|
320
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/companies/company/employees-data
|
|
321
|
+
*
|
|
322
|
+
* @param companyId - Company ID
|
|
323
|
+
* @returns Company employees data
|
|
324
|
+
*/
|
|
325
|
+
getCompanyEmployeesData(companyId: string): Promise<Record<string, unknown>>;
|
|
326
|
+
/**
|
|
327
|
+
* Get available job listings for given companies by ID.
|
|
328
|
+
*
|
|
329
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/companies/jobs
|
|
330
|
+
*
|
|
331
|
+
* @param companyIds - Company ID(s) - can be a single ID or array of IDs
|
|
332
|
+
* @param start - Pagination start index (default is 0)
|
|
333
|
+
* @returns List of job listings for the specified companies
|
|
334
|
+
*/
|
|
335
|
+
getCompanyJobs(companyIds: string | string[], start?: number): Promise<Record<string, unknown>>;
|
|
336
|
+
/**
|
|
337
|
+
* Get affiliated pages/subsidiaries of a company by ID.
|
|
338
|
+
*
|
|
339
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/companies/company/affiliated-pages
|
|
340
|
+
*
|
|
341
|
+
* @param companyId - Company ID
|
|
342
|
+
* @returns List of affiliated pages and subsidiaries
|
|
343
|
+
*/
|
|
344
|
+
getCompanyAffiliatedPages(companyId: string): Promise<Record<string, unknown>>;
|
|
345
|
+
/**
|
|
346
|
+
* Get Posts of a company by ID.
|
|
347
|
+
*
|
|
348
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/companies/company/posts
|
|
349
|
+
*
|
|
350
|
+
* @param companyId - Company ID
|
|
351
|
+
* @param start - Pagination start index (default is 0)
|
|
352
|
+
* @returns List of posts
|
|
353
|
+
*/
|
|
354
|
+
getCompanyPosts(companyId: string, start?: number): Promise<Record<string, unknown>>;
|
|
355
|
+
/**
|
|
356
|
+
* Get ID of a company by universal_name (username).
|
|
357
|
+
*
|
|
358
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/companies/company/universal-name-to-id
|
|
359
|
+
*
|
|
360
|
+
* @param universalName - Company universalName (username)
|
|
361
|
+
* @returns Company ID
|
|
362
|
+
*/
|
|
363
|
+
getCompanyId(universalName: string): Promise<Record<string, unknown>>;
|
|
364
|
+
/**
|
|
365
|
+
* Get company details V2 with extended information by company ID.
|
|
366
|
+
* This endpoint returns more information about the company including
|
|
367
|
+
* peopleAlsoFollow, affiliatedByJobs, etc.
|
|
368
|
+
*
|
|
369
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/companies/company/info-v2
|
|
370
|
+
*
|
|
371
|
+
* @param companyId - Company ID
|
|
372
|
+
* @returns Extended company details information
|
|
373
|
+
*/
|
|
374
|
+
getCompanyDetailsV2(companyId: string): Promise<Record<string, unknown>>;
|
|
375
|
+
/**
|
|
376
|
+
* Search for jobs with various filters.
|
|
377
|
+
*
|
|
378
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/jobs/search
|
|
379
|
+
*
|
|
380
|
+
* @param options - Search options
|
|
381
|
+
* @param options.keyword - Job title, skills, or keywords
|
|
382
|
+
* @param options.location - City, state, or region
|
|
383
|
+
* @param options.geoId - LinkedIn's internal geographic identifier
|
|
384
|
+
* @param options.companyIds - Specific company LinkedIn IDs (string or array)
|
|
385
|
+
* @param options.jobTypes - Employment types: full_time, part_time, contract, temporary, internship, volunteer
|
|
386
|
+
* @param options.experience - Experience levels: internship, entry_level, associate, mid_senior, director
|
|
387
|
+
* @param options.regions - Specific region codes (string or array)
|
|
388
|
+
* @param options.timePosted - How recently posted: any, 24h, 1week, 1month
|
|
389
|
+
* @param options.salary - Minimum salary: any, 40k, 60k, 80k, 100k, 120k
|
|
390
|
+
* @param options.workArrangement - Work arrangement: onsite, remote, hybrid
|
|
391
|
+
* @param options.start - Pagination start index (default is 0)
|
|
392
|
+
* @returns List of job search results
|
|
393
|
+
*/
|
|
394
|
+
searchJobs(options?: {
|
|
395
|
+
keyword?: string;
|
|
396
|
+
location?: string;
|
|
397
|
+
geoId?: string;
|
|
398
|
+
companyIds?: string | string[];
|
|
399
|
+
jobTypes?: string | string[];
|
|
400
|
+
experience?: string | string[];
|
|
401
|
+
regions?: string | string[];
|
|
402
|
+
timePosted?: string;
|
|
403
|
+
salary?: string;
|
|
404
|
+
workArrangement?: string | string[];
|
|
405
|
+
start?: number;
|
|
406
|
+
}): Promise<Record<string, unknown>>;
|
|
407
|
+
/**
|
|
408
|
+
* Get job details by job ID.
|
|
409
|
+
*
|
|
410
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/jobs/job/details
|
|
411
|
+
*
|
|
412
|
+
* @param jobId - Job ID (must be open and actively hiring)
|
|
413
|
+
* @returns Detailed job information
|
|
414
|
+
*/
|
|
415
|
+
getJobDetails(jobId: string): Promise<Record<string, unknown>>;
|
|
416
|
+
/**
|
|
417
|
+
* Get similar jobs by job ID.
|
|
418
|
+
*
|
|
419
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/jobs/job/similar
|
|
420
|
+
*
|
|
421
|
+
* @param jobId - Job ID
|
|
422
|
+
* @returns List of similar jobs
|
|
423
|
+
*/
|
|
424
|
+
getSimilarJobs(jobId: string): Promise<Record<string, unknown>>;
|
|
425
|
+
/**
|
|
426
|
+
* Get related jobs that people also viewed.
|
|
427
|
+
*
|
|
428
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/jobs/job/people-also-viewed
|
|
429
|
+
*
|
|
430
|
+
* @param jobId - Job ID
|
|
431
|
+
* @returns List of related jobs
|
|
432
|
+
*/
|
|
433
|
+
getPeopleAlsoViewedJobs(jobId: string): Promise<Record<string, unknown>>;
|
|
434
|
+
/**
|
|
435
|
+
* Get job details V2 by job ID. This endpoint supports all job statuses
|
|
436
|
+
* (open, closed, expired, etc.) and provides detailed information about the job.
|
|
437
|
+
*
|
|
438
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/jobs/job/details-v2
|
|
439
|
+
*
|
|
440
|
+
* @param jobId - Job ID (supports all job statuses)
|
|
441
|
+
* @returns Detailed job information
|
|
442
|
+
*/
|
|
443
|
+
getJobDetailsV2(jobId: string): Promise<Record<string, unknown>>;
|
|
444
|
+
/**
|
|
445
|
+
* Get hiring team members for a specific job.
|
|
446
|
+
*
|
|
447
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/jobs/job/hiring-team
|
|
448
|
+
*
|
|
449
|
+
* @param jobId - Job ID
|
|
450
|
+
* @param start - Pagination start index (default is 0)
|
|
451
|
+
* @returns List of hiring team members
|
|
452
|
+
*/
|
|
453
|
+
getHiringTeam(jobId: string, start?: number): Promise<Record<string, unknown>>;
|
|
454
|
+
/**
|
|
455
|
+
* Get jobs posted by a specific profile.
|
|
456
|
+
*
|
|
457
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/jobs/posted-by-profile
|
|
458
|
+
*
|
|
459
|
+
* @param profileUrn - Profile URN
|
|
460
|
+
* @param start - Pagination start index (default is 0)
|
|
461
|
+
* @param count - Number of jobs to retrieve (default is 25)
|
|
462
|
+
* @returns List of jobs posted by the profile
|
|
463
|
+
*/
|
|
464
|
+
getProfilePostedJobs(profileUrn: string, start?: number, count?: number): Promise<Record<string, unknown>>;
|
|
465
|
+
/**
|
|
466
|
+
* Search for jobs V2 with comprehensive filters (all filters available).
|
|
467
|
+
*
|
|
468
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/search/jobs
|
|
469
|
+
*
|
|
470
|
+
* @param options - Search options
|
|
471
|
+
* @param options.keyword - Search keyword
|
|
472
|
+
* @param options.start - Pagination offset (default: 0, increment by 25)
|
|
473
|
+
* @param options.sortBy - Sort by "relevance" (default) or "date_posted"
|
|
474
|
+
* @param options.datePosted - Filter by "24h", "1week", or "1month"
|
|
475
|
+
* @param options.experience - Experience levels: internship, entry_level, associate, mid_senior, director, executive
|
|
476
|
+
* @param options.jobTypes - Employment types: full_time, part_time, contract, temporary, internship, volunteer, other
|
|
477
|
+
* @param options.workplaceTypes - Work arrangement: onsite, remote, hybrid
|
|
478
|
+
* @param options.salary - Minimum annual salary: 20k, 30k, 40k, 50k, 60k, 70k, 80k, 90k, 100k
|
|
479
|
+
* @param options.companies - Company IDs (string or array)
|
|
480
|
+
* @param options.industries - Industry IDs (string or array)
|
|
481
|
+
* @param options.locations - LinkedIn's internal geographic identifiers (string or array)
|
|
482
|
+
* @param options.functions - Job function codes (string or array, e.g., "it,sales,eng")
|
|
483
|
+
* @param options.titles - Job title IDs (string or array)
|
|
484
|
+
* @param options.benefits - Benefits: medical_ins, dental_ins, vision_ins, 401k, pension, paid_maternity, paid_paternity, commuter, student_loan, tuition, disability_ins
|
|
485
|
+
* @param options.commitments - Company values: dei, environmental, work_life, social_impact, career_growth
|
|
486
|
+
* @param options.easyApply - Show only LinkedIn Easy Apply jobs
|
|
487
|
+
* @param options.verifiedJob - Show only verified job postings
|
|
488
|
+
* @param options.under10Applicants - Show jobs with fewer than 10 applicants
|
|
489
|
+
* @param options.fairChance - Show jobs from fair chance employers
|
|
490
|
+
* @returns List of job search results
|
|
491
|
+
*/
|
|
492
|
+
searchJobsV2(options?: {
|
|
493
|
+
keyword?: string;
|
|
494
|
+
start?: number;
|
|
495
|
+
sortBy?: string;
|
|
496
|
+
datePosted?: string;
|
|
497
|
+
experience?: string | string[];
|
|
498
|
+
jobTypes?: string | string[];
|
|
499
|
+
workplaceTypes?: string | string[];
|
|
500
|
+
salary?: string;
|
|
501
|
+
companies?: string | string[];
|
|
502
|
+
industries?: string | string[];
|
|
503
|
+
locations?: string | string[];
|
|
504
|
+
functions?: string | string[];
|
|
505
|
+
titles?: string | string[];
|
|
506
|
+
benefits?: string | string[];
|
|
507
|
+
commitments?: string | string[];
|
|
508
|
+
easyApply?: boolean;
|
|
509
|
+
verifiedJob?: boolean;
|
|
510
|
+
under10Applicants?: boolean;
|
|
511
|
+
fairChance?: boolean;
|
|
512
|
+
}): Promise<Record<string, unknown>>;
|
|
513
|
+
/**
|
|
514
|
+
* Search locations and get geo IDs.
|
|
515
|
+
*
|
|
516
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/geos/name-lookup
|
|
517
|
+
*
|
|
518
|
+
* @param query - The search query (can be 1 character or multiple)
|
|
519
|
+
* @returns List of matching locations with geo IDs
|
|
520
|
+
*/
|
|
521
|
+
geoNameLookup(query: string): Promise<Record<string, unknown>>;
|
|
522
|
+
/**
|
|
523
|
+
* Search for people with various filters.
|
|
524
|
+
*
|
|
525
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/search/people
|
|
526
|
+
*
|
|
527
|
+
* @param options - Search options
|
|
528
|
+
* @param options.keyword - Search keyword (e.g., "software engineer")
|
|
529
|
+
* @param options.start - Pagination start index (default is 0)
|
|
530
|
+
* @param options.currentCompany - Current company IDs (string or array)
|
|
531
|
+
* @param options.firstName - First name filter
|
|
532
|
+
* @param options.geoUrn - Geographic URNs (string or array)
|
|
533
|
+
* @param options.industry - Industry IDs (string or array)
|
|
534
|
+
* @param options.lastName - Last name filter
|
|
535
|
+
* @param options.profileLanguage - Profile language (e.g., "en" for English)
|
|
536
|
+
* @param options.pastCompany - Past company IDs (string or array)
|
|
537
|
+
* @param options.school - School IDs (string or array)
|
|
538
|
+
* @param options.serviceCategory - Service category ID
|
|
539
|
+
* @param options.title - Job title (e.g., "founder")
|
|
540
|
+
* @returns List of people matching the search criteria
|
|
541
|
+
*/
|
|
542
|
+
searchPeople(options?: {
|
|
543
|
+
keyword?: string;
|
|
544
|
+
start?: number;
|
|
545
|
+
currentCompany?: string | string[];
|
|
546
|
+
firstName?: string;
|
|
547
|
+
geoUrn?: string | string[];
|
|
548
|
+
industry?: string | string[];
|
|
549
|
+
lastName?: string;
|
|
550
|
+
profileLanguage?: string;
|
|
551
|
+
pastCompany?: string | string[];
|
|
552
|
+
school?: string | string[];
|
|
553
|
+
serviceCategory?: string;
|
|
554
|
+
title?: string;
|
|
555
|
+
}): Promise<Record<string, unknown>>;
|
|
556
|
+
/**
|
|
557
|
+
* Search for companies with various filters.
|
|
558
|
+
*
|
|
559
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/search/companies
|
|
560
|
+
*
|
|
561
|
+
* @param options - Search options
|
|
562
|
+
* @param options.keyword - Search keyword (e.g., "software")
|
|
563
|
+
* @param options.start - Pagination start index (default is 0)
|
|
564
|
+
* @param options.geoUrn - Geographic URNs (string or array)
|
|
565
|
+
* @param options.companySize - Company sizes: "1-10", "11-50", "51-200", "201-500", "501-1000", "1001-5000", "5001-10,000", "10,001+"
|
|
566
|
+
* @param options.hasJobs - Filter companies with job listings
|
|
567
|
+
* @param options.industry - Industry IDs (string or array)
|
|
568
|
+
* @returns List of companies matching the search criteria
|
|
569
|
+
*/
|
|
570
|
+
searchCompanies(options?: {
|
|
571
|
+
keyword?: string;
|
|
572
|
+
start?: number;
|
|
573
|
+
geoUrn?: string | string[];
|
|
574
|
+
companySize?: string | string[];
|
|
575
|
+
hasJobs?: boolean;
|
|
576
|
+
industry?: string | string[];
|
|
577
|
+
}): Promise<Record<string, unknown>>;
|
|
578
|
+
/**
|
|
579
|
+
* Search for services offered by LinkedIn members.
|
|
580
|
+
*
|
|
581
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/search/services
|
|
582
|
+
*
|
|
583
|
+
* @param options - Search options
|
|
584
|
+
* @param options.keyword - Search keyword (e.g., "software")
|
|
585
|
+
* @param options.start - Pagination start index (default is 0)
|
|
586
|
+
* @param options.geoUrn - Geographic URNs (string or array)
|
|
587
|
+
* @param options.profileLanguage - Profile language (e.g., "en,ch")
|
|
588
|
+
* @param options.serviceCategory - Service category IDs (string or array)
|
|
589
|
+
* @returns List of services matching the search criteria
|
|
590
|
+
*/
|
|
591
|
+
searchServices(options?: {
|
|
592
|
+
keyword?: string;
|
|
593
|
+
start?: number;
|
|
594
|
+
geoUrn?: string | string[];
|
|
595
|
+
profileLanguage?: string;
|
|
596
|
+
serviceCategory?: string | string[];
|
|
597
|
+
}): Promise<Record<string, unknown>>;
|
|
598
|
+
/**
|
|
599
|
+
* Search for educational institutions/schools.
|
|
600
|
+
*
|
|
601
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/search/schools
|
|
602
|
+
*
|
|
603
|
+
* @param keyword - Search keyword (e.g., "stanford")
|
|
604
|
+
* @param start - Pagination start index (default is 0)
|
|
605
|
+
* @returns List of schools matching the search criteria
|
|
606
|
+
*/
|
|
607
|
+
searchSchools(keyword?: string, start?: number): Promise<Record<string, unknown>>;
|
|
608
|
+
/**
|
|
609
|
+
* Search for LinkedIn posts with various filters.
|
|
610
|
+
*
|
|
611
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/search/posts
|
|
612
|
+
*
|
|
613
|
+
* @param options - Search options
|
|
614
|
+
* @param options.keyword - Search keyword (e.g., "google")
|
|
615
|
+
* @param options.start - Pagination start index (default is 10)
|
|
616
|
+
* @param options.authorCompany - Company ID of the post author
|
|
617
|
+
* @param options.authorIndustry - Industry ID of the post author
|
|
618
|
+
* @param options.authorJobTitle - Job title of the post author (e.g., "founder")
|
|
619
|
+
* @param options.contentType - Content type: videos, photos, jobs, liveVideos, documents, collaborativeArticles
|
|
620
|
+
* @param options.datePosted - Date filter: past-24h, past-week, past-month, past-year
|
|
621
|
+
* @param options.fromMember - Profile URN of the post author
|
|
622
|
+
* @param options.fromOrganization - Company IDs (string or array)
|
|
623
|
+
* @param options.mentionsMember - Profile URN mentioned in posts
|
|
624
|
+
* @param options.mentionsOrganization - Company IDs mentioned (string or array)
|
|
625
|
+
* @param options.sortBy - Sort order: relevance, date_posted (default is "relevance")
|
|
626
|
+
* @returns List of posts matching the search criteria
|
|
627
|
+
*/
|
|
628
|
+
searchPosts(options?: {
|
|
629
|
+
keyword?: string;
|
|
630
|
+
start?: number;
|
|
631
|
+
authorCompany?: string;
|
|
632
|
+
authorIndustry?: string;
|
|
633
|
+
authorJobTitle?: string;
|
|
634
|
+
contentType?: string;
|
|
635
|
+
datePosted?: string;
|
|
636
|
+
fromMember?: string;
|
|
637
|
+
fromOrganization?: string | string[];
|
|
638
|
+
mentionsMember?: string;
|
|
639
|
+
mentionsOrganization?: string | string[];
|
|
640
|
+
sortBy?: string;
|
|
641
|
+
}): Promise<Record<string, unknown>>;
|
|
642
|
+
/**
|
|
643
|
+
* Search for keywords and get relevant skills and titles with their IDs.
|
|
644
|
+
*
|
|
645
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/g/title-skills-lookup
|
|
646
|
+
*
|
|
647
|
+
* @param query - Search query
|
|
648
|
+
* @returns List of relevant skills and titles with IDs
|
|
649
|
+
*/
|
|
650
|
+
titleSkillsLookup(query: string): Promise<Record<string, unknown>>;
|
|
651
|
+
/**
|
|
652
|
+
* Look up service categories and return matching services.
|
|
653
|
+
*
|
|
654
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/g/services-lookup
|
|
655
|
+
*
|
|
656
|
+
* @param query - Search query for services (e.g., "software")
|
|
657
|
+
* @returns List of matching service categories with IDs
|
|
658
|
+
*/
|
|
659
|
+
servicesLookup(query: string): Promise<Record<string, unknown>>;
|
|
660
|
+
/**
|
|
661
|
+
* Get service by VanityName.
|
|
662
|
+
*
|
|
663
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/services/service/details
|
|
664
|
+
*
|
|
665
|
+
* @param vanityname - The service vanity name identifier
|
|
666
|
+
* @returns Service details information
|
|
667
|
+
*/
|
|
668
|
+
getServiceDetails(vanityname: string): Promise<Record<string, unknown>>;
|
|
669
|
+
/**
|
|
670
|
+
* Get similar services by VanityName.
|
|
671
|
+
*
|
|
672
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/services/service/similar
|
|
673
|
+
*
|
|
674
|
+
* @param vanityname - The service vanity name identifier
|
|
675
|
+
* @returns List of similar services
|
|
676
|
+
*/
|
|
677
|
+
getSimilarServices(vanityname: string): Promise<Record<string, unknown>>;
|
|
678
|
+
/**
|
|
679
|
+
* Get all articles published by a specific LinkedIn profile.
|
|
680
|
+
*
|
|
681
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/articles/all
|
|
682
|
+
*
|
|
683
|
+
* @param urn - The LinkedIn profile URN
|
|
684
|
+
* @param start - Pagination start index (default is 0)
|
|
685
|
+
* @returns List of articles published by the profile
|
|
686
|
+
*/
|
|
687
|
+
getAllArticles(urn: string, start?: number): Promise<Record<string, unknown>>;
|
|
688
|
+
/**
|
|
689
|
+
* Get detailed information about a specific LinkedIn article.
|
|
690
|
+
*
|
|
691
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/articles/article/info
|
|
692
|
+
*
|
|
693
|
+
* @param url - Full LinkedIn article URL (e.g., "https://www.linkedin.com/pulse/...")
|
|
694
|
+
* @returns Detailed article information
|
|
695
|
+
*/
|
|
696
|
+
getArticleInfo(url: string): Promise<Record<string, unknown>>;
|
|
697
|
+
/**
|
|
698
|
+
* Get reactions (likes, comments, etc.) for a specific LinkedIn article.
|
|
699
|
+
*
|
|
700
|
+
* Documentation: https://linkdapi.com/docs?endpoint=/api/v1/articles/article/reactions
|
|
701
|
+
*
|
|
702
|
+
* @param urn - Article/thread URN (obtained from getArticleInfo)
|
|
703
|
+
* @param start - Pagination start index (default is 0)
|
|
704
|
+
* @returns Reactions data for the article
|
|
705
|
+
*/
|
|
706
|
+
getArticleReactions(urn: string, start?: number): Promise<Record<string, unknown>>;
|
|
707
|
+
}
|
|
708
|
+
//# sourceMappingURL=client.d.ts.map
|