# Attack Surface Report # Issue Types ## Retrieves Security Center Issues Types `client.intel.attackSurfaceReport.issueTypes.get(IssueTypeGetParamsparams, RequestOptionsoptions?): SinglePage` **get** `/accounts/{account_id}/intel/attack-surface-report/issue-types` Lists all available issue types in Security Center, describing categories of security issues. ### Parameters - `params: IssueTypeGetParams` - `account_id: string` Identifier. ### Returns - `IssueTypeGetResponse = string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); // Automatically fetches more pages as needed. for await (const issueTypeGetResponse of client.intel.attackSurfaceReport.issueTypes.get({ account_id: '023e105f4ecef8ad9ca31a8372d0c353', })) { console.log(issueTypeGetResponse); } ``` #### Response ```json { "errors": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "messages": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "success": true, "result": [ "string" ] } ``` ## Domain Types ### Issue Type Get Response - `IssueTypeGetResponse = string` # Issues ## Retrieves Security Center Issues `client.intel.attackSurfaceReport.issues.list(IssueListParamsparams, RequestOptionsoptions?): V4PagePagination` **get** `/accounts/{account_id}/intel/attack-surface-report/issues` Lists all Security Center issues for the account, showing active security problems requiring attention. ### Parameters - `params: IssueListParams` - `account_id: string` Path param: Identifier. - `dismissed?: boolean` Query param - `issue_class?: Array` Query param - `issueClassNeq?: Array` Query param - `issue_type?: Array` Query param - `"compliance_violation"` - `"email_security"` - `"exposed_infrastructure"` - `"insecure_configuration"` - `"weak_authentication"` - `"configuration_suggestion"` - `issueTypeNeq?: Array` Query param - `"compliance_violation"` - `"email_security"` - `"exposed_infrastructure"` - `"insecure_configuration"` - `"weak_authentication"` - `"configuration_suggestion"` - `page?: number` Query param: Specifies the current page within paginated list of results. - `per_page?: number` Query param: Sets the number of results per page of results. - `product?: Array` Query param - `productNeq?: Array` Query param - `severity?: Array` Query param - `"low"` - `"moderate"` - `"critical"` - `severityNeq?: Array` Query param - `"low"` - `"moderate"` - `"critical"` - `subject?: Array` Query param - `subjectNeq?: Array` Query param ### Returns - `IssueListResponse` - `count?: number` Indicates the total number of results. - `issues?: Array` - `id?: string` - `dismissed?: boolean` - `issue_class?: string` - `issue_type?: IssueType` - `"compliance_violation"` - `"email_security"` - `"exposed_infrastructure"` - `"insecure_configuration"` - `"weak_authentication"` - `"configuration_suggestion"` - `payload?: Payload` - `detection_method?: string` Describes the method used to detect insight. - `zone_tag?: string` - `resolve_link?: string` - `resolve_text?: string` - `severity?: "Low" | "Moderate" | "Critical"` - `"Low"` - `"Moderate"` - `"Critical"` - `since?: string` - `subject?: string` - `timestamp?: string` - `page?: number` Specifies the current page within paginated list of results. - `per_page?: number` Sets the number of results per page of results. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); // Automatically fetches more pages as needed. for await (const issueListResponse of client.intel.attackSurfaceReport.issues.list({ account_id: '023e105f4ecef8ad9ca31a8372d0c353', })) { console.log(issueListResponse.count); } ``` #### Response ```json { "errors": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "messages": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "success": true, "result": { "count": 1, "issues": [ { "id": "id", "dismissed": false, "issue_class": "always_use_https_not_enabled", "issue_type": "compliance_violation", "payload": { "detection_method": "We detected security rules referencing multiple IP addresses directly in the rules.", "zone_tag": "zone_tag" }, "resolve_link": "resolve_link", "resolve_text": "resolve_text", "severity": "Low", "since": "2019-12-27T18:11:19.117Z", "subject": "example.com", "timestamp": "2019-12-27T18:11:19.117Z" } ], "page": 1, "per_page": 25 } } ``` ## Retrieves Security Center Issue Counts by Class `client.intel.attackSurfaceReport.issues.class(IssueClassParamsparams, RequestOptionsoptions?): IssueClassResponse` **get** `/accounts/{account_id}/intel/attack-surface-report/issues/class` Retrieves Security Center issue counts aggregated by classification class. ### Parameters - `params: IssueClassParams` - `account_id: string` Path param: Identifier. - `dismissed?: boolean` Query param - `issue_class?: Array` Query param - `issueClassNeq?: Array` Query param - `issue_type?: Array` Query param - `"compliance_violation"` - `"email_security"` - `"exposed_infrastructure"` - `"insecure_configuration"` - `"weak_authentication"` - `"configuration_suggestion"` - `issueTypeNeq?: Array` Query param - `"compliance_violation"` - `"email_security"` - `"exposed_infrastructure"` - `"insecure_configuration"` - `"weak_authentication"` - `"configuration_suggestion"` - `product?: Array` Query param - `productNeq?: Array` Query param - `severity?: Array` Query param - `"low"` - `"moderate"` - `"critical"` - `severityNeq?: Array` Query param - `"low"` - `"moderate"` - `"critical"` - `subject?: Array` Query param - `subjectNeq?: Array` Query param ### Returns - `IssueClassResponse = Array` - `count?: number` - `value?: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.intel.attackSurfaceReport.issues.class({ account_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(response); ``` #### Response ```json { "errors": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "messages": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "success": true, "result": [ { "count": 1, "value": "value" } ] } ``` ## Retrieves Security Center Issue Counts by Severity `client.intel.attackSurfaceReport.issues.severity(IssueSeverityParamsparams, RequestOptionsoptions?): IssueSeverityResponse` **get** `/accounts/{account_id}/intel/attack-surface-report/issues/severity` Retrieves Security Center issue counts aggregated by severity level. ### Parameters - `params: IssueSeverityParams` - `account_id: string` Path param: Identifier. - `dismissed?: boolean` Query param - `issue_class?: Array` Query param - `issueClassNeq?: Array` Query param - `issue_type?: Array` Query param - `"compliance_violation"` - `"email_security"` - `"exposed_infrastructure"` - `"insecure_configuration"` - `"weak_authentication"` - `"configuration_suggestion"` - `issueTypeNeq?: Array` Query param - `"compliance_violation"` - `"email_security"` - `"exposed_infrastructure"` - `"insecure_configuration"` - `"weak_authentication"` - `"configuration_suggestion"` - `product?: Array` Query param - `productNeq?: Array` Query param - `severity?: Array` Query param - `"low"` - `"moderate"` - `"critical"` - `severityNeq?: Array` Query param - `"low"` - `"moderate"` - `"critical"` - `subject?: Array` Query param - `subjectNeq?: Array` Query param ### Returns - `IssueSeverityResponse = Array` - `count?: number` - `value?: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.intel.attackSurfaceReport.issues.severity({ account_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(response); ``` #### Response ```json { "errors": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "messages": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "success": true, "result": [ { "count": 1, "value": "value" } ] } ``` ## Retrieves Security Center Issue Counts by Type `client.intel.attackSurfaceReport.issues.type(IssueTypeParamsparams, RequestOptionsoptions?): IssueTypeResponse` **get** `/accounts/{account_id}/intel/attack-surface-report/issues/type` Retrieves Security Center issue counts aggregated by issue type. ### Parameters - `params: IssueTypeParams` - `account_id: string` Path param: Identifier. - `dismissed?: boolean` Query param - `issue_class?: Array` Query param - `issueClassNeq?: Array` Query param - `issue_type?: Array` Query param - `"compliance_violation"` - `"email_security"` - `"exposed_infrastructure"` - `"insecure_configuration"` - `"weak_authentication"` - `"configuration_suggestion"` - `issueTypeNeq?: Array` Query param - `"compliance_violation"` - `"email_security"` - `"exposed_infrastructure"` - `"insecure_configuration"` - `"weak_authentication"` - `"configuration_suggestion"` - `product?: Array` Query param - `productNeq?: Array` Query param - `severity?: Array` Query param - `"low"` - `"moderate"` - `"critical"` - `severityNeq?: Array` Query param - `"low"` - `"moderate"` - `"critical"` - `subject?: Array` Query param - `subjectNeq?: Array` Query param ### Returns - `IssueTypeResponse = Array` - `count?: number` - `value?: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.intel.attackSurfaceReport.issues.type({ account_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(response); ``` #### Response ```json { "errors": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "messages": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "success": true, "result": [ { "count": 1, "value": "value" } ] } ``` ## Archives Security Center Insight `client.intel.attackSurfaceReport.issues.dismiss(stringissueId, IssueDismissParamsparams, RequestOptionsoptions?): IssueDismissResponse` **put** `/accounts/{account_id}/intel/attack-surface-report/{issue_id}/dismiss` Deprecated endpoint for archiving Security Center insights. Use the newer archive-security-center-insight endpoint instead. ### Parameters - `issueId: string` - `params: IssueDismissParams` - `account_id: string` Path param: Identifier. - `dismiss?: boolean` Body param ### Returns - `IssueDismissResponse` - `errors: Array` - `code: number` - `message: string` - `documentation_url?: string` - `source?: Source` - `pointer?: string` - `messages: Array` - `code: number` - `message: string` - `documentation_url?: string` - `source?: Source` - `pointer?: string` - `success: true` Whether the API call was successful. - `true` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.intel.attackSurfaceReport.issues.dismiss('issue_id', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(response.errors); ``` #### Response ```json { "errors": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "messages": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "success": true } ``` ## Domain Types ### Issue Type - `IssueType = "compliance_violation" | "email_security" | "exposed_infrastructure" | 3 more` - `"compliance_violation"` - `"email_security"` - `"exposed_infrastructure"` - `"insecure_configuration"` - `"weak_authentication"` - `"configuration_suggestion"` ### Severity Query Param - `SeverityQueryParam = "low" | "moderate" | "critical"` - `"low"` - `"moderate"` - `"critical"` ### Issue List Response - `IssueListResponse` - `count?: number` Indicates the total number of results. - `issues?: Array` - `id?: string` - `dismissed?: boolean` - `issue_class?: string` - `issue_type?: IssueType` - `"compliance_violation"` - `"email_security"` - `"exposed_infrastructure"` - `"insecure_configuration"` - `"weak_authentication"` - `"configuration_suggestion"` - `payload?: Payload` - `detection_method?: string` Describes the method used to detect insight. - `zone_tag?: string` - `resolve_link?: string` - `resolve_text?: string` - `severity?: "Low" | "Moderate" | "Critical"` - `"Low"` - `"Moderate"` - `"Critical"` - `since?: string` - `subject?: string` - `timestamp?: string` - `page?: number` Specifies the current page within paginated list of results. - `per_page?: number` Sets the number of results per page of results. ### Issue Class Response - `IssueClassResponse = Array` - `count?: number` - `value?: string` ### Issue Severity Response - `IssueSeverityResponse = Array` - `count?: number` - `value?: string` ### Issue Type Response - `IssueTypeResponse = Array` - `count?: number` - `value?: string` ### Issue Dismiss Response - `IssueDismissResponse` - `errors: Array` - `code: number` - `message: string` - `documentation_url?: string` - `source?: Source` - `pointer?: string` - `messages: Array` - `code: number` - `message: string` - `documentation_url?: string` - `source?: Source` - `pointer?: string` - `success: true` Whether the API call was successful. - `true`