【FF14】Universalisの価格情報をGoogle Spreadsheetsで取得する
UniversalisはFF14内のマケボ情報を参照できる外部サービスです。
中身については触れません。
これを使うと、Google Spreadsheet上で暁月の伝説素材や中間素材のNQ/HQでの価格を見れたりします。
あくまで例ですが、下記のようなことができます。
![](https://assets.st-note.com/img/1652699280329-OBZ6OLB5HE.png)
こういった事にもSpreadsheetが活用できるので、下記にその方法について記していきます。(あくまで私の備忘録です。やり方はもっといい方法があるかもしれませんし、ないかもしれません)
1. Google SpreadsheetのGASに関数を登録する
適当にGoogle Spreadsheetを開いて貰って、下記の通り遷移し関数を登録します。
![](https://assets.st-note.com/img/1652699675263-AIsfbnvdw9.png?width=1200)
![](https://assets.st-note.com/img/1652700233857-DHRLEXWOUF.png?width=1200)
Apps Scriptを開いたら下記コードをコピペする(myFunctionの記述は消していいです)
function getPriceById(worldOrDc, id, key) {
let url = "https://universalis.app/api/";
let jsonUrl = url + worldOrDc + '/' + id;
let response = UrlFetchApp.fetch(jsonUrl).getContentText();
let json = JSON.parse(response);
/* For example:
* 1. NQ/HQ問わず最低価格を取得したい場合: json['minPrice']
* 2. NQの最低価格を取得したい場合: json['minPriceNQ']
* 3. HQの最低価格を取得したい場合: json['minPriceHQ']
* 4. NQ/HQ問わず最高価格を取得したい場合: json['maxPrice']
* などなど
* 参考: https://universalis.app/docs/index.html
*/
return json[key];
}
Apps Script画面上で保存ボタンを押して保存しておきましょう。
![](https://assets.st-note.com/img/1652710560806-Tzg8vDoXU7.png)
これの使い方の前に基本的なことを下記に書いておきます。
基本的にFF14のアイテムにはItemIdっていうのが付与されています。
例えば、サベネアンコーンをUniversalisで調べると
![](https://assets.st-note.com/img/1652700697834-JDHM1tpz7N.png?width=1200)
URLが黃傍線部のように「37278」となっています。
これが関数の引数の一つであるItemIdになります。
2. Spreadsheetでの利用例
Spreadsheetではこういう風に使います。
![](https://assets.st-note.com/img/1652709151869-esuEd7eO3m.png?width=1200)
普通に解説すると
=getPriceById("ワールド名 or DC名", ItemId, "minPriceとかmaxPriceとか")
って感じで書きます。
もうほぼそれ用にしか作っていないのでminPriceとかmaxPriceしか使い道はないです。
関数のところにコメント書いてあるので、参考URLとか見てみてください。
こんな感じで自分の狙い目のアイテムをSpreadsheetに管理して稼いだり色々活用していきましょう!
お し り