Engrams Pull API
Rather than using Beacon's UI or API, there is a third way to maintain a list of engrams for a mod: pull.
This option allows developers to host a file on any server of their choosing and updated it whenever and however they choose. The Beacon server will pull the file daily and synchronize its engrams database using the content of the file. The engrams for the mod in question will be updated to exactly match the file's contents, meaning missing engrams will be removed.
Getting Started
To begin, developers have two options:
- Either set the
pull_url
key of the mod structure to the url. - Use Beacon's Developer Tools to set the url. Go to the mods section and select the mod. Use the settings icon at the bottom of the list and set the url there.
File Format
Developers can choose to provide the data one of the following formats. The server must reply with a 200 status and provide the correct Content-Type header.
JSON
Content-Type: application/json
This file content is identical to the engram.php POST method content. The mod_id
key is optional, but will be ignored if provided.
[
{
"class": "Prefix_MyEngram_C",
"label": "My Engram",
"availability": [
"Island",
"Scorched"
],
"can_blueprint": true
}
]
CSV
Content-Type: text/csv
The CSV file must contain a header row. The columns must match the engram structure. The mod_id
key is optional, but will be ignored if provided. The availability
column may be a comma-separated string.
"class","label","availability","can_blueprint"
"Prefix_MyEngram_C","My Engram","Island,Scorched","true"
Errors
If there are any errors, Beacon will send back a POST to the url with the form values mod_id
and message
. All processing will halt at the first error.