Through model is generally used for many to many data relation. 
For example you have 3 models: 
- Userwith- idand- usernamefields;
- Teamwith- idand- teamNamefields;
- TeamMemberwith- userIdand- teamIdfields.
User can be a member of many Team and Team can have many User. And the relation of User and Team will be stored in TeamMember.
To create many to many relations in loopback you have to add relation property to your model definition files:
- In Usermodel definition file (user.json)
"relations": {
  "teams": {
    "type": "hasMany",
    "model": "team",
    "foreignKey": "userId",
    "through": "teamMember"
  }
}
 
 
- In Teammodel definition file
"relations": {
  "users": {
    "type": "hasMany",
    "model": "user",
    "foreignKey": "teamId",
    "through": "teamMember"
  }
}
 
 
- And in TeamMembermodel definition file
"relations": {
  "user": {
    "type": "belongsTo",
    "model": "user",
    "foreignKey": "userId"
  },
  "team": {
    "type": "belongsTo",
    "model": "team",
    "foreignKey": "teamId"
  }
}
 
 
You can also find information about "through model" on StrongLoop's docs