{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"cc94a04f-712b-46b5-815a-b4e2d8a472b4","name":"Another Triple Triad Tracker","description":"This is a RESTful JSON API designed to provide you with all of the data used by [Another Triple Triad Tracker](https://triad.raelys.com/) in an API format.\n\n## Acceptable Use\n\nThe data provided by this API is made possible by open source software, generous crowd funding in support of an ad-free internet, and countless volunteer contributions. This API is restricted to **non-commercial** use. I encourage you to publish projects that make use of this API as open source software, but it is not required. Attribution linking to [ATTT](https://triad.raelys.com/) is greatly appreciated.\n\n## Language\n\nThe API data is available in English, French, German, and Japanese. To request the data in a specific language, just provide the language parameter with the desired locale. Please be aware that not all card \"source\" data is localized.\n\n```\nhttps://triad.raelys.com/api/cards/240?language=fr\n\n ```\n\n| Language | Locale |\n| --- | --- |\n| English | en |\n| French | fr |\n| German | de |\n| Japanese | ja |\n\n## Search\n\nEach of the provided endpoints is searchable via [Ransack](https://activerecord-hackery.github.io/ransack/getting-started/using-predicates/) predicates. In order to search on a particular field, you must add a query parameter to a search endpoint that matches the following format `ATTRIBUTE_LOCALE_PREDICATE=CRITERIA`. We'll take a look at predicates in a bit, but let's have a simple example first.\n\n### Example\n\nI want to query the Cards endpoint and find all of the cards with a name like \"Y'shtola\". I add the query parameter `name_en_cont=y'shtola` which will tell the API to look for all cards with a **name** **cont**aining \"Y'shtola\". This will make my API call look like the following:\n\n```\nhttps://triad.raelys.com/api/cards?name_en_cont=y'shtola\n\n ```\n\n#### Predicates\n\nThe table below lists the predicates supported by the API.\n\n| Predicate | Description |\n| --- | --- |\n| **eq** | Equals |\n| **lt, lteq** | Less than (or equal to) |\n| **gt, gteq** | Greater than (or equal to) |\n| **cont** | Contains |\n| **start, end** | Starts/Ends with |\n| **in** | In list/range of values |\n\n### Complex examples\n\nNow that you've seen all of the predicates, let's take a look at them in action.\n\nIf I want to query the first 5 cards by their ID, I can use any of the following:\n\n```\nhttps://triad.raelys.com/api/cards?id_in=1,2,3,4,5\nhttps://triad.raelys.com/api/cards?id_in=1..5\nhttps://triad.raelys.com/api/cards?id_in=1...6\n\n ```\n\nYou can provide any number of query parameters and they will be AND'd together (no OR, sorry!) The following will let me find all NPCs in Kugane who were added after patch 4.0.\n\n```\nhttps://triad.raelys.com/api/npcs?location_name_en_eq=Kugane&patch_gt=4.0\n\n ```\n\n### Final Notes\n\nIf any of your query conditions are invalid, the API will ignore it. If you find yourself pulling back the full list of results, something is probably wrong!\n\nSome of the more complex attributes (like those in nested objects) are not 1:1 with what you will see in the API results, and they will also be ignored. Please consult the schema information annotated within the relevant [model](https://github.com/mattantonelli/ffxiv-triple-triad/tree/master/app/models) to validate that you are using the correct columns.\n\nIf you have any issues, feel free to give me a shout on my Discord server. A link is available on the homepage of the website.\n\n---\n\n## Search Limit\n\nTo limit the number of results from your search, use the `limit` query parameter. For example, if I only wanted the first Y'shtola card:\n\n```\nhttps://triad.raelys.com/api/cards?name_en_cont=y'shtola&limit=1\n\n ```","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":false,"owner":"1779678","team":17293179,"collectionId":"cc94a04f-712b-46b5-815a-b4e2d8a472b4","publishedId":"TzXzDHRR","public":true,"publicUrl":"https://documenter-api.postman.tech/view/1779678/TzXzDHRR","privateUrl":"https://go.postman.co/documentation/1779678-cc94a04f-712b-46b5-815a-b4e2d8a472b4","customColor":{"top-bar":"222222","right-sidebar":"303030","highlight":"EF5B25"},"documentationLayout":"classic-single-column","customisation":null,"version":"8.11.6","publishDate":"2021-05-29T15:06:43.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{},"logos":{}},"statusCode":200},"environments":[],"user":{"authenticated":false,"permissions":{"publish":false}},"run":{"button":{"js":"https://run.pstmn.io/button.js","css":"https://run.pstmn.io/button.css"}},"web":"https://www.getpostman.com/","team":{"logo":"https://res.cloudinary.com/postman/image/upload/t_team_logo_pubdoc/v1/team/5829309632b8a89379121b40979c58de219bb8bf5bdaf64eb3997bef8f72068e","favicon":""},"isEnvFetchError":false,"languages":"[{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"HttpClient\"},{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"RestSharp\"},{\"key\":\"curl\",\"label\":\"cURL\",\"variant\":\"cURL\"},{\"key\":\"dart\",\"label\":\"Dart\",\"variant\":\"http\"},{\"key\":\"go\",\"label\":\"Go\",\"variant\":\"Native\"},{\"key\":\"http\",\"label\":\"HTTP\",\"variant\":\"HTTP\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"OkHttp\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"Unirest\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"Fetch\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"jQuery\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"XHR\"},{\"key\":\"c\",\"label\":\"C\",\"variant\":\"libcurl\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Axios\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Native\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Request\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Unirest\"},{\"key\":\"objective-c\",\"label\":\"Objective-C\",\"variant\":\"NSURLSession\"},{\"key\":\"ocaml\",\"label\":\"OCaml\",\"variant\":\"Cohttp\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"cURL\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"Guzzle\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"HTTP_Request2\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"pecl_http\"},{\"key\":\"powershell\",\"label\":\"PowerShell\",\"variant\":\"RestMethod\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"http.client\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"Requests\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"httr\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"RCurl\"},{\"key\":\"ruby\",\"label\":\"Ruby\",\"variant\":\"Net::HTTP\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"Httpie\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"wget\"},{\"key\":\"swift\",\"label\":\"Swift\",\"variant\":\"URLSession\"}]","languageSettings":[{"key":"csharp","label":"C#","variant":"HttpClient"},{"key":"csharp","label":"C#","variant":"RestSharp"},{"key":"curl","label":"cURL","variant":"cURL"},{"key":"dart","label":"Dart","variant":"http"},{"key":"go","label":"Go","variant":"Native"},{"key":"http","label":"HTTP","variant":"HTTP"},{"key":"java","label":"Java","variant":"OkHttp"},{"key":"java","label":"Java","variant":"Unirest"},{"key":"javascript","label":"JavaScript","variant":"Fetch"},{"key":"javascript","label":"JavaScript","variant":"jQuery"},{"key":"javascript","label":"JavaScript","variant":"XHR"},{"key":"c","label":"C","variant":"libcurl"},{"key":"nodejs","label":"NodeJs","variant":"Axios"},{"key":"nodejs","label":"NodeJs","variant":"Native"},{"key":"nodejs","label":"NodeJs","variant":"Request"},{"key":"nodejs","label":"NodeJs","variant":"Unirest"},{"key":"objective-c","label":"Objective-C","variant":"NSURLSession"},{"key":"ocaml","label":"OCaml","variant":"Cohttp"},{"key":"php","label":"PHP","variant":"cURL"},{"key":"php","label":"PHP","variant":"Guzzle"},{"key":"php","label":"PHP","variant":"HTTP_Request2"},{"key":"php","label":"PHP","variant":"pecl_http"},{"key":"powershell","label":"PowerShell","variant":"RestMethod"},{"key":"python","label":"Python","variant":"http.client"},{"key":"python","label":"Python","variant":"Requests"},{"key":"r","label":"R","variant":"httr"},{"key":"r","label":"R","variant":"RCurl"},{"key":"ruby","label":"Ruby","variant":"Net::HTTP"},{"key":"shell","label":"Shell","variant":"Httpie"},{"key":"shell","label":"Shell","variant":"wget"},{"key":"swift","label":"Swift","variant":"URLSession"}],"languageOptions":[{"label":"C# - HttpClient","value":"csharp - HttpClient - C#"},{"label":"C# - RestSharp","value":"csharp - RestSharp - C#"},{"label":"cURL - cURL","value":"curl - cURL - cURL"},{"label":"Dart - http","value":"dart - http - Dart"},{"label":"Go - Native","value":"go - Native - Go"},{"label":"HTTP - HTTP","value":"http - HTTP - HTTP"},{"label":"Java - OkHttp","value":"java - OkHttp - Java"},{"label":"Java - Unirest","value":"java - Unirest - Java"},{"label":"JavaScript - Fetch","value":"javascript - Fetch - JavaScript"},{"label":"JavaScript - jQuery","value":"javascript - jQuery - JavaScript"},{"label":"JavaScript - XHR","value":"javascript - XHR - JavaScript"},{"label":"C - libcurl","value":"c - libcurl - C"},{"label":"NodeJs - Axios","value":"nodejs - Axios - NodeJs"},{"label":"NodeJs - Native","value":"nodejs - Native - NodeJs"},{"label":"NodeJs - Request","value":"nodejs - Request - NodeJs"},{"label":"NodeJs - Unirest","value":"nodejs - Unirest - NodeJs"},{"label":"Objective-C - NSURLSession","value":"objective-c - NSURLSession - Objective-C"},{"label":"OCaml - Cohttp","value":"ocaml - Cohttp - OCaml"},{"label":"PHP - cURL","value":"php - cURL - PHP"},{"label":"PHP - Guzzle","value":"php - Guzzle - PHP"},{"label":"PHP - HTTP_Request2","value":"php - HTTP_Request2 - PHP"},{"label":"PHP - pecl_http","value":"php - pecl_http - PHP"},{"label":"PowerShell - RestMethod","value":"powershell - RestMethod - PowerShell"},{"label":"Python - http.client","value":"python - http.client - Python"},{"label":"Python - Requests","value":"python - Requests - Python"},{"label":"R - httr","value":"r - httr - R"},{"label":"R - RCurl","value":"r - RCurl - R"},{"label":"Ruby - Net::HTTP","value":"ruby - Net::HTTP - Ruby"},{"label":"Shell - Httpie","value":"shell - Httpie - Shell"},{"label":"Shell - wget","value":"shell - wget - Shell"},{"label":"Swift - URLSession","value":"swift - URLSession - Swift"}],"layoutOptions":[{"value":"classic-single-column","label":"Single Column"},{"value":"classic-double-column","label":"Double Column"}],"versionOptions":[],"environmentOptions":[{"value":"0","label":"No Environment"}],"canonicalUrl":"https://documenter.gw.postman.com/view/metadata/TzXzDHRR"}