---
title: QUIC Options
framework: network
role: collectionGroup
role_heading: API Collection
path: network/quic-options
---

# QUIC Options

Configure options for connections that use the QUIC transport protocol.

## Topics

### Creating QUIC Connections

- [nw_protocol_copy_quic_definition()](network/nw_protocol_copy_quic_definition().md)
- [nw_quic_create_options()](network/nw_quic_create_options().md)
- [nw_protocol_options_is_quic(_:)](network/nw_protocol_options_is_quic(_:).md)

### Customizing Connection Options

- [nw_quic_add_tls_application_protocol(_:_:)](network/nw_quic_add_tls_application_protocol(_:_:).md)
- [nw_quic_set_idle_timeout(_:_:)](network/nw_quic_set_idle_timeout(_:_:).md)
- [nw_quic_get_idle_timeout(_:)](network/nw_quic_get_idle_timeout(_:).md)
- [nw_quic_set_initial_max_data(_:_:)](network/nw_quic_set_initial_max_data(_:_:).md)
- [nw_quic_get_initial_max_data(_:)](network/nw_quic_get_initial_max_data(_:).md)
- [nw_quic_set_initial_max_stream_data_bidirectional_local(_:_:)](network/nw_quic_set_initial_max_stream_data_bidirectional_local(_:_:).md)
- [nw_quic_get_initial_max_stream_data_bidirectional_local(_:)](network/nw_quic_get_initial_max_stream_data_bidirectional_local(_:).md)
- [nw_quic_set_initial_max_stream_data_bidirectional_remote(_:_:)](network/nw_quic_set_initial_max_stream_data_bidirectional_remote(_:_:).md)
- [nw_quic_get_initial_max_stream_data_bidirectional_remote(_:)](network/nw_quic_get_initial_max_stream_data_bidirectional_remote(_:).md)
- [nw_quic_set_initial_max_stream_data_unidirectional(_:_:)](network/nw_quic_set_initial_max_stream_data_unidirectional(_:_:).md)
- [nw_quic_get_initial_max_stream_data_unidirectional(_:)](network/nw_quic_get_initial_max_stream_data_unidirectional(_:).md)
- [nw_quic_set_initial_max_streams_bidirectional(_:_:)](network/nw_quic_set_initial_max_streams_bidirectional(_:_:).md)
- [nw_quic_get_initial_max_streams_bidirectional(_:)](network/nw_quic_get_initial_max_streams_bidirectional(_:).md)
- [nw_quic_set_initial_max_streams_unidirectional(_:_:)](network/nw_quic_set_initial_max_streams_unidirectional(_:_:).md)
- [nw_quic_get_initial_max_streams_unidirectional(_:)](network/nw_quic_get_initial_max_streams_unidirectional(_:).md)
- [nw_quic_set_max_datagram_frame_size(_:_:)](network/nw_quic_set_max_datagram_frame_size(_:_:).md)
- [nw_quic_get_max_datagram_frame_size(_:)](network/nw_quic_get_max_datagram_frame_size(_:).md)
- [nw_quic_set_max_udp_payload_size(_:_:)](network/nw_quic_set_max_udp_payload_size(_:_:).md)
- [nw_quic_get_max_udp_payload_size(_:)](network/nw_quic_get_max_udp_payload_size(_:).md)
- [nw_quic_copy_sec_protocol_options(_:)](network/nw_quic_copy_sec_protocol_options(_:).md)

### Customizing Stream Options

- [nw_quic_set_stream_is_unidirectional(_:_:)](network/nw_quic_set_stream_is_unidirectional(_:_:).md)
- [nw_quic_get_stream_is_unidirectional(_:)](network/nw_quic_get_stream_is_unidirectional(_:).md)
- [nw_quic_set_stream_is_datagram(_:_:)](network/nw_quic_set_stream_is_datagram(_:_:).md)
- [nw_quic_get_stream_is_datagram(_:)](network/nw_quic_get_stream_is_datagram(_:).md)

### Inspecting Connection State

- [nw_protocol_metadata_is_quic(_:)](network/nw_protocol_metadata_is_quic(_:).md)
- [nw_quic_set_local_max_streams_bidirectional(_:_:)](network/nw_quic_set_local_max_streams_bidirectional(_:_:).md)
- [nw_quic_get_local_max_streams_bidirectional(_:)](network/nw_quic_get_local_max_streams_bidirectional(_:).md)
- [nw_quic_set_local_max_streams_unidirectional(_:_:)](network/nw_quic_set_local_max_streams_unidirectional(_:_:).md)
- [nw_quic_get_local_max_streams_unidirectional(_:)](network/nw_quic_get_local_max_streams_unidirectional(_:).md)
- [nw_quic_get_remote_max_streams_bidirectional(_:)](network/nw_quic_get_remote_max_streams_bidirectional(_:).md)
- [nw_quic_get_remote_max_streams_unidirectional(_:)](network/nw_quic_get_remote_max_streams_unidirectional(_:).md)
- [nw_quic_get_remote_idle_timeout(_:)](network/nw_quic_get_remote_idle_timeout(_:).md)
- [nw_quic_copy_sec_protocol_metadata(_:)](network/nw_quic_copy_sec_protocol_metadata(_:).md)

### Inspecting Stream State

- [nw_quic_get_stream_id(_:)](network/nw_quic_get_stream_id(_:).md)
- [nw_quic_get_stream_type(_:)](network/nw_quic_get_stream_type(_:).md)
- [nw_quic_get_stream_usable_datagram_frame_size(_:)](network/nw_quic_get_stream_usable_datagram_frame_size(_:).md)

### Handling Errors

- [nw_quic_set_application_error(_:_:_:)](network/nw_quic_set_application_error(_:_:_:).md)
- [nw_quic_get_application_error(_:)](network/nw_quic_get_application_error(_:).md)
- [nw_quic_get_application_error_reason(_:)](network/nw_quic_get_application_error_reason(_:).md)
- [nw_quic_set_stream_application_error(_:_:)](network/nw_quic_set_stream_application_error(_:_:).md)
- [nw_quic_get_stream_application_error(_:)](network/nw_quic_get_stream_application_error(_:).md)

### Configuring Keepalives

- [nw_quic_set_keepalive_interval(_:_:)](network/nw_quic_set_keepalive_interval(_:_:).md)
- [nw_quic_get_keepalive_interval(_:)](network/nw_quic_get_keepalive_interval(_:).md)

## See Also

### Network Protocols

- [TCP Options](network/tcp-options.md)
- [TLS Options](network/tls-options.md)
- [UDP Options](network/udp-options.md)
- [IP Options](network/ip-options.md)
- [WebSocket Options](network/websocket-options.md)
- [Framer Protocol Options](network/framer-protocol-options.md)
