Getting Started with Apache Tika
Four ways to use Tika. Pick by how you need to call it.
| Integration | What it is | Best for |
|---|---|---|
Tika embedded in your Java application |
Tight integration and full control over parsing behavior |
|
A standalone jar you run per file or per directory |
Quick extraction, shell scripts, one-off tasks |
|
A standalone service with an HTTP API |
Language-agnostic integration and microservice architectures |
|
A standalone service speaking gRPC |
High-performance, cross-language communication |
| tika-grpc is more exposed by default than tika-server: no transport security, no per-caller authorization, and its core fetch-and-parse surface is always on. (Its most dangerous capabilities — runtime fetcher/iterator changes and per-request parse configuration — are off by default.) Run it only on a trusted, access-controlled network. See Security. |
For large volumes of documents, Tika Pipes adds fault-tolerant, scalable processing and works with all four.
To run the server or gRPC service from a published image rather than a distribution zip, see Running Tika in Docker.
Resources
-
Downloads — jars, the
tika-appandtika-serverzips -
Docker images —
apache/tikaon Docker Hub -
Supported formats — what Tika can parse