apache / apache/arrow

[Docs] Document conventions for sending and receiving Arrow data over HTTP APIs

Open
#40,465 4 comments 2 reactions 1 assignee Claimed by @ianmcook View on GitHub
Component: Documentation Type: enhancement
Dominant language
C++
Stars
17.1k
Forks
4.3k
Avg merge
3d 13h
Merged PRs (30d)
88

Description

### Describe the enhancement requested

The Arrow developer community intends to publish a set of conventions in the Arrow docs for how to send and receive Arrow-format data over HTTP APIs. There is a related discussion on the Arrow developer mailing list at https://lists.apache.org/thread/886cnx6ytjst3smmytz4r4ddcbv95191.

### Tasks

This issue is an umbrella for tasks that are a part of this effort.

-----

#### Simple HTTP GET client and server examples

:file_folder: [`arrow-experiments/tree/main/http/get_simple`](https://github.com/apache/arrow-experiments/tree/main/http/get_simple)

- [x] https://github.com/apache/arrow/issues/40466
- [x] https://github.com/apache/arrow/issues/40467
- [x] https://github.com/apache/arrow/issues/40472
- [x] https://github.com/apache/arrow/issues/40480
- [x] https://github.com/apache/arrow/issues/40481
- [x] https://github.com/apache/arrow/issues/40468
- [x] https://github.com/apache/arrow/issues/40469
- [x] https://github.com/apache/arrow/issues/40470
- [x] https://github.com/apache/arrow/issues/40471
- [x] https://github.com/apache/arrow/issues/40473
- [ ] https://github.com/apache/arrow-js/issues/64
- [x] https://github.com/apache/arrow-julia/issues/502
- [x] https://github.com/apache/arrow/issues/40489
- [x] https://github.com/apache/arrow/issues/40475
- [x] https://github.com/apache/arrow/issues/40476
- [x] https://github.com/apache/arrow/issues/40611
- [x] https://github.com/apache/arrow/issues/40869
- [x] https://github.com/apache/arrow/issues/40477
- [x] https://github.com/apache/arrow/issues/40478
- [x] https://github.com/apache/arrow/issues/40479
- [x] https://github.com/apache/arrow-rs/issues/5496
- [ ] https://github.com/apache/arrow-swift/issues/13
- [x] https://github.com/apache/arrow/issues/40613

-----

#### HTTP GET client and server examples demonstrating range requests

:file_folder: [`arrow-experiments/tree/main/http/get_range`](https://github.com/apache/arrow-experiments/tree/main/http/get_range)

- [x] https://github.com/apache/arrow/issues/40597

-----

#### Indirect response HTTP GET client and server examples

:file_folder: [`arrow-experiments/tree/main/http/get_indirect`](https://github.com/apache/arrow-experiments/tree/main/http/get_indirect)

- [x] https://github.com/apache/arrow/issues/40596

-----

#### Multipart/mixed response HTTP GET client and server examples

:file_folder: [`arrow-experiments/tree/main/http/get_multipart`](https://github.com/apache/arrow-experiments/tree/main/http/get_multipart)

- [x] https://github.com/apache/arrow/issues/40598

-----

#### HTTP GET examples to test different compression options

:file_folder: [`arrow-experiments/tree/main/http/get_compressed`](https://github.com/apache/arrow-experiments/tree/main/http/get_compressed)

- [x] https://github.com/apache/arrow/issues/40600
- [x] https://github.com/apache/arrow/issues/40601
- [x] https://github.com/apache/arrow/issues/40612

-----

#### Simple HTTP PUT / POST client and server examples

:file_folder: [`arrow-experiments/tree/main/http/post_simple`](https://github.com/apache/arrow-experiments/tree/main/http/post_simple)

- [x] https://github.com/apache/arrow/issues/40595

-----

#### Multipart/form-data request HTTP PUT / POST client and server examples

:file_folder: [`arrow-experiments/tree/main/http/post_multipart`](https://github.com/apache/arrow-experiments/tree/main/http/post_multipart)

- [x] https://github.com/apache/arrow/issues/40599

-----

#### General issues and questions

- [x] https://github.com/apache/arrow/issues/40581
- [x] https://github.com/apache/arrow/issues/44031

-----

### Component(s)

Documentation

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.