For the complete documentation index, see [llms.txt](https://docs.certn.co/api/llms.txt). This page is also available as [Markdown](https://docs.certn.co/api/start/demo-account/understand-your-general-resources.md).

You'll need to know how to [Get your access token](https://docs.certn.co/api/start/demo-account/get-your-access-token) before you can follow the instructions in this section.

## Organizational structure

When you're set up within Certn, you belong to an organization. This organization has a few levels of hierarchy:

- [Superteams](https://docs.certn.co/api/api-reference/general#superteams)
  - [Teams](https://docs.certn.co/api/api-reference/general#teams)
    - [Users](https://docs.certn.co/api/api-reference/general#users)

Superteams can have multiple Teams and Teams can have multiple Users. When you're added to Certn, you're linked to a Team, which is linked to a Superteam.

### Authorization header

You'll need an [Authorization header](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Authorization) with a valid Bearer token.

- Replace `access_token` with your API access token:

```
{ "Authorization": "Bearer {access_token}" }
```

### Retrieve your Users

In the beginning, you'll be the only User in your organizational account. Let's retrieve your users by making a GET request to our `/users/` endpoint.

```python
import requests

# Use your access token in the header.
headers = { "Authorization": f"Bearer {access_token}" }

# URL to retrieve a list of your users
url = "https://demo-api.certn.co/api/v1/users/"

# Send the HTTP request to the API via GET
response = requests.get(url, headers=headers)

############### Optional ###############

# Brings errors to the forefront
response.raise_for_status()

# Writes the contents of the response in a file named "user_list.json"
with open("user_list.json", "w") as f:
    f.write(response.text)

############# End Optional #############
```

In this example, we saved the results of the call to a new file named `user_list.json`.

With everything set properly and a good internet connection, you should receive a response status of `200 OK`.

**200 OK**

```
{
    [...]  
    "results": [
        {
            "id": "string<uuid>",
            [...]  
        },
    ]
}
```

In the `user_list.json` file, you should see one user listed in the results: it's you! Look for the `id` field for your User, and copy that value. We use [universally unique identifiers (UUIDs)](https://en.wikipedia.org/wiki/Universally_unique_identifier) for ids, so it'll be formatted like this:`123e4567-e89b-12d3-a456-426614174000.`You'll need this to [Create your first application](https://docs.certn.co/api/start/demo-account/send-request).

For more details on the structure of the User list response, see [Retrieve a list of users](https://docs.certn.co/api/api-reference/general#retrieve-a-list-of-users).

## Errors

Errors are a relatively common occurrence when working with APIs. It's always good to know how to prevent them and what to do when they arise.

See [Error Codes](https://docs.certn.co/api/api-reference/resources/error-codes) for details on types of errors and how to resolve them.
