@disconnectme/lightbox-sdk 0.1.0 → 0.1.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.
package/dist/index.cjs CHANGED
@@ -100,7 +100,7 @@ var LightboxClient = class {
100
100
  */
101
101
  apps = {
102
102
  /**
103
- * Search for iOS apps by framework, permission, genre, developer, name, or bundle.
103
+ * Search for iOS apps by framework, entitlement, usage_key, genre, developer, name, or bundle.
104
104
  * Requires at least one filter parameter.
105
105
  */
106
106
  search: (params) => {
@@ -109,7 +109,7 @@ var LightboxClient = class {
109
109
  /**
110
110
  * Get detailed profile for a specific app bundle.
111
111
  * Use `version` param to get a specific version, defaults to latest.
112
- * Use `include` to specify which fields to include (frameworks, permissions, privacy, urls, files, all).
112
+ * Use `include` to specify which fields to include (frameworks, entitlements, privacy, urls, files, all).
113
113
  */
114
114
  get: (bundle, params) => {
115
115
  const queryParams = {};
@@ -161,15 +161,60 @@ var LightboxClient = class {
161
161
  return this.request("/v1/apps/ios/metadata/frameworks", params);
162
162
  },
163
163
  /**
164
- * Get available permissions (iOS entitlements) with app counts.
164
+ * Get available iOS entitlements with app counts.
165
165
  * Supports pagination and search.
166
- * @param params.search - Filter by permission key (case-insensitive contains)
166
+ * @param params.search - Filter by entitlement key (case-insensitive contains)
167
167
  * @param params.sort - Sort by 'popularity' (default) or 'name'
168
168
  * @param params.limit - Results per page (default 100, max 1000)
169
169
  * @param params.offset - Pagination offset
170
170
  */
171
- permissions: (params) => {
172
- return this.request("/v1/apps/ios/metadata/permissions", params);
171
+ entitlements: (params) => {
172
+ return this.request("/v1/apps/ios/metadata/entitlements", params);
173
+ }
174
+ }
175
+ };
176
+ /**
177
+ * Web traffic API methods
178
+ */
179
+ web = {
180
+ sites: {
181
+ /**
182
+ * Get HTTP requests observed when visiting a specific site.
183
+ */
184
+ requests: (site, params) => {
185
+ return this.request(
186
+ `/v1/web/sites/${encodeURIComponent(site)}/requests`,
187
+ params
188
+ );
189
+ },
190
+ /**
191
+ * Get cookies observed when visiting a specific site.
192
+ */
193
+ cookies: (site, params) => {
194
+ return this.request(
195
+ `/v1/web/sites/${encodeURIComponent(site)}/cookies`,
196
+ params
197
+ );
198
+ }
199
+ },
200
+ domains: {
201
+ /**
202
+ * Get HTTP requests made to a specific destination domain.
203
+ */
204
+ requests: (domain, params) => {
205
+ return this.request(
206
+ `/v1/web/domains/${encodeURIComponent(domain)}/requests`,
207
+ params
208
+ );
209
+ },
210
+ /**
211
+ * Get cookies set by a specific domain.
212
+ */
213
+ cookies: (domain, params) => {
214
+ return this.request(
215
+ `/v1/web/domains/${encodeURIComponent(domain)}/cookies`,
216
+ params
217
+ );
173
218
  }
174
219
  }
175
220
  };
package/dist/index.d.cts CHANGED
@@ -77,7 +77,10 @@ interface AppSummary {
77
77
  rating: number | null;
78
78
  app_store_url: string | null;
79
79
  frameworks: string[];
80
- permissions: string[];
80
+ entitlements: string[];
81
+ icon: string | null;
82
+ size: number | null;
83
+ min_os_version: string | null;
81
84
  created_at: string;
82
85
  }
83
86
  interface AppProfile {
@@ -90,9 +93,14 @@ interface AppProfile {
90
93
  review_count: number | null;
91
94
  rating: number | null;
92
95
  app_store_url: string | null;
96
+ icon: string | null;
97
+ size: number | null;
98
+ min_os_version: string | null;
99
+ screenshots: string[];
100
+ usage_descriptions: Record<string, string>;
93
101
  created_at: string;
94
102
  frameworks?: string[];
95
- permissions?: string[];
103
+ entitlements?: string[];
96
104
  privacy?: unknown[];
97
105
  urls?: unknown[];
98
106
  files?: unknown[];
@@ -143,6 +151,42 @@ interface AppFilesData {
143
151
  };
144
152
  files: AppFile[];
145
153
  }
154
+ type ScopeMode = "auto" | "root" | "host";
155
+ interface WebRequest {
156
+ id: string;
157
+ site_etld1: string;
158
+ request_etld1: string;
159
+ url: string;
160
+ method: string;
161
+ resource_type: string | null;
162
+ timestamp: string;
163
+ is_third_party: boolean;
164
+ }
165
+ interface WebRequestCollectionData {
166
+ type: "http_request_collection";
167
+ summary: {
168
+ returned: number;
169
+ };
170
+ requests: WebRequest[];
171
+ }
172
+ interface WebCookie {
173
+ id: string;
174
+ site_etld1: string;
175
+ cookie_etld1: string;
176
+ name: string;
177
+ value?: string | null;
178
+ is_secure: boolean;
179
+ is_http_only: boolean;
180
+ same_site?: string | null;
181
+ timestamp: string;
182
+ }
183
+ interface WebCookieCollectionData {
184
+ type: "cookie_collection";
185
+ summary: {
186
+ returned: number;
187
+ };
188
+ cookies: WebCookie[];
189
+ }
146
190
  interface PaginationParams {
147
191
  limit?: number;
148
192
  offset?: number;
@@ -159,7 +203,8 @@ interface FileSearchParams extends PaginationParams {
159
203
  }
160
204
  interface AppSearchParams extends PaginationParams {
161
205
  framework?: string;
162
- permission?: string;
206
+ entitlement?: string;
207
+ usage_key?: string;
163
208
  genre?: string;
164
209
  developer?: string;
165
210
  name?: string;
@@ -177,6 +222,34 @@ interface AppFilesParams extends PaginationParams {
177
222
  min_size?: number;
178
223
  max_size?: number;
179
224
  }
225
+ interface WebSiteRequestsParams extends PaginationParams {
226
+ site_scope?: ScopeMode;
227
+ request_domain?: string;
228
+ domain_scope?: ScopeMode;
229
+ resource_type?: string[];
230
+ method?: string[];
231
+ third_party_only?: boolean;
232
+ first_party_only?: boolean;
233
+ }
234
+ interface WebDomainRequestsParams extends PaginationParams {
235
+ domain_scope?: ScopeMode;
236
+ site?: string;
237
+ site_scope?: ScopeMode;
238
+ resource_type?: string[];
239
+ method?: string[];
240
+ }
241
+ interface WebSiteCookiesParams extends PaginationParams {
242
+ site_scope?: ScopeMode;
243
+ cookie_domain?: string;
244
+ domain_scope?: ScopeMode;
245
+ include?: string[];
246
+ }
247
+ interface WebDomainCookiesParams extends PaginationParams {
248
+ domain_scope?: ScopeMode;
249
+ site?: string;
250
+ site_scope?: ScopeMode;
251
+ include?: string[];
252
+ }
180
253
  interface GenreItem {
181
254
  name: string;
182
255
  app_count: number;
@@ -185,7 +258,7 @@ interface FrameworkItem {
185
258
  name: string;
186
259
  app_count: number;
187
260
  }
188
- interface PermissionItem {
261
+ interface EntitlementItem {
189
262
  key: string;
190
263
  app_count: number;
191
264
  }
@@ -199,10 +272,10 @@ interface FrameworkListData {
199
272
  total: number;
200
273
  frameworks: FrameworkItem[];
201
274
  }
202
- interface PermissionListData {
203
- type: "permission_list";
275
+ interface EntitlementListData {
276
+ type: "entitlement_list";
204
277
  total: number;
205
- permissions: PermissionItem[];
278
+ entitlements: EntitlementItem[];
206
279
  }
207
280
  interface MetadataSearchParams extends PaginationParams {
208
281
  search?: string;
@@ -216,7 +289,9 @@ type AppVersionsResponse = APIResponse<AppVersionsData>;
216
289
  type AppFilesResponse = APIResponse<AppFilesData>;
217
290
  type GenreListResponse = APIResponse<GenreListData>;
218
291
  type FrameworkListResponse = APIResponse<FrameworkListData>;
219
- type PermissionListResponse = APIResponse<PermissionListData>;
292
+ type EntitlementListResponse = APIResponse<EntitlementListData>;
293
+ type WebRequestCollectionResponse = APIResponse<WebRequestCollectionData>;
294
+ type WebCookieCollectionResponse = APIResponse<WebCookieCollectionData>;
220
295
 
221
296
  interface LightboxClientConfig {
222
297
  apiKey: string;
@@ -255,14 +330,14 @@ declare class LightboxClient {
255
330
  */
256
331
  apps: {
257
332
  /**
258
- * Search for iOS apps by framework, permission, genre, developer, name, or bundle.
333
+ * Search for iOS apps by framework, entitlement, usage_key, genre, developer, name, or bundle.
259
334
  * Requires at least one filter parameter.
260
335
  */
261
336
  search: (params: AppSearchParams) => Promise<AppSearchResponse>;
262
337
  /**
263
338
  * Get detailed profile for a specific app bundle.
264
339
  * Use `version` param to get a specific version, defaults to latest.
265
- * Use `include` to specify which fields to include (frameworks, permissions, privacy, urls, files, all).
340
+ * Use `include` to specify which fields to include (frameworks, entitlements, privacy, urls, files, all).
266
341
  */
267
342
  get: (bundle: string, params?: AppGetParams) => Promise<AppProfileResponse>;
268
343
  /**
@@ -292,16 +367,41 @@ declare class LightboxClient {
292
367
  */
293
368
  frameworks: (params?: MetadataSearchParams) => Promise<FrameworkListResponse>;
294
369
  /**
295
- * Get available permissions (iOS entitlements) with app counts.
370
+ * Get available iOS entitlements with app counts.
296
371
  * Supports pagination and search.
297
- * @param params.search - Filter by permission key (case-insensitive contains)
372
+ * @param params.search - Filter by entitlement key (case-insensitive contains)
298
373
  * @param params.sort - Sort by 'popularity' (default) or 'name'
299
374
  * @param params.limit - Results per page (default 100, max 1000)
300
375
  * @param params.offset - Pagination offset
301
376
  */
302
- permissions: (params?: MetadataSearchParams) => Promise<PermissionListResponse>;
377
+ entitlements: (params?: MetadataSearchParams) => Promise<EntitlementListResponse>;
378
+ };
379
+ };
380
+ /**
381
+ * Web traffic API methods
382
+ */
383
+ web: {
384
+ sites: {
385
+ /**
386
+ * Get HTTP requests observed when visiting a specific site.
387
+ */
388
+ requests: (site: string, params?: WebSiteRequestsParams) => Promise<WebRequestCollectionResponse>;
389
+ /**
390
+ * Get cookies observed when visiting a specific site.
391
+ */
392
+ cookies: (site: string, params?: WebSiteCookiesParams) => Promise<WebCookieCollectionResponse>;
393
+ };
394
+ domains: {
395
+ /**
396
+ * Get HTTP requests made to a specific destination domain.
397
+ */
398
+ requests: (domain: string, params?: WebDomainRequestsParams) => Promise<WebRequestCollectionResponse>;
399
+ /**
400
+ * Get cookies set by a specific domain.
401
+ */
402
+ cookies: (domain: string, params?: WebDomainCookiesParams) => Promise<WebCookieCollectionResponse>;
303
403
  };
304
404
  };
305
405
  }
306
406
 
307
- export { type APIError, type APIMetadata, type APIResponse, type AppFile, type AppFilesData, type AppFilesParams, type AppFilesResponse, type AppGetParams, type AppProfile, type AppProfileData, type AppProfileResponse, type AppSearchData, type AppSearchParams, type AppSearchResponse, type AppSummary, type AppVersion, type AppVersionsData, type AppVersionsResponse, type FileHashData, type FileHashResponse, type FileHashResult, type FileSearchData, type FileSearchParams, type FileSearchResponse, type FileSearchResult, type FrameworkItem, type FrameworkListData, type FrameworkListResponse, type GenreItem, type GenreListData, type GenreListResponse, LightboxClient, type LightboxClientConfig, LightboxError, type MetadataSearchParams, type Pagination, type PaginationParams, type PermissionItem, type PermissionListData, type PermissionListResponse };
407
+ export { type APIError, type APIMetadata, type APIResponse, type AppFile, type AppFilesData, type AppFilesParams, type AppFilesResponse, type AppGetParams, type AppProfile, type AppProfileData, type AppProfileResponse, type AppSearchData, type AppSearchParams, type AppSearchResponse, type AppSummary, type AppVersion, type AppVersionsData, type AppVersionsResponse, type EntitlementItem, type EntitlementListData, type EntitlementListResponse, type FileHashData, type FileHashResponse, type FileHashResult, type FileSearchData, type FileSearchParams, type FileSearchResponse, type FileSearchResult, type FrameworkItem, type FrameworkListData, type FrameworkListResponse, type GenreItem, type GenreListData, type GenreListResponse, LightboxClient, type LightboxClientConfig, LightboxError, type MetadataSearchParams, type Pagination, type PaginationParams, type ScopeMode, type WebCookie, type WebCookieCollectionData, type WebCookieCollectionResponse, type WebDomainCookiesParams, type WebDomainRequestsParams, type WebRequest, type WebRequestCollectionData, type WebRequestCollectionResponse, type WebSiteCookiesParams, type WebSiteRequestsParams };
package/dist/index.d.ts CHANGED
@@ -77,7 +77,10 @@ interface AppSummary {
77
77
  rating: number | null;
78
78
  app_store_url: string | null;
79
79
  frameworks: string[];
80
- permissions: string[];
80
+ entitlements: string[];
81
+ icon: string | null;
82
+ size: number | null;
83
+ min_os_version: string | null;
81
84
  created_at: string;
82
85
  }
83
86
  interface AppProfile {
@@ -90,9 +93,14 @@ interface AppProfile {
90
93
  review_count: number | null;
91
94
  rating: number | null;
92
95
  app_store_url: string | null;
96
+ icon: string | null;
97
+ size: number | null;
98
+ min_os_version: string | null;
99
+ screenshots: string[];
100
+ usage_descriptions: Record<string, string>;
93
101
  created_at: string;
94
102
  frameworks?: string[];
95
- permissions?: string[];
103
+ entitlements?: string[];
96
104
  privacy?: unknown[];
97
105
  urls?: unknown[];
98
106
  files?: unknown[];
@@ -143,6 +151,42 @@ interface AppFilesData {
143
151
  };
144
152
  files: AppFile[];
145
153
  }
154
+ type ScopeMode = "auto" | "root" | "host";
155
+ interface WebRequest {
156
+ id: string;
157
+ site_etld1: string;
158
+ request_etld1: string;
159
+ url: string;
160
+ method: string;
161
+ resource_type: string | null;
162
+ timestamp: string;
163
+ is_third_party: boolean;
164
+ }
165
+ interface WebRequestCollectionData {
166
+ type: "http_request_collection";
167
+ summary: {
168
+ returned: number;
169
+ };
170
+ requests: WebRequest[];
171
+ }
172
+ interface WebCookie {
173
+ id: string;
174
+ site_etld1: string;
175
+ cookie_etld1: string;
176
+ name: string;
177
+ value?: string | null;
178
+ is_secure: boolean;
179
+ is_http_only: boolean;
180
+ same_site?: string | null;
181
+ timestamp: string;
182
+ }
183
+ interface WebCookieCollectionData {
184
+ type: "cookie_collection";
185
+ summary: {
186
+ returned: number;
187
+ };
188
+ cookies: WebCookie[];
189
+ }
146
190
  interface PaginationParams {
147
191
  limit?: number;
148
192
  offset?: number;
@@ -159,7 +203,8 @@ interface FileSearchParams extends PaginationParams {
159
203
  }
160
204
  interface AppSearchParams extends PaginationParams {
161
205
  framework?: string;
162
- permission?: string;
206
+ entitlement?: string;
207
+ usage_key?: string;
163
208
  genre?: string;
164
209
  developer?: string;
165
210
  name?: string;
@@ -177,6 +222,34 @@ interface AppFilesParams extends PaginationParams {
177
222
  min_size?: number;
178
223
  max_size?: number;
179
224
  }
225
+ interface WebSiteRequestsParams extends PaginationParams {
226
+ site_scope?: ScopeMode;
227
+ request_domain?: string;
228
+ domain_scope?: ScopeMode;
229
+ resource_type?: string[];
230
+ method?: string[];
231
+ third_party_only?: boolean;
232
+ first_party_only?: boolean;
233
+ }
234
+ interface WebDomainRequestsParams extends PaginationParams {
235
+ domain_scope?: ScopeMode;
236
+ site?: string;
237
+ site_scope?: ScopeMode;
238
+ resource_type?: string[];
239
+ method?: string[];
240
+ }
241
+ interface WebSiteCookiesParams extends PaginationParams {
242
+ site_scope?: ScopeMode;
243
+ cookie_domain?: string;
244
+ domain_scope?: ScopeMode;
245
+ include?: string[];
246
+ }
247
+ interface WebDomainCookiesParams extends PaginationParams {
248
+ domain_scope?: ScopeMode;
249
+ site?: string;
250
+ site_scope?: ScopeMode;
251
+ include?: string[];
252
+ }
180
253
  interface GenreItem {
181
254
  name: string;
182
255
  app_count: number;
@@ -185,7 +258,7 @@ interface FrameworkItem {
185
258
  name: string;
186
259
  app_count: number;
187
260
  }
188
- interface PermissionItem {
261
+ interface EntitlementItem {
189
262
  key: string;
190
263
  app_count: number;
191
264
  }
@@ -199,10 +272,10 @@ interface FrameworkListData {
199
272
  total: number;
200
273
  frameworks: FrameworkItem[];
201
274
  }
202
- interface PermissionListData {
203
- type: "permission_list";
275
+ interface EntitlementListData {
276
+ type: "entitlement_list";
204
277
  total: number;
205
- permissions: PermissionItem[];
278
+ entitlements: EntitlementItem[];
206
279
  }
207
280
  interface MetadataSearchParams extends PaginationParams {
208
281
  search?: string;
@@ -216,7 +289,9 @@ type AppVersionsResponse = APIResponse<AppVersionsData>;
216
289
  type AppFilesResponse = APIResponse<AppFilesData>;
217
290
  type GenreListResponse = APIResponse<GenreListData>;
218
291
  type FrameworkListResponse = APIResponse<FrameworkListData>;
219
- type PermissionListResponse = APIResponse<PermissionListData>;
292
+ type EntitlementListResponse = APIResponse<EntitlementListData>;
293
+ type WebRequestCollectionResponse = APIResponse<WebRequestCollectionData>;
294
+ type WebCookieCollectionResponse = APIResponse<WebCookieCollectionData>;
220
295
 
221
296
  interface LightboxClientConfig {
222
297
  apiKey: string;
@@ -255,14 +330,14 @@ declare class LightboxClient {
255
330
  */
256
331
  apps: {
257
332
  /**
258
- * Search for iOS apps by framework, permission, genre, developer, name, or bundle.
333
+ * Search for iOS apps by framework, entitlement, usage_key, genre, developer, name, or bundle.
259
334
  * Requires at least one filter parameter.
260
335
  */
261
336
  search: (params: AppSearchParams) => Promise<AppSearchResponse>;
262
337
  /**
263
338
  * Get detailed profile for a specific app bundle.
264
339
  * Use `version` param to get a specific version, defaults to latest.
265
- * Use `include` to specify which fields to include (frameworks, permissions, privacy, urls, files, all).
340
+ * Use `include` to specify which fields to include (frameworks, entitlements, privacy, urls, files, all).
266
341
  */
267
342
  get: (bundle: string, params?: AppGetParams) => Promise<AppProfileResponse>;
268
343
  /**
@@ -292,16 +367,41 @@ declare class LightboxClient {
292
367
  */
293
368
  frameworks: (params?: MetadataSearchParams) => Promise<FrameworkListResponse>;
294
369
  /**
295
- * Get available permissions (iOS entitlements) with app counts.
370
+ * Get available iOS entitlements with app counts.
296
371
  * Supports pagination and search.
297
- * @param params.search - Filter by permission key (case-insensitive contains)
372
+ * @param params.search - Filter by entitlement key (case-insensitive contains)
298
373
  * @param params.sort - Sort by 'popularity' (default) or 'name'
299
374
  * @param params.limit - Results per page (default 100, max 1000)
300
375
  * @param params.offset - Pagination offset
301
376
  */
302
- permissions: (params?: MetadataSearchParams) => Promise<PermissionListResponse>;
377
+ entitlements: (params?: MetadataSearchParams) => Promise<EntitlementListResponse>;
378
+ };
379
+ };
380
+ /**
381
+ * Web traffic API methods
382
+ */
383
+ web: {
384
+ sites: {
385
+ /**
386
+ * Get HTTP requests observed when visiting a specific site.
387
+ */
388
+ requests: (site: string, params?: WebSiteRequestsParams) => Promise<WebRequestCollectionResponse>;
389
+ /**
390
+ * Get cookies observed when visiting a specific site.
391
+ */
392
+ cookies: (site: string, params?: WebSiteCookiesParams) => Promise<WebCookieCollectionResponse>;
393
+ };
394
+ domains: {
395
+ /**
396
+ * Get HTTP requests made to a specific destination domain.
397
+ */
398
+ requests: (domain: string, params?: WebDomainRequestsParams) => Promise<WebRequestCollectionResponse>;
399
+ /**
400
+ * Get cookies set by a specific domain.
401
+ */
402
+ cookies: (domain: string, params?: WebDomainCookiesParams) => Promise<WebCookieCollectionResponse>;
303
403
  };
304
404
  };
305
405
  }
306
406
 
307
- export { type APIError, type APIMetadata, type APIResponse, type AppFile, type AppFilesData, type AppFilesParams, type AppFilesResponse, type AppGetParams, type AppProfile, type AppProfileData, type AppProfileResponse, type AppSearchData, type AppSearchParams, type AppSearchResponse, type AppSummary, type AppVersion, type AppVersionsData, type AppVersionsResponse, type FileHashData, type FileHashResponse, type FileHashResult, type FileSearchData, type FileSearchParams, type FileSearchResponse, type FileSearchResult, type FrameworkItem, type FrameworkListData, type FrameworkListResponse, type GenreItem, type GenreListData, type GenreListResponse, LightboxClient, type LightboxClientConfig, LightboxError, type MetadataSearchParams, type Pagination, type PaginationParams, type PermissionItem, type PermissionListData, type PermissionListResponse };
407
+ export { type APIError, type APIMetadata, type APIResponse, type AppFile, type AppFilesData, type AppFilesParams, type AppFilesResponse, type AppGetParams, type AppProfile, type AppProfileData, type AppProfileResponse, type AppSearchData, type AppSearchParams, type AppSearchResponse, type AppSummary, type AppVersion, type AppVersionsData, type AppVersionsResponse, type EntitlementItem, type EntitlementListData, type EntitlementListResponse, type FileHashData, type FileHashResponse, type FileHashResult, type FileSearchData, type FileSearchParams, type FileSearchResponse, type FileSearchResult, type FrameworkItem, type FrameworkListData, type FrameworkListResponse, type GenreItem, type GenreListData, type GenreListResponse, LightboxClient, type LightboxClientConfig, LightboxError, type MetadataSearchParams, type Pagination, type PaginationParams, type ScopeMode, type WebCookie, type WebCookieCollectionData, type WebCookieCollectionResponse, type WebDomainCookiesParams, type WebDomainRequestsParams, type WebRequest, type WebRequestCollectionData, type WebRequestCollectionResponse, type WebSiteCookiesParams, type WebSiteRequestsParams };
package/dist/index.js CHANGED
@@ -73,7 +73,7 @@ var LightboxClient = class {
73
73
  */
74
74
  apps = {
75
75
  /**
76
- * Search for iOS apps by framework, permission, genre, developer, name, or bundle.
76
+ * Search for iOS apps by framework, entitlement, usage_key, genre, developer, name, or bundle.
77
77
  * Requires at least one filter parameter.
78
78
  */
79
79
  search: (params) => {
@@ -82,7 +82,7 @@ var LightboxClient = class {
82
82
  /**
83
83
  * Get detailed profile for a specific app bundle.
84
84
  * Use `version` param to get a specific version, defaults to latest.
85
- * Use `include` to specify which fields to include (frameworks, permissions, privacy, urls, files, all).
85
+ * Use `include` to specify which fields to include (frameworks, entitlements, privacy, urls, files, all).
86
86
  */
87
87
  get: (bundle, params) => {
88
88
  const queryParams = {};
@@ -134,15 +134,60 @@ var LightboxClient = class {
134
134
  return this.request("/v1/apps/ios/metadata/frameworks", params);
135
135
  },
136
136
  /**
137
- * Get available permissions (iOS entitlements) with app counts.
137
+ * Get available iOS entitlements with app counts.
138
138
  * Supports pagination and search.
139
- * @param params.search - Filter by permission key (case-insensitive contains)
139
+ * @param params.search - Filter by entitlement key (case-insensitive contains)
140
140
  * @param params.sort - Sort by 'popularity' (default) or 'name'
141
141
  * @param params.limit - Results per page (default 100, max 1000)
142
142
  * @param params.offset - Pagination offset
143
143
  */
144
- permissions: (params) => {
145
- return this.request("/v1/apps/ios/metadata/permissions", params);
144
+ entitlements: (params) => {
145
+ return this.request("/v1/apps/ios/metadata/entitlements", params);
146
+ }
147
+ }
148
+ };
149
+ /**
150
+ * Web traffic API methods
151
+ */
152
+ web = {
153
+ sites: {
154
+ /**
155
+ * Get HTTP requests observed when visiting a specific site.
156
+ */
157
+ requests: (site, params) => {
158
+ return this.request(
159
+ `/v1/web/sites/${encodeURIComponent(site)}/requests`,
160
+ params
161
+ );
162
+ },
163
+ /**
164
+ * Get cookies observed when visiting a specific site.
165
+ */
166
+ cookies: (site, params) => {
167
+ return this.request(
168
+ `/v1/web/sites/${encodeURIComponent(site)}/cookies`,
169
+ params
170
+ );
171
+ }
172
+ },
173
+ domains: {
174
+ /**
175
+ * Get HTTP requests made to a specific destination domain.
176
+ */
177
+ requests: (domain, params) => {
178
+ return this.request(
179
+ `/v1/web/domains/${encodeURIComponent(domain)}/requests`,
180
+ params
181
+ );
182
+ },
183
+ /**
184
+ * Get cookies set by a specific domain.
185
+ */
186
+ cookies: (domain, params) => {
187
+ return this.request(
188
+ `/v1/web/domains/${encodeURIComponent(domain)}/cookies`,
189
+ params
190
+ );
146
191
  }
147
192
  }
148
193
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@disconnectme/lightbox-sdk",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "TypeScript SDK for the Lightbox Data API by Disconnect",
5
5
  "type": "module",
6
6
  "engines": {