# Insights ## Retrieves Security Center Insights `client.securityCenter.insights.list(InsightListParamsparams?, RequestOptionsoptions?): V4PagePagination` **get** `/{accounts_or_zones}/{account_or_zone_id}/security-center/insights` Lists all Security Center insights for the account or zone, showing security findings and recommendations. ### Parameters - `params: InsightListParams` - `account_id?: string` Path param: The Account ID to use for this endpoint. Mutually exclusive with the Zone ID. - `zone_id?: string` Path param: The Zone ID to use for this endpoint. Mutually exclusive with the Account ID. - `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 - `InsightListResponse` - `count?: number` Indicates the total number of results. - `issues?: Array` - `id?: string` - `dismissed?: boolean` - `has_extended_context?: boolean` Indicates whether the insight has a large payload that requires fetching via the context endpoint. - `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` - `status?: "active" | "resolved"` The current status of the insight. - `"active"` - `"resolved"` - `subject?: string` - `timestamp?: string` - `user_classification?: "false_positive" | "accept_risk" | "other" | null` User-defined classification for the insight. Can be 'false_positive', 'accept_risk', 'other', or null. - `"false_positive"` - `"accept_risk"` - `"other"` - `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 insightListResponse of client.securityCenter.insights.list({ account_id: 'account_id', })) { console.log(insightListResponse.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, "has_extended_context": 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", "status": "active", "subject": "example.com", "timestamp": "2019-12-27T18:11:19.117Z", "user_classification": "false_positive" } ], "page": 1, "per_page": 25 } } ``` ## Archives Security Center Insight `client.securityCenter.insights.dismiss(stringissueId, InsightDismissParamsparams, RequestOptionsoptions?): InsightDismissResponse` **put** `/{accounts_or_zones}/{account_or_zone_id}/security-center/insights/{issue_id}/dismiss` Archives a Security Center insight for an account or zone, removing it from the active insights list while preserving historical data. ### Parameters - `issueId: string` - `params: InsightDismissParams` - `account_id?: string` Path param: The Account ID to use for this endpoint. Mutually exclusive with the Zone ID. - `zone_id?: string` Path param: The Zone ID to use for this endpoint. Mutually exclusive with the Account ID. - `dismiss?: boolean` Body param ### Returns - `InsightDismissResponse` - `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.securityCenter.insights.dismiss('issue_id', { account_id: 'account_id', }); 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 ### Insight List Response - `InsightListResponse` - `count?: number` Indicates the total number of results. - `issues?: Array` - `id?: string` - `dismissed?: boolean` - `has_extended_context?: boolean` Indicates whether the insight has a large payload that requires fetching via the context endpoint. - `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` - `status?: "active" | "resolved"` The current status of the insight. - `"active"` - `"resolved"` - `subject?: string` - `timestamp?: string` - `user_classification?: "false_positive" | "accept_risk" | "other" | null` User-defined classification for the insight. Can be 'false_positive', 'accept_risk', 'other', or null. - `"false_positive"` - `"accept_risk"` - `"other"` - `page?: number` Specifies the current page within paginated list of results. - `per_page?: number` Sets the number of results per page of results. ### Insight Dismiss Response - `InsightDismissResponse` - `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` # Class ## Retrieves Security Center Insight Counts by Class `client.securityCenter.insights.class.get(ClassGetParamsparams?, RequestOptionsoptions?): ClassGetResponse` **get** `/{accounts_or_zones}/{account_or_zone_id}/security-center/insights/class` Retrieves Security Center insight counts aggregated by classification class. ### Parameters - `params: ClassGetParams` - `account_id?: string` Path param: The Account ID to use for this endpoint. Mutually exclusive with the Zone ID. - `zone_id?: string` Path param: The Zone ID to use for this endpoint. Mutually exclusive with the Account ID. - `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 - `ClassGetResponse = 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 classes = await client.securityCenter.insights.class.get({ account_id: 'account_id' }); console.log(classes); ``` #### 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" } ] } ``` ## Domain Types ### Class Get Response - `ClassGetResponse = Array` - `count?: number` - `value?: string` # Severity ## Retrieves Security Center Insight Counts by Severity `client.securityCenter.insights.severity.get(SeverityGetParamsparams?, RequestOptionsoptions?): SeverityGetResponse` **get** `/{accounts_or_zones}/{account_or_zone_id}/security-center/insights/severity` Retrieves Security Center insight counts aggregated by severity level (critical, high, medium, low). ### Parameters - `params: SeverityGetParams` - `account_id?: string` Path param: The Account ID to use for this endpoint. Mutually exclusive with the Zone ID. - `zone_id?: string` Path param: The Zone ID to use for this endpoint. Mutually exclusive with the Account ID. - `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 - `SeverityGetResponse = 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 severities = await client.securityCenter.insights.severity.get({ account_id: 'account_id' }); console.log(severities); ``` #### 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" } ] } ``` ## Domain Types ### Severity Get Response - `SeverityGetResponse = Array` - `count?: number` - `value?: string` # Type ## Retrieves Security Center Insight Counts by Type `client.securityCenter.insights.type.get(TypeGetParamsparams?, RequestOptionsoptions?): TypeGetResponse` **get** `/{accounts_or_zones}/{account_or_zone_id}/security-center/insights/type` Retrieves Security Center insight counts aggregated by insight type. ### Parameters - `params: TypeGetParams` - `account_id?: string` Path param: The Account ID to use for this endpoint. Mutually exclusive with the Zone ID. - `zone_id?: string` Path param: The Zone ID to use for this endpoint. Mutually exclusive with the Account ID. - `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 - `TypeGetResponse = 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 types = await client.securityCenter.insights.type.get({ account_id: 'account_id' }); console.log(types); ``` #### 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" } ] } ``` ## Domain Types ### Type Get Response - `TypeGetResponse = Array` - `count?: number` - `value?: string` # Audit Logs ## Retrieves account or zone Audit Log `client.securityCenter.insights.auditLogs.list(AuditLogListParamsparams?, RequestOptionsoptions?): CursorPagination` **get** `/{accounts_or_zones}/{account_or_zone_id}/security-center/insights/audit-log` Lists audit log entries for all Security Center insights in the account or zone, showing changes to insight status and classification. ### Parameters - `params: AuditLogListParams` - `account_id?: string` Path param: The Account ID to use for this endpoint. Mutually exclusive with the Zone ID. - `zone_id?: string` Path param: The Zone ID to use for this endpoint. Mutually exclusive with the Account ID. - `before?: string` Query param: Filter entries changed before this timestamp (RFC 3339). - `changed_by?: string` Query param: Filter by the actor that made the change. - `cursor?: string` Query param: Opaque cursor for pagination. Use the cursor value from result_info of the previous response. - `field_changed?: "status" | "user_classification"` Query param: Filter by the field that was changed. - `"status"` - `"user_classification"` - `order?: "asc" | "desc"` Query param: Sort order for results. Use 'asc' for oldest first or 'desc' for newest first. - `"asc"` - `"desc"` - `per_page?: number` Query param: Number of results per page. - `since?: string` Query param: Filter entries changed at or after this timestamp (RFC 3339). ### Returns - `AuditLogListResponse` - `id?: string` UUIDv7 identifier for the audit log entry, time-ordered. - `changed_at?: string` The timestamp when the change occurred. - `changed_by?: string` The actor that made the change. 'system' for automated changes, or a user identifier. - `current_value?: string | null` The value of the field after the change. Null if the field was cleared. - `field_changed?: "status" | "user_classification"` The field that was changed. - `"status"` - `"user_classification"` - `issue_id?: string` The ID of the insight this audit log entry relates to. - `previous_value?: string | null` The value of the field before the change. Null if the field was not previously set. - `rationale?: string | null` Optional rationale provided for the change. - `zone_id?: number` The zone ID associated with the insight. Only present for zone-level insights. ### 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 auditLogListResponse of client.securityCenter.insights.auditLogs.list({ account_id: 'account_id', })) { console.log(auditLogListResponse.id); } ``` #### 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": [ { "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "changed_at": "2019-12-27T18:11:19.117Z", "changed_by": "system", "current_value": "current_value", "field_changed": "status", "issue_id": "issue_id", "previous_value": "previous_value", "rationale": "rationale", "zone_id": 0 } ], "result_info": { "count": 25, "cursor": "cursor", "per_page": 25 } } ``` ## Retrieves Issue Audit Log `client.securityCenter.insights.auditLogs.listByInsight(stringissueId, AuditLogListByInsightParamsparams?, RequestOptionsoptions?): CursorPagination` **get** `/{accounts_or_zones}/{account_or_zone_id}/security-center/insights/{issue_id}/audit-log` Lists audit log entries for a specific Security Center insight, showing changes to its status and classification over time. ### Parameters - `issueId: string` - `params: AuditLogListByInsightParams` - `account_id?: string` Path param: The Account ID to use for this endpoint. Mutually exclusive with the Zone ID. - `zone_id?: string` Path param: The Zone ID to use for this endpoint. Mutually exclusive with the Account ID. - `before?: string` Query param: Filter entries changed before this timestamp (RFC 3339). - `changed_by?: string` Query param: Filter by the actor that made the change. - `cursor?: string` Query param: Opaque cursor for pagination. Use the cursor value from result_info of the previous response. - `field_changed?: "status" | "user_classification"` Query param: Filter by the field that was changed. - `"status"` - `"user_classification"` - `order?: "asc" | "desc"` Query param: Sort order for results. Use 'asc' for oldest first or 'desc' for newest first. - `"asc"` - `"desc"` - `per_page?: number` Query param: Number of results per page. - `since?: string` Query param: Filter entries changed at or after this timestamp (RFC 3339). ### Returns - `AuditLogListByInsightResponse` - `id?: string` UUIDv7 identifier for the audit log entry, time-ordered. - `changed_at?: string` The timestamp when the change occurred. - `changed_by?: string` The actor that made the change. 'system' for automated changes, or a user identifier. - `current_value?: string | null` The value of the field after the change. Null if the field was cleared. - `field_changed?: "status" | "user_classification"` The field that was changed. - `"status"` - `"user_classification"` - `issue_id?: string` The ID of the insight this audit log entry relates to. - `previous_value?: string | null` The value of the field before the change. Null if the field was not previously set. - `rationale?: string | null` Optional rationale provided for the change. - `zone_id?: number` The zone ID associated with the insight. Only present for zone-level insights. ### 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 auditLogListByInsightResponse of client.securityCenter.insights.auditLogs.listByInsight( 'issue_id', { account_id: 'account_id' }, )) { console.log(auditLogListByInsightResponse.id); } ``` #### 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": [ { "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "changed_at": "2019-12-27T18:11:19.117Z", "changed_by": "system", "current_value": "current_value", "field_changed": "status", "issue_id": "issue_id", "previous_value": "previous_value", "rationale": "rationale", "zone_id": 0 } ], "result_info": { "count": 25, "cursor": "cursor", "per_page": 25 } } ``` ## Domain Types ### Audit Log List Response - `AuditLogListResponse` - `id?: string` UUIDv7 identifier for the audit log entry, time-ordered. - `changed_at?: string` The timestamp when the change occurred. - `changed_by?: string` The actor that made the change. 'system' for automated changes, or a user identifier. - `current_value?: string | null` The value of the field after the change. Null if the field was cleared. - `field_changed?: "status" | "user_classification"` The field that was changed. - `"status"` - `"user_classification"` - `issue_id?: string` The ID of the insight this audit log entry relates to. - `previous_value?: string | null` The value of the field before the change. Null if the field was not previously set. - `rationale?: string | null` Optional rationale provided for the change. - `zone_id?: number` The zone ID associated with the insight. Only present for zone-level insights. ### Audit Log List By Insight Response - `AuditLogListByInsightResponse` - `id?: string` UUIDv7 identifier for the audit log entry, time-ordered. - `changed_at?: string` The timestamp when the change occurred. - `changed_by?: string` The actor that made the change. 'system' for automated changes, or a user identifier. - `current_value?: string | null` The value of the field after the change. Null if the field was cleared. - `field_changed?: "status" | "user_classification"` The field that was changed. - `"status"` - `"user_classification"` - `issue_id?: string` The ID of the insight this audit log entry relates to. - `previous_value?: string | null` The value of the field before the change. Null if the field was not previously set. - `rationale?: string | null` Optional rationale provided for the change. - `zone_id?: number` The zone ID associated with the insight. Only present for zone-level insights. # Classification ## Updates Security Center Insight Classification `client.securityCenter.insights.classification.update(stringissueId, ClassificationUpdateParamsparams, RequestOptionsoptions?): ClassificationUpdateResponse` **patch** `/{accounts_or_zones}/{account_or_zone_id}/security-center/insights/{issue_id}/classification` Updates the user classification for a Security Center insight. Valid values are 'false_positive' or 'accept_risk'. To reset, set classification to null. Cannot change directly between classification values - must reset to null first. ### Parameters - `issueId: string` - `params: ClassificationUpdateParams` - `account_id?: string` Path param: The Account ID to use for this endpoint. Mutually exclusive with the Zone ID. - `zone_id?: string` Path param: The Zone ID to use for this endpoint. Mutually exclusive with the Account ID. - `classification?: "false_positive" | "accept_risk" | "other" | null` Body param: User-defined classification for the insight. Can be 'false_positive', 'accept_risk', 'other', or null. - `"false_positive"` - `"accept_risk"` - `"other"` - `rationale?: string` Body param: Rationale for the classification change. Required when classification is 'accept_risk' or 'other'. ### Returns - `ClassificationUpdateResponse` - `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 classification = await client.securityCenter.insights.classification.update('issue_id', { account_id: 'account_id', }); console.log(classification.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 ### Classification Update Response - `ClassificationUpdateResponse` - `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` # Context ## Retrieves Security Center Insight Context `client.securityCenter.insights.context.get(stringissueId, ContextGetParamsparams, RequestOptionsoptions?): ContextGetResponse` **get** `/accounts/{account_id}/security-center/insights/{issue_id}/context` Returns the full context payload for an insight. This endpoint is used for insights with large payloads that are not included inline in the list response. ### Parameters - `issueId: string` - `params: ContextGetParams` - `account_id: string` Identifier. ### Returns - `ContextGetResponse = Record` ### 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 context = await client.securityCenter.insights.context.get('issue_id', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(context); ``` #### 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": { "foo": "bar" } } ``` ## Domain Types ### Context Get Response - `ContextGetResponse = Record`