Yata logo

Yata logo The YATA bot

The YATA bot is a discord bot made for Torn.

It has a set of appplication commands made to facilitate your Torn life while keeping your server secure. It has been designed to fully use the new interactions features of discord, minimizing the amount of tying and offering a nice UX, even on mobile.

For any questions that the documentation failed to answer, for suggestions or bug reports please join the Yata discord server.

Tutorials

Like most of the third party tools on torn, the bot often uses the torn API (which can be seen as a way for computer programs to talk to TORN's database). To limit the access of the API, keys (referred to as API keys) are required. Every users have their own API keys with various access levels. They can be managed on the preference panel in game.

You can create keys with a certain access level. To make it simple: a public key only have access to public data (things that can be accessed by any player), a limited key have access to all your private data except the logs and a full access key have access to all your private data including the logs. Minimal and custom keys are just here to confuse everyone.

For various reasons the API can throw errors instead of giving the data we asked for. The most common errors you can encounter with the bot are described in the #faq section. They will show up in discord like that: Image of an API error message. The meaning of each error is described on the torn API documentation.

If you want to know more about the API or play with it, in addition to the official documentation you can check out the API discord community's website.

Setting up the verification module is the most common feature of this bot. Moreover it requires setting up server API keys. So even if your end goal is not verification you might want to follow this tutorial to get started.

Verifying a person on discord is made possible through the torn API which makes the link between a discord ID and a torn ID. Through this API, anyone can ask the torn ID of any discord user and vice versa. For example with this call https://api.torn.com/user/148747?selections=discord&key=EnterYourKeyHere anyone can know that Bogie's discord ID is 1168319686270795856.

Work in progress...

FAQ

  • Q: I've got API errors, what's going on ?
  • A: API errors can happen for several reasons. The most common ones are:

    Code 2: Incorrect Key
    Means that most probably the key used has been deleted in game.

    Code 6: Incorrect ID
    Will most commonly rise during verification. In this case it means that the member is not officially verified. They should do so on the official discord forum or following this link.

    Code 9: API disabled
    Means that the Torn API has been temporarily shut down. There's nothing much we can do about it except waiting.

    Code 16: Access level of this key is not high enough
    Means that you're using a key with not enough permissions. Limited access should be enough for all commands. Some commands like notifying retals requires faction API access which is an in game position permission.

  • Q: I have this permission errors when I try use the verify module
    Forbidden: 403 Forbidden (error code: 50013): Missing Permissions
    What is it?
  • A: This is an error issued by discord because the bot is missing permissions.
  • Q: How can I fix it?
  • A: It can be fixed by:
    1. Giving the bot admin permissions (lower its permissions only if you know what you're doing).
    2. Putting the bot's role above the highest role it needs to assign (the bot can't assign roles that are higher than its own).

  • Q: My bot left the server. What happened?
  • A: You need to have at least one valid server key. Without it the bot we leave your server at some point.
    It can be setup with the command /server keys add. Bear in mind that keys of inactive member becomes invalid after 1 weeks.
  • Q: What is a valid key?
  • A: Two tests are made to check if a key is valid. It needs to be able to call:
    • torn/?selections=rankedwars,territorywars,rackets,raids and
    • user/?selections=profile,discord,timestamp
    without issuing error codes 1, 2, 10, 13 or 16.

  • Q: Why is the verification module disabled?
  • A: Because the verification module is not enabled.
  • Q: How can I enable it?
  • A: By setting it up with the command /verification options. For more details check out the documentation.

Documentation