{"version":"2.1.238","anchor":"credentials-passed-explicitly-instead-of-read-from-a-global","canonical_anchor":"credentials-passed-explicitly-instead-of-read-from-a-global","heading":"Credentials passed explicitly instead of read from a global","tier":"internal","area":"Auth","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.238\/e\/credentials-passed-explicitly-instead-of-read-from-a-global","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.238","markdown":"### Credentials passed explicitly instead of read from a global\n\nLogin credentials are now handed to each auth and API path instead of being read from one shared spot.\n\n**What**\n\nAuth and API call paths now receive credentials as an argument rather than reaching for one process-wide set: OAuth refresh, first-party API startup load, quota checks, web fetch and remote environment listing all take and forward them, and the signed-out check became asynchronous and takes the credential object. This is groundwork for a session carrying its own credentials.\n\n**Details**\n\n- A helper installs credentials on the API client and disposes and resets it when they go away.\n\n**Evidence**\n\n`await ov({ credentials: e });`\n\n- Area: Auth\n- Tier: Under the hood\n- Useful: 2\/5\n- Signal: 3\/5"}