UNPKG

cloudflare

Version:

The official TypeScript library for the Cloudflare API

197 lines • 6.64 kB
import { APIResource } from "../../../../../core/resource.mjs"; import * as TagsAPI from "./tags.mjs"; import { BaseTags, TagListParams, TagListResponse, Tags } from "./tags.mjs"; import { APIPromise } from "../../../../../core/api-promise.mjs"; import { RequestOptions } from "../../../../../internal/request-options.mjs"; export declare class BaseByDataset extends APIResource { static readonly _key: readonly ['cloudforceOne', 'threatEvents', 'indicators', 'byDataset']; /** * This method is deprecated. Please use /events/indicators to retrieve a paginated * list of indicators. * * @deprecated Use indicators.list instead (GET /accounts/{account_id}/cloudforce-one/events/indicators). */ list(datasetID: string, params: ByDatasetListParams, options?: RequestOptions): APIPromise<ByDatasetListResponse>; /** * Retrieves a specific indicator by its UUID. * * @example * ```ts * const byDataset = * await client.cloudforceOne.threatEvents.indicators.byDataset.get( * 'indicator_id', * { account_id: 'account_id', dataset_id: 'dataset_id' }, * ); * ``` */ get(indicatorID: string, params: ByDatasetGetParams, options?: RequestOptions): APIPromise<ByDatasetGetResponse>; } export declare class ByDataset extends BaseByDataset { tags: TagsAPI.Tags; } export interface ByDatasetListResponse { indicators: Array<ByDatasetListResponse.Indicator>; pagination: ByDatasetListResponse.Pagination; } export declare namespace ByDatasetListResponse { interface Indicator { createdAt: string; indicatorType: string; /** * RSS article sources from which this indicator was extracted. */ sources: Array<Indicator.Source>; updatedAt: string; uuid: string; value: string; /** * The dataset ID this indicator belongs to. Included in list responses. */ datasetId?: string; /** * Related events, capped by `relatedEventsLimit` (default 2). Check * `relatedEventsHasMore` to detect a capped list; pass `relatedEventsLimit=-1` to * retrieve all of them. */ relatedEvents?: Array<Indicator.RelatedEvent>; /** * True when this indicator appears in more events than `relatedEvents` contains * because `relatedEventsLimit` capped the list. Pass `relatedEventsLimit=-1` to * retrieve every related event. */ relatedEventsHasMore?: boolean; tags?: Array<Indicator.Tag>; /** * Traffic Light Protocol designation. UPPERCASE. Possible values: CLEAR, GREEN, * AMBER, AMBER-STRICT, RED, PURPLE. Null when not set. */ tlp?: string | null; } namespace Indicator { interface Source { resourceId: string; resourceType: 'article'; system: 'threat-signals'; /** * Threat Signals article title; null for historical provenance without a stored * title. */ title: string | null; } interface RelatedEvent { datasetId: string; eventId: string; /** * ISO 8601 date of the related event. Null for legacy relationships created before * event-date tracking was added. */ eventDate?: string | null; } interface Tag { /** * The UUID of the tag category, or null when the tag is uncategorized. */ categoryId?: string | null; categoryName?: string; uuid?: string; value?: string; } } interface Pagination { page: number; pageSize: number; totalCount: number; totalPages: number; } } export interface ByDatasetGetResponse { createdAt: string; indicatorType: string; updatedAt: string; uuid: string; value: string; /** * The dataset ID this indicator belongs to. Included in list responses. */ datasetId?: string; /** * Related events, capped by `relatedEventsLimit` (default 2). Check * `relatedEventsHasMore` to detect a capped list; pass `relatedEventsLimit=-1` to * retrieve all of them. */ relatedEvents?: Array<ByDatasetGetResponse.RelatedEvent>; /** * True when this indicator appears in more events than `relatedEvents` contains * because `relatedEventsLimit` capped the list. Pass `relatedEventsLimit=-1` to * retrieve every related event. */ relatedEventsHasMore?: boolean; tags?: Array<ByDatasetGetResponse.Tag>; /** * Traffic Light Protocol designation. UPPERCASE. Possible values: CLEAR, GREEN, * AMBER, AMBER-STRICT, RED, PURPLE. Null when not set. */ tlp?: string | null; } export declare namespace ByDatasetGetResponse { interface RelatedEvent { datasetId: string; eventId: string; /** * ISO 8601 date of the related event. Null for legacy relationships created before * event-date tracking was added. */ eventDate?: string | null; } interface Tag { /** * The UUID of the tag category, or null when the tag is uncategorized. */ categoryId?: string | null; categoryName?: string; uuid?: string; value?: string; } } export interface ByDatasetListParams { /** * Path param: Account ID. */ account_id: string; /** * Query param */ indicatorType?: string; /** * Query param: Filter by indicator value (substring match) */ name?: string; /** * Query param */ page?: number; /** * Query param */ pageSize?: number; /** * Query param: Filter indicators by related event UUID(s). Multiple UUIDs can be * provided by repeating the parameter. */ relatedEvent?: Array<string>; } export interface ByDatasetGetParams { /** * Account ID. */ account_id: string; /** * Dataset ID. */ dataset_id: string; } export declare namespace ByDataset { export { type ByDatasetListResponse as ByDatasetListResponse, type ByDatasetGetResponse as ByDatasetGetResponse, type ByDatasetListParams as ByDatasetListParams, type ByDatasetGetParams as ByDatasetGetParams, }; export { Tags as Tags, BaseTags as BaseTags, type TagListResponse as TagListResponse, type TagListParams as TagListParams, }; } //# sourceMappingURL=by-dataset.d.mts.map