There are cases in which you would like to send a payload and verify the response to determine if is services is up and active for example, if you need to detrerming if a down stream service is connected and functioning correctly.
To achieve this you will need to manually update a few fields in the database and optionally create a custom response checker specifically for that monitor to verify the response from the uptime monitor request.
In this example, you will need to set the following fields in the database:
More details on these fields can be found in the section "Manually Modifying Monitors"
We will want to do some custom verification specifically for the response of this check.
Our checker could look something like the following:
class ExampleChecker implements UptimeResponseChecker
public function isValidResponse(ResponseInterface $response, Monitor $monitor) : bool
return $response->getStatusCode() === Response::HTTP_OK
&& (json_decode((string) $response->getBody(), true))['foo'] === 'bar';
public function getFailureReason(ResponseInterface $response, Monitor $monitor) : string
return vsprintf('Foo returned %s instead of bar with a status code of %s', [
json_decode((string) $response->getBody(), true)['foo'],
This workflow is extremely flexible and should allow for some pretty advanced uptime and monitoring checks.