HTTP(S) Connector
7 minute read
Overview
The HTTP(S) connector receives telemetry data, logs, metrics, and events pushed to HTTP/HTTPS endpoints. Edge Delta acts as an HTTP server, accepting data from webhooks, custom applications, monitoring tools, and third-party services that publish data via HTTP POST requests. Content streams into Edge Delta Pipelines for analysis by AI teammates through the Edge Delta MCP connector.
The connector supports various data formats (JSON, text, compressed), configurable authentication (Bearer token, Basic auth, custom headers), TLS/SSL encryption, path-based routing, and automatic metadata extraction from HTTP requests.
When you add this streaming connector, it appears as a HTTP source in your selected pipeline. AI teammates access this data by querying the Edge Delta backend with the Edge Delta MCP connector.
Add the HTTP(S) Connector
To add the HTTP(S) connector, you configure Edge Delta to listen on a specified port and IP address, define path-based routing patterns, and set up authentication to secure the endpoint.
Prerequisites
Before configuring the connector, ensure you have:
- Edge Delta agent deployed with network access to receive inbound HTTP/HTTPS traffic
- Firewall rules configured to allow inbound traffic on the designated port
- Identified port number and authentication method for the endpoint
Configuration Steps
- Navigate to AI Team > Connectors in the Edge Delta application
- Find the HTTP(S) connector in Streaming Connectors
- Click the connector card
- Configure the Port number to listen on
- Set the Listen address (default: 0.0.0.0)
- Configure Read Timeout for incoming connections
- Optionally configure Advanced Settings for path filtering, compression, TLS, or authentication
- Select a target environment
- Click Save
The connector now listens for HTTP POST requests and streams content.

Configuration Options
Connector Name
Name to identify this HTTP(S) connector instance.
Port
Port number to listen on for incoming HTTP/HTTPS requests.
Format: Integer between 1-65535
Examples:
3421
- Standard HTTP port8443
- Standard HTTPS port9090
- Custom port
Note: Ports below 1024 require elevated privileges. Use ports 1024+ for non-root deployments.
Listen
IP address the HTTP server will bind to.
Format: Valid IPv4 address
Examples:
0.0.0.0
- All interfaces (default)192.168.1.100
- Specific interface127.0.0.1
- Localhost only (testing)
Read Timeout
Maximum time to wait for incoming data on established connections.
Format: Duration with unit
Default: 1 minute
Examples:
30s
- 30 seconds for fast timeout1m
- 1 minute (default)2m
- 2 minutes for large payloads
Advanced Settings
Included Paths
Filter incoming requests by URL path using Golang regular expression patterns. Only matching requests are accepted.
Format: Golang regex pattern
Default: .*
(accept all paths)
Examples:
/v1/.*
- All paths under/v1
/v1/(logs|metrics|events)
- Specific endpoints only/api/.*
- All API paths
Use Cases:
- Organize different data types on different paths
- Accept only versioned API endpoints
- Separate production and development traffic
Compression
Compression format expected for incoming data.
Values: None, gzip, zstd, snappy
Default: None (uncompressed)
Use Cases:
gzip
- Most common, 60-80% bandwidth reductionzstd
- High compression ratiosnappy
- Fast compression/decompressionNone
- No compression (default)
TLS
Optional TLS/SSL configuration for HTTPS encryption.
Configuration Options:
- Ignore Certificate Check: Disables SSL/TLS certificate verification. Use with caution in testing environments only.
- CA File: Absolute file path to the CA certificate for SSL/TLS connections
- CA Path: Absolute path where CA certificate files are located
- CRT File: Absolute path to the SSL/TLS certificate file
- Key File: Absolute path to the private key file
- Key Password: Optional password for the key file
- Client Auth Type: Client authentication type. Default is noclientcert.
- Minimum Version: Minimum TLS version. Default is TLSv1_2.
- Maximum Version: Maximum TLS version allowed for connections
When to Enable:
- Public endpoints exposed to internet
- Compliance requirements for encryption
- Sensitive data transmission
- Production deployments
Authentication
Authentication settings control access to the HTTP endpoint.
Strategy Options:
- Bearer Token: Requires
Authorization: Bearer <token>
header- Secret: Token value clients must provide
- Basic Auth: Standard HTTP Basic Authentication
- User Name: Username for authentication
- Password: Password for authentication
- None: No authentication (use only in secure/isolated networks)
Examples:
- Bearer token for API integration
- Basic auth for simple username/password
- None for VPC-internal endpoints with network isolation
Security Note: Always use authentication for public endpoints. Combine with TLS for production.
Metadata Level
This option is used to define which detected resources and attributes to add to each data item as it is ingested by Edge Delta. You can select:
- Required Only: This option includes the minimum required resources and attributes for Edge Delta to operate.
- Default: This option includes the required resources and attributes plus those selected by Edge Delta
- High: This option includes the required resources and attributes along with a larger selection of common optional fields.
- Custom: With this option selected, you can choose which attributes and resources to include. The required fields are selected by default and can’t be unchecked.
Based on your selection in the GUI, the source_metadata
YAML is populated as two dictionaries (resource_attributes
and attributes
) with Boolean values.
See Choose Data Item Metadata for more information on selecting metadata.
HTTP(S)-specific metadata included:
server.port
- Port number server is listening onhttp.route
- URL path of the requesthttp.scheme
- HTTP or HTTPShttp.method
- HTTP method (POST, GET, PUT)http.request.method
- Detailed request method
Rate Limit
Rate limit configuration to control maximum request rate and manage processing capacity.
Target Environments
Select the Edge Delta pipeline (environment) where you want to deploy this connector.
How to Use the HTTP(S) Connector
The HTTP(S) connector integrates seamlessly with AI Team, enabling analysis of webhook events and HTTP-pushed data. AI teammates automatically leverage the ingested data based on the queries they receive and the context of the conversation.
Use Case: Webhook Event Processing
Receive webhook notifications from third-party services like payment processors, order management systems, or inventory platforms. AI teammates analyze patterns, detect anomalies, and correlate events across multiple services. When combined with PagerDuty alerts, teammates automatically query recent webhook events during incident investigation to identify which external service triggered the issue and correlate with internal system behavior.
Configuration: Port 8443 with HTTPS enabled, path filter /v1/webhooks/.*
, Bearer token authentication.
Use Case: Serverless Function Logging
Accept structured logs from AWS Lambda, Azure Functions, or other serverless platforms via simple HTTP POST requests. AI teammates analyze logs to identify performance bottlenecks, memory issues, and execution failures. This is valuable when investigating function failures—teammates can correlate error patterns with execution duration and memory usage to recommend configuration optimizations.
Configuration: Port 3421, path filter /v1/logs
, gzip compression enabled, no auth (VPC-internal).
Use Case: Custom Application Metrics
Collect custom business metrics (conversion rates, cart abandonment, user engagement) that applications send via HTTP. AI teammates correlate business metrics with operational telemetry to identify how application performance affects business outcomes. When integrated with Jira, teammates can automatically document business impact by combining metric trends with error rates.
Configuration: Port 3421, path filter /v1/metrics
, Basic authentication, no compression for small payloads.
Troubleshooting
Connection refused errors: Verify Edge Delta is listening on configured port (netstat -tuln | grep 3421
). Check firewall rules allow inbound traffic.
Request timeout errors: Increase Read Timeout setting for large payloads or slow networks. Check network latency with ping/traceroute.
401 Unauthorized errors: Verify authentication credentials exactly match configuration. Check header format for Bearer tokens (Authorization: Bearer token
).
SSL/TLS handshake failures: Ensure TLS is enabled with valid certificate and private key. Verify certificate matches hostname. Check certificate hasn’t expired.
404 Not Found on valid endpoint: Check Included Paths regex pattern matches request path. Test regex with online validator. Verify configuration deployed to all agents.
Data sent but not appearing: Verify JSON payload is well-formed. Ensure Content-Type: application/json
header set. Check for pipeline filters dropping data.
Compression errors: Ensure Compression setting matches client’s compression format. Verify Content-Encoding
header set correctly. Test decompression manually.
High latency: Check network round-trip time. Enable compression for large payloads. Monitor Edge Delta agent resource usage (CPU, memory).
Too many connections: Configure HTTP client to use connection pooling and keep-alive. Reuse client objects across requests. Check file descriptor limits.
Sending Data Examples
Python
import requests
url = "http://edge-delta-host:3421/v1/logs"
log_event = {
"timestamp": "2024-10-01T14:30:00Z",
"level": "ERROR",
"message": "Payment processing failed",
"service": "payment-service"
}
response = requests.post(url, json=log_event)
print(f"Status: {response.status_code}")
cURL
# With authentication
curl -X POST https://edge-delta-host:8443/v1/events \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_TOKEN" \
-d '{"event":"user_login","timestamp":"2024-10-01T14:30:00Z"}'
# Compressed
echo '{"level":"ERROR","message":"Timeout"}' | gzip | \
curl -X POST http://edge-delta-host:3421/v1/logs \
-H "Content-Encoding: gzip" \
--data-binary @-
JavaScript/Node.js
const axios = require('axios');
const logEvent = {
timestamp: new Date().toISOString(),
level: "ERROR",
message: "Database timeout"
};
axios.post('http://edge-delta-host:3421/v1/logs', logEvent)
.then(res => console.log(`Sent: ${res.status}`))
.catch(err => console.error(`Failed: ${err.message}`));
Next Steps
- Learn about creating custom teammates that can use HTTP(S) webhook data
- Explore the Edge Delta MCP connector for querying ingested data
For additional help, visit AI Team Support.