---
updatedAt: 2026-05-21T21:59:09.000Z
agentTools:
  siteIndex: https://techdocs.akamai.com/llms.txt
  projectIndex: https://techdocs.akamai.com/powershell/llms.txt
---

# Origin

Set-MSLOrigin

## Synopsis

Update an origin.

## Syntax

```powershell
Set-MSLOrigin [-OriginID] <Int32> [-Body] <Object> [[-EdgeRCFile] <String>] [[-Section] <String>] [[-AccountSwitchKey] <String>] [-ProgressAction <ActionPreference>] [<CommonParameters>]
```

## Description

Updates certain fields of the origin.

You can also use this API to rotate keys.

Populate the `previousKey` and `previousKeyExpiryDate` fields if you need your old keys to be valid for a certain amount of time even after rotating.

> **Note:** This function supports the pipeline, and can also read the `-OriginID` from the piped object.

## Parameters

<table>
  <tbody>
    <tr>
      <td class="ps-td"><code>&#8209;AccountSwitchKey</code></td>
      <td class="ps-tableinner">
        <div class="ps-metadata">
          <span class="ps-param-metadata">String</span>
          <span class="ps-param-metadata">Pipeline input: False</span>
        </div>
        <div>
          <p>An account credential key that lets you move between accounts when using an API client enabled for multiple accounts. To find account switch keys, use <a href="https://techdocs.akamai.com/powershell/docs/get-accountswitchkey">Get-AccountSwitchKey</a>.</p>
        </div>
      </td>
    </tr>
    <tr>
      <td class="ps-td"><code>&#8209;Body</code><br/><span style="color: red; padding-left: 11px; font-size: 13px;"><em>Required</em></span></td>
      <td class="ps-tableinner">
        <div class="ps-metadata">
          <span class="ps-param-metadata">Object</span>
          <span class="ps-param-metadata">Pipeline input: ByValue</span>
        </div>
        <div>
          <p>A request body, either as a <code>PSCustomObject</code> or string. This parameter supports pipelining.</p>
        </div>
      </td>
    </tr>
    <tr>
      <td class="ps-td"><code>&#8209;EdgeRCFile</code></td>
      <td class="ps-tableinner">
        <div class="ps-metadata">
          <span class="ps-param-metadata">String</span>
          <span class="ps-param-metadata">Pipeline input: False</span>
        </div>
        <div>
          <p>Your EdgeGrid resource file to authenticate your command. Defaults to <code>~/.edgerc</code>.</p>
        </div>
      </td>
    </tr>
    <tr>
      <td class="ps-td"><code>&#8209;OriginID</code><br/><span class="ps-param-alias">Alias: <code>&#8209;ID</code></span><br/><span style="color: red; padding-left: 11px; font-size: 13px;"><em>Required</em></span></td>
      <td class="ps-tableinner">
        <div class="ps-metadata">
          <span class="ps-param-metadata">Int32</span>
          <span class="ps-param-metadata">Pipeline input: ByPropertyName</span>
        </div>
        <div>
          <p>Your origin's ID.</p>
        </div>
      </td>
    </tr>
    <tr>
      <td class="ps-td"><code>&#8209;Section</code></td>
      <td class="ps-tableinner">
        <div class="ps-metadata">
          <span class="ps-param-metadata">String</span>
          <span class="ps-param-metadata">Pipeline input: False</span>
        </div>
        <div>
          <p>The section name in your EdgeGrid resource file to retrieve authentication credentials from. Defaults to <code>default</code>.</p>
        </div>
      </td>
    </tr>
  </tbody>
</table>

## Related Links

* [User Guide: Overview](https://techdocs.akamai.com/powershell/docs/overview)
* [API Reference](https://techdocs.akamai.com/msl/reference/put-origin)

# Sibling pages

* [Stream](https://techdocs.akamai.com/powershell/docs/set-mslstream.md)