Skip to content

Ports & endpoints

This page is the network reference for CORE-M: which port carries which protocol, the canonical REST paths, and the real-time WebSocket. All ports listed are the standard IANA assignments for their protocol.

PortProtocolSurfaceNotes
8080HTTPREST APIREST API for the platform
1883MQTTDevice ingestionPlaintext MQTT
8883MQTTSDevice ingestionMQTT over TLS
5683CoAPDevice ingestionPlaintext CoAP (UDP)
5684CoAPSDevice ingestionCoAP over DTLS (UDP)
5683LwM2MDevice managementLwM2M over CoAP (UDP)
5684LwM2M (DTLS)Device managementLwM2M over CoAP/DTLS (UDP)
161SNMPDevice pollingSNMP poll (UDP)
162SNMP trapDevice pollingSNMP trap receiver (UDP)

The full, always-current endpoint list is the in-app OpenAPI/Swagger, generated per service. The table below is the confirmed core path set. All paths are served on port 8080 under the /api/v1 prefix unless noted.

MethodPathPurposeAuth
GET/healthzLivenessNone
GET/readyzReadinessNone
POST/api/v1/callbacks/arcARC confirmation callbackHMAC (no bearer)
MethodPathPurpose
POST/api/v1/auth/loginAuthenticate, receive tokens
POST/api/v1/auth/refreshRotate token pair
POST/api/v1/auth/validateValidate a JWT (internal)
POST/api/v1/auth/api-keysCreate an API key

Auth also exposes tenant, group, SSO, MFA, session, and scoped-token routes — see the auth Swagger and Security & compliance.

MethodPathPurpose
POST/api/v1/devicesRegister a device
GET/api/v1/devices/{device_id}Get a device
GET/api/v1/devicesList devices (filters + pagination)
PATCH/api/v1/devices/{device_id}Update a device
DELETE/api/v1/devices/{device_id}Soft-delete a device
Section titled “Device link (provisioning, RPC, gateways, attributes, OTA)”
MethodPathPurpose
POST/api/v1/provisionProvision a device (key/claim flow)
POST/api/v1/devices/{device_id}/rpcSend a server-to-device RPC
GET/api/v1/devices/rpc/{correlation_id}Fetch an RPC result by correlation ID
POST/api/v1/gateway/{gateway_device_id}/connectGateway connects a child device
POST/api/v1/gateway/{gateway_device_id}/telemetryGateway submits child telemetry
POST/api/v1/gateway/{gateway_device_id}/rpc-responseGateway returns a child RPC result

See Device RPC for the RPC lifecycle and Connecting devices for provisioning paths.

MethodPathPurpose
POST/api/v1/telemetryIngest one or more points
GET/api/v1/telemetry/{device_id}/latestLatest snapshot (hot store)
GET/api/v1/telemetry/{device_id}Historical query (cold store)

See Sending telemetry for ingestion and Telemetry query & retention for the query model.

MethodPathPurpose
POST/api/v1/rulesCreate a rule
GET/api/v1/rules/{rule_id}Get a rule
GET/api/v1/rulesList rules
PATCH/api/v1/rules/{rule_id}Update a rule
DELETE/api/v1/rules/{rule_id}Delete a rule
POST/api/v1/rules/{rule_id}/enableEnable a rule
POST/api/v1/rules/{rule_id}/disableDisable a rule
MethodPathPurpose
GET/api/v1/anchorsList recent anchor batches
GET/api/v1/anchors/batches/{batch_id}Get batch status
MethodPathPurposeAuth
GET/api/v1/verify/hash/{data_hash_hex}Proof by data hashNone (publicly verifiable)
POST/api/v1/verify/rawProof from raw fieldsRequired (tenant scope)
GET/api/v1/verify/batch/{batch_id}Full batch proofRequired (tenant scope)

See Verification for the proof structure and the caller-side verification steps.

Real-time data is delivered by the dashboard BFF over a WebSocket at /ws. The connection is authenticated with the JWT access token. Clients subscribe to device telemetry or platform events and can request a short historical backfill; the server pushes live telemetry, device-status changes, rule triggers, and anchor confirmations.

wss://<host>/ws?token=<access_token>
DirectionMessage types
Client → serversubscribe, unsubscribe, backfill
Server → clienttelemetry, device_status, rule_triggered, anchor_confirmed, backfill_response