# UnstructuredAPIFileLoader

> **Class** in `langchain_community`

📖 [View in docs](https://reference.langchain.com/python/langchain-community/document_loaders/unstructured/UnstructuredAPIFileLoader)

Load files using `Unstructured` API.

By default, the loader makes a call to the hosted Unstructured API. If you are
running the unstructured API locally, you can change the API rule by passing in the
url parameter when you initialize the loader. The hosted Unstructured API requires
an API key. See the links below to learn more about our API offerings and get an
API key.

You can run the loader in different modes: "single", "elements", and "paged". The
default "single" mode will return a single langchain Document object. If you use
"elements" mode, the unstructured library will split the document into elements such
as Title and NarrativeText and return those as individual langchain Document
objects. In addition to these post-processing modes (which are specific to the
LangChain Loaders), Unstructured has its own "chunking" parameters for
post-processing elements into more useful chunks for uses cases such as Retrieval
Augmented Generation (RAG). You can pass in additional unstructured kwargs to
configure different unstructured settings.

Examples
```python
from langchain_community.document_loaders import UnstructuredAPIFileLoader

loader = UnstructuredAPIFileLoader(
    "example.pdf", mode="elements", strategy="fast", api_key="MY_API_KEY",
)
docs = loader.load()

References
----------
https://docs.unstructured.io/api-reference/api-services/sdk
https://docs.unstructured.io/api-reference/api-services/overview
https://docs.unstructured.io/open-source/core-functionality/partitioning
https://docs.unstructured.io/open-source/core-functionality/chunking

## Signature

```python
UnstructuredAPIFileLoader(
    self,
    file_path: Union[str, List[str]],
    *,
    mode: str = 'single',
    url: str = 'https://api.unstructuredapp.io/general/v0/general',
    api_key: str = '',
    **unstructured_kwargs: Any = {},
)
```

## Extends

- `UnstructuredBaseLoader`

## Constructors

```python
__init__(
    self,
    file_path: Union[str, List[str]],
    *,
    mode: str = 'single',
    url: str = 'https://api.unstructuredapp.io/general/v0/general',
    api_key: str = '',
    **unstructured_kwargs: Any = {},
)
```

| Name | Type |
|------|------|
| `file_path` | `Union[str, List[str]]` |
| `mode` | `str` |
| `url` | `str` |
| `api_key` | `str` |


## Properties

- `file_path`
- `url`
- `api_key`

## ⚠️ Deprecated

Deprecated since version 0.2.8.

---

[View source on GitHub](https://github.com/langchain-ai/langchain-community/blob/4b280287bd55b99b44db2dd849f02d66c89534d5/libs/community/langchain_community/document_loaders/unstructured.py#L270)