Strange outputs using indexOf to split a string

Hello! I haven't been able to find a solution as to why this code doesn't work all the time. I am using an Arudino Uno with an Adafruit WINC1500 Wifi shield to retrieve random data from a website in the structure of two integers separated by a comma. (such as 13523,12312). The Arduino is retrieving the string integers without issue, but when i try to separate the string into two, it only works half the time. Here are the last 3 outputs i received and the code i am using.

IntegerA: -32516
IntegerB: 28150

IntegerA: 7514
IntegerB: -12404

IntegerA: 19218
IntegerB: 23369

int IntegerA = stringinput.substring(0, stringinput.indexOf(",")).toInt();
  int IntegerB = stringinput.substring(stringinput.indexOf(",") + 1).toInt();
  Serial.print("IntegerA: ");
  Serial.print("IntegerB: ");

What is the largest number that an int data type can hold?