async fn search_things(
        &self,
        input: SearchThingsRequest,
    ) -> Result<SearchThingsResponse, RusotoError<SearchThingsError>> {
        let mut request = self.new_signed_request("POST", "/");
        request.add_header("x-amz-target", "IotThingsGraphFrontEndService.SearchThings");
        let encoded = serde_json::to_string(&input).unwrap();
        request.set_payload(Some(encoded));

        let response = self
            .sign_and_dispatch(request, SearchThingsError::from_response)
            .await?;
        let mut response = response;
        let response = response.buffer().await.map_err(RusotoError::HttpDispatch)?;
        proto::json::ResponsePayload::new(&response).deserialize::<SearchThingsResponse, _>()
    }
<p>Searches for things associated with the specified entity. You can search by both device and device model.</p> <p>For example, if two different devices, camera1 and camera2, implement the camera device model, the user can associate thing1 to camera1 and thing2 to camera2. <code>SearchThings(camera2)</code> will return only thing2, but <code>SearchThings(camera)</code> will return both thing1 and thing2.</p> <p>This action searches for exact matches and doesn't perform partial text matching.</p>
rusoto/services/iotthingsgraph/src/generated.rs