SwitchBot has human-readable documentation for its API. Unfortunately this doesn't include a machine-readable API specification, which is why I've adapted their documentation into OpenAPI. Using this, you can generate API clients, validate your requests, and more easily explore the available endpoints.
/v1.1/devices(list devices) is fully described/v1.1/devices/{deviceId}/status(device status) is fully described/v1.1/devices/{deviceId}/commands(contorl devices) is not described