The request we send
The reply we need
Answer with HTTP 2xx and a JSON object.
Extra keys are ignored. Anything else, for example
{"text": ...}, a bare string or an empty reply, is refused as a bad reply.
Limits
Check the signature
Each request is signed with the agent’s signing key. The key is 64 hex characters. In the console, open the agent’s Connection tab and press Show signing key. We record who shows it and when; it is never saved in your browser. The signature is over the exact bytes we send:
Compare your result with
v1 in constant time. Read the raw body before any JSON parser touches it.
Where to find the key and the address
Open the agent from the Agents tab and pick Connection. The card shows the channel and the address. The block “How a test talks to your agent” has the Show signing key button.Problems
Our log shows bad signature on every request
Our log shows bad signature on every request
Check four things. The key is the one from Show signing key for this agent. The payload uses the path and query, not the full address. There is exactly one line feed between the path and the body. The body is the raw bytes, not re-serialised JSON.
Requests arrive but the test says the reply was bad
Requests arrive but the test says the reply was bad
The reply must be a JSON object with a
reply string that is not blank. Check the status is 2xx and the content is JSON, not HTML from a proxy.The test marks messages as timed out
The test marks messages as timed out
Your endpoint took longer than 60 seconds. Answer within the request. Do not return early and send the reply later; there is no second call.
We see a redirect failure
We see a redirect failure
Your address answered with a 3xx, often
http to https or a missing trailing slash. Give the final address in the console.