# 协议

> GreptimeDB 支持的传输协议，涵盖写入与查询两类用途，以及各协议写入文档的位置。

# 协议

GreptimeDB 支持多种传输协议，分为两类。

**连接协议**同时承载写入和查询：[HTTP API](http.md)、[MySQL](mysql.md) 和 [PostgreSQL](postgresql.md)。这些页面说明接口、鉴权和协议特有的选项。[gRPC](grpc.md) 按传输层归在这一类，但只承载写入，没有 gRPC 查询接口。

**写入协议**接收那些本身就支持该协议的系统发来的数据，包括 InfluxDB 行协议、OpenTelemetry、Loki、Elasticsearch、Splunk 和 OpenTSDB。本章的页面覆盖协议层面的细节，各数据源的具体配置见[写入数据](/user-guide/ingest-data/overview.md)。

- [Elasticsearch](elasticsearch.md) — GreptimeDB 对 Elasticsearch 协议的实现范围——仅支持写入的 _bulk API——以及写入文档的位置。
- [gRPC](grpc.md)
- [HTTP API](http.md) — 介绍 GreptimeDB 提供的 HTTP API 用于与数据库进行交互。
- [InfluxDB Line Protocol](influxdb-line-protocol.md) — 介绍如何使用 InfluxDB Line Protocol 向 GreptimeDB 写入数据。
- [Loki](loki.md) — GreptimeDB 对 Loki 协议的实现范围——仅支持写入的 Push API——以及写入文档的位置。
- [MySQL](mysql.md) — 介绍如何通过 MySQL 协议连接和使用 GreptimeDB。
- [OpenTelemetry (OTLP)](opentelemetry.md) — 通过 OTLP/HTTP 协议原生消费 OpenTelemetry 指标、日志和 trace
- [OpenTSDB](opentsdb.md) — GreptimeDB 对 OpenTSDB 协议的实现范围——仅支持写入的 /api/put 端点——以及写入文档的位置。
- [PostgreSQL](postgresql.md) — 介绍如何通过 PostgreSQL 协议连接和使用 GreptimeDB。
- [Splunk](splunk.md) — GreptimeDB 对 Splunk HEC 协议的实现范围、提供哪些端点，以及明确不实现的部分。
