What are Alt Monitors?

Alt Monitors are apart of the Alt Flag system. They are executed when a flag is triggered, they store various amounts of information about the user attempting to Alt. To clarify none of this is automated, you must create alt detections whenever a flag is triggered.


GET /bans/alts/monitoring

This route will return a collection of the latest alt detections, paginated by 25.

Response: 200 OK

{
  "data": [
    {
      "id": 1,
      "steam_id": "76561198056377032",
      "alt_flag_id": 3,
      "ip": "72.169.69.21",
      "detection_type": "ip",
      "lender_steam_id": null,
      "lending_app_id": null,
      "attributes": null,
      "created_at": "2020-08-02T23:41:31.000000Z",
      "updated_at": "2020-08-02T23:41:31.000000Z"
    }
  ],
  "links": {
    "first": "http:\/\/freya.test\/api\/v1\/bans\/alts\/monitoring?page=1",
    "last": "http:\/\/freya.test\/api\/v1\/bans\/alts\/monitoring?page=1",
    "prev": null,
    "next": null
  },
  "meta": {
    "current_page": 1,
    "from": 1,
    "last_page": 1,
    "path": "http:\/\/freya.test\/api\/v1\/bans\/alts\/monitoring",
    "per_page": 25,
    "to": 1,
    "total": 1
  }
}

GET /bans/alts/monitoring/{id}

This route will allow you to grab a specific alt detection by its ID.

Request Payload: https://freya.test/api/v1/bans/alts/monitoring/1

Response: 200 OK

{
  "data": {
    "id": 1,
    "steam_id": "76561198056377032",
    "alt_flag_id": 3,
    "ip": "72.169.69.21",
    "detection_type": "ip",
    "lender_steam_id": null,
    "lending_app_id": null,
    "attributes": null,
    "created_at": "2020-08-02T23:41:31.000000Z",
    "updated_at": "2020-08-02T23:41:31.000000Z"
  }
}

GET /bans/alts/monitoring/find

This route will allow you to find an alt detection by specifying specific search queries. It will return a collection of detections paginated by 25.

Name Type Required Description
steam_id string SteamID on the associated detection.
ip ip IP address on the associated detection.
alt_flag_id int Filter by a specific Alt Flag ID.
detection_type enum Filter by a specific detection type.
lender_steam_id string SteamID of a detected lender.
lending_app_id string Filter by a specific Steam APP ID found by family sharing.

Valid Detection Types

ip - Accounts detected to have a different IP address

family_share - Accounts family sharing

other - External uses

Request Payload: GET https://freya.test/api/v1/bans/alts/monitoring/find?ip=72.169.69.21

Response: 200 OK

{
  "data": [
    {
      "id": 1,
      "steam_id": "76561198056377032",
      "alt_flag_id": 3,
      "ip": "72.169.69.21",
      "detection_type": "ip",
      "lender_steam_id": null,
      "lending_app_id": null,
      "attributes": null,
      "created_at": "2020-08-02T23:41:31.000000Z",
      "updated_at": "2020-08-02T23:41:31.000000Z"
    }
  ],
  "links": {
    "first": "http:\/\/freya.test\/api\/v1\/bans\/alts\/monitoring\/find?page=1",
    "last": "http:\/\/freya.test\/api\/v1\/bans\/alts\/monitoring\/find?page=1",
    "prev": null,
    "next": null
  },
  "meta": {
    "current_page": 1,
    "from": 1,
    "last_page": 1,
    "path": "http:\/\/freya.test\/api\/v1\/bans\/alts\/monitoring\/find",
    "per_page": 25,
    "to": 1,
    "total": 1
  }
}

POST /bans/alts/monitoring/create

You can create an alt detection with this route. You should only create one if an Alt Flag returns back anything but ignore. Therefor the system is working as intended and not marking everyone as an alt.

Name Type Required Description
steam_id string The SteamID you're recording.
alt_flag_id int The Alt Flag that triggered this detection process.
ip string The IP address you're recording.
detection_type enum The type of detection that was triggered to make this record. Valid Detection Types
lender_steam_id string If the detection was found from family sharing add the lenders' SteamID here.
lending_app_id string Required to use the family share checker, is the Steam APP_ID.
attributes array External modding uses.

Request Payload: POST http://freya.test/api/v1/bans/alts/monitoring/create

{
    "steam_id": "76561198056377032",
    "alt_flag_id": 1,
    "ip": "24.021.425.20",
    "detection_type": "ip"
}

Response: 201 Created

{
  "data": {
    "steam_id": "76561198056377032",
    "alt_flag_id": 1,
    "detection_type": "ip",
    "ip": "24.021.425.20",
    "lender_steam_id": null,
    "lending_app_id": null,
    "updated_at": "2020-08-09T05:09:21.000000Z",
    "created_at": "2020-08-09T05:09:21.000000Z",
    "id": 1
  }
}

PUT /bans/alts/monitoring/1/update

This route will allow you to update a specific detection. The fields you leave empty will remain as they once were.

Name Type Required Description
steam_id string The SteamID you're recording.
alt_flag_id int The Alt Flag that triggered this detection process.
ip string The IP address you're recording.
detection_type enum The type of detection that was triggered to make this record. Valid Detection Types
lender_steam_id string If the detection was found from family sharing add the lenders' SteamID here.
lending_app_id string Required to use the family share checker, is the Steam APP_ID.
attributes array External modding uses.

Request Payload: PUT http://freya.test/api/v1/bans/alts/monitoring/1/update

{
    "ip": "24.021.425.14"
}

Response: 200 OK

{
  "data": {
    "id": 1,
    "steam_id": "76561198056377032",
    "alt_flag_id": 1,
    "ip": "24.021.425.14",
    "detection_type": "ip",
    "lender_steam_id": null,
    "lending_app_id": null,
    "attributes": null,
    "created_at": "2020-08-09T05:09:21.000000Z",
    "updated_at": "2020-08-09T05:19:43.000000Z"
  }
}

DELETE /bans/alts/monitoring/1/delete

Permanently deletes a detection record. This cannot ever be recovered. There is no trash method for records, you'd want to trash the alt flag instead.

Request Payload: DELETE http://freya.test/api/v1/bans/alts/monitoring/1/delete

Response: 200 OK

[]