An Azure service that stores unstructured data in the cloud as blobs.
Validate the PDF through a direct retriever test rather than expecting its extracted text to appear as structured rows in Data Explorer; the UDLO represents the source files, while the search index parses and chunks UDMO content for retrieval.
Expected processing boundary
The expected sequence is:
- Azure Blob Storage contains the PDF.
- Event Grid and the Azure Function notify Data Cloud of the file event.
- The UDLO references the unstructured file and maps it to a UDMO.
- Content harmonization processes the supported PDF content.
- The search index parses and chunks the UDMO content.
- A retriever searches those indexed chunks.
- Agentforce invokes that retriever and uses the returned passages.
Salesforce supports PDF content harmonization from UDMOs ^1^, and documents the UDLO-to-UDMO model separately ^2^.
Therefore, seeing the file’s metadata in the UDLO is not equivalent to seeing extracted PDF text. Data Explorer should not be treated as a CSV-style view of the PDF’s paragraphs or generated chunks.
The available Salesforce documentation does not define accepted: true as proof that Data Cloud subsequently read, parsed, chunked, and indexed the file. Treat it only as evidence that the notification request was accepted for downstream handling.
Validate indexing and retrieval
Use one small, non-password-protected, text-based PDF containing a unique phrase such as UDLO-VALIDATION-2026-A7F9. This isolates parsing and retrieval from OCR, size, and ambiguous-query issues.
- Upload the PDF under the exact container, directory, and
*.pdfpath configured in the UDLO. - Wait for its metadata to appear in the UDLO.
- Open the search index configuration and verify:
- The indexed source is the intended UDMO.
- Parsing and chunking are configured for the document content.
- Any selected content/body field is searchable.
- Processing details show no failure for the test document.
- Open the retriever associated with that index and use its available preview/test control to search for the unique phrase.
- A successful result must return a passage from the test PDF and a source identifier linking it to that document.
- Check retriever prefilters, result limits, and returned fields—especially
SourceRecordId—if the document is indexed but omitted from results ^3^. - Configure Agentforce to use that same retriever, then ask for the unique phrase without adding restrictive filters.
Salesforce documents search-index creation, parsing/chunking, and creation of the retriever used by Agentforce ^4^.
There is no documented, universally available Data Explorer path in the supplied product guidance for browsing generated chunks directly. If the org does not expose a chunk preview, validate chunk generation through retriever results and index processing/error details instead. A Ready index configuration alone should not be used as evidence that this particular PDF produced searchable chunks.
Verify Azure can supply the file content
Because the metadata is already visible, do not recreate the connection. Verify the existing SAS can perform both required operations:
- List (
l) on the container, needed to enumerate blobs ^5^. - Read (
r) on the container/blob, needed to read blob content and metadata ^6^. - The SAS has not expired and its resource scope includes the configured container/path.
- Storage firewall or private-endpoint rules permit the Salesforce connection to reach the blob endpoint.
Prefer a user-delegation SAS where the Salesforce connector supports it; Microsoft recommends it over service/account SAS for stronger revocation and credential handling ^7^.
Verify notification delivery separately
In Azure Portal, open the storage account’s Event Grid subscription and check:
- Filters:
subjectBeginsWithmust match the container/folder, whilesubjectEndsWithcan be.pdf. Blob event subjects use/blobServices/default/containers/<container>/blobs/<blob>^8^. - Metrics: compare matched, delivered, delivery-failed, dropped, and dead-lettered event counts.
- Dead-lettering: enable a dead-letter container if it is not configured. Event Grid otherwise can drop events after retry or TTL limits ^9^.
- Ensure
BlobCreatedis emitted only after the upload is committed, particularly if Dropbox integration uploads with multiple block operations.
If Azure delivery, SAS read access, and the isolated retriever test all succeed but Agentforce still returns no passage, collect the test blob path, event ID/time, Function response, UDLO record, index processing details, retriever query/results, and Agentforce trace for Salesforce Support. That evidence identifies whether failure occurs during harmonization, chunk indexing, retrieval, or Agentforce invocation.
References
- Unstructured Data File Formats and Connectors - Salesforce
- Unstructured Data in Data 360 | Salesforce Help
- Agentforce: Agent Unable to Retrieve or Return Expected Knowledge ...
- Step 3 - Create Search Index and Retriever | Ground Agentforce on Your ...
- List Blobs
- Create a service SAS
- Secure your Azure Blob Storage
- Reacting to Blob storage events
- Event Grid message delivery and retry