Skip to content
Matt Antonelli edited this page Jul 25, 2019 · 6 revisions

FFXIV Collect API

This is a RESTful JSON API designed to provide you with all of the application's available data in an API format. Use the navigation on the right to get more details on the individual endpoints.

Language

The 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 collectable "source" data is localized.

https://ffxivcollect.com/api/mounts/1?language=fr
Language Locale
English en
French fr
German de
Japanese ja

Search

Each of the provided endpoints is searchable via Ransack-like query parameters. 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.

Example

I want to query the Minions endpoint and find all of the minions whose names starts with "wind-up". I add the query parameter name_en_start=wind-up which will tell the API to look for all minions with a name (English) starting with "wind-up". This will make my API call look like the following:

https://ffxivcollect.com/api/minions?name_en_start=wind-up

Predicates

The table below lists the predicates supported by the API.

Predicate Description
eq Equals
lt, lteq Less than (or equal to)
gt, gteq Greater than (or equal to)
cont Contains
start, end Starts/Ends with
in In list/range of values

Complex examples

Now that you've seen all of the predicates, let's take a look at them in action.

If I want to query the first 5 minions by their ID, I can use any of the following:

https://ffxivcollect.com/api/minions?id_in=[1, 2, 3, 4, 5]
https://ffxivcollect.com/api/minions?id_in=1..5
https://ffxivcollect.com/api/minions?id_in=1...6

You can provide any number of query parameters and they will be AND'd together (no OR, sorry!) The following will let me find all Orchestrion rolls from Eureka added after patch 4.1.

https://ffxivcollect.com/api/orchestrions?description_en_cont=Eureka&patch_gt=4.1&language=en

Limit

By default, the full data set is returned for each endpoint that returns multiple results. Aside from refining the data set with a search query, you can also set a hard limit on the amount of results to return.

https://ffxivcollect.com/api/mounts?limit=10

Final Notes

If 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!

Some 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 to validate that you are using the correct columns.

If 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.

You can’t perform that action at this time.