> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lendflow.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Clear Adverse Media

## Clear Adverse Media

Use Clear Adverse Media to search the primary owner's name across CLEAR adverse-media sources and optionally generate a detailed report. The business-entity Workflow Builder block is **Clear Adverse Media** (`clear_adverse_media`), but both runtime operations use the application's primary owner.

| Operation | Provider ID | Dependency |
| - | - | - |
| Search | `clear_adverse_media_search` | Primary owner's full name. |
| Report | `clear_adverse_media_report` | Requires the search `SearchId`; Lendflow runs Search first when needed. |

## Requirements

### Search

| Application field | Requirement | Notes |
| - | - | - |
| Primary owner's full name | Required | Lendflow builds the search name from the owner's stored name fields. |

### Report

| Application field | Requirement | Notes |
| - | - | - |
| Adverse Media search result | Conditional | A report requires a usable stored Search result. If one is unavailable, Lendflow runs Search first. |

## API flow

1. Call [Enrich Business Credit Application](/api-reference/workflow-management/enrich-business-credit-application) with `provider: clear_adverse_media_search`.
2. Confirm `data.onqueue: true`, then poll [Get Commercial Data](/api-reference/workflow-management/get-commercial-data) with `services[]=clear_adverse_media_search`.
3. To generate the report, queue `clear_adverse_media_report`. Lendflow uses the stored `SearchId` or runs Search first.
4. Poll [Get Commercial Data](/api-reference/workflow-management/get-commercial-data) with both service filters. Do not include provider-specific `options` for either operation.

```json theme={"system"}
{"provider": "clear_adverse_media_search", "stage_id": "00000000-0000-4000-8000-000000000000"}
```

## Data Orchestration availability

The **Clear Adverse Media** block is available in Workflow Builder and declares both Search and Report as related services. Report depends on Search and can trigger it automatically. The current Data Orchestration attribute catalog does not expose adverse-media-specific outcome attributes, so inspect the stored responses when article or screening details are required.

## What the service returns

Use [Get Commercial Data](/api-reference/workflow-management/get-commercial-data) to retrieve the lifecycle, result, and submitted-request areas below.

| Result area | Response path | Meaning |
| - | - | - |
| Search status | `data.statuses.clear.clear_adverse_media_search` | Search lifecycle state or error. |
| Search result | `data.commercial_data.clear.clear_adverse_media_search` | Search ID and grouped article, sanctions, PEP, or state-owned-entity matches. |
| Report status | `data.statuses.clear.clear_adverse_media_report` | Report lifecycle state or error. |
| Report result | `data.commercial_data.clear.clear_adverse_media_report.SectionResults` | Completed report sections such as user terms, summaries, and article detail. |
| Submitted requests | `data.request_data.clear.*` | Stored provider criteria and permissible-purpose values. Restrict access and logging. |

## Representative response

```json theme={"system"}
{
  "search": {
    "Status": {"StatusCode": "200", "SubStatusCode": "200"},
    "SearchId": "sanitized-search-id",
    "ResultGroup": [{
      "RecordCount": "1",
      "RecordDetails": {"AdverseMediaResults": {
        "Title": "Example public article",
        "Date": "08/10/2020",
        "Language": "English",
        "Relevance": "93.00"
      }}
    }]
  },
  "report": {
    "SectionResults": [{
      "SectionName": "AdverseMediaSummarySection",
      "SectionStatus": "COMPLETE",
      "SectionRecordCount": "1",
      "CLEARReportDescription": "Adverse Media Summary"
    }]
  }
}
```

## Response field meanings

### Search

| Field | Type | Meaning | Possible values or units | When returned |
| - | - | - | - | - |
| `SearchId` | String | Identifier used to request the report. | Opaque provider string. | After a usable search. |
| `ResultGroup` | Object or array | Grouped matches. | Zero or more groups. | When matches exist. |
| `RecordCount` | String | Records represented by the group. | Integer string. | Per group. |
| `RecordDetails` | Object | Result-type-specific record. | May contain adverse-media, sanctions, PEP, or state-owned-entity data. | Per result. |
| `Title`, `Date`, `Language`, `Snippet`, `URL` | Strings | Article metadata and content. | Provider-returned text; fixture dates use `MM/DD/YYYY`. | For article matches when supplied. |
| `Relevance` or `Score` | String | Provider match measure. | Decimal string; not an approval score. | For result types that supply it. |

### Report

| Field | Type | Meaning | Possible values or units | When returned |
| - | - | - | - | - |
| `SectionResults` | Object or array | Generated report sections. | Zero or more sections. | When the report completes. |
| `SectionName` | String | Machine-readable section identifier. | Provider-defined string. | When supplied. |
| `CLEARReportDescription` | String | Human-readable section description. | Provider-defined text. | Per section. |
| `SectionStatus` | String | Section completion state. | Successful fixtures use `COMPLETE`. | Per section. |
| `SectionRecordCount` | String | Number of section records. | Integer string. | Per section. |
| `SectionDetails` | Object or array | Section-specific summaries or full article records. | Can be empty. | When section content exists. |

### Nulls and collections

| Shape | Interpretation |
| - | - |
| Missing `ResultGroup` | Search returned no grouped matches. |
| Missing `SectionDetails` or empty array | The report section has no content. |
| Object or array | A single XML element and repeated elements can convert differently. |
| Missing optional article field | The source did not provide that metadata. |

## Errors and statuses

| Signal | Meaning | Action |
| - | - | - |
| `Not yet started` | No run is recorded. | Queue the service or execute the published workflow. |
| `Started` | Lendflow is processing or polling CLEAR. CLEAR can return provider status `204` while results are not ready. | Continue polling. |
| `Success` | Lendflow stored a response. It does not mean a flag hit or that a record belongs to the subject. | Inspect the provider status and result object. |
| `Authorization failed.` | CLEAR rejected the configured credentials. | Correct the organization's CLEAR configuration or contact Lendflow. |
| Validation message | Required application data or a formatted value is invalid. | Correct the application and rerun. |
| Empty result or missing section | CLEAR returned no usable match or the configured definition omitted that section. | Treat the value as unavailable, not as a negative finding. |
| Provider or service error | CLEAR or Lendflow could not complete the operation. | Follow the stored message; retry only when appropriate. |

See [Data Provider Status Messages](/api-docs/docs/error-handling-external-data-provider-status-messages) for shared status guidance.

## FAQ

<AccordionGroup>
  <Accordion title="Does this block search the business name?">No. The current request uses the primary owner's full name even though the block is available for business entities.</Accordion>
  <Accordion title="Can I request the report first?">Yes. If no adverse-media `SearchId` is stored, Lendflow runs Search before Report.</Accordion>
  <Accordion title="Can I choose keywords or scope in the API request?">No. The current integration sends empty keywords and the `Broad` scope and exposes no provider-specific options.</Accordion>
  <Accordion title="Does a high relevance score prove the result belongs to the owner?">No. Review the source and match context under your approved policy.</Accordion>
  <Accordion title="Are sanctions and PEP results guaranteed?">No. Returned result types and report sections depend on CLEAR data and the generated report.</Accordion>
</AccordionGroup>
