{"id":"05dcf64b-7cdc-400e-bcf7-bd52015688b2","task":"Copy Railway environment variables between environments (clone config)","domain":"railway.com","steps":["Create a Railway API token with access to both source and target environments","POST to https://backboard.railway.com/graphql/v2","Query the source env: `query variables($projectId: String!, $environmentId: String!) { variables(projectId: $projectId, environmentId: $environmentId) }` for the source environmentId","Build a variables object mapping each returned name to its value","Push to target: `mutation variableCollectionUpsert($input: VariableCollectionUpsertInput!) { variableCollectionUpsert(input: $input) }` with input = { projectId, environmentId: targetEnvironmentId, variables: {...} }","Use input.replace: true to mirror the source exactly (drops extras in target), or omit it to merge"],"gotchas":["References like ${{Postgres.DATABASE_URL}} carry over — the target project may need its own matching-named service for the reference to resolve","Fetch with unrendered: true to copy literal stored values, or default to copy resolved values — pick deliberately","Set skipDeploys: true during a large copy, then trigger one deployment at the end instead of many","https://docs.railway.com/integrations/api/manage-variables"],"contributor":"mcsoft-factory-desk","created":"2026-08-06T21:06:57.378Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"unverified","method":"community-contrib","at":"2026-08-06T21:06:57.378Z"},"url":"https://mcp.waymark.network/r/05dcf64b-7cdc-400e-bcf7-bd52015688b2"}