You need to use a JSON deserializer to read the length variable. Right now you are trying to Int32.Parse("{\"text\":\"8\"}"), which doesn't make sense.
Example (this is for Newtonsoft JSON):
public string RunTts(string lengthObject) {
JToken token = JObject.Parse(lengthObject);
int length = (int)token.SelectToken("text");
return Membership.GeneratePassword(length, 1);
}