82 lines
2.5 KiB
JSON
82 lines
2.5 KiB
JSON
{
|
|
"$schema": "../app-info-schema.json",
|
|
"name": "Find My iPhone Bridge",
|
|
"id": "find-my-iphone",
|
|
"available": true,
|
|
"port": 8590,
|
|
"exposable": true,
|
|
"dynamic_config": true,
|
|
"no_gui": true,
|
|
"tipi_version": 1,
|
|
"version": "1.2.0",
|
|
"categories": [
|
|
"automation",
|
|
"utilities"
|
|
],
|
|
"description": "Self-hosted bridge that makes your iPhone ring via iCloud Find My. Exposes an Alexa custom-skill endpoint (/alexa, signature-verified) and API-key-protected REST endpoints (/api/alert, /api/devices, /api/location). Apple credentials stay on this server; 2FA trust token persists in the app volume.",
|
|
"short_desc": "Ring your iPhone from Alexa or curl",
|
|
"author": "alexz (fork of matt-kruse/find-my-iphone)",
|
|
"source": "https://git.alexzaw.dev/alexz/find-my-iphone",
|
|
"form_fields": [
|
|
{
|
|
"type": "text",
|
|
"label": "Apple ID",
|
|
"env_variable": "APPLE_ID",
|
|
"required": true,
|
|
"hint": "The iCloud account email that owns the devices",
|
|
"placeholder": "",
|
|
"default": ""
|
|
},
|
|
{
|
|
"type": "password",
|
|
"label": "Apple Password",
|
|
"env_variable": "APPLE_PASSWORD",
|
|
"required": true,
|
|
"hint": "Stored only in Runtipi's app env - never leaves this server",
|
|
"placeholder": "",
|
|
"default": ""
|
|
},
|
|
{
|
|
"type": "random",
|
|
"label": "API Key",
|
|
"env_variable": "API_KEY",
|
|
"required": true,
|
|
"min": 32,
|
|
"encoding": "hex",
|
|
"hint": "Auto-generated. Send as X-Api-Key header on /api/* requests. View in Settings tab.",
|
|
"placeholder": "",
|
|
"default": ""
|
|
},
|
|
{
|
|
"type": "text",
|
|
"label": "2FA Trust Token",
|
|
"env_variable": "APPLE_2FA_TOKEN",
|
|
"required": false,
|
|
"hint": "Optional. If you have a 2FA trust token, paste it",
|
|
"placeholder": "",
|
|
"default": ""
|
|
},
|
|
{
|
|
"type": "text",
|
|
"label": "Alexa Skill ID",
|
|
"env_variable": "ALEXA_SKILL_ID",
|
|
"required": false,
|
|
"hint": "amzn1.ask.skill.xxxx from the Alexa developer console. Locks /alexa to your skill. Leave blank until the skill exists, then fill in and save."
|
|
},
|
|
{
|
|
"type": "text",
|
|
"label": "Default Device Name",
|
|
"env_variable": "DEFAULT_DEVICE",
|
|
"required": false,
|
|
"hint": "Device to ring when none is specified (e.g. Alex's iPhone). Blank = first Find-My-capable device."
|
|
}
|
|
],
|
|
"supported_architectures": [
|
|
"amd64"
|
|
],
|
|
"created_at": 1754993000000,
|
|
"updated_at": 1754993000000,
|
|
"deprecated": false,
|
|
"min_tipi_version": "4.5.0"
|
|
}
|