influship 0.2.0 → 0.3.2

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 (262) hide show
  1. package/CHANGELOG.md +62 -30
  2. package/LICENSE +1 -1
  3. package/README.md +88 -43
  4. package/client.d.mts +49 -29
  5. package/client.d.mts.map +1 -1
  6. package/client.d.ts +49 -29
  7. package/client.d.ts.map +1 -1
  8. package/client.js +89 -56
  9. package/client.js.map +1 -1
  10. package/client.mjs +89 -56
  11. package/client.mjs.map +1 -1
  12. package/core/api-promise.d.mts +2 -2
  13. package/core/api-promise.d.mts.map +1 -1
  14. package/core/api-promise.d.ts +2 -2
  15. package/core/api-promise.d.ts.map +1 -1
  16. package/core/api-promise.js.map +1 -1
  17. package/core/api-promise.mjs.map +1 -1
  18. package/core/error.d.mts +2 -2
  19. package/core/error.d.mts.map +1 -1
  20. package/core/error.d.ts +2 -2
  21. package/core/error.d.ts.map +1 -1
  22. package/core/error.js +4 -4
  23. package/core/error.js.map +1 -1
  24. package/core/error.mjs +2 -2
  25. package/core/error.mjs.map +1 -1
  26. package/core/pagination.d.mts +75 -0
  27. package/core/pagination.d.mts.map +1 -0
  28. package/core/pagination.d.ts +75 -0
  29. package/core/pagination.d.ts.map +1 -0
  30. package/core/pagination.js +139 -0
  31. package/core/pagination.js.map +1 -0
  32. package/core/pagination.mjs +132 -0
  33. package/core/pagination.mjs.map +1 -0
  34. package/core/resource.d.mts +3 -3
  35. package/core/resource.d.mts.map +1 -1
  36. package/core/resource.d.ts +3 -3
  37. package/core/resource.d.ts.map +1 -1
  38. package/core/resource.js.map +1 -1
  39. package/core/resource.mjs.map +1 -1
  40. package/index.d.mts +4 -3
  41. package/index.d.mts.map +1 -1
  42. package/index.d.ts +4 -3
  43. package/index.d.ts.map +1 -1
  44. package/index.js +6 -4
  45. package/index.js.map +1 -1
  46. package/index.mjs +4 -3
  47. package/index.mjs.map +1 -1
  48. package/internal/parse.d.mts +2 -2
  49. package/internal/parse.d.mts.map +1 -1
  50. package/internal/parse.d.ts +2 -2
  51. package/internal/parse.d.ts.map +1 -1
  52. package/internal/parse.js +5 -0
  53. package/internal/parse.js.map +1 -1
  54. package/internal/parse.mjs +5 -0
  55. package/internal/parse.mjs.map +1 -1
  56. package/internal/shims.js +1 -1
  57. package/internal/shims.js.map +1 -1
  58. package/internal/shims.mjs +1 -1
  59. package/internal/shims.mjs.map +1 -1
  60. package/internal/tslib.js +17 -17
  61. package/internal/uploads.d.mts +4 -4
  62. package/internal/uploads.d.mts.map +1 -1
  63. package/internal/uploads.d.ts +4 -4
  64. package/internal/uploads.d.ts.map +1 -1
  65. package/internal/uploads.js.map +1 -1
  66. package/internal/uploads.mjs.map +1 -1
  67. package/internal/utils/base64.js +2 -2
  68. package/internal/utils/base64.js.map +1 -1
  69. package/internal/utils/base64.mjs +3 -3
  70. package/internal/utils/base64.mjs.map +1 -1
  71. package/internal/utils/log.d.mts +3 -3
  72. package/internal/utils/log.d.mts.map +1 -1
  73. package/internal/utils/log.d.ts +3 -3
  74. package/internal/utils/log.d.ts.map +1 -1
  75. package/internal/utils/log.js.map +1 -1
  76. package/internal/utils/log.mjs.map +1 -1
  77. package/internal/utils/path.js +1 -1
  78. package/internal/utils/path.js.map +1 -1
  79. package/internal/utils/path.mjs +2 -2
  80. package/internal/utils/path.mjs.map +1 -1
  81. package/internal/utils/query.d.mts +2 -0
  82. package/internal/utils/query.d.mts.map +1 -0
  83. package/internal/utils/query.d.ts +2 -0
  84. package/internal/utils/query.d.ts.map +1 -0
  85. package/internal/utils/query.js +10 -0
  86. package/internal/utils/query.js.map +1 -0
  87. package/internal/utils/query.mjs +6 -0
  88. package/internal/utils/query.mjs.map +1 -0
  89. package/internal/utils/values.js +5 -5
  90. package/internal/utils/values.js.map +1 -1
  91. package/internal/utils/values.mjs +6 -6
  92. package/internal/utils/values.mjs.map +1 -1
  93. package/internal/utils.d.mts +1 -0
  94. package/internal/utils.d.ts +1 -0
  95. package/internal/utils.js +1 -0
  96. package/internal/utils.js.map +1 -1
  97. package/internal/utils.mjs +1 -0
  98. package/package.json +24 -3
  99. package/pagination.d.mts +2 -0
  100. package/pagination.d.mts.map +1 -0
  101. package/pagination.d.ts +2 -0
  102. package/pagination.d.ts.map +1 -0
  103. package/pagination.js +6 -0
  104. package/pagination.js.map +1 -0
  105. package/pagination.mjs +2 -0
  106. package/pagination.mjs.map +1 -0
  107. package/resources/creators.d.mts +326 -247
  108. package/resources/creators.d.mts.map +1 -1
  109. package/resources/creators.d.ts +326 -247
  110. package/resources/creators.d.ts.map +1 -1
  111. package/resources/creators.js +80 -63
  112. package/resources/creators.js.map +1 -1
  113. package/resources/creators.mjs +80 -63
  114. package/resources/creators.mjs.map +1 -1
  115. package/resources/health.d.mts +13 -1
  116. package/resources/health.d.mts.map +1 -1
  117. package/resources/health.d.ts +13 -1
  118. package/resources/health.d.ts.map +1 -1
  119. package/resources/health.js +4 -1
  120. package/resources/health.js.map +1 -1
  121. package/resources/health.mjs +4 -1
  122. package/resources/health.mjs.map +1 -1
  123. package/resources/index.d.mts +6 -7
  124. package/resources/index.d.mts.map +1 -1
  125. package/resources/index.d.ts +6 -7
  126. package/resources/index.d.ts.map +1 -1
  127. package/resources/index.js +5 -7
  128. package/resources/index.js.map +1 -1
  129. package/resources/index.mjs +2 -3
  130. package/resources/index.mjs.map +1 -1
  131. package/resources/posts.d.mts +82 -202
  132. package/resources/posts.d.mts.map +1 -1
  133. package/resources/posts.d.ts +82 -202
  134. package/resources/posts.d.ts.map +1 -1
  135. package/resources/posts.js +17 -38
  136. package/resources/posts.js.map +1 -1
  137. package/resources/posts.mjs +17 -38
  138. package/resources/posts.mjs.map +1 -1
  139. package/resources/profiles.d.mts +208 -58
  140. package/resources/profiles.d.mts.map +1 -1
  141. package/resources/profiles.d.ts +208 -58
  142. package/resources/profiles.d.ts.map +1 -1
  143. package/resources/profiles.js +37 -41
  144. package/resources/profiles.js.map +1 -1
  145. package/resources/profiles.mjs +37 -41
  146. package/resources/profiles.mjs.map +1 -1
  147. package/resources/raw/index.d.mts +4 -0
  148. package/resources/raw/index.d.mts.map +1 -0
  149. package/resources/raw/index.d.ts +4 -0
  150. package/resources/raw/index.d.ts.map +1 -0
  151. package/resources/raw/index.js +11 -0
  152. package/resources/raw/index.js.map +1 -0
  153. package/resources/raw/index.mjs +5 -0
  154. package/resources/raw/index.mjs.map +1 -0
  155. package/resources/raw/instagram.d.mts +215 -0
  156. package/resources/raw/instagram.d.mts.map +1 -0
  157. package/resources/raw/instagram.d.ts +215 -0
  158. package/resources/raw/instagram.d.ts.map +1 -0
  159. package/resources/raw/instagram.js +31 -0
  160. package/resources/raw/instagram.js.map +1 -0
  161. package/resources/raw/instagram.mjs +27 -0
  162. package/resources/raw/instagram.mjs.map +1 -0
  163. package/resources/raw/raw.d.mts +14 -0
  164. package/resources/raw/raw.d.mts.map +1 -0
  165. package/resources/raw/raw.d.ts +14 -0
  166. package/resources/raw/raw.d.ts.map +1 -0
  167. package/resources/raw/raw.js +21 -0
  168. package/resources/raw/raw.js.map +1 -0
  169. package/resources/raw/raw.mjs +16 -0
  170. package/resources/raw/raw.mjs.map +1 -0
  171. package/resources/raw/youtube.d.mts +455 -0
  172. package/resources/raw/youtube.d.mts.map +1 -0
  173. package/resources/raw/youtube.d.ts +455 -0
  174. package/resources/raw/youtube.d.ts.map +1 -0
  175. package/resources/raw/youtube.js +61 -0
  176. package/resources/raw/youtube.js.map +1 -0
  177. package/resources/raw/youtube.mjs +57 -0
  178. package/resources/raw/youtube.mjs.map +1 -0
  179. package/resources/raw.d.mts +2 -0
  180. package/resources/raw.d.mts.map +1 -0
  181. package/resources/raw.d.ts +2 -0
  182. package/resources/raw.d.ts.map +1 -0
  183. package/resources/raw.js +6 -0
  184. package/resources/raw.js.map +1 -0
  185. package/resources/raw.mjs +3 -0
  186. package/resources/raw.mjs.map +1 -0
  187. package/resources/search.d.mts +126 -117
  188. package/resources/search.d.mts.map +1 -1
  189. package/resources/search.d.ts +126 -117
  190. package/resources/search.d.ts.map +1 -1
  191. package/resources/search.js +46 -13
  192. package/resources/search.js.map +1 -1
  193. package/resources/search.mjs +46 -13
  194. package/resources/search.mjs.map +1 -1
  195. package/resources/shared.d.mts +55 -0
  196. package/resources/shared.d.mts.map +1 -0
  197. package/resources/shared.d.ts +55 -0
  198. package/resources/shared.d.ts.map +1 -0
  199. package/resources/shared.js +4 -0
  200. package/resources/shared.js.map +1 -0
  201. package/resources/shared.mjs +3 -0
  202. package/resources/shared.mjs.map +1 -0
  203. package/src/client.ts +153 -127
  204. package/src/core/api-promise.ts +4 -4
  205. package/src/core/error.ts +2 -2
  206. package/src/core/pagination.ts +232 -0
  207. package/src/core/resource.ts +3 -3
  208. package/src/index.ts +4 -3
  209. package/src/internal/parse.ts +8 -2
  210. package/src/internal/shims.ts +1 -1
  211. package/src/internal/uploads.ts +5 -5
  212. package/src/internal/utils/base64.ts +3 -3
  213. package/src/internal/utils/log.ts +3 -3
  214. package/src/internal/utils/path.ts +2 -2
  215. package/src/internal/utils/query.ts +7 -0
  216. package/src/internal/utils/values.ts +6 -6
  217. package/src/internal/utils.ts +1 -0
  218. package/src/pagination.ts +2 -0
  219. package/src/resources/creators.ts +369 -271
  220. package/src/resources/health.ts +13 -1
  221. package/src/resources/index.ts +22 -41
  222. package/src/resources/posts.ts +89 -232
  223. package/src/resources/profiles.ts +252 -59
  224. package/src/resources/raw/index.ts +16 -0
  225. package/src/resources/raw/instagram.ts +271 -0
  226. package/src/resources/raw/raw.ts +47 -0
  227. package/src/resources/raw/youtube.ts +585 -0
  228. package/src/resources/raw.ts +3 -0
  229. package/src/resources/search.ts +145 -131
  230. package/src/resources/shared.ts +66 -0
  231. package/src/version.ts +1 -1
  232. package/version.d.mts +1 -1
  233. package/version.d.ts +1 -1
  234. package/version.js +1 -1
  235. package/version.mjs +1 -1
  236. package/resources/brand-safety.d.mts +0 -234
  237. package/resources/brand-safety.d.mts.map +0 -1
  238. package/resources/brand-safety.d.ts +0 -234
  239. package/resources/brand-safety.d.ts.map +0 -1
  240. package/resources/brand-safety.js +0 -75
  241. package/resources/brand-safety.js.map +0 -1
  242. package/resources/brand-safety.mjs +0 -71
  243. package/resources/brand-safety.mjs.map +0 -1
  244. package/resources/lookalike.d.mts +0 -142
  245. package/resources/lookalike.d.mts.map +0 -1
  246. package/resources/lookalike.d.ts +0 -142
  247. package/resources/lookalike.d.ts.map +0 -1
  248. package/resources/lookalike.js +0 -28
  249. package/resources/lookalike.js.map +0 -1
  250. package/resources/lookalike.mjs +0 -24
  251. package/resources/lookalike.mjs.map +0 -1
  252. package/resources/match.d.mts +0 -90
  253. package/resources/match.d.mts.map +0 -1
  254. package/resources/match.d.ts +0 -90
  255. package/resources/match.d.ts.map +0 -1
  256. package/resources/match.js +0 -22
  257. package/resources/match.js.map +0 -1
  258. package/resources/match.mjs +0 -18
  259. package/resources/match.mjs.map +0 -1
  260. package/src/resources/brand-safety.ts +0 -304
  261. package/src/resources/lookalike.ts +0 -186
  262. package/src/resources/match.ts +0 -115
@@ -1,99 +1,249 @@
1
1
  import { APIResource } from "../core/resource.mjs";
2
- import * as CreatorsAPI from "./creators.mjs";
3
2
  import { APIPromise } from "../core/api-promise.mjs";
4
3
  import { RequestOptions } from "../internal/request-options.mjs";
4
+ /**
5
+ * Access individual social media profiles with detailed metrics, growth data, and activity information. Profiles are platform-specific accounts linked to creators.
6
+ */
5
7
  export declare class Profiles extends APIResource {
6
8
  /**
7
- * **DISCOVERY ENDPOINT**: Look up social account data when you know a username and
8
- * platform.
9
+ * Retrieve detailed profile data including metrics, growth statistics, and
10
+ * activity information from our database.
9
11
  *
10
- * **🎯 When to use this endpoint:**
12
+ * **Response includes:**
11
13
  *
12
- * - You have a username and platform (e.g., @fitness_guru on Instagram)
13
- * - You want to discover who a social account belongs to
14
- * - You need to look up specific social accounts by username
15
- * - You want to get social account metrics for known usernames
14
+ * - Basic info (bio, avatar, verification status)
15
+ * - Performance metrics (followers, engagement rate, avg likes/comments)
16
+ * - Growth data (30-day follower growth, monthly rate)
17
+ * - Activity data (last post date, posting frequency)
16
18
  *
17
- * **❌ When NOT to use this endpoint:**
19
+ * **Pricing**: 0.1 credits per request ($0.001)
18
20
  *
19
- * - ❌ You already have a creator UUID (use `/v1/creators/{id}/profiles` instead)
20
- * - ❌ You want to get all accounts for a creator (use
21
- * `/v1/creators/{id}/profiles` instead)
22
- *
23
- * **📊 Response Format:** Returns `SocialAccountLite` or `SocialAccountDetailed`
24
- * objects with identical structure to `/v1/creators/{id}/profiles`. Both endpoints
25
- * return the same data structure for consistency.
26
- *
27
- * **🔗 Data Relationships:**
28
- *
29
- * - Use the `creator_profile_id` field to fetch creator-level data via
30
- * `/v1/creators`
31
- * - Use the `creator_profile_id` to get all social accounts via
32
- * `/v1/creators/{id}/profiles`
33
- * - Creator-level data includes: name, bio, avatar, ai_one_line_bio
34
- * - Social account data includes: follower_count, engagement_rate, verified,
35
- * platform-specific metrics
36
- *
37
- * **🔄 Typical Workflow:**
21
+ * @example
22
+ * ```ts
23
+ * const profile = await client.profiles.get(
24
+ * 'fitness_coach_jane',
25
+ * { platform: 'instagram' },
26
+ * );
27
+ * ```
28
+ */
29
+ get(username: string, params: ProfileGetParams, options?: RequestOptions): APIPromise<ProfileGetResponse>;
30
+ /**
31
+ * Look up multiple profiles in a single request. Efficiently retrieve data for up
32
+ * to 100 profiles at once.
38
33
  *
39
- * 1. **Discovery**: Call `/v1/profiles` with username+platform → get social
40
- * account data + creator_profile_id
41
- * 2. **Creator Data**: Call `/v1/creators` with creator_profile_id → get
42
- * creator-level data
43
- * 3. **All Accounts**: Call `/v1/creators/{id}/profiles` with creator_profile_id →
44
- * get all social accounts for that creator
34
+ * **Response includes:**
45
35
  *
46
- * **⚙️ Parameters:**
36
+ * - `found`: Array of profiles that exist in our database
37
+ * - `not_found`: Array of profiles that weren't found (consider live scraping
38
+ * these)
47
39
  *
48
- * - `mode`: `lite` (default) or `detailed` - controls response detail level
49
- * - `platforms`: Array of platform names to filter results (e.g.,
50
- * `["instagram", "tiktok"]`) **Pricing**: 0.01-0.05 credits per profile
51
- * (lite/detailed mode)
40
+ * **Pricing**: 0.1 credits per profile ($0.001)
52
41
  *
53
42
  * @example
54
43
  * ```ts
55
44
  * const response = await client.profiles.lookup({
56
45
  * profiles: [
57
- * { platform: 'instagram', username: 'fitness_guru' },
58
- * { platform: 'tiktok', username: 'fitness_guru' },
46
+ * {
47
+ * platform: 'instagram',
48
+ * username: 'fitness_coach_jane',
49
+ * },
59
50
  * ],
60
51
  * });
61
52
  * ```
62
53
  */
63
54
  lookup(body: ProfileLookupParams, options?: RequestOptions): APIPromise<ProfileLookupResponse>;
64
55
  }
65
- export interface CreatorReferenceByHandle {
56
+ /**
57
+ * Profile activity information
58
+ */
59
+ export interface ProfileActivity {
60
+ /**
61
+ * Timestamp of last post
62
+ */
63
+ last_post_at: string | null;
64
+ }
65
+ /**
66
+ * Profile growth statistics
67
+ */
68
+ export interface ProfileGrowth {
69
+ /**
70
+ * Follower growth percentage over 30 days (e.g. 2.5 means +2.5%)
71
+ */
72
+ followers_30d_pct: number;
73
+ }
74
+ /**
75
+ * Profile performance metrics
76
+ */
77
+ export interface ProfileMetrics {
78
+ /**
79
+ * Average comments on recent posts
80
+ */
81
+ avg_comments_recent: number;
82
+ /**
83
+ * Average likes on recent posts
84
+ */
85
+ avg_likes_recent: number;
86
+ /**
87
+ * Average views on recent posts (for video content)
88
+ */
89
+ avg_views_recent: number | null;
90
+ /**
91
+ * Engagement rate as a percentage (e.g. 3.5 means 3.5%)
92
+ */
93
+ engagement_rate: number;
94
+ /**
95
+ * Follower count
96
+ */
97
+ followers: number;
98
+ /**
99
+ * Following count
100
+ */
101
+ following: number;
102
+ /**
103
+ * Total post count
104
+ */
105
+ posts: number;
106
+ /**
107
+ * Posts in the last 30 days
108
+ */
109
+ posts_last_30d: number;
110
+ /**
111
+ * Average posts per week
112
+ */
113
+ posts_per_week: number;
114
+ }
115
+ /**
116
+ * Full profile details
117
+ */
118
+ export interface ProfileResponseData {
119
+ /**
120
+ * Profile unique identifier
121
+ */
122
+ id: string;
123
+ /**
124
+ * Profile activity information
125
+ */
126
+ activity: ProfileActivity;
127
+ /**
128
+ * Avatar URL
129
+ */
130
+ avatar_url: string | null;
66
131
  /**
67
- * Social platform where the creator exists
132
+ * Profile bio
68
133
  */
69
- platform: 'instagram' | 'tiktok';
134
+ bio: string | null;
70
135
  /**
71
- * Username on the platform
136
+ * Account category
137
+ */
138
+ category: string | null;
139
+ /**
140
+ * Creator unique identifier
141
+ */
142
+ creator_id: string;
143
+ /**
144
+ * Last data refresh timestamp
145
+ */
146
+ data_updated_at: string | null;
147
+ /**
148
+ * Display name
149
+ */
150
+ display_name: string | null;
151
+ /**
152
+ * External website URL from bio
153
+ */
154
+ external_url: string | null;
155
+ /**
156
+ * Profile growth statistics
157
+ */
158
+ growth: ProfileGrowth;
159
+ /**
160
+ * Whether this is a business account
161
+ */
162
+ is_business: boolean;
163
+ /**
164
+ * Whether the account is private
165
+ */
166
+ is_private: boolean;
167
+ /**
168
+ * Whether the account is verified
169
+ */
170
+ is_verified: boolean;
171
+ /**
172
+ * Profile performance metrics
173
+ */
174
+ metrics: ProfileMetrics;
175
+ /**
176
+ * Social media platform
177
+ */
178
+ platform: 'instagram';
179
+ /**
180
+ * Listed pronouns
181
+ */
182
+ pronouns: Array<string> | null;
183
+ /**
184
+ * Profile URL
185
+ */
186
+ url: string;
187
+ /**
188
+ * Profile username
72
189
  */
73
190
  username: string;
74
191
  }
192
+ export interface ProfileGetResponse {
193
+ /**
194
+ * Full profile details
195
+ */
196
+ data: ProfileResponseData;
197
+ /**
198
+ * Present when partial results were returned because profile metrics/data were
199
+ * skipped due to integrity issues.
200
+ */
201
+ warning?: string;
202
+ }
75
203
  export interface ProfileLookupResponse {
76
204
  /**
77
- * Array of social account objects. The structure depends on the `mode` parameter:
78
- *
79
- * - If `mode: "lite"`: Returns SocialAccountLite objects
80
- * - If `mode: "detailed"`: Returns SocialAccountDetailed objects with additional
81
- * fields
205
+ * Profiles that were found
82
206
  */
83
- profiles?: Array<CreatorsAPI.SocialAccountLite | CreatorsAPI.SocialAccountDetailed>;
207
+ data: Array<ProfileResponseData>;
208
+ /**
209
+ * Profiles that were not found
210
+ */
211
+ not_found: Array<ProfileLookupResponse.NotFound>;
84
212
  }
85
- export interface ProfileLookupParams {
86
- profiles: Array<CreatorReferenceByHandle>;
213
+ export declare namespace ProfileLookupResponse {
214
+ interface NotFound {
215
+ /**
216
+ * Social media platform
217
+ */
218
+ platform: 'instagram';
219
+ username: string;
220
+ }
221
+ }
222
+ export interface ProfileGetParams {
87
223
  /**
88
- * Response detail level - lite for basic fields, detailed for additional metrics
224
+ * Platform name
89
225
  */
90
- mode?: 'lite' | 'detailed';
226
+ platform: string;
227
+ }
228
+ export interface ProfileLookupParams {
91
229
  /**
92
- * Filter results to only include these platforms
230
+ * Profiles to lookup
93
231
  */
94
- platforms?: Array<'instagram' | 'tiktok'>;
232
+ profiles: Array<ProfileLookupParams.Profile>;
233
+ }
234
+ export declare namespace ProfileLookupParams {
235
+ interface Profile {
236
+ /**
237
+ * Social media platform
238
+ */
239
+ platform: 'instagram';
240
+ /**
241
+ * Username to lookup
242
+ */
243
+ username: string;
244
+ }
95
245
  }
96
246
  export declare namespace Profiles {
97
- export { type CreatorReferenceByHandle as CreatorReferenceByHandle, type ProfileLookupResponse as ProfileLookupResponse, type ProfileLookupParams as ProfileLookupParams, };
247
+ export { type ProfileActivity as ProfileActivity, type ProfileGrowth as ProfileGrowth, type ProfileMetrics as ProfileMetrics, type ProfileResponseData as ProfileResponseData, type ProfileGetResponse as ProfileGetResponse, type ProfileLookupResponse as ProfileLookupResponse, type ProfileGetParams as ProfileGetParams, type ProfileLookupParams as ProfileLookupParams, };
98
248
  }
99
249
  //# sourceMappingURL=profiles.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"profiles.d.mts","sourceRoot":"","sources":["../src/resources/profiles.ts"],"names":[],"mappings":"OAEO,EAAE,WAAW,EAAE;OACf,KAAK,WAAW;OAChB,EAAE,UAAU,EAAE;OACd,EAAE,cAAc,EAAE;AAEzB,qBAAa,QAAS,SAAQ,WAAW;IACvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwDG;IACH,MAAM,CAAC,IAAI,EAAE,mBAAmB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,qBAAqB,CAAC;CAG/F;AAED,MAAM,WAAW,wBAAwB;IACvC;;OAEG;IACH,QAAQ,EAAE,WAAW,GAAG,QAAQ,CAAC;IAEjC;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,qBAAqB;IACpC;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,iBAAiB,GAAG,WAAW,CAAC,qBAAqB,CAAC,CAAC;CACrF;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAE1C;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;IAE3B;;OAEG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC,WAAW,GAAG,QAAQ,CAAC,CAAC;CAC3C;AAED,MAAM,CAAC,OAAO,WAAW,QAAQ,CAAC;IAChC,OAAO,EACL,KAAK,wBAAwB,IAAI,wBAAwB,EACzD,KAAK,qBAAqB,IAAI,qBAAqB,EACnD,KAAK,mBAAmB,IAAI,mBAAmB,GAChD,CAAC;CACH"}
1
+ {"version":3,"file":"profiles.d.mts","sourceRoot":"","sources":["../src/resources/profiles.ts"],"names":[],"mappings":"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"}
@@ -1,99 +1,249 @@
1
1
  import { APIResource } from "../core/resource.js";
2
- import * as CreatorsAPI from "./creators.js";
3
2
  import { APIPromise } from "../core/api-promise.js";
4
3
  import { RequestOptions } from "../internal/request-options.js";
4
+ /**
5
+ * Access individual social media profiles with detailed metrics, growth data, and activity information. Profiles are platform-specific accounts linked to creators.
6
+ */
5
7
  export declare class Profiles extends APIResource {
6
8
  /**
7
- * **DISCOVERY ENDPOINT**: Look up social account data when you know a username and
8
- * platform.
9
+ * Retrieve detailed profile data including metrics, growth statistics, and
10
+ * activity information from our database.
9
11
  *
10
- * **🎯 When to use this endpoint:**
12
+ * **Response includes:**
11
13
  *
12
- * - You have a username and platform (e.g., @fitness_guru on Instagram)
13
- * - You want to discover who a social account belongs to
14
- * - You need to look up specific social accounts by username
15
- * - You want to get social account metrics for known usernames
14
+ * - Basic info (bio, avatar, verification status)
15
+ * - Performance metrics (followers, engagement rate, avg likes/comments)
16
+ * - Growth data (30-day follower growth, monthly rate)
17
+ * - Activity data (last post date, posting frequency)
16
18
  *
17
- * **❌ When NOT to use this endpoint:**
19
+ * **Pricing**: 0.1 credits per request ($0.001)
18
20
  *
19
- * - ❌ You already have a creator UUID (use `/v1/creators/{id}/profiles` instead)
20
- * - ❌ You want to get all accounts for a creator (use
21
- * `/v1/creators/{id}/profiles` instead)
22
- *
23
- * **📊 Response Format:** Returns `SocialAccountLite` or `SocialAccountDetailed`
24
- * objects with identical structure to `/v1/creators/{id}/profiles`. Both endpoints
25
- * return the same data structure for consistency.
26
- *
27
- * **🔗 Data Relationships:**
28
- *
29
- * - Use the `creator_profile_id` field to fetch creator-level data via
30
- * `/v1/creators`
31
- * - Use the `creator_profile_id` to get all social accounts via
32
- * `/v1/creators/{id}/profiles`
33
- * - Creator-level data includes: name, bio, avatar, ai_one_line_bio
34
- * - Social account data includes: follower_count, engagement_rate, verified,
35
- * platform-specific metrics
36
- *
37
- * **🔄 Typical Workflow:**
21
+ * @example
22
+ * ```ts
23
+ * const profile = await client.profiles.get(
24
+ * 'fitness_coach_jane',
25
+ * { platform: 'instagram' },
26
+ * );
27
+ * ```
28
+ */
29
+ get(username: string, params: ProfileGetParams, options?: RequestOptions): APIPromise<ProfileGetResponse>;
30
+ /**
31
+ * Look up multiple profiles in a single request. Efficiently retrieve data for up
32
+ * to 100 profiles at once.
38
33
  *
39
- * 1. **Discovery**: Call `/v1/profiles` with username+platform → get social
40
- * account data + creator_profile_id
41
- * 2. **Creator Data**: Call `/v1/creators` with creator_profile_id → get
42
- * creator-level data
43
- * 3. **All Accounts**: Call `/v1/creators/{id}/profiles` with creator_profile_id →
44
- * get all social accounts for that creator
34
+ * **Response includes:**
45
35
  *
46
- * **⚙️ Parameters:**
36
+ * - `found`: Array of profiles that exist in our database
37
+ * - `not_found`: Array of profiles that weren't found (consider live scraping
38
+ * these)
47
39
  *
48
- * - `mode`: `lite` (default) or `detailed` - controls response detail level
49
- * - `platforms`: Array of platform names to filter results (e.g.,
50
- * `["instagram", "tiktok"]`) **Pricing**: 0.01-0.05 credits per profile
51
- * (lite/detailed mode)
40
+ * **Pricing**: 0.1 credits per profile ($0.001)
52
41
  *
53
42
  * @example
54
43
  * ```ts
55
44
  * const response = await client.profiles.lookup({
56
45
  * profiles: [
57
- * { platform: 'instagram', username: 'fitness_guru' },
58
- * { platform: 'tiktok', username: 'fitness_guru' },
46
+ * {
47
+ * platform: 'instagram',
48
+ * username: 'fitness_coach_jane',
49
+ * },
59
50
  * ],
60
51
  * });
61
52
  * ```
62
53
  */
63
54
  lookup(body: ProfileLookupParams, options?: RequestOptions): APIPromise<ProfileLookupResponse>;
64
55
  }
65
- export interface CreatorReferenceByHandle {
56
+ /**
57
+ * Profile activity information
58
+ */
59
+ export interface ProfileActivity {
60
+ /**
61
+ * Timestamp of last post
62
+ */
63
+ last_post_at: string | null;
64
+ }
65
+ /**
66
+ * Profile growth statistics
67
+ */
68
+ export interface ProfileGrowth {
69
+ /**
70
+ * Follower growth percentage over 30 days (e.g. 2.5 means +2.5%)
71
+ */
72
+ followers_30d_pct: number;
73
+ }
74
+ /**
75
+ * Profile performance metrics
76
+ */
77
+ export interface ProfileMetrics {
78
+ /**
79
+ * Average comments on recent posts
80
+ */
81
+ avg_comments_recent: number;
82
+ /**
83
+ * Average likes on recent posts
84
+ */
85
+ avg_likes_recent: number;
86
+ /**
87
+ * Average views on recent posts (for video content)
88
+ */
89
+ avg_views_recent: number | null;
90
+ /**
91
+ * Engagement rate as a percentage (e.g. 3.5 means 3.5%)
92
+ */
93
+ engagement_rate: number;
94
+ /**
95
+ * Follower count
96
+ */
97
+ followers: number;
98
+ /**
99
+ * Following count
100
+ */
101
+ following: number;
102
+ /**
103
+ * Total post count
104
+ */
105
+ posts: number;
106
+ /**
107
+ * Posts in the last 30 days
108
+ */
109
+ posts_last_30d: number;
110
+ /**
111
+ * Average posts per week
112
+ */
113
+ posts_per_week: number;
114
+ }
115
+ /**
116
+ * Full profile details
117
+ */
118
+ export interface ProfileResponseData {
119
+ /**
120
+ * Profile unique identifier
121
+ */
122
+ id: string;
123
+ /**
124
+ * Profile activity information
125
+ */
126
+ activity: ProfileActivity;
127
+ /**
128
+ * Avatar URL
129
+ */
130
+ avatar_url: string | null;
66
131
  /**
67
- * Social platform where the creator exists
132
+ * Profile bio
68
133
  */
69
- platform: 'instagram' | 'tiktok';
134
+ bio: string | null;
70
135
  /**
71
- * Username on the platform
136
+ * Account category
137
+ */
138
+ category: string | null;
139
+ /**
140
+ * Creator unique identifier
141
+ */
142
+ creator_id: string;
143
+ /**
144
+ * Last data refresh timestamp
145
+ */
146
+ data_updated_at: string | null;
147
+ /**
148
+ * Display name
149
+ */
150
+ display_name: string | null;
151
+ /**
152
+ * External website URL from bio
153
+ */
154
+ external_url: string | null;
155
+ /**
156
+ * Profile growth statistics
157
+ */
158
+ growth: ProfileGrowth;
159
+ /**
160
+ * Whether this is a business account
161
+ */
162
+ is_business: boolean;
163
+ /**
164
+ * Whether the account is private
165
+ */
166
+ is_private: boolean;
167
+ /**
168
+ * Whether the account is verified
169
+ */
170
+ is_verified: boolean;
171
+ /**
172
+ * Profile performance metrics
173
+ */
174
+ metrics: ProfileMetrics;
175
+ /**
176
+ * Social media platform
177
+ */
178
+ platform: 'instagram';
179
+ /**
180
+ * Listed pronouns
181
+ */
182
+ pronouns: Array<string> | null;
183
+ /**
184
+ * Profile URL
185
+ */
186
+ url: string;
187
+ /**
188
+ * Profile username
72
189
  */
73
190
  username: string;
74
191
  }
192
+ export interface ProfileGetResponse {
193
+ /**
194
+ * Full profile details
195
+ */
196
+ data: ProfileResponseData;
197
+ /**
198
+ * Present when partial results were returned because profile metrics/data were
199
+ * skipped due to integrity issues.
200
+ */
201
+ warning?: string;
202
+ }
75
203
  export interface ProfileLookupResponse {
76
204
  /**
77
- * Array of social account objects. The structure depends on the `mode` parameter:
78
- *
79
- * - If `mode: "lite"`: Returns SocialAccountLite objects
80
- * - If `mode: "detailed"`: Returns SocialAccountDetailed objects with additional
81
- * fields
205
+ * Profiles that were found
82
206
  */
83
- profiles?: Array<CreatorsAPI.SocialAccountLite | CreatorsAPI.SocialAccountDetailed>;
207
+ data: Array<ProfileResponseData>;
208
+ /**
209
+ * Profiles that were not found
210
+ */
211
+ not_found: Array<ProfileLookupResponse.NotFound>;
84
212
  }
85
- export interface ProfileLookupParams {
86
- profiles: Array<CreatorReferenceByHandle>;
213
+ export declare namespace ProfileLookupResponse {
214
+ interface NotFound {
215
+ /**
216
+ * Social media platform
217
+ */
218
+ platform: 'instagram';
219
+ username: string;
220
+ }
221
+ }
222
+ export interface ProfileGetParams {
87
223
  /**
88
- * Response detail level - lite for basic fields, detailed for additional metrics
224
+ * Platform name
89
225
  */
90
- mode?: 'lite' | 'detailed';
226
+ platform: string;
227
+ }
228
+ export interface ProfileLookupParams {
91
229
  /**
92
- * Filter results to only include these platforms
230
+ * Profiles to lookup
93
231
  */
94
- platforms?: Array<'instagram' | 'tiktok'>;
232
+ profiles: Array<ProfileLookupParams.Profile>;
233
+ }
234
+ export declare namespace ProfileLookupParams {
235
+ interface Profile {
236
+ /**
237
+ * Social media platform
238
+ */
239
+ platform: 'instagram';
240
+ /**
241
+ * Username to lookup
242
+ */
243
+ username: string;
244
+ }
95
245
  }
96
246
  export declare namespace Profiles {
97
- export { type CreatorReferenceByHandle as CreatorReferenceByHandle, type ProfileLookupResponse as ProfileLookupResponse, type ProfileLookupParams as ProfileLookupParams, };
247
+ export { type ProfileActivity as ProfileActivity, type ProfileGrowth as ProfileGrowth, type ProfileMetrics as ProfileMetrics, type ProfileResponseData as ProfileResponseData, type ProfileGetResponse as ProfileGetResponse, type ProfileLookupResponse as ProfileLookupResponse, type ProfileGetParams as ProfileGetParams, type ProfileLookupParams as ProfileLookupParams, };
98
248
  }
99
249
  //# sourceMappingURL=profiles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"profiles.d.ts","sourceRoot":"","sources":["../src/resources/profiles.ts"],"names":[],"mappings":"OAEO,EAAE,WAAW,EAAE;OACf,KAAK,WAAW;OAChB,EAAE,UAAU,EAAE;OACd,EAAE,cAAc,EAAE;AAEzB,qBAAa,QAAS,SAAQ,WAAW;IACvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwDG;IACH,MAAM,CAAC,IAAI,EAAE,mBAAmB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,qBAAqB,CAAC;CAG/F;AAED,MAAM,WAAW,wBAAwB;IACvC;;OAEG;IACH,QAAQ,EAAE,WAAW,GAAG,QAAQ,CAAC;IAEjC;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,qBAAqB;IACpC;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,iBAAiB,GAAG,WAAW,CAAC,qBAAqB,CAAC,CAAC;CACrF;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAE1C;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;IAE3B;;OAEG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC,WAAW,GAAG,QAAQ,CAAC,CAAC;CAC3C;AAED,MAAM,CAAC,OAAO,WAAW,QAAQ,CAAC;IAChC,OAAO,EACL,KAAK,wBAAwB,IAAI,wBAAwB,EACzD,KAAK,qBAAqB,IAAI,qBAAqB,EACnD,KAAK,mBAAmB,IAAI,mBAAmB,GAChD,CAAC;CACH"}
1
+ {"version":3,"file":"profiles.d.ts","sourceRoot":"","sources":["../src/resources/profiles.ts"],"names":[],"mappings":"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"}