Can't store JSON credential in env var — value gets truncated
coderdix24
PROOP

3 months ago

Hi Railway team,

I'm storing a Google service-account JSON credential in an environment variable and the value keeps getting corrupted on save.

The JSON starts with { and ends with } and contains one long string field (private_key) with literal \n sequences. Via the Raw editor, the multi-line value splits line-by-line and the variable ends up holding only the first line ({"), with the rest becoming junk variables. I then minified it to a single line with jq -c and entered it through the single-variable form (Name/Value), and it still isn't stored/read as valid JSON — my app reads it via os.Getenv and gets "unexpected end of JSON input," which points to truncation on save.

Questions:

  1. Correct way to store a JSON value containing literal \n characters — any escaping/transformation Railway applies on save?
  2. Any length limit on a single variable value (this is ~2–3 KB) that could truncate it?
  3. Recommended pattern for service-account credentials (secret file, multi-line secret support)?

Project/Service: triviatide-backend, github repo (https://github.com/coderdix24/triviatide)

Environment: staging

Variables: FIREBASE_CREDENTIALS_JSON

Already deleted the corrupted/junk vars and re-added via the single-variable form; still reproduces. Can share a screen recording.

Thanks,

Richard

Solved$20 Bounty

Pinned Solution

You can encode your JSON credential in a base64 string and store that as your variable. Then in your code, you'd decode that base64 string and parse that as JSON.

1 Replies

Railway
BOT

3 months ago

This thread has been opened as a public bounty so the community can help solve it. The thread and any further activity are now visible to everyone.

Status changed to Open Railway • 3 months ago


You can encode your JSON credential in a base64 string and store that as your variable. Then in your code, you'd decode that base64 string and parse that as JSON.


Status changed to Solved 0x5b62656e5d • about 1 month ago


Welcome!

Sign in to your Railway account to join the conversation.

Loading...