---
name: dataminer-http-communication
description: 'HTTP/HTTPS communication for DataMiner connectors: session and connection structure, request/response handling, authentication, HTTPS, dynamic configuration, and JSON response parsing. Use when implementing or modifying HTTP communication in connectors.'
argument-hint: 'Describe the HTTP task: e.g. "add HTTP session for REST API", "configure HTTPS with certificate", "parse JSON response"'
license: LicenseRef-Skyline-Agent-Marketplace
metadata:
updated: 2026-09-14
version: 1.3
---
# DataMiner HTTP Communication
## Changelog
| Version | Date | Changes |
|---------|------|---------|
| 1.3 | 2026-09-14 | Corrected the HTTP read-versus-dummy rationale independently of optional generated helper output. |
| 1.2 | 2026-09-11 | Corrected keyed authentication headers, secret handling, secure JSON deserialization, and certificate-validation guidance. |
This skill provides guidance for implementing HTTP/HTTPS communication in DataMiner connectors.
## Purpose
HTTP is a common protocol for device communication, REST APIs, and web services. This skill covers:
- Session and connection structure
- Request/response handling
- Authentication and HTTPS
- Dynamic configuration
- JSON response parsing
## Reference Files
| File | Contents | Use Case |
|------|----------|----------|
| `http-fundamentals.md` | Overview, sessions, authentication, status codes | Understanding HTTP in DataMiner |
| `http-implementation.md` | Requests, headers, body, responses | Building HTTP sessions |
| `http-configuration.md` | Element config, dynamic IP, HTTPS, proxy | Runtime configuration |
| `http-parsing.md` | Secure JSON parsing with the SecureCoding runtime and analyzer packages | Processing API responses |
| `http-examples.md` | Complete examples, patterns, internal flow | Implementation reference |
## Parameter Type Rules for HTTP Connectors
HTTP response parameters **MUST** use `read` — **NEVER** `dummy`.
| Parameter Purpose | `` | `` | Notes |
|-------------------|----------|---------------|-------|
| HTTP status code (e.g. PID 100) | `read` | `false` | Internal value for QAction error checking |
| HTTP response body (e.g. PID 101) | `read` | `false` | Intermediate — parsed by QAction |
| Parsed scalar (user-facing) | `read` | `true` | Displayed on element page |
| Parsed scalar (internal) | `read` | `false` | Used by other QActions, not operator-facing |
| AfterStartup / QAction trigger | `dummy` | `false` | Carries no data — exists only to trigger a QAction |
**Why not `dummy`?** — This is a runtime/data-model rule, not a generated-helper limitation. A dummy parameter is intended as an internal trigger and does not represent stored response data. Generated helper versions can expose a dummy `SLProtocolExt` property, but response status/body values must still use `read` parameters.
## When to Load
| Task | Load These Files |
|------|------------------|
| New HTTP connector | All files |
| Adding HTTP session | `http-fundamentals.md` + `http-implementation.md` |
| Dynamic IP/HTTPS setup | `http-configuration.md` |
| Parsing JSON responses | `http-parsing.md` |
| Need examples | `http-examples.md` |
## Documentation
Online docs: `https://aka.dataminer.services/http-connections`
## Related Skills
- [Protocol Schema Reference](../dataminer-connector-core/SKILL.md) - XML schema for HTTP elements
- [QActions](../dataminer-connector-core/references/logic-qactions.md) - Processing HTTP responses
- [Execution Flow](../dataminer-connector-core/references/logic-execution-flow.md) - How sessions execute