> For the complete documentation index, see [llms.txt](https://docs.lithnet.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.lithnet.io/okta-ma/installation/getting-started.md).

# Getting started

A step-by-step guide that takes you from an empty MIM server to a working import and export.

This guide walks you through setting up the management agent from start to finish. Each step links to the page that covers it in more detail.

## Step 1: Decide what MIM will manage

Decide whether MIM will import users, groups, or both, and whether it will only import them or also write changes back. This determines which OAuth scopes and Okta admin permissions you'll need, so it's worth deciding before you set anything up in Okta.

[Supported objects and operations](/okta-ma/supported-objects-and-operations.md) lists what is available.

## Step 2: Choose an authentication method

Choose one of the following:

* [API token](/okta-ma/authentication/api-token.md), the quickest to set up
* [OAuth with a private JWK](/okta-ma/authentication/oauth-with-a-private-jwk.md), when a key file on the MIM server is acceptable
* [OAuth with an X.509 certificate](/okta-ma/authentication/oauth-with-an-x509-certificate.md), when the private key must be non-exportable or held in hardware

[Choosing an authentication method](/okta-ma/authentication/choosing-an-authentication-method.md) compares them in more detail.

## Step 3: Prepare Okta

Follow the guide for the method you chose. This part of the setup is performed by your Okta administrator, and produces the values MIM needs: either an API token, or a client ID and a registered public key.

## Step 4: Install the management agent

Check the [system requirements](/okta-ma/installation/system-requirements.md), then run the installer. See [Installing and upgrading](/okta-ma/installation/installing-and-upgrading.md).

If the MIM server needs a proxy to reach Okta, work through [Configuring an HTTP proxy](/okta-ma/installation/configuring-an-http-proxy.md) now.

## Step 5: Create the management agent in MIM

Work through [Creating the management agent](/okta-ma/configuration/creating-the-management-agent.md). This covers connectivity, global settings, object types, attributes, joins, flows, and deprovisioning.

The object-specific detail is in [Setting up user management](/okta-ma/operations/setting-up-user-management.md), [Setting up groups and membership](/okta-ma/operations/setting-up-groups-and-membership.md), and [Setting up password management](/okta-ma/operations/setting-up-password-management.md).

## Step 6: Create the run profiles

Full Import, Delta Import, Full Synchronization, Delta Synchronization, and Export.

## Step 7: Import, review, then export

1. Run Full Import. Check the object counts and any import errors.
2. Run Full Synchronization. Review the joins, projections, disconnectors, and pending exports.
3. Once the pending exports look right, run Export.
4. Run Delta Import and Delta Synchronization to confirm the export.

## Step 8: Test each operation you enabled

Test the operations MIM will actually perform: create, update, suspend, unsuspend, deprovision, membership, password. Run a confirming import after each export. Use a full import to confirm a permanent delete.

Then enable your normal schedule, and keep a periodic full import in it so MIM can detect objects deleted outside of MIM.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.lithnet.io/okta-ma/installation/getting-started.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
