[{"data":1,"prerenderedAt":664},["ShallowReactive",2],{"navigation_docs_en":3,"-en-panduan-multi-profile":52,"-en-panduan-multi-profile-surround":659},[4,18,35],{"title":5,"path":6,"stem":7,"children":8,"page":17},"Get started","\u002Fen\u002Fmulai","en\u002F1.mulai",[9,13],{"title":10,"path":11,"stem":12},"Installation & quick start","\u002Fen\u002Fmulai\u002Finstalasi","en\u002F1.mulai\u002F1.instalasi",{"title":14,"path":15,"stem":16},"Login & sessions","\u002Fen\u002Fmulai\u002Flogin","en\u002F1.mulai\u002F2.login",false,{"title":19,"path":20,"stem":21,"children":22,"page":17},"Guides","\u002Fen\u002Fpanduan","en\u002F2.panduan",[23,27,31],{"title":24,"path":25,"stem":26},"Project configuration","\u002Fen\u002Fpanduan\u002Fkonfigurasi","en\u002F2.panduan\u002F1.konfigurasi",{"title":28,"path":29,"stem":30},"Multiple profiles","\u002Fen\u002Fpanduan\u002Fmulti-profile","en\u002F2.panduan\u002F2.multi-profile",{"title":32,"path":33,"stem":34},"Pull & push","\u002Fen\u002Fpanduan\u002Fpull-push","en\u002F2.panduan\u002F3.pull-push",{"title":36,"path":37,"stem":38,"children":39,"page":17},"Reference","\u002Fen\u002Freferensi","en\u002F3.referensi",[40,44,48],{"title":41,"path":42,"stem":43},"Command reference","\u002Fen\u002Freferensi\u002Fcommands","en\u002F3.referensi\u002F1.commands",{"title":45,"path":46,"stem":47},"Troubleshooting","\u002Fen\u002Freferensi\u002Ftroubleshooting","en\u002F3.referensi\u002F2.troubleshooting",{"title":49,"path":50,"stem":51},"Release notes","\u002Fen\u002Freferensi\u002Fcatatan-rilis","en\u002F3.referensi\u002F3.catatan-rilis",{"id":53,"title":28,"body":54,"description":652,"extension":653,"links":654,"meta":655,"navigation":656,"path":29,"seo":657,"stem":30,"__hash__":658},"docs_en\u002Fen\u002F2.panduan\u002F2.multi-profile.md",{"type":55,"value":56,"toc":644},"minimark",[57,61,66,102,129,141,180,184,187,196,211,356,361,386,398,402,463,466,486,501,514,518,526,539,560,564,584,603,609,613,616,629,640],[58,59,60],"p",{},"Store AWS logins for several accounts or identities and select one per project. Each profile has its own credentials, refresh token, and DPoP key.",[62,63,65],"h2",{"id":64},"set-up-profiles","Set up profiles",[67,68,73],"pre",{"className":69,"code":70,"language":71,"meta":72,"style":72},"language-sh shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","l login --profile production\nl login --profile staging\nl whoami --profile production\nl whoami --profile staging\n","sh","",[74,75,76,84,90,96],"code",{"__ignoreMap":72},[77,78,81],"span",{"class":79,"line":80},"line",1,[77,82,83],{},"l login --profile production\n",[77,85,87],{"class":79,"line":86},2,[77,88,89],{},"l login --profile staging\n",[77,91,93],{"class":79,"line":92},3,[77,94,95],{},"l whoami --profile production\n",[77,97,99],{"class":79,"line":98},4,[77,100,101],{},"l whoami --profile staging\n",[58,103,104,105,108,109,112,113,116,117,120,121,124,125,128],{},"Complete browser login with the appropriate identity for each profile. ",[74,106,107],{},"production"," and ",[74,110,111],{},"staging"," are local labels; the CLI does not infer an AWS account from them. Check ",[74,114,115],{},"Profile",", ",[74,118,119],{},"Account",", and ",[74,122,123],{},"Identity"," in the ",[74,126,127],{},"whoami"," output.",[58,130,131,132,116,134,116,137,140],{},"Profile names contain 1–64 lowercase letters, digits, underscores, or hyphens, starting with a letter or digit. Examples: ",[74,133,107],{},[74,135,136],{},"team-a",[74,138,139],{},"dev_01",". Uppercase letters, spaces, dots, and path separators are rejected.",[142,143,144,148,149,116,152,116,155,116,158,116,161,164,165,120,168,164,171,174,175,179],"note",{},[145,146,147],"strong",{},"Upcoming release — not available in v2.0.0."," Windows device names such as ",[74,150,151],{},"con",[74,153,154],{},"prn",[74,156,157],{},"aux",[74,159,160],{},"nul",[74,162,163],{},"com1","–",[74,166,167],{},"com9",[74,169,170],{},"lpt1",[74,172,173],{},"lpt9"," are rejected on every OS to keep profiles portable. See the ",[176,177,178],"a",{"href":50},"release notes",".",[62,181,183],{"id":182},"bind-a-profile-to-a-project","Bind a profile to a project",[58,185,186],{},"From your project folder, run:",[67,188,190],{"className":69,"code":189,"language":71,"meta":72,"style":72},"l init --profile production\n",[74,191,192],{"__ignoreMap":72},[77,193,194],{"class":79,"line":80},[77,195,189],{},[58,197,198,199,202,203,206,207,210],{},"The wizard saves the ",[74,200,201],{},"profile"," field without asking for its name again. Without this option, ",[74,204,205],{},"l init"," asks for a profile, defaulting to the existing config or ",[74,208,209],{},"default",". You can also edit the config directly:",[67,212,216],{"className":213,"code":214,"language":215,"meta":72,"style":72},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"version\": 1,\n  \"name\": \"billing\",\n  \"region\": \"ap-southeast-1\",\n  \"profile\": \"production\",\n  \"lambda\": {\n    \"prefix\": \"billing-\"\n  }\n}\n","json",[74,217,218,224,246,268,288,307,322,344,350],{"__ignoreMap":72},[77,219,220],{"class":79,"line":80},[77,221,223],{"class":222},"sMK4o","{\n",[77,225,226,229,233,236,239,243],{"class":79,"line":86},[77,227,228],{"class":222},"  \"",[77,230,232],{"class":231},"spNyl","version",[77,234,235],{"class":222},"\"",[77,237,238],{"class":222},":",[77,240,242],{"class":241},"sbssI"," 1",[77,244,245],{"class":222},",\n",[77,247,248,250,253,255,257,260,264,266],{"class":79,"line":92},[77,249,228],{"class":222},[77,251,252],{"class":231},"name",[77,254,235],{"class":222},[77,256,238],{"class":222},[77,258,259],{"class":222}," \"",[77,261,263],{"class":262},"sfazB","billing",[77,265,235],{"class":222},[77,267,245],{"class":222},[77,269,270,272,275,277,279,281,284,286],{"class":79,"line":98},[77,271,228],{"class":222},[77,273,274],{"class":231},"region",[77,276,235],{"class":222},[77,278,238],{"class":222},[77,280,259],{"class":222},[77,282,283],{"class":262},"ap-southeast-1",[77,285,235],{"class":222},[77,287,245],{"class":222},[77,289,291,293,295,297,299,301,303,305],{"class":79,"line":290},5,[77,292,228],{"class":222},[77,294,201],{"class":231},[77,296,235],{"class":222},[77,298,238],{"class":222},[77,300,259],{"class":222},[77,302,107],{"class":262},[77,304,235],{"class":222},[77,306,245],{"class":222},[77,308,310,312,315,317,319],{"class":79,"line":309},6,[77,311,228],{"class":222},[77,313,314],{"class":231},"lambda",[77,316,235],{"class":222},[77,318,238],{"class":222},[77,320,321],{"class":222}," {\n",[77,323,325,328,332,334,336,338,341],{"class":79,"line":324},7,[77,326,327],{"class":222},"    \"",[77,329,331],{"class":330},"sBMFI","prefix",[77,333,235],{"class":222},[77,335,238],{"class":222},[77,337,259],{"class":222},[77,339,340],{"class":262},"billing-",[77,342,343],{"class":222},"\"\n",[77,345,347],{"class":79,"line":346},8,[77,348,349],{"class":222},"  }\n",[77,351,353],{"class":79,"line":352},9,[77,354,355],{"class":222},"}\n",[58,357,358,359,238],{},"These commands then automatically use ",[74,360,107],{},[67,362,364],{"className":69,"code":363,"language":71,"meta":72,"style":72},"l whoami\nl lambda list\nl pull --prefix billing-\nl push --all --dry-run\n",[74,365,366,371,376,381],{"__ignoreMap":72},[77,367,368],{"class":79,"line":80},[77,369,370],{},"l whoami\n",[77,372,373],{"class":79,"line":86},[77,374,375],{},"l lambda list\n",[77,377,378],{"class":79,"line":92},[77,379,380],{},"l pull --prefix billing-\n",[77,382,383],{"class":79,"line":98},[77,384,385],{},"l push --all --dry-run\n",[58,387,388,389,392,393,397],{},"See ",[176,390,391],{"href":25},"project configuration"," for the full schema and ",[176,394,396],{"href":395},"\u002Fen\u002Fpanduan\u002Fpull-push#multiple-functions-at-once","multiple functions at once"," for target selection. Manual init is available before login.",[62,399,401],{"id":400},"selection-priority","Selection priority",[403,404,405,421],"table",{},[406,407,408],"thead",{},[409,410,411,415,418],"tr",{},[412,413,414],"th",{},"Source",[412,416,417],{},"Priority",[412,419,420],{},"Scope",[422,423,424,438,451],"tbody",{},[409,425,426,432,435],{},[427,428,429],"td",{},[74,430,431],{},"--profile \u003Cname>",[427,433,434],{},"First",[427,436,437],{},"The current command",[409,439,440,445,448],{},[427,441,442,444],{},[74,443,201],{}," in the nearest project config",[427,446,447],{},"Second",[427,449,450],{},"Project default, including commands run from subfolders",[409,452,453,457,460],{},[427,454,455],{},[74,456,209],{},[427,458,459],{},"Last",[427,461,462],{},"When neither an option nor a project profile is set",[58,464,465],{},"This applies to login, whoami, Lambda list\u002Finfo, and pull\u002Fpush. Init uses the config in the current folder, not a parent config, because it creates or updates the project in that folder.",[67,467,469],{"className":69,"code":468,"language":71,"meta":72,"style":72},"l lambda list --profile staging\nl --profile staging lambda list\nl whoami --profile default\n",[74,470,471,476,481],{"__ignoreMap":72},[77,472,473],{"class":79,"line":80},[77,474,475],{},"l lambda list --profile staging\n",[77,477,478],{"class":79,"line":86},[77,479,480],{},"l --profile staging lambda list\n",[77,482,483],{"class":79,"line":92},[77,484,485],{},"l whoami --profile default\n",[58,487,488,489,492,493,496,497,500],{},"An override does not change the project config. Use ",[74,490,491],{},"l init --profile staging"," to save a different profile through the wizard. ",[74,494,495],{},"-p"," still means Lambda prefix; use the full ",[74,498,499],{},"--profile"," option for authentication.",[142,502,503,508],{},[58,504,505],{},[145,506,507],{},"No fallback between profiles",[58,509,510,511,513],{},"If the selected profile has no login or its session is invalid, the command stops with an error. The ",[74,512,209],{}," session is not silently substituted.",[62,515,517],{"id":516},"storage-and-compatibility","Storage and compatibility",[67,519,524],{"className":520,"code":522,"language":523,"meta":72},[521],"language-text","~\u002F.l\u002F\n├── session.json                 # default profile, including older CLI sessions\n└── profiles\u002F\n    ├── production\u002Fsession.json\n    └── staging\u002Fsession.json\n","text",[74,525,522],{"__ignoreMap":72},[58,527,528,529,531,532,534,535,538],{},"Older configs without ",[74,530,201],{}," continue to use ",[74,533,209],{},"; you do not need to move the session. Signing in again only replaces the selected profile's session. Automatic refresh only updates that profile as well. Secrets stay in your home directory, not in ",[74,536,537],{},"l.config.json"," or this documentation site.",[58,540,541,544,545,548,549,552,553,555,556,559],{},[74,542,543],{},"l"," profiles are separate from AWS CLI profiles in ",[74,546,547],{},"~\u002F.aws\u002Fconfig","; ",[74,550,551],{},"AWS_PROFILE"," does not select an ",[74,554,543],{}," profile. There is no ",[74,557,558],{},"l profile list",", global switching, logout, or profile deletion command yet. Select a profile through the config or available option.",[62,561,563],{"id":562},"regions-accounts-and-sync-history","Regions, accounts, and sync history",[58,565,566,567,116,570,116,573,576,577,579,580,583],{},"The login region follows ",[74,568,569],{},"l login --region",[74,571,572],{},"AWS_REGION",[74,574,575],{},"AWS_DEFAULT_REGION",", then ",[74,578,283],{},". It is stored for auth\u002Frefresh. The resource region follows ",[74,581,582],{},"--region"," on Lambda\u002Fpull\u002Fpush commands, then the project region, then the session region if the command supports running without a project. Pull\u002Fpush always require a project config.",[585,586,587,592],"warning",{},[58,588,589],{},[145,590,591],{},"Switching accounts does not switch code folders",[58,593,594,595,598,599,602],{},"Changing profiles does not separate ",[74,596,597],{},"lambda\u002F"," or ",[74,600,601],{},".l\u002Fstate.json",". The baseline still binds code to its original ARN\u002Faccount\u002Fregion. Use separate project folders for different accounts or regions. Profiles with the same account and region must still pass identity and revision checks.",[58,604,605,606,608],{},"Signing in to another account under the same profile name affects every project that uses it. Verify ",[74,607,127],{}," before syncing.",[62,610,612],{"id":611},"expired-refresh-token","Expired refresh token",[58,614,615],{},"Use the profile name from the error message:",[67,617,619],{"className":69,"code":618,"language":71,"meta":72,"style":72},"l login --profile production\nl whoami --profile production\n",[74,620,621,625],{"__ignoreMap":72},[77,622,623],{"class":79,"line":80},[77,624,83],{},[77,626,627],{"class":79,"line":86},[77,628,95],{},[58,630,631,632,635,636,639],{},"After success, retry your original command. See ",[176,633,634],{"href":46},"troubleshooting"," for recovery and ",[176,637,638],{"href":15},"login and sessions"," for PKCE, DPoP, and storage details.",[641,642,643],"style",{},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}",{"title":72,"searchDepth":86,"depth":86,"links":645},[646,647,648,649,650,651],{"id":64,"depth":86,"text":65},{"id":182,"depth":86,"text":183},{"id":400,"depth":86,"text":401},{"id":516,"depth":86,"text":517},{"id":562,"depth":86,"text":563},{"id":611,"depth":86,"text":612},"Keep multiple AWS logins and select a profile for each project.","md",null,{},true,{"title":28,"description":652},"vrxemHD3kAjA24FESLAfyumuFPCjrQVtXHROsV50FV8",[660,662],{"title":24,"path":25,"stem":26,"description":661,"children":-1},"Create l.config.json and set your default profile, region, and Lambda target.",{"title":32,"path":33,"stem":34,"description":663,"children":-1},"Download and update code for one or many Lambda functions.",1790260505391]