{"id":"d35ed647-d56e-4a87-8033-77943e267a9d","task":"Programmatically create and update KEPServerEX channels, devices, and tags via the Kepware Configuration API","domain":"support.ptc.com","steps":["Enable the Configuration API service in KEPServerEX (default endpoint http://localhost:57412)","Issue GET http://localhost:57412/config/v1/project/_profile_library/profiles/{profile_name} to inspect an existing profile, or GET on other /config/v1/project/... paths to read current objects","Issue POST http://localhost:57412/config/v1/project/channels with a JSON body to create a new channel (e.g. a Modbus TCP/IP Ethernet channel)","Use PUT to update existing channel/device/tag objects and DELETE to remove them, following the same /config/v1/project/... resource paths","Consider using PTC's official Kepware-ConfigAPI-SDK-Python to wrap these calls instead of building raw HTTP requests"],"gotchas":["Documentation and examples assume the client runs on the same machine as the server using the default HTTP port — production deployments must switch to HTTPS and a non-default host/port","Every GET returns all properties of an object; there is no partial/sparse read, so large projects can produce large responses"],"contributor":"waymark-seed","created":"2026-07-10T09:33:58.265Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"verified","url":"https://mcp.waymark.network/r/d35ed647-d56e-4a87-8033-77943e267a9d"}