Godot Quickstart
Target reader: developers integrating the feedback panel into a Godot 4.x project.
This quickstart assumes the addon has been copied to res://addons/echo_nebula_feedback/ and enabled in the Godot plugin panel. The plugin registers the EchoNebulaFeedback autoload singleton.
After enabling the plugin, copy quickstart.gd.txt to quickstart.gd in the game root before configuring or attaching it. The text template is not parsed before the autoload exists.
Extended example
The stable minimal example contains only the canonical core. This extended example adds optional runtime context and feature controls.
The following extended calls belong inside existing game functions. For a complete script that can be attached to a new Node, use the fixed ZIP's quickstart.gd and the main Quickstart.
EchoNebulaFeedback.configure({
"project_key": "enb_pk_xxx",
"public_api_base_url": "http://localhost:4000",
"environment": "local",
"release": "0.1.0",
"build_id": "dev-build-001",
"locale": "auto",
"enable_screenshot": true,
"enable_recent_logs": true,
"enable_breadcrumbs": true,
"offline_queue": true,
"hotkey": KEY_F8
})
EchoNebulaFeedback.set_player({
"player_id_hash": "sha256:337180dda29405211bf7a37ea531367110370dc54db2298fcf4450f1749badb3"
})
EchoNebulaFeedback.set_context({
"scene": "res://scenes/main.tscn",
"level": "demo"
})
EchoNebulaFeedback.open_feedback_panel({ "trigger_source": "button" })
enable_screenshot and enable_recent_logs only make those options available in the panel. They do not check the consent boxes by default; the player must manually opt in before either attachment type is uploaded.
After configure(), the SDK reads SDK config with the Project Key through GET /v1/sdk/config; you can also call refresh_sdk_config() explicitly. When the player submits, the SDK builds a feedback_report payload and posts it to POST /v1/feedback/reports; if the player opted in to attachments, the SDK uses the returned feedback_id to upload them to /v1/feedback/reports/{feedback_id}/attachments. If the API is unavailable, offline_queue keeps the payload for a later flush. Management remains under /admin/v1/* and requires a developer session.
Common mistakes
- A Project Key may read Public API SDK config and submit feedback or consent-gated attachments. It must never read Admin API feedback data or perform management actions.
- If the player does not select screenshot upload, the SDK must not upload a screenshot attachment.
- If the player leaves contact blank, the payload should omit contact information.
- Do not treat
feedback_payload_readyas proof of delivery; use the Admin API or Developer Console to confirm the report and attachments arrived.
Next step
Read Install the Godot addon.