{
  "manifest_version": "1.0.0",
  "template": {
    "id": "0015a0ca-e14d-482b-888b-6c7eee679dfe",
    "slug": "X5tR6G",
    "name": "Foundry Virtual Tabletop",
    "description": "A Self-Hosted & Modern Roleplaying Platform",
    "url": "https://railway.com/deploy/X5tR6G",
    "upstream": {
      "repo_url": "https://github.com/lucaspellegrinelli/railway-foundryvtt"
    }
  },
  "status": "unvalidated",
  "validated_at": null,
  "success_rate_30d": null,
  "services": [
    {
      "name": "railway-foundryvtt",
      "source": {
        "repo": "https://github.com/lucaspellegrinelli/railway-foundryvtt"
      },
      "needs_volume": true,
      "volume_mount_path": "/data",
      "http": true
    }
  ],
  "required_inputs": [
    {
      "key": "PORT",
      "service": "railway-foundryvtt",
      "description": "Provide a value for PORT.",
      "secret": false,
      "strategy": "default",
      "default": "30000"
    },
    {
      "key": "FOUNDRY_VERSION",
      "service": "railway-foundryvtt",
      "description": "Version of Foundry Virtual Tabletop to install.",
      "secret": false,
      "strategy": "default",
      "default": "12.331"
    },
    {
      "key": "FOUNDRY_PASSWORD",
      "service": "railway-foundryvtt",
      "description": "Account password for foundryvtt.com. Required for downloading an application distribution.",
      "secret": true,
      "strategy": "generate",
      "generate": "strong_password"
    },
    {
      "key": "FOUNDRY_USERNAME",
      "service": "railway-foundryvtt",
      "description": "Account username or email address for foundryvtt.com. Required for downloading an application distribution.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "CONTAINER_PRESERVE_CONFIG",
      "service": "railway-foundryvtt",
      "description": "Normally new options.json and admin.txt files are generated by the container at each startup. Setting this to true prevents the container from modifying these files when they exist. If they do not exist, they will be created as normal.",
      "secret": false,
      "strategy": "default",
      "default": "true"
    }
  ],
  "deploy": {
    "mcp": {
      "server": "railway",
      "tool": "deploy_template",
      "args": {
        "template_code": "X5tR6G"
      }
    },
    "cli": "railway deploy --template X5tR6G",
    "api": {
      "method": "POST",
      "path": "/graphql/v2",
      "body": {
        "query": "mutation templateDeploy($input: TemplateDeployV2Input!) { templateDeployV2(input: $input) { projectId workflowId } }",
        "variables": {
          "input": {
            "templateId": "0015a0ca-e14d-482b-888b-6c7eee679dfe",
            "serializedConfig": {
              "services": {
                "8e0b9d06-4775-4ad0-aac7-6e41708027fc": {
                  "name": "railway-foundryvtt",
                  "build": {},
                  "deploy": {
                    "startCommand": null,
                    "healthcheckPath": null
                  },
                  "source": {
                    "repo": "https://github.com/lucaspellegrinelli/railway-foundryvtt",
                    "rootDirectory": null
                  },
                  "variables": {
                    "PORT": {
                      "isOptional": true,
                      "defaultValue": "30000"
                    },
                    "FOUNDRY_VERSION": {
                      "isOptional": true,
                      "description": "Version of Foundry Virtual Tabletop to install.",
                      "defaultValue": "12.331"
                    },
                    "FOUNDRY_PASSWORD": {
                      "isOptional": false,
                      "description": "Account password for foundryvtt.com. Required for downloading an application distribution.",
                      "defaultValue": "{{FOUNDRY_PASSWORD}}"
                    },
                    "FOUNDRY_USERNAME": {
                      "isOptional": false,
                      "description": "Account username or email address for foundryvtt.com. Required for downloading an application distribution.",
                      "defaultValue": "{{FOUNDRY_USERNAME}}"
                    },
                    "CONTAINER_PRESERVE_CONFIG": {
                      "isOptional": true,
                      "description": "Normally new options.json and admin.txt files are generated by the container at each startup. Setting this to true prevents the container from modifying these files when they exist. If they do not exist, they will be created as normal.",
                      "defaultValue": "true"
                    }
                  },
                  "networking": {
                    "tcpProxies": {},
                    "serviceDomains": {
                      "<hasDomain>": {}
                    }
                  },
                  "volumeMounts": {
                    "8e0b9d06-4775-4ad0-aac7-6e41708027fc": {
                      "mountPath": "/data"
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "post_deploy": {},
  "resources": {
    "expected_services": 1,
    "needs_volume": true
  },
  "generated_at": "2026-09-23T04:14:45.320Z",
  "generator_version": "0.1.0"
}
