> ## Documentation Index
> Fetch the complete documentation index at: https://docs.serval.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Access for Users

> How to request, extend, and manage access to applications

## Requesting Access

Request access through Slack, Teams, or app.serval.com. Serval guides you to the right access level, even if you don't know the specific role you need. For example, you may know you need Figma access but not whether that's Editor, Admin, or Group Admin.

**Request access two ways:**

1. **Natural language requests** through a conversational portal (Slack, Teams, or any help desk portal). You can make imperfect requests and Serval guides you to the correct type of access.

<Frame caption="Request access via the help desk">
  <img src="https://mintcdn.com/serval/1MkNvweOjUDMFgE8/images/Screenshot2025-10-21at12.35.24AM.png?fit=max&auto=format&n=1MkNvweOjUDMFgE8&q=85&s=b6f081a244779801607ad55605daab08" alt="Slack conversation showing user requesting Figma access with Serval guiding them through role selection" style={{ width:"100%" }} width="4112" height="2574" data-path="images/Screenshot2025-10-21at12.35.24AM.png" />
</Frame>

2. **Catalog in app.serval.com**: Click **New Request** → **Browse Catalog** → select **Access** → choose the application and role → fill in required details → click **Request access**

<Frame caption="Request access in app.serval.com">
  <img src="https://mintcdn.com/serval/1MkNvweOjUDMFgE8/images/Screenshot2025-10-21at12.33.02AM.png?fit=max&auto=format&n=1MkNvweOjUDMFgE8&q=85&s=0ff73f0e0544f2f7d176d6bef4a55696" alt="Serval application interface showing the access request form with app selection and role options" style={{ width:"100%" }} width="4112" height="2384" data-path="images/Screenshot2025-10-21at12.33.02AM.png" />
</Frame>

### Scheduling a Start Time

When you request access, you can choose a start time instead of right away. Set a start time on the request, and after it's approved, Serval provisions the access at that time rather than immediately. You can schedule up to 90 days out, and the start time can't be in the past.

This is useful when you know you'll need access on a specific future date, so the access is ready without anyone remembering to provision it manually. Common use cases include a project kickoff or a new hire's start date.

***

## Managing Active Access

Once your access request is approved and provisioned, you can manage it throughout its lifecycle. View your current access duration, time remaining, and expiration time directly in the access request card.

### Extending Access

Need more time? Request an extension before your access expires:

* **Via Slack/Teams**: Ask Serval to extend your access. For example: "Can I extend my AWS access for another hour?"
* **Via app.serval.com**: Open the ticket where you requested access and use the edit option to request more time.

<Tip>
  You can request an extension even while your access is still being provisioned. The new duration takes effect once both provisioning completes and the extension is approved.
</Tip>

### Shortening Access

If you finish early and no longer need access, you can request to shorten it:

* Ask Serval to reduce your access time, or edit the duration in the access request card.
* Shortening access helps maintain least-privilege principles.

<Note>
  Both extensions and shortenings may require approval depending on your organization's access policies.
</Note>

***

## Amending Requests Before Approval

Changed your mind about how long you need access? You can amend your request before it's approved:

1. Open the original ticket where you requested access.
2. Request a different duration (longer or shorter).
3. Your new request replaces the pending one.

The approver sees only your final requested duration. If you amend multiple times before approval, only the last amendment matters.

***

## Canceling Requests

You can cancel access requests at different stages:

<AccordionGroup>
  <Accordion title="Cancel a pending request (before approval)">
    If you no longer need the access you requested, cancel it before approval:

    * Ask Serval to cancel the request, or use the Cancel button in the access request card.
    * The entire access request is concluded and no access is granted.
  </Accordion>

  <Accordion title="Cancel a pending extension">
    If you requested an extension but changed your mind:

    * Cancel the pending extension using the Cancel button.
    * Your original access remains active with its current duration.
    * Only the extension request is canceled, not your existing access.
  </Accordion>
</AccordionGroup>

***

## Reviewing Personal Access

View your personal access history from app.serval.com: Access sidebar → select "My Access" → View historical log of all access requests and relevant tickets.

<Note>
  Admins can create a workflow that lets you request a CSV download of all your historical access requests.
</Note>

***

## Common Questions

<AccordionGroup>
  <Accordion title="What happens when my access expires?">
    When your access duration ends, Serval automatically revokes the access using the same method it was granted (removing you from a group, calling an API, etc.). You'll need to request new access if you need it again.
  </Accordion>

  <Accordion title="Can I extend access after it expires?">
    If your access recently expired but hasn't been fully deprovisioned yet, you may be able to extend it without starting a new request. Otherwise, you'll need to submit a new access request.
  </Accordion>

  <Accordion title="Why was I approved for a different duration than I requested?">
    Approvers can modify the duration when approving your request. For example, you might request 2 hours but be approved for 30 minutes based on policy or business needs.
  </Accordion>

  <Accordion title="How do I know how much time I have left?">
    The access request card shows your current duration, time remaining, and expiration time. You can also ask Serval about your active access.
  </Accordion>
</AccordionGroup>
