exa-js
Version:
Exa SDK for Node.js and the browser
1,221 lines (1,218 loc) • 127 kB
text/typescript
import { ZodSchema } from 'zod';
/**
* Base client for Websets API
*/
/**
* Type for API query parameters
*/
type QueryParams$1 = Record<string, string | number | boolean | string[] | undefined>;
/**
* Type for API request body
*/
interface RequestBody$1 {
[key: string]: unknown;
}
/**
* Common pagination parameters
*/
interface PaginationParams {
/**
* Cursor for pagination
*/
cursor?: string;
/**
* Maximum number of items per page
*/
limit?: number;
}
/**
* Base client class for all Websets-related API clients
*/
declare class WebsetsBaseClient {
protected client: Exa;
/**
* Initialize a new Websets base client
* @param client The Exa client instance
*/
constructor(client: Exa);
/**
* Make a request to the Websets API
* @param endpoint The endpoint path
* @param method The HTTP method
* @param data Optional request body data
* @param params Optional query parameters
* @returns The response JSON
* @throws ExaError with API error details if the request fails
*/
protected request<T = unknown>(endpoint: string, method?: string, data?: RequestBody$1, params?: QueryParams$1): Promise<T>;
/**
* Helper to build pagination parameters
* @param pagination The pagination parameters
* @returns QueryParams object with pagination parameters
*/
protected buildPaginationParams(pagination?: PaginationParams): QueryParams$1;
}
interface components$1 {
schemas: {
/** Article */
ArticleEntity: {
/**
* @default article
* @constant
*/
type: "article";
};
/** Company */
CompanyEntity: {
/**
* @default company
* @constant
*/
type: "company";
};
CreateCriterionParameters: {
/** @description The description of the criterion */
description: string;
};
CreateEnrichmentParameters: {
/** @description Provide a description of the enrichment task you want to perform to each Webset Item. */
description: string;
/**
* @description Format of the enrichment response.
*
* We automatically select the best format based on the description. If you want to explicitly specify the format, you can do so here.
* @enum {string}
*/
format?: CreateEnrichmentParametersFormat;
/** @description Set of key-value pairs you want to associate with this object. */
metadata?: {
[key: string]: string;
};
/** @description When the format is options, the different options for the enrichment agent to choose from. */
options?: {
/** @description The label of the option */
label: string;
}[];
};
CreateImportParameters: {
/** @description The number of records to import */
count: number;
/** @description When format is `csv`, these are the specific import parameters. */
csv?: {
/** @description Column containing the key identifier for the entity (e.g. URL, Name, etc.). If not provided, we will try to infer it from the file. */
identifier?: number;
};
/** @description What type of entity the import contains (e.g. People, Companies, etc.), and thus should be attempted to be resolved as. */
entity: components$1["schemas"]["CompanyEntity"] | components$1["schemas"]["PersonEntity"] | components$1["schemas"]["ArticleEntity"] | components$1["schemas"]["ResearchPaperEntity"] | components$1["schemas"]["CustomEntity"];
/**
* @description When the import is in CSV format, we expect a column containing the key identifier for the entity - for now URL. If not provided, import will fail to be processed.
* @enum {string}
*/
format: CreateImportParametersFormat;
/** @description Set of key-value pairs you want to associate with this object. */
metadata?: {
[key: string]: string;
};
/** @description The size of the file in megabytes. Maximum size is 50 MB. */
size: number;
/** @description The title of the import */
title?: string;
};
/** @description The response to a successful import. Includes the upload URL and the upload valid until date. */
CreateImportResponse: {
/** @description The number of entities in the import */
count: number;
/**
* Format: date-time
* @description When the import was created
*/
createdAt: string;
/** @description The type of entity the import contains. */
entity: components$1["schemas"]["Entity"];
/**
* Format: date-time
* @description When the import failed
*/
failedAt: string | null;
/** @description A human readable message of the import failure */
failedMessage: string | null;
/**
* @description The reason the import failed
* @enum {string|null}
*/
failedReason: CreateImportResponseFailedReason;
/**
* @description The format of the import.
* @enum {string}
*/
format: CreateImportResponseFormat;
/** @description The unique identifier for the Import */
id: string;
/** @description Set of key-value pairs you want to associate with this object. */
metadata: {
[key: string]: string;
};
/**
* @description The type of object
* @enum {string}
*/
object: CreateImportResponseObject;
/**
* @description The status of the Import
* @enum {string}
*/
status: CreateImportResponseStatus;
/** @description The title of the import */
title: string;
/**
* Format: date-time
* @description When the import was last updated
*/
updatedAt: string;
/** @description The URL to upload the file to */
uploadUrl: string;
/** @description The date and time until the upload URL is valid. The upload URL will be valid for 1 hour. */
uploadValidUntil: string;
};
CreateMonitorParameters: {
/** @description Behavior to perform when monitor runs */
behavior: {
/** @description Specify the search parameters for the Monitor.
*
* By default, the search parameters (query, entity and criteria) from the last search are used when no parameters are provided. */
config: {
/**
* @description The behaviour of the Search when it is added to a Webset.
* @default append
* @enum {string}
*/
behavior: WebsetSearchBehavior;
/** @description The maximum number of results to find */
count: number;
/** @description The criteria to search for. By default, the criteria from the last search is used. */
criteria?: {
description: string;
}[];
/**
* Entity
* @description The entity to search for. By default, the entity from the last search/import is used.
*/
entity?: components$1["schemas"]["Entity"];
/** @description The query to search for. By default, the query from the last search is used. */
query?: string;
};
/**
* @default search
* @constant
*/
type: "search";
};
/** @description How often the monitor will run */
cadence: {
/** @description Cron expression for monitor cadence (must be a valid Unix cron with 5 fields). The schedule must trigger at most once per day. */
cron: string;
/**
* @description IANA timezone (e.g., "America/New_York")
* @default Etc/UTC
*/
timezone: string;
};
metadata?: {
[key: string]: string;
};
/** @description The id of the Webset */
websetId: string;
};
CreateWebhookParameters: {
/** @description The events to trigger the webhook */
events: EventType[];
/** @description Set of key-value pairs you want to associate with this object. */
metadata?: {
[key: string]: string;
};
/**
* Format: uri
* @description The URL to send the webhook to
*/
url: string;
};
CreateWebsetParameters: {
/** @description Add enrichments to extract additional data from found items.
*
* Enrichments automatically search for and extract specific information (like contact details, funding data, employee counts, etc.) from each item added to your Webset. */
enrichments?: components$1["schemas"]["CreateEnrichmentParameters"][];
/** @description The external identifier for the webset.
*
* You can use this to reference the Webset by your own internal identifiers. */
externalId?: string;
/** @description Import data from existing Websets and Imports into this Webset. */
import?: {
/** @description The ID of the source to search. */
id: string;
/** @enum {string} */
source: CreateWebsetParametersImportSource;
}[];
/** @description Set of key-value pairs you want to associate with this object. */
metadata?: {
[key: string]: string;
};
/** @description Create initial search for the Webset. */
search?: {
/**
* @description Number of Items the Webset will attempt to find.
*
* The actual number of Items found may be less than this number depending on the search complexity.
* @default 10
*/
count: number;
/** @description Criteria every item is evaluated against.
*
* It's not required to provide your own criteria, we automatically detect the criteria from all the information provided in the query. Only use this when you need more fine control. */
criteria?: components$1["schemas"]["CreateCriterionParameters"][];
/** @description Entity the Webset will return results for.
*
* It is not required to provide it, we automatically detect the entity from all the information provided in the query. Only use this when you need more fine control. */
entity?: components$1["schemas"]["Entity"];
/** @description Sources (existing imports or websets) to exclude from search results. Any results found within these sources will be omitted to prevent finding them during search. */
exclude?: {
/** @description The ID of the source to exclude. */
id: string;
/** @enum {string} */
source: CreateWebsetParametersSearchExcludeSource;
}[];
/** @description Natural language search query describing what you are looking for.
*
* Be specific and descriptive about your requirements, characteristics, and any constraints that help narrow down the results.
*
* Any URLs provided will be crawled and used as additional context for the search. */
query: string;
/** @description Whether to provide an estimate of how many total relevant results could exist for this search.
* Result of the analysis will be available in the `recall` field within the search request. */
recall?: boolean;
/** @description Limit the search to specific sources (existing imports or websets). Any results found within these sources matching the search criteria will be included in the Webset. */
scope?: {
/** @description The ID of the source to search. */
id: string;
relationship?: {
/** @description What the relationship of the entities you hope to find is relative to the entities contained in the provided source. */
definition: string;
limit: number;
};
/** @enum {string} */
source: CreateWebsetSearchParametersScopeSource;
}[];
};
};
CreateWebsetSearchParameters: {
/**
* @description How this search interacts with existing items in the Webset:
*
* - **override**: Replace existing items and evaluate all items against new criteria
* - **append**: Add new items to existing ones, keeping items that match the new criteria
* @default override
*/
behavior: components$1["schemas"]["WebsetSearchBehavior"];
/** @description Number of Items the Search will attempt to find.
*
* The actual number of Items found may be less than this number depending on the query complexity. */
count: number;
/** @description Criteria every item is evaluated against.
*
* It's not required to provide your own criteria, we automatically detect the criteria from all the information provided in the query. Only use this when you need more fine control. */
criteria?: components$1["schemas"]["CreateCriterionParameters"][];
/** @description Entity the search will return results for.
*
* It is not required to provide it, we automatically detect the entity from all the information provided in the query. Only use this when you need more fine control. */
entity?: components$1["schemas"]["Entity"];
/** @description Sources (existing imports or websets) to exclude from search results. Any results found within these sources will be omitted to prevent finding them during search. */
exclude?: {
/** @description The ID of the source to exclude. */
id: string;
/** @enum {string} */
source: CreateWebsetSearchParametersExcludeSource;
}[];
/** @description Set of key-value pairs you want to associate with this object. */
metadata?: {
[key: string]: string;
};
/** @description Natural language search query describing what you are looking for.
*
* Be specific and descriptive about your requirements, characteristics, and any constraints that help narrow down the results.
*
* Any URLs provided will be crawled and used as additional context for the search. */
query: string;
/** @description Whether to provide an estimate of how many total relevant results could exist for this search.
* Result of the analysis will be available in the `recall` field within the search request. */
recall?: boolean;
/** @description Limit the search to specific sources (existing imports). Any results found within these sources matching the search criteria will be included in the Webset. */
scope?: {
/** @description The ID of the source to search. */
id: string;
relationship?: {
/** @description What the relationship of the entities you hope to find is relative to the entities contained in the provided source. */
definition: string;
limit: number;
};
/** @enum {string} */
source: CreateWebsetSearchParametersScopeSource;
}[];
};
/** Custom */
CustomEntity: {
description: string;
/**
* @default custom
* @constant
*/
type: "custom";
};
EnrichmentResult: {
/** @description The id of the Enrichment that generated the result */
enrichmentId: string;
format: components$1["schemas"]["WebsetEnrichmentFormat"];
/**
* @default enrichment_result
* @constant
*/
object: "enrichment_result";
/** @description The reasoning for the result when an Agent is used. */
reasoning: string | null;
/** @description The references used to generate the result. */
references: {
/** @description The relevant snippet of the reference content */
snippet: string | null;
/** @description The title of the reference */
title: string | null;
/**
* Format: uri
* @description The URL of the reference
*/
url: string;
}[];
/** @description The result of the enrichment. */
result: string[] | null;
/**
* @description The status of the enrichment result.
* @enum {string}
*/
status: EnrichmentResultStatus;
};
Entity: components$1["schemas"]["CompanyEntity"] | components$1["schemas"]["PersonEntity"] | components$1["schemas"]["ArticleEntity"] | components$1["schemas"]["ResearchPaperEntity"] | components$1["schemas"]["CustomEntity"];
/** Event */
Event: {
/**
* Format: date-time
* @description The date and time the event was created
*/
createdAt: string;
data: components$1["schemas"]["Webset"];
/** @description The unique identifier for the event */
id: string;
/**
* @default event
* @constant
*/
object: "event";
/**
* @default webset.created
* @constant
*/
type: "webset.created";
} | {
/**
* Format: date-time
* @description The date and time the event was created
*/
createdAt: string;
data: components$1["schemas"]["Webset"];
/** @description The unique identifier for the event */
id: string;
/**
* @default event
* @constant
*/
object: "event";
/**
* @default webset.deleted
* @constant
*/
type: "webset.deleted";
} | {
/**
* Format: date-time
* @description The date and time the event was created
*/
createdAt: string;
data: components$1["schemas"]["Webset"];
/** @description The unique identifier for the event */
id: string;
/**
* @default event
* @constant
*/
object: "event";
/**
* @default webset.idle
* @constant
*/
type: "webset.idle";
} | {
/**
* Format: date-time
* @description The date and time the event was created
*/
createdAt: string;
data: components$1["schemas"]["Webset"];
/** @description The unique identifier for the event */
id: string;
/**
* @default event
* @constant
*/
object: "event";
/**
* @default webset.paused
* @constant
*/
type: "webset.paused";
} | {
/**
* Format: date-time
* @description The date and time the event was created
*/
createdAt: string;
data: components$1["schemas"]["WebsetItem"];
/** @description The unique identifier for the event */
id: string;
/**
* @default event
* @constant
*/
object: "event";
/**
* @default webset.item.created
* @constant
*/
type: "webset.item.created";
} | {
/**
* Format: date-time
* @description The date and time the event was created
*/
createdAt: string;
data: components$1["schemas"]["WebsetItem"];
/** @description The unique identifier for the event */
id: string;
/**
* @default event
* @constant
*/
object: "event";
/**
* @default webset.item.enriched
* @constant
*/
type: "webset.item.enriched";
} | {
/**
* Format: date-time
* @description The date and time the event was created
*/
createdAt: string;
data: components$1["schemas"]["WebsetSearch"];
/** @description The unique identifier for the event */
id: string;
/**
* @default event
* @constant
*/
object: "event";
/**
* @default webset.search.created
* @constant
*/
type: "webset.search.created";
} | {
/**
* Format: date-time
* @description The date and time the event was created
*/
createdAt: string;
data: components$1["schemas"]["WebsetSearch"];
/** @description The unique identifier for the event */
id: string;
/**
* @default event
* @constant
*/
object: "event";
/**
* @default webset.search.updated
* @constant
*/
type: "webset.search.updated";
} | {
/**
* Format: date-time
* @description The date and time the event was created
*/
createdAt: string;
data: components$1["schemas"]["WebsetSearch"];
/** @description The unique identifier for the event */
id: string;
/**
* @default event
* @constant
*/
object: "event";
/**
* @default webset.search.canceled
* @constant
*/
type: "webset.search.canceled";
} | {
/**
* Format: date-time
* @description The date and time the event was created
*/
createdAt: string;
data: components$1["schemas"]["WebsetSearch"];
/** @description The unique identifier for the event */
id: string;
/**
* @default event
* @constant
*/
object: "event";
/**
* @default webset.search.completed
* @constant
*/
type: "webset.search.completed";
};
/** @enum {string} */
EventType: EventType;
GetWebsetResponse: components$1["schemas"]["Webset"] & {
/** @description When expand query parameter contains `items`, this will contain the items in the webset */
items?: components$1["schemas"]["WebsetItem"][];
};
Import: {
/** @description The number of entities in the import */
count: number;
/**
* Format: date-time
* @description When the import was created
*/
createdAt: string;
/** @description The type of entity the import contains. */
entity: components$1["schemas"]["Entity"];
/**
* Format: date-time
* @description When the import failed
*/
failedAt: string | null;
/** @description A human readable message of the import failure */
failedMessage: string | null;
/**
* @description The reason the import failed
* @enum {string|null}
*/
failedReason: ImportFailedReason;
/**
* @description The format of the import.
* @enum {string}
*/
format: ImportFormat;
/** @description The unique identifier for the Import */
id: string;
/** @description Set of key-value pairs you want to associate with this object. */
metadata: {
[key: string]: string;
};
/**
* @description The type of object
* @enum {string}
*/
object: ImportObject;
/**
* @description The status of the Import
* @enum {string}
*/
status: ImportStatus;
/** @description The title of the import */
title: string;
/**
* Format: date-time
* @description When the import was last updated
*/
updatedAt: string;
};
ListEventsResponse: {
/** @description The list of events */
data: components$1["schemas"]["Event"][];
/** @description Whether there are more results to paginate through */
hasMore: boolean;
/** @description The cursor to paginate through the next set of results */
nextCursor: string | null;
};
ListImportsResponse: {
/** @description The list of imports */
data: components$1["schemas"]["Import"][];
/** @description Whether there are more results to paginate through */
hasMore: boolean;
/** @description The cursor to paginate through the next set of results */
nextCursor: string | null;
};
ListMonitorRunsResponse: {
/** @description The list of monitor runs */
data: components$1["schemas"]["MonitorRun"][];
/** @description Whether there are more results to paginate through */
hasMore: boolean;
/** @description The cursor to paginate through the next set of results */
nextCursor: string | null;
};
ListMonitorsResponse: {
/** @description The list of monitors */
data: components$1["schemas"]["Monitor"][];
/** @description Whether there are more results to paginate through */
hasMore: boolean;
/** @description The cursor to paginate through the next set of results */
nextCursor: string | null;
};
ListWebhookAttemptsResponse: {
/** @description The list of webhook attempts */
data: components$1["schemas"]["WebhookAttempt"][];
/** @description Whether there are more results to paginate through */
hasMore: boolean;
/** @description The cursor to paginate through the next set of results */
nextCursor: string | null;
};
ListWebhooksResponse: {
/** @description The list of webhooks */
data: components$1["schemas"]["Webhook"][];
/** @description Whether there are more results to paginate through */
hasMore: boolean;
/** @description The cursor to paginate through the next set of results */
nextCursor: string | null;
};
ListWebsetItemResponse: {
/** @description The list of webset items */
data: components$1["schemas"]["WebsetItem"][];
/** @description Whether there are more Items to paginate through */
hasMore: boolean;
/** @description The cursor to paginate through the next set of Items */
nextCursor: string | null;
};
ListWebsetsResponse: {
/** @description The list of websets */
data: components$1["schemas"]["Webset"][];
/** @description Whether there are more results to paginate through */
hasMore: boolean;
/** @description The cursor to paginate through the next set of results */
nextCursor: string | null;
};
Monitor: {
/** @description Behavior to perform when monitor runs */
behavior: {
/** @description Specify the search parameters for the Monitor.
*
* By default, the search parameters (query, entity and criteria) from the last search are used when no parameters are provided. */
config: {
/**
* @description The behaviour of the Search when it is added to a Webset.
* @default append
* @enum {string}
*/
behavior: WebsetSearchBehavior;
/** @description The maximum number of results to find */
count: number;
/** @description The criteria to search for. By default, the criteria from the last search is used. */
criteria?: {
description: string;
}[];
/**
* Entity
* @description The entity to search for. By default, the entity from the last search/import is used.
*/
entity?: components$1["schemas"]["Entity"];
/** @description The query to search for. By default, the query from the last search is used. */
query?: string;
};
/**
* @default search
* @constant
*/
type: "search";
};
/** @description How often the monitor will run */
cadence: {
/** @description Cron expression for monitor cadence (must be a valid Unix cron with 5 fields). The schedule must trigger at most once per day. */
cron: string;
/**
* @description IANA timezone (e.g., "America/New_York")
* @default Etc/UTC
*/
timezone: string;
};
/**
* Format: date-time
* @description When the monitor was created
*/
createdAt: string;
/** @description The unique identifier for the Monitor */
id: string;
/**
* MonitorRun
* @description The last run of the monitor
*/
lastRun: components$1["schemas"]["MonitorRun"];
/** @description Set of key-value pairs you want to associate with this object. */
metadata: {
[key: string]: string;
};
/**
* Format: date-time
* @description Date and time when the next run will occur in
*/
nextRunAt: string | null;
/**
* @description The type of object
* @enum {string}
*/
object: MonitorObject;
/**
* @description The status of the Monitor
* @enum {string}
*/
status: MonitorStatus;
/**
* Format: date-time
* @description When the monitor was last updated
*/
updatedAt: string;
/** @description The id of the Webset the Monitor belongs to */
websetId: string;
};
MonitorBehavior: {
/** @description Specify the search parameters for the Monitor.
*
* By default, the search parameters (query, entity and criteria) from the last search are used when no parameters are provided. */
config: {
/**
* @description The behaviour of the Search when it is added to a Webset.
* @default append
* @enum {string}
*/
behavior: WebsetSearchBehavior;
/** @description The maximum number of results to find */
count: number;
/** @description The criteria to search for. By default, the criteria from the last search is used. */
criteria?: {
description: string;
}[];
/**
* Entity
* @description The entity to search for. By default, the entity from the last search/import is used.
*/
entity?: components$1["schemas"]["Entity"];
/** @description The query to search for. By default, the query from the last search is used. */
query?: string;
};
/**
* @default search
* @constant
*/
type: "search";
};
MonitorCadence: {
/** @description Cron expression for monitor cadence (must be a valid Unix cron with 5 fields). The schedule must trigger at most once per day. */
cron: string;
/**
* @description IANA timezone (e.g., "America/New_York")
* @default Etc/UTC
*/
timezone: string;
};
MonitorRun: {
/**
* Format: date-time
* @description When the run was canceled
*/
canceledAt: string | null;
/**
* Format: date-time
* @description When the run completed
*/
completedAt: string | null;
/**
* Format: date-time
* @description When the run was created
*/
createdAt: string;
/**
* Format: date-time
* @description When the run failed
*/
failedAt: string | null;
/** @description The reason the run failed */
failedReason: string | null;
/** @description The unique identifier for the Monitor Run */
id: string;
/** @description The monitor that the run is associated with */
monitorId: string;
/**
* @description The type of object
* @enum {string}
*/
object: MonitorRunObject;
/**
* @description The status of the Monitor Run
* @enum {string}
*/
status: MonitorRunStatus;
/**
* @description The type of the Monitor Run
* @enum {string}
*/
type: MonitorRunType;
/**
* Format: date-time
* @description When the run was last updated
*/
updatedAt: string;
};
/** Person */
PersonEntity: {
/**
* @default person
* @constant
*/
type: "person";
};
PreviewWebsetParameters: {
/** @description Entity used to inform the decomposition.
*
* It is not required to provide it, we automatically detect the entity from all the information provided in the query. Only use this when you need more fine control. */
entity?: components$1["schemas"]["Entity"];
/** @description Natural language search query describing what you are looking for.
*
* Be specific and descriptive about your requirements, characteristics, and any constraints that help narrow down the results. */
query: string;
};
PreviewWebsetResponse: {
/** @description Detected enrichments from the query. */
enrichments: {
/** @description Description of the enrichment. */
description: string;
/**
* @description Format of the enrichment.
* @enum {string}
*/
format: PreviewWebsetResponseEnrichmentsFormat;
/** @description When format is options, the options detected from the query. */
options?: {
/** @description Label of the option. */
label: string;
}[];
}[];
search: {
/** @description Detected criteria from the query. */
criteria: {
description: string;
}[];
/** @description Detected entity from the query. */
entity: components$1["schemas"]["CompanyEntity"] | components$1["schemas"]["PersonEntity"] | components$1["schemas"]["ArticleEntity"] | components$1["schemas"]["ResearchPaperEntity"] | components$1["schemas"]["CustomEntity"];
};
};
/** Research Paper */
ResearchPaperEntity: {
/**
* @default research_paper
* @constant
*/
type: "research_paper";
};
UpdateImport: {
metadata?: {
[key: string]: string;
};
title?: string;
};
UpdateMonitor: {
behavior?: components$1["schemas"]["MonitorBehavior"];
cadence?: components$1["schemas"]["MonitorCadence"];
metadata?: {
[key: string]: string;
};
/**
* @description The status of the monitor.
* @enum {string}
*/
status?: UpdateMonitorStatus;
};
UpdateWebhookParameters: {
/** @description The events to trigger the webhook */
events?: EventType[];
/** @description Set of key-value pairs you want to associate with this object. */
metadata?: {
[key: string]: string;
};
/**
* Format: uri
* @description The URL to send the webhook to
*/
url?: string;
};
UpdateWebsetRequest: {
/** @description Set of key-value pairs you want to associate with this object. */
metadata?: {
[key: string]: string;
} | null;
};
Webhook: {
/**
* Format: date-time
* @description The date and time the webhook was created
*/
createdAt: string;
/** @description The events to trigger the webhook */
events: EventType[];
/** @description The unique identifier for the webhook */
id: string;
/**
* @description The metadata of the webhook
* @default {}
*/
metadata: {
[key: string]: string;
};
/**
* @default webhook
* @constant
*/
object: "webhook";
/** @description The secret to verify the webhook signature. Only returned on Webhook creation. */
secret: string | null;
/**
* WebhookStatus
* @description The status of the webhook
* @enum {string}
*/
status: WebhookStatus;
/**
* Format: date-time
* @description The date and time the webhook was last updated
*/
updatedAt: string;
/**
* Format: uri
* @description The URL to send the webhook to
*/
url: string;
};
WebhookAttempt: {
/** @description The attempt number of the webhook */
attempt: number;
/**
* Format: date-time
* @description The date and time the webhook attempt was made
*/
attemptedAt: string;
/** @description The unique identifier for the event */
eventId: string;
/**
* @description The type of event
* @enum {string}
*/
eventType: WebhookAttemptEventType;
/** @description The unique identifier for the webhook attempt */
id: string;
/**
* @default webhook_attempt
* @constant
*/
object: "webhook_attempt";
/** @description The body of the response */
responseBody: string | null;
/** @description The headers of the response */
responseHeaders: {
[key: string]: string;
};
/** @description The status code of the response */
responseStatusCode: number;
/** @description Whether the attempt was successful */
successful: boolean;
/** @description The URL that was used during the attempt */
url: string;
/** @description The unique identifier for the webhook */
webhookId: string;
};
Webset: {
/**
* Format: date-time
* @description The date and time the webset was created
*/
createdAt: string;
/** @description The Enrichments to apply to the Webset Items. */
enrichments: components$1["schemas"]["WebsetEnrichment"][];
/** @description The external identifier for the webset */
externalId: string | null;
/** @description The unique identifier for the webset */
id: string;
/** @description Imports that have been performed on the webset. */
imports: components$1["schemas"]["Import"][];
/**
* @description Set of key-value pairs you want to associate with this object.
* @default {}
*/
metadata: {
[key: string]: string;
};
/** @description The Monitors for the Webset. */
monitors: components$1["schemas"]["Monitor"][];
/**
* @default webset
* @constant
*/
object: "webset";
/** @description The searches that have been performed on the webset. */
searches: components$1["schemas"]["WebsetSearch"][];
/**
* WebsetStatus
* @description The status of the webset
* @enum {string}
*/
status: WebsetStatus;
/** @description The Streams for the Webset. */
streams: unknown[];
/** @description The title of the webset */
title: string | null;
/**
* Format: date-time
* @description The date and time the webset was updated
*/
updatedAt: string;
};
WebsetEnrichment: {
/**
* Format: date-time
* @description The date and time the enrichment was created
*/
createdAt: string;
/** @description The description of the enrichment task provided during the creation of the enrichment. */
description: string;
/** @description The format of the enrichment response. */
format: components$1["schemas"]["WebsetEnrichmentFormat"];
/** @description The unique identifier for the enrichment */
id: string;
/** @description The instructions for the enrichment Agent.
*
* This will be automatically generated based on the description and format. */
instructions: string | null;
/**
* @description The metadata of the enrichment
* @default {}
*/
metadata: {
[key: string]: string;
};
/**
* @default webset_enrichment
* @constant
*/
object: "webset_enrichment";
/**
* WebsetEnrichmentOptions
* @description When the format is options, the different options for the enrichment agent to choose from.
*/
options: {
/** @description The label of the option */
label: string;
}[] | null;
/**
* WebsetEnrichmentStatus
* @description The status of the enrichment
* @enum {string}
*/
status: WebsetEnrichmentStatus;
/** @description The title of the enrichment.
*
* This will be automatically generated based on the description and format. */
title: string | null;
/**
* Format: date-time
* @description The date and time the enrichment was updated
*/
updatedAt: string;
/** @description The unique identifier for the Webset this enrichment belongs to. */
websetId: string;
};
/** @enum {string} */
WebsetEnrichmentFormat: WebsetEnrichmentFormat;
WebsetItem: {
/**
* Format: date-time
* @description The date and time the item was created
*/
createdAt: string;
/** @description The enrichments results of the Webset item */
enrichments: components$1["schemas"]["EnrichmentResult"][] | null;
/** @description The criteria evaluations of the item */
evaluations: components$1["schemas"]["WebsetItemEvaluation"][];
/** @description The unique identifier for the Webset Item */
id: string;
/**
* @default webset_item
* @constant
*/
object: "webset_item";
/** @description The properties of the Item */
properties: components$1["schemas"]["WebsetItemPersonProperties"] | components$1["schemas"]["WebsetItemCompanyProperties"] | components$1["schemas"]["WebsetItemArticleProperties"] | components$1["schemas"]["WebsetItemResearchPaperProperties"] | components$1["schemas"]["WebsetItemCustomProperties"];
/**
* @description The source of the Item
* @enum {string}
*/
source: WebsetItemSource;
/** @description The unique identifier for the source */
sourceId: string;
/**
* Format: date-time
* @description The date and time the item was last updated
*/
updatedAt: string;
/** @description The unique identifier for the Webset this Item belongs to. */
websetId: string;
};
WebsetItemArticleProperties: {
/** WebsetItemArticlePropertiesFields */
article: {
/** @description The author(s) of the article */
author: string | null;
/** @description The date and time the article was published */
publishedAt: string | null;
/** @description The title of the article */
title: string | null;
};
/** @description The text content for the article */
content: string | null;
/** @description Short description of the relevance of the article */
description: string;
/**
* @default article
* @constant
*/
type: "article";
/**
* Format: uri
* @description The URL of the article
*/
url: string;
};
WebsetItemCompanyProperties: {
/** WebsetItemCompanyPropertiesFields */
company: {
/** @description A short description of the company */
about: string | null;
/** @description The number of employees of the company */
employees: number | null;
/** @