Skip to main content
Document loaders provide a standard interface for reading data from different sources (such as Slack, Notion, or Google Drive) into LangChain’s Document format. This ensures that data can be handled consistently regardless of the source. All document loaders implement the BaseLoader interface.

Interface

Each document loader may define its own parameters, but they share a common API:
  • load(): Loads all documents at once.
  • loadAndSplit(): Loads all documents at once and splits them into smaller documents.

By category

LangChain.js categorizes document loaders in two different ways:
  • File loaders, which load data into LangChain formats from your local filesystem.
  • Web loaders, which load data from remote sources.

File loaders

If you’d like to contribute an integration, see Contributing integrations.

PDFs

Common file types

Specialized file loaders

Web loaders

Webpages

Cloud providers

Productivity tools

Search & data APIs

Audio & video

Other

All document loaders

Airtable

Apify Dataset

AssemblyAI Audio Transcript

Azure Blob Storage Container

Azure Blob Storage File

Blockchain Data

Browserbase

ChatGPT

Cheerio

College Confidential

Confluence

Couchbase

CSV

DirectoryLoader

DOCX

EPUB

Figma

FireCrawl

GitHub

GitBook

Google Cloud SQL for PostgreSQL

Google Cloud Storage

Hacker News

IMSDB

Jira

JSON

JSONLines

LangSmith

MultiFileLoader

Notion API

Notion Markdown

OpenAI Whisper Audio

PDFLoader

Playwright

PPTX

Puppeteer

RecursiveUrlLoader

S3

SearchAPI

SerpApi

Sitemap

Soniox

Sonix Audio

Spider

Subtitles

Taskade

Text

UnstructuredLoader

WebPDFLoader

YouTube