# API # Changelog
### 2.1.1 05\. Nov 24 ##### Fixed - Page margin too large on mobile - Landing page scrolling horizontally on mobile - Demo too wide on mobile once data loaded |
### 2.1.0 03\. Nov 24 ##### Added - [Landing Page](https://netstone.api.tawmy.net/ "Landing Page") - Basic introduction to the project - Demo for retrieving data - Links to Changelog, Swagger UI, and OpenAPI definition - "Data refreshed" exchanges - Previous queues were published to queues whenever data was requested through queue, no matter whether it was cached or not - New exchanges are published to whenever data is refreshed from Lodestone, not when it was cached ##### Changed - Outgoing queues are now exchanges - See "Breaking Changes" for further details - Default API version is now 2 - API version 1 marked as obsolete - Will be removed in a future release - Swagger UI now always available ##### Breaking Changes - Outgoing RabbitMQ messages are now published to exchanges instead of queues - Allows fanout exchange to publish messages to multiple queues - Requires manual configuration of exchange -> queue binding - If RabbitMQ was used before, both exchange and queue will exist and only |
### 2.0.3 28\. Sep 24 ##### Fixed - Free company members failed to parse if at least one of its members had been cached before |
### 2.0.2 27\. Sep 24 ##### Fixed - Grand Company parsing fails under certain circumstances |
### 2.0.1 22\. Sep 24 ##### Changed - Version is printed to console on startup |
### 2.0.0 22\. Sep 24 Complete revamp of the API. Instead of simply parsing and returning NetStone data, Lodestone data is now mapped onto database entities and cached. Retrieving character data can now return cached data as DTOs, or refresh data from the Lodestone and return as said DTOs. ##### Added - Character achievement parsing - NetStone entity to database mapping - **Caching of database entities** - Character + attributes - Character ClassJobs - Character Minions - Character Mounts - Character Achievements - Free Company - Free Company Memberes - **NetStone.Api.Client project for easy data retrieval in .NET projects** - Various unit tests to compare parsed data and data mapped to database entities and DTOs - Additional properties in DTOs like whether data is cached, when it was last refreshed, and collection totals + percentages - RabbitMQ support for all endpoints |
### 1.1.0b 15\. Jul 24 ##### Added - Dawntrail Jobs parsing - They were ignored before, now data is actually being parsed |
### 1.0.3b 01\. Jul 24 ##### Fixed - Exception when parsing Dawntrail jobs |
### 1.0.2b 15\. Apr 24 ##### Fixed - Exception when parsing free company rankings for free companies without ranking(s) |
### 1.0.1b 27\. Jan 24 ##### Fixed - Exception when parsing disciples of the hand/land |
### 1.0.0b 25\. Jan 24 ##### Initial Release - Character parsing - Character - ClassJobs - Minions - Mounts - Free Company parsing - Free Company - Free Company members |
Name | REST API method | Associated Exchanges (see below for details) |
netstone-get-character | [/Character/{lodestoneId}](https://api.netstone.tawmy.dev/swagger/index.html#/Character/get_Character__lodestoneId_ "/Character/{lodestoneId}") | netstone-get-character-result netstone-get-character-refreshed |
netstone-get-character-class-jobs | [/Character/ClassJobs/{lodestoneId}](https://api.netstone.tawmy.dev/swagger/index.html#/Character/get_Character_ClassJobs__lodestoneId_ "/Character/ClassJobs/{lodestoneId}") | netstone-get-character-class-jobs-result netstone-get-character-class-jobs-refreshed |
netstone-get-character-minions | [/Character/Minions/{lodestoneId}](https://api.netstone.tawmy.dev/swagger/index.html#/Character/get_Character_Minions__lodestoneId_ "/Character/Minions/{lodestoneId}") | netstone-get-character-minions-result netstone-get-character-minions-refreshed |
netstone-get-character-mounts | [/Character/Mounts/{lodestoneId}](https://api.netstone.tawmy.dev/swagger/index.html#/Character/get_Character_Mounts__lodestoneId_ "/Character/Mounts/{lodestoneId}") | netstone-get-character-mounts-result netstone-get-character-mounts-refreshed |
netstone-get-character-achievements | [/Character/Achievements/{lodestoneId}](https://api.netstone.tawmy.dev/swagger/index.html#/Character/get_Character_Achievements__lodestoneId_ "/Character/Achievements/{lodestoneId}") | netstone-get-character-achievements-result netstone-get-character-achievements-refreshed |
netstone-get-free-company | [/FreeCompany/{lodestoneId}](https://api.netstone.tawmy.dev/swagger/index.html#/FreeCompany/get_FreeCompany__lodestoneId_ "/FreeCompany/{lodestoneId}") | netstone-get-free-company-result netstone-get-free-company-refreshed |
netstone-get-free-company-members | [/FreeCompany/Members/{lodestoneId}](https://api.netstone.tawmy.dev/swagger/index.html#/FreeCompany/get_FreeCompany_Members__lodestoneId_ "/FreeCompany/Members/{lodestoneId}") | netstone-get-free-company-members-result netstone-get-free-company-members-refreshed |
Name | Sent When |
netstone-get-character-result | Character data requested through queue. |
netstone-get-character-refreshed | Character data refreshed from Lodestone. |
netstone-get-character-class-jobs-result | Character's class jobs requested through queue. |
netstone-get-character-class-jobs-refreshed | Character's class jobs refreshed from Lodestone. |
netstone-get-character-minions-result | Character's minions requested through queue. |
netstone-get-character-minions-refreshed | Character's minions refreshed from Lodestone. |
netstone-get-character-mounts-result | Character's mounts requested through queue. |
netstone-get-character-mounts-refreshed | Character's mounts refreshed from Lodestone. |
netstone-get-character-achievements-result | Character's achievements requested through queue. |
netstone-get-character-achievements-refreshed | Character's achievements refreshed from Lodestone. |
netstone-get-free-company-result | Free Company data requested through queue. |
netstone-get-free-company-refreshed | Free Company data refreshed from Lodestone. |
netstone-get-free-company-members-result | Free Company's members requested through queue. |
netstone-get-free-company-members-refreshed | Free Company's members refreshed from Lodestone. |
Environment Variable | |
DB\_PASSWORD | Password for Postgres database. Will be initialised with this value. |
RABBITMQ\_DEFAULT\_USER | Default admin user for RabbitMQ. Please use a separate user for NetStone API. |
RABBITMQ\_DEFAULT\_PASS | Default admin password for RabbitMQ. Please use a separate user for NetStone API. |
RABBITMQ\_USERNAME | User for RabbitMQ authentication. Please do not use the default admin user. |
RABBITMQ\_PASSWORD | User for RabbitMQ authentication. Please do not use the default admin user. |