Skip to content
⌂ Home

API Credentials Setup

ECHO’s Developer / API Config page is for advanced integrations: account authorization, online metadata, album ratings, artist profiles, and event lookup. It is not required for local playback, and it does not provide download access to protected streaming audio.

If you only scan and play local music, you can leave everything blank.

  1. Spotify only: fill Spotify Client ID and register the Spotify Redirect URI.
  2. TIDAL metadata only: fill TIDAL Client ID, TIDAL Client Secret, and TIDAL Country Code.
  3. Discogs ratings only: fill Discogs personal access token.
  4. Artist/event lookup: fill whichever provider keys you have: Bandsintown, Ticketmaster, or SeatGeek.
  5. Unsure about a field: leave it blank. ECHO will skip that provider.
ECHO fieldValue to enterWhere to get itIf blank
Spotify Client IDSpotify Developer App Client IDSpotify Developer DashboardSpotify login is unavailable
Spotify Redirect URIExact callback URI shown by ECHODefault http://127.0.0.1:43879/spotify/callbackLogin fails if mismatched
TIDAL Client IDTIDAL Developer App Client IDTIDAL Developer PortalTIDAL metadata is unavailable
TIDAL Client SecretTIDAL Developer App Client SecretTIDAL app detailsTIDAL metadata is unavailable
TIDAL Redirect URIExact callback URI shown by ECHODefault http://127.0.0.1:43880/tidal/callbackRequired for TIDAL OAuth
TIDAL Country CodeTwo-letter region code, such as US, HK, or JPChoose based on account or catalog regionSome catalog items may not resolve
Discogs personal access tokenDiscogs personal access tokenDiscogs Developers settingsDiscogs ratings/version data may be unavailable
Bandsintown app_idBandsintown API app_idBandsintown API or partner/developer accessBandsintown is skipped
Ticketmaster apikeyTicketmaster API key, usually named Consumer KeyTicketmaster Developer PortalTicketmaster is skipped
SeatGeek client_idSeatGeek public API key / client_idSeatGeek Developer PortalSeatGeek is skipped
Region filterRegion keywords like HK, Tokyo, USChoose based on event regionsBlank means broader/global lookup

Do not publicly share Client Secret, personal access token, apikey, or any private token. Client ID is usually less sensitive than a secret, but using public leaked credentials is still a bad idea and may violate provider rules.

Callback URIs must match exactly. http://127.0.0.1:43879/spotify/callback is not the same as http://localhost:43879/spotify/callback, and a trailing slash also changes the URI.

ECHO only needs the Spotify Client ID; do not paste the Spotify Client Secret into ECHO.

  1. Open the Spotify Developer Dashboard.
  2. Create an app, for example ECHO Next Local.
  3. Add the ECHO callback URI to Redirect URIs:
http://127.0.0.1:43879/spotify/callback
  1. Open the app details page.
  2. Copy Client ID.
  3. Paste it into Spotify Client ID in ECHO.
  4. Save the config and log in again.

Spotify requires redirect URIs to match exactly. For local callbacks, use an explicit loopback IP such as 127.0.0.1, not localhost.

New Spotify apps may be in Development Mode. If another Spotify account uses your app, add that account in Spotify Dashboard > Users Management, or request broader access through Spotify’s quota/review flow.

TIDAL credentials are used for catalog metadata lookup in ECHO. They do not bypass TIDAL playback restrictions.

  1. Open the TIDAL Developer Portal.
  2. Log in with your TIDAL account.
  3. Create an app in the Dashboard.
  4. Copy Client ID and Client Secret from the app details page.
  5. Register the ECHO callback URI:
http://127.0.0.1:43880/tidal/callback
  1. Paste both credentials into ECHO.
  2. Set Country Code to a two-letter region code such as US, HK, JP, GB, or DE.
  3. Save the config.

If lookup returns nothing, try US first, then your account region. Catalog availability can vary by region.

Use a Discogs personal access token for personal local metadata lookup.

  1. Log in to Discogs.
  2. Open Discogs Developers settings.
  3. Generate or copy Personal access token.
  4. Paste it into Discogs personal access token.
  5. Save the token.

Do not enter Consumer Key, Consumer Secret, or your Discogs password in this field.

Enter the Bandsintown API app_id or app identifier. If your account does not have Bandsintown API access, leave it blank.

Ticketmaster Discovery API uses the apikey query parameter. In the developer portal, this is commonly shown as Consumer Key.

  1. Open the Ticketmaster Developer Portal.
  2. Log in or register.
  3. Open your Application.
  4. Copy Consumer Key.
  5. Paste it into Ticketmaster apikey.

SeatGeek API can authenticate with a public key passed as client_id.

  1. Open the SeatGeek Developer Portal.
  2. Log in or request API access.
  3. Find the public key / client_id.
  4. Paste it into SeatGeek client_id.

client_secret is not required in ECHO.

Region filter narrows artist/event lookup results. It is separate from TIDAL Country Code.

HK, Tokyo, US

Use HK for Hong Kong, Tokyo, JP for Japan/Tokyo, US for United States, or leave it blank for broader results.

SymptomLikely causeFix
Spotify says Invalid redirect URICallback URI mismatchCopy ECHO’s exact Redirect URI into Spotify
Spotify says user is not registeredDevelopment Mode user restrictionAdd the account in Spotify Users Management
TIDAL unauthorizedWrong secret, mixed app credentials, extra spacesRecopy Client ID and Secret
TIDAL has no resultsRegion catalog mismatchTry US, then your account region
Discogs returns 401Token is wrong or revokedGenerate a new personal access token
Ticketmaster returns 401Wrong keyUse the Application Consumer Key
SeatGeek has no resultsInvalid key or missing API accessCheck API access or leave blank
Event results are noisyRegion filter too broadUse a more specific region
Event results are emptyRegion filter too narrowClear the filter and retry
Spotify Client ID: your own Spotify app Client ID
Spotify Redirect URI: keep ECHO default
TIDAL Client ID: your own TIDAL app Client ID
TIDAL Client Secret: your own TIDAL app Client Secret
TIDAL Country Code: US or your account region
Discogs personal access token: your own personal access token
Bandsintown app_id: blank unless you have API access
Ticketmaster apikey: Application Consumer Key if available
SeatGeek client_id: public client_id if available
Region filter: start with one useful region, such as HK

When debugging, keep optional event providers blank and test one provider at a time.