[Solved] WorldPing API woes, "Invalid route config"

Some JSON tags are required to be all lowercase, while some are not.
The tags for check id array and check tag array have this requirement.

Having some trouble with POSTing and PUTting to the worldping api.
I’m using the json that I get from GETting as a basis.
For example, GETting an endpoint from the api and adding a check and then trying to update (PUT to /endpoints) i always get a response that says “Invalid route config”.

This is what i get when GETting (just the endpoint fragment):
“id”: 79499,
“orgId”: something,
“name”: “www.lagerhaus.se”,
“slug”: “www_lagerhaus_se”,
“checks”: [],
“tags”: [
“Bupp”, “fluff”, “kardemumma”, “sumak”
“created”: “2018-10-12T14:17:42Z”,
“updated”: “2018-10-12T14:31:36Z”

If I get an endpoint with an already configured check, I get this (just the check portion):
“id”: 222247,
“orgId”: something,
“endpointId”: 73096,
“route”: {
“type”: “byIds”,
“config”: {
“ids”: [3832, 3833]
“type”: “https”,
“frequency”: 60,
“offset”: 16,
“enabled”: true,
“state”: 0,
“stateChange”: “2018-10-11T14:38:47Z”,
“stateCheck”: “2018-10-12T14:44:47Z”,
“settings”: {
“body”: “”,
“headers”: “User-Agent: worldping-api\nAccept-Encoding: gzip\n”,
“host”: “www.johnells.se”,
“method”: “HEAD”,
“path”: “/”,
“port”: 443,
“timeout”: 5,
“validateCert”: true
“healthSettings”: {
“num_collectors”: 3,
“steps”: 3,
“notifications”: {
“enabled”: false,
“addresses”: “”
“created”: “2018-08-16T21:24:54Z”,
“updated”: “2018-10-11T14:36:45Z”

…aaand if i add a check with the following JSON:
“Checks”: [
“Id”: 0,
“EndpointId”: 0,
“Type”: “dns”,
“Frequency”: 120,
“Enabled”: true,
“State”: 0,
“Offset”: 0,
“OrgId”: 0,
“Route”: {
“Type”: “byTags”,
“Config”: {
“Ids”: [],
“Tags”: [“some-tag”]
“HealthSettings”: {
“Num_collectors”: 2,
“Steps”: 2,
“Notifications”: {
“Enabled”: true,
“Addresses”: “matgry@jetshop.se”
“Settings”: {
“Timeout”: 5,
“Host”: null,
“Path”: null,
“Port”: 0,
“Method”: “GET”,
“Body”: null,
“Headers”: null,
“ExpectRegex”: null,
“Hostname”: “www.lagerhaus.se”,
“Name”: null,
“Type”: “a”,
“Server”: null,
“ValidateCert”: false
“StateChange”: null,
“StateCheck”: null,
“Created”: null,
“Updated”: null
I get “invalid route config”. Adding endpoints without checks, adding tags to an existing endpoint and so forth works nicely. I tried to mimic the api JSON (it is different from the json gotten by GETting an endpoint, the checks in the API does not use a config object for checks, but GETting an already configured endpoint includes a config object for checks). Also tried having json with only the active type tags/ids array (in the config object for the check, but no dice).
I must be missing something, but what?