Skip to main content

HTTP/HTTPS

HTTP and HTTPS protocols are Apinizer’s core protocols and are fully supported.

HTTP Versions

HTTP/1.1

Full support
  • Keep-alive connections
  • Chunked transfer encoding
  • Compression (gzip, deflate, brotli)

HTTP/2

Full support
  • Multiplexing
  • Server push
  • Header compression
  • Binary framing

HTTPS

TLS/SSL termination
  • TLS 1.2+
  • TLS 1.3 support
  • SNI (Server Name Indication) support
  • Certificate management

HTTP Features

  • GET: Resource retrieval
  • POST: Resource creation
  • PUT: Resource update
  • DELETE: Resource deletion
  • PATCH: Partial update
  • HEAD: Header information retrieval
  • OPTIONS: Querying supported methods
  • Custom Methods: Custom HTTP methods
  • Method Override: Method override support
  • application/json: JSON format
  • application/xml: XML format
  • application/x-www-form-urlencoded: Form data
  • multipart/form-data: Multiple form data
  • text/plain, text/html: Text formats
  • Custom Content Types: Custom content types
  • Standard HTTP Headers: Standard HTTP headers
  • Custom Headers: Custom headers
  • Header Manipulation: Header manipulation
  • CORS Headers: Cross-Origin Resource Sharing headers

REST

REST (Representational State Transfer) architecture is fully supported.

REST Principles

  • Stateless communication
  • Resource-based URLs
  • Use of HTTP methods
  • JSON/XML representation

REST Features

  • RESTful API design
  • HATEOAS support
  • Content negotiation
  • Versioning support

WebSocket

WebSocket protocol is fully supported for real-time communication.

WebSocket Features

  • RFC 6455 Compliant: Full compliance with WebSocket standard
  • Full-Duplex Communication: Bidirectional communication
  • Low Latency: Low latency
  • Binary and Text Frame Support: Binary and text frame support
  • Connection Management: Connection management
  • Message Routing: Message routing
  • Subprotocol Support: Subprotocol support
  • Ping/Pong Frames: Ping/pong frames for connection control
  • Real-Time Notifications: Real-time notifications
  • Chat Applications: Chat applications
  • Live Data Streaming: Live data streaming
  • Gaming Applications: Gaming applications

WebSocket Security

WSS (WebSocket Secure)

  • TLS/SSL encryption
  • Secure WebSocket connections
  • Certificate management

Authentication

  • Token-based authentication
  • Header-based authentication
  • Query parameter authentication

gRPC

gRPC protocol is fully supported for microservice architectures.

gRPC Features

Protocol Buffers

  • Protocol Buffers (protobuf)
  • Schema definition
  • Code generation
  • Efficient serialization

gRPC Features

  • Unary RPC: Single request-single response
  • Server Streaming: Server-side streaming
  • Client Streaming: Client-side streaming
  • Bidirectional Streaming: Bidirectional streaming

Performance

  • HTTP/2 based
  • Binary serialization
  • High performance
  • Low latency

Language Support

  • Multi-language support
  • Cross-platform
  • Language-agnostic

gRPC Routing

  • Service-Based Routing: Service-based routing
  • Method-Based Routing: Method-based routing
  • Load Balancing: Load balancing
  • Failover: Automatic failover
  • Request/Response Interceptors: Request/response interceptors
  • Metadata Handling: Metadata management
  • Error Handling: Error handling
  • Policy Application: Policy support

SOAP

SOAP (Simple Object Access Protocol) web services are fully supported.

SOAP Features

  • SOAP 1.1 and SOAP 1.2: Support for both versions
  • XML-Based Messaging: XML-based messaging
  • WSDL Support: WSDL support
  • SOAP Fault Handling: Error handling
  • WS-Security: Security standards
  • WS-Addressing: Addressing standards
  • WS-ReliableMessaging: Reliable messaging
  • WS-Policy: Policy standards
  • SOAP to REST Conversion: Conversion from SOAP to REST
  • WSDL Generation: WSDL generation
  • SOAP Fault Handling: SOAP error handling
  • Attachment Support (MTOM): Attachment file support

SOAP Usage Scenarios

Legacy System Integration

Integration with legacy SOAP servicesCompatible operation with existing SOAP services.

Enterprise Services

Enterprise SOAP servicesFull support for enterprise SOAP services.

Protocol Conversion

Conversion from SOAP to RESTExposing SOAP services as REST API.

GraphQL

Apinizer provides full support for GraphQL protocol with reverse proxy. GraphQL requests are routed directly to backend GraphQL services and all GraphQL features are supported.

Query Support

  • Full query support
  • Field selection
  • Nested queries
  • Variables and fragments

Mutation Support

  • Full mutation support
  • Variables support
  • Complex mutations

Subscription Support

  • Subscription support
  • Real-time updates over WebSocket
  • Event-driven subscriptions

Policy Support

  • Applying policies to GraphQL requests
  • Rate limiting
  • Authentication and authorization
  • Query complexity limiting
GraphQL support works in reverse proxy mode. GraphQL requests are routed through Apinizer to backend GraphQL services and all Apinizer policies (security, rate limiting, authentication) can also be applied to GraphQL requests.

Protocol Comparison

HTTP/HTTPS

Support Level: ✅ Full SupportUsage Scenario: REST APIs, Web services, General-purpose APIs

REST

Support Level: ✅ Full SupportUsage Scenario: Modern APIs, Microservices, Public APIs

WebSocket

Support Level: ✅ Full SupportUsage Scenario: Real-time applications, Chat, Live data streaming

gRPC

Support Level: ✅ Full SupportUsage Scenario: Microservice communication, High performance requirements

SOAP

Support Level: ✅ Full SupportUsage Scenario: Legacy systems, Enterprise services, WS-* standards

GraphQL

Support Level: ✅ Full Support (Reverse Proxy)Usage Scenario: GraphQL APIs, Flexible data querying, Modern APIs

Protocol Conversion

Apinizer can perform conversion between different protocols:
Exposing SOAP services as REST API:
  • Publishing SOAP services as REST endpoints
  • Creating OpenAPI spec from WSDL
  • Converting XML to JSON
  • Converting SOAP messages to REST request/response
Exposing REST APIs as gRPC services:
  • Publishing REST endpoints as gRPC services
  • Creating protocol buffer definitions
  • Converting JSON to protobuf
Converting HTTP requests to WebSocket messages:
  • Converting HTTP requests to WebSocket messages
  • Providing bidirectional communication
  • Real-time communication support

Protocol Selection

REST API

When to Use:
  • General-purpose APIs
  • Web and mobile applications
  • Public APIs
  • Simple and standard API design

gRPC

When to Use:
  • Microservice communication
  • High performance requirements
  • Internal services
  • Binary serialization requirement

WebSocket

When to Use:
  • Real-time applications
  • Chat, notifications
  • Live data streaming
  • Bidirectional communication requirement

SOAP

When to Use:
  • Legacy systems
  • Enterprise services
  • WS-* standards requirement
  • Enterprise integrations

GraphQL

When to Use:
  • Flexible data querying requirement
  • Client-driven API design
  • Over-fetching/under-fetching issues
  • Modern APIs

Next Steps