# Application Interfaces

Managed documentation for Application Interfaces.

# Integration Overview

<!-- BOOKSTACK-DOCUMENT-RELEASE:BEGIN -->
# Integration Overview

| Field | Value |
| --- | --- |
| Distribution | WCT English — OpenC5ISR |
| Product | OpenC5ISR |
| Release | 0.15.1 |
| Deployment | `openc5isr-en.wallacecorptech.com` |
| Source | `/srv/wct/releases/OpenC5ISR-v0.15.0` |
| Evidence | Reference contract and scan summary |
| Source fingerprint | `63d2b1097707e25d666401cdc6362e395968600a40a08690210cd8c0b75fbf50` |
| Status | Generated baseline — human review required |

> **Verification boundary:** This page combines platform design guidance with static evidence from the release. It does not prove that every detected interface is enabled, reachable, secure, or operational in the deployed environment.

## Integration contract checklist

| Contract area | Required definition |
| --- | --- |
| Ownership | Producer, consumer, responsible team and change authority. |
| Addressing | Base URL/topic/path, environment and discovery mechanism. |
| Identity & policy | Authentication, authorization, releasability and tenant/edition boundary. |
| Data contract | Schema, semantic type, units, coordinate/time reference, identifiers and optionality. |
| Behavior | Methods/events, ordering, idempotency, retries, timeout, backpressure and error model. |
| Scale | Rate, size, concurrency, retention and latency targets. |
| Observability | Correlation IDs, metrics, logs, audit and health indication. |
| Lifecycle | Versioning, compatibility, deprecation, migration and test ownership. |

## Observed interface summary

| Interface type | Candidates |
| --- | --- |
| REST/HTTP | 11 |
| WebSocket | 8 |
| Environment variables | 244 |
| Ports | 99 |
| External URLs | 1000 |
| Semantic files | 22 |
<!-- BOOKSTACK-DOCUMENT-RELEASE:END -->

---

## Maintainer Notes

<!-- BOOKSTACK-DOCUMENT-RELEASE:NOTES-BEGIN -->
Add human-reviewed deployment notes, corrections, decisions, screenshots, and links here. Content outside the generated block is preserved on future runs.
<!-- BOOKSTACK-DOCUMENT-RELEASE:NOTES-END -->

# REST Endpoints

<!-- BOOKSTACK-DOCUMENT-RELEASE:BEGIN -->
# REST Endpoints

| Field | Value |
| --- | --- |
| Distribution | WCT English — OpenC5ISR |
| Product | OpenC5ISR |
| Release | 0.15.1 |
| Deployment | `openc5isr-en.wallacecorptech.com` |
| Source | `/srv/wct/releases/OpenC5ISR-v0.15.0` |
| Evidence | Static route extraction |
| Source fingerprint | `63d2b1097707e25d666401cdc6362e395968600a40a08690210cd8c0b75fbf50` |
| Status | Generated baseline — human review required |

> **Verification boundary:** This page combines platform design guidance with static evidence from the release. It does not prove that every detected interface is enabled, reachable, secure, or operational in the deployed environment.

## Candidate endpoints

| Method | Path | Framework/evidence | Confidence | Source |
| --- | --- | --- | --- | --- |
| GET | `api_path` | express | server declaration | `drivers/openanalytics_agent.py` |
| GET | `base_url` | express | server declaration | `drivers/openanalytics_agent.py` |
| GET | `http://127.0.0.1:18782/api/integrations` | client-reference | client reference | `tests/compiled_deployment_smoke_test.py` |
| GET | `id` | express | server declaration | `drivers/openanalytics_agent.py` |
| GET | `lab_path` | express | server declaration | `drivers/openanalytics_agent.py` |
| GET | `location` | express | server declaration | `drivers/openanalytics_agent.py` |
| GET | `max_notebooks` | express | server declaration | `drivers/openanalytics_agent.py` |
| GET | `name` | express | server declaration | `drivers/openanalytics_agent.py` |
| GET | `owner` | express | server declaration | `drivers/openanalytics_agent.py` |
| GET | `token` | express | server declaration | `drivers/openanalytics_agent.py` |
| GET | `token_env` | express | server declaration | `drivers/openanalytics_agent.py` |

## Interpretation

“Server declaration” is stronger evidence than a client reference, but neither proves the route is mounted at the shown base path or exposed in this edition. Routers may add prefixes dynamically; middleware may block access; and feature flags may disable handlers.

## Endpoint documentation template

```text
METHOD /base/path
Purpose:
Authentication/authorization:
Request headers/path/query/body schema:
Semantic type and units:
Success response:
Error responses:
Idempotency/retry behavior:
Rate/size/timeout limits:
Audit/correlation behavior:
Example request and tested release:
```

## Acceptance rule

Promote a candidate endpoint to an authoritative API only after an authenticated test verifies status, schema, policy, failure behavior and the public/base-path mapping.
<!-- BOOKSTACK-DOCUMENT-RELEASE:END -->

---

## Maintainer Notes

<!-- BOOKSTACK-DOCUMENT-RELEASE:NOTES-BEGIN -->
Add human-reviewed deployment notes, corrections, decisions, screenshots, and links here. Content outside the generated block is preserved on future runs.
<!-- BOOKSTACK-DOCUMENT-RELEASE:NOTES-END -->

# WebSocket Interfaces

<!-- BOOKSTACK-DOCUMENT-RELEASE:BEGIN -->
# WebSocket Interfaces

| Field | Value |
| --- | --- |
| Distribution | WCT English — OpenC5ISR |
| Product | OpenC5ISR |
| Release | 0.15.1 |
| Deployment | `openc5isr-en.wallacecorptech.com` |
| Source | `/srv/wct/releases/OpenC5ISR-v0.15.0` |
| Evidence | Static WebSocket extraction |
| Source fingerprint | `63d2b1097707e25d666401cdc6362e395968600a40a08690210cd8c0b75fbf50` |
| Status | Generated baseline — human review required |

> **Verification boundary:** This page combines platform design guidance with static evidence from the release. It does not prove that every detected interface is enabled, reachable, secure, or operational in the deployed environment.

## Candidate endpoints

| Endpoint | Evidence | Source |
| --- | --- | --- |
| `[invalid URL]` | url | `tests/raspbot_agent_smoke_test.py` |
| `wss://.../` | url | `OPENLVC-DEMO.md` |
| `wss://relay.example/` | url | `tests/openeyes_smoke_test.py` |
| `wss://relay.example/ws/raspbot` | url | `open-eyes/index.html` |
| `wss://relay.example/ws/raspbot` | url | `public/open-eyes/index.html` |
| `wss://relay.example/ws/raspbot` | url | `tests/openeyes_smoke_test.py` |
| `wss://your-relay/ws/raspbot` | url | `README-OPENEYES.md` |
| `wss://your-relay/ws/raspbot` | url | `drivers/raspbot-openeyes.env.example` |

## Required session contract

- URL/base path and whether TLS (`wss`) is mandatory.
- Authentication handshake, role/asset authorization and reconnect token behavior.
- Message envelope, schema/version, ordering, sequence numbers and timestamps.
- Heartbeat, idle timeout, reconnect/backoff and resume behavior.
- Maximum message/rate, binary/media framing and backpressure/drop policy.
- Nginx upgrade headers, proxy timeout and public-to-backend mapping.

## Browser verification

```text
Open developer tools → Network → WS
Confirm HTTP 101 upgrade, authenticated session, expected message flow,
heartbeat/reconnect behavior, and no credential leakage in URL/query strings.
```
<!-- BOOKSTACK-DOCUMENT-RELEASE:END -->

---

## Maintainer Notes

<!-- BOOKSTACK-DOCUMENT-RELEASE:NOTES-BEGIN -->
Add human-reviewed deployment notes, corrections, decisions, screenshots, and links here. Content outside the generated block is preserved on future runs.
<!-- BOOKSTACK-DOCUMENT-RELEASE:NOTES-END -->

# Data Formats and Contracts

<!-- BOOKSTACK-DOCUMENT-RELEASE:BEGIN -->
# Data Formats and Contracts

| Field | Value |
| --- | --- |
| Distribution | WCT English — OpenC5ISR |
| Product | OpenC5ISR |
| Release | 0.15.1 |
| Deployment | `openc5isr-en.wallacecorptech.com` |
| Source | `/srv/wct/releases/OpenC5ISR-v0.15.0` |
| Evidence | File-format inventory and integration standard |
| Source fingerprint | `63d2b1097707e25d666401cdc6362e395968600a40a08690210cd8c0b75fbf50` |
| Status | Generated baseline — human review required |

> **Verification boundary:** This page combines platform design guidance with static evidence from the release. It does not prove that every detected interface is enabled, reachable, secure, or operational in the deployed environment.

## Observed format indicators

| Extension/format | Files |
| --- | --- |
| `.json` | 76 |
| `.csv` | 21 |
| `.ttl` | 17 |
| `.xml` | 7 |
| `.rdf` | 4 |

## Canonical data requirements

- Stable identifiers for entities, observations, tasks, products and events.
- Explicit units, coordinate reference, timestamps/time scale and uncertainty.
- Schema/semantic version and compatibility behavior.
- Source/provenance, confidence and processing lineage.
- Handling/releasability/retention metadata and object-level access controls.
- A compact event form plus artifact reference for large imagery, video or datasets.

## Versioning rule

Prefer backward-compatible additive changes. Breaking changes require a new schema/semantic version, a transition period or adapter, explicit migration tests and release notes identifying affected producers and consumers.
<!-- BOOKSTACK-DOCUMENT-RELEASE:END -->

---

## Maintainer Notes

<!-- BOOKSTACK-DOCUMENT-RELEASE:NOTES-BEGIN -->
Add human-reviewed deployment notes, corrections, decisions, screenshots, and links here. Content outside the generated block is preserved on future runs.
<!-- BOOKSTACK-DOCUMENT-RELEASE:NOTES-END -->