cloudflare
Version:
The official TypeScript library for the Cloudflare API
295 lines • 10.3 kB
TypeScript
import { APIResource } from "../../../core/resource.js";
import * as EmailsAPI from "./emails.js";
import { BaseEmails, EmailListParams, EmailListResponse, EmailListResponsesV4PagePagination, Emails } from "./emails.js";
import { APIPromise } from "../../../core/api-promise.js";
import { PagePromise, V4PagePagination, type V4PagePaginationParams } from "../../../core/pagination.js";
import { RequestOptions } from "../../../internal/request-options.js";
export declare class BaseSubmitted extends APIResource {
static readonly _key: readonly ['abuseReports', 'submitted'];
/**
* List abuse reports submitted by the account.
*
* @example
* ```ts
* // Automatically fetches more pages as needed.
* for await (const submittedListResponse of client.abuseReports.submitted.list(
* { account_id: '023e105f4ecef8ad9ca31a8372d0c353' },
* )) {
* // ...
* }
* ```
*/
list(params: SubmittedListParams, options?: RequestOptions): PagePromise<SubmittedListResponsesV4PagePagination, SubmittedListResponse>;
/**
* Retrieve a report submitted by the account.
*
* @example
* ```ts
* const submitted = await client.abuseReports.submitted.get(
* 'report_id',
* { account_id: '023e105f4ecef8ad9ca31a8372d0c353' },
* );
* ```
*/
get(reportID: string, params: SubmittedGetParams, options?: RequestOptions): APIPromise<SubmittedGetResponse>;
}
export declare class Submitted extends BaseSubmitted {
emails: EmailsAPI.Emails;
}
export type SubmittedListResponsesV4PagePagination = V4PagePagination<SubmittedListResponse>;
export interface SubmittedListResponse {
reports: Array<SubmittedListResponse.Report>;
}
export declare namespace SubmittedListResponse {
interface Report {
/**
* Public report code.
*/
id: string;
/**
* Time the report was submitted.
*/
cdate: string;
/**
* Submitter-safe reason for a denied report. Null when unavailable.
*/
denial_reason: 'unable_to_confirm' | 'incomplete_report' | 'not_on_cloudflare' | 'duplicate_report' | 'content_removed' | 'report_details_mismatch' | 'no_abuse_found' | 'missing_original_work' | 'direct_url_required' | 'wrong_report_category' | 'content_unavailable' | 'law_enforcement_referral_required' | 'domain_dispute_process_required' | null;
/**
* Domain identified in the report.
*/
domain: string;
/**
* Status visible to the account that submitted the report.
*/
status: 'submitted' | 'accepted' | 'denied';
/**
* The abuse report type
*/
type: 'PHISH' | 'GEN' | 'THREAT' | 'DMCA' | 'EMER' | 'TM' | 'REG_WHO' | 'NCSEI' | 'NETWORK';
/**
* Information about the submitter of the report.
*/
submitter?: Report.Submitter;
}
namespace Report {
/**
* Information about the submitter of the report.
*/
interface Submitter {
company?: string;
email?: string;
name?: string;
telephone?: string;
}
}
}
export interface SubmittedGetResponse {
/**
* Public report code.
*/
id: string;
/**
* Time the report was submitted.
*/
cdate: string;
/**
* Submitter-safe reason for a denied report. Null when unavailable.
*/
denial_reason: 'unable_to_confirm' | 'incomplete_report' | 'not_on_cloudflare' | 'duplicate_report' | 'content_removed' | 'report_details_mismatch' | 'no_abuse_found' | 'missing_original_work' | 'direct_url_required' | 'wrong_report_category' | 'content_unavailable' | 'law_enforcement_referral_required' | 'domain_dispute_process_required' | null;
/**
* Domain identified in the report.
*/
domain: string;
/**
* Whether the submitter provided the Digital Services Act attestation.
*/
dsa_attestation: boolean;
/**
* Status visible to the account that submitted the report.
*/
status: 'submitted' | 'accepted' | 'denied';
/**
* The abuse report type
*/
type: 'PHISH' | 'GEN' | 'THREAT' | 'DMCA' | 'EMER' | 'TM' | 'REG_WHO' | 'NCSEI' | 'NETWORK';
/**
* URLs supplied with the report.
*/
urls: Array<string>;
/**
* Authorized agent name supplied with the report.
*/
agent_name?: string;
/**
* Additional comments supplied with the report.
*/
comments?: string;
/**
* The string "on" when a court proceeding applies to the report; otherwise
* omitted.
*/
court?: string;
/**
* Destination IP addresses supplied with a network abuse report.
*/
destination_ips?: Array<string>;
/**
* Submitter preference for notifying the hosting provider.
*/
host_notification?: string;
/**
* Evidence supplied with the report.
*/
justification?: string;
/**
* Submitter preference for notifying NCMEC.
*/
ncmec_notification?: string;
/**
* Representation supplied for an NCSEI report.
*/
ncsei_subject_representation?: boolean;
/**
* Original work or targeted brand supplied with the report.
*/
original_work?: string;
/**
* Submitter preference for notifying the content owner.
*/
owner_notification?: string;
/**
* Ports and protocols supplied with a network abuse report.
*/
ports_protocols?: Array<string>;
/**
* RDP-mandated fields for registrar WHOIS data disclosure requests.
*/
reg_who_request?: SubmittedGetResponse.RegWhoRequest;
/**
* Country associated with the reported activity.
*/
reported_country?: string;
/**
* User agent associated with the reported activity.
*/
reported_user_agent?: string;
/**
* Source IP addresses supplied with a network abuse report.
*/
source_ips?: Array<string>;
/**
* Information about the submitter of the report.
*/
submitter?: SubmittedGetResponse.Submitter;
/**
* Additional abuse classifications supplied with the report.
*/
subtypes?: Array<string>;
/**
* Title supplied with the report.
*/
title?: string;
/**
* The string "on" when a UDRP proceeding applies to the report; otherwise omitted.
*/
udrp?: string;
/**
* The string "on" when a URS proceeding applies to the report; otherwise omitted.
*/
urs?: string;
}
export declare namespace SubmittedGetResponse {
/**
* RDP-mandated fields for registrar WHOIS data disclosure requests.
*/
interface RegWhoRequest {
/**
* Affirmation that the request is made in good faith per RDP 10.2.4. Must be true.
*/
reg_who_good_faith_affirmation: boolean;
/**
* Agreement to process data lawfully per RDP 10.2.5. Must be true.
*/
reg_who_lawful_processing_agreement: boolean;
/**
* Legal rights and rationale for the request per RDP 10.2.3. Required for all
* WHOIS requests.
*/
reg_who_legal_basis: string;
/**
* The type of WHOIS data request per RDP procedure.
*/
reg_who_request_type: 'disclosure' | 'invalid_whois';
/**
* The specific WHOIS data elements being requested per RDP 10.2.2. Required for
* all WHOIS requests.
*/
reg_who_requested_data_elements: Array<'registrant_name' | 'registrant_organization' | 'registrant_email' | 'registrant_phone' | 'registrant_address' | 'registrant_address_country' | 'registrant_address_postal_code' | 'admin_name' | 'admin_organization' | 'admin_email' | 'admin_phone' | 'admin_address' | 'tech_name' | 'tech_organization' | 'tech_email' | 'tech_phone' | 'tech_address'>;
/**
* Optional authorization statement or power of attorney per RDP 10.2.1.3.
*/
reg_who_authorization_statement?: string;
/**
* The nature of the requestor per RDP 10.2.1.2.
*/
reg_who_requestor_type?: 'government' | 'corporation' | 'individual';
}
/**
* Information about the submitter of the report.
*/
interface Submitter {
company?: string;
email?: string;
name?: string;
telephone?: string;
}
}
export interface SubmittedListParams extends V4PagePaginationParams {
/**
* Path param: Cloudflare Account ID
*/
account_id: string;
/**
* Query param: Filter by report code.
*/
id?: string;
/**
* Query param: Return reports submitted after this time.
*/
created_after?: string;
/**
* Query param: Return reports submitted before this time.
*/
created_before?: string;
/**
* Query param: Filter by reported domain. This parameter can be specified multiple
* times.
*/
domain?: Array<string>;
/**
* Query param: A property and direction to sort by (id, cdate, domain, type,
* status).
*/
sort?: string;
/**
* Query param: Filter by submitter-facing status. This parameter can be specified
* multiple times.
*/
status?: Array<'submitted' | 'accepted' | 'denied'>;
/**
* Query param: Filter by report type. This parameter can be specified multiple
* times.
*/
type?: Array<'PHISH' | 'GEN' | 'THREAT' | 'DMCA' | 'EMER' | 'TM' | 'REG_WHO' | 'NCSEI' | 'NETWORK'>;
}
export interface SubmittedGetParams {
/**
* Cloudflare Account ID
*/
account_id: string;
}
export declare namespace Submitted {
export { type SubmittedListResponse as SubmittedListResponse, type SubmittedGetResponse as SubmittedGetResponse, type SubmittedListResponsesV4PagePagination as SubmittedListResponsesV4PagePagination, type SubmittedListParams as SubmittedListParams, type SubmittedGetParams as SubmittedGetParams, };
export { Emails as Emails, BaseEmails as BaseEmails, type EmailListResponse as EmailListResponse, type EmailListResponsesV4PagePagination as EmailListResponsesV4PagePagination, type EmailListParams as EmailListParams, };
}
//# sourceMappingURL=submitted.d.ts.map