---
title: "Get started"
description: "Learn the API basics for authentication, base URLs, request patterns, and example calls."
source_url: https://dev.digicert.com/get-started.html
---
DigiCert® ONE offers a family of RESTful APIs that automate certificate lifecycle management, code signing, device identity, and more. All APIs share the same authentication model, error semantics, and URL patterns.
## Authentication
| Method | Best for | How it works |
| --- | --- | --- |
| **API token** *(default)* | CI/CD pipelines, backend services | Add the *service user* API token in the `x-api-key` request header. |
| **Mutual TLS (mTLS)** | High-assurance, network-restricted, or key-rotation-averse environments | Present a client TLS certificate and prepend `clientauth.` to the hostname. See [Set up service user multi-factor authentication](https://dev.digicert.com/md/account-manager-api/tutorials/set-up-service-user-multi-factor-authentication.md). |
> **Tip**
>
> Need help generating keys or client certificates? See [Authentication](https://dev.digicert.com/md/get-started/authentication.md).
## URL pattern
All product APIs share a predictable structure.
```text
https://{hostname}/{product}/api/v{n}/{resource}
```
| Segment | Description | Examples |
| --- | --- | --- |
| `{hostname}` | DigiCert ONE hostname | `one.digicert.com`
`demo.one.digicert.com`
`one.digicert.co.jp` |
| `{product}` | DigiCert ONE product-specific path segment | `account` (Account Manager)
`certificate-authority` (DigiCert Private CA)
`mpki` (Trust Lifecycle Manager)
`signingmanager` (Software Trust Manager)
`devicetrustmanager` (Device Trust Manager) |
| `api/v{n}` | API version; most products are `v1` and follow this convention. Device Trust Manager uses nested versioning for some endpoints, for example `/{resource}/api/v{n}`. | `api/v1`
`api/v3`
`/{resource}/api/v{n}`[*](#device-trust-example) |
| `{resource}` | Specific endpoint path | `users`
`division`
`/enrollment/{enrollment_id}/status`
`/certificate-configuration-service/api/v2/certificate-policy`[*](#device-trust-example) |
* Examples specific to Device Trust API endpoints.
## Example request
List all service users in **Account Manager**. Replace `SERVICE_API_KEY` with your [service user API token](/get-started/authentication.html#create-a-service-user-ui).
```bash
curl -X GET \
-H "x-api-key: SERVICE_API_KEY" \
"https://demo.one.digicert.com/account/api/v1/user?user_type=service"
```
Successful response:
```json
[
{
"id": "783a6a45-b74b-4635-bb4b-69855910ccd3",
"email": "jane@example.com",
"status": "ACTIVE",
"access_scope": "account",
"primary_account_id": "130deba5-3ebb-43b2-8183-1a9940d460f5",
"created_at": "2021-06-23T08:55:19Z",
"created_by": "8f7f8b1f-63c1-4580-af7d-ea4cd890e8f7",
"user_type": "service",
"friendly_name": "Example service user",
"description": "",
"locale": "en_US",
"applications": [
{
"id": "2d3a72fd-ad44-4a9b-952a-2bcadb14a741",
"name": "Trust Lifecycle",
"permissions": [
"VIEW_EM_SEAT",
"VIEW_EM_AUDIT_LOG",
"VIEW_EM_CERTIFICATE",
"VIEW_EM_PROFILE"
]
},
{
"id": "1a05282a-ec70-4da9-b921-933c070fcf80",
"name": "IoT Trust",
"permissions": [
"VIEW_IOT_CERTIFICATE",
"VIEW_IOT_ENROLLMENT_PROFILE"
]
},
{
"id": "97b97f1b-8d1d-4203-a62c-0a209a1bea0a",
"name": "Document Trust",
"permissions": [
"MANAGE_DSM_VIEW_CERTIFICATE_PROFILES",
"MANAGE_DSM_ADD_VALIDATIONS",
"MANAGE_DSM_VIEW_CERTIFICATE_TEMPLATES",
"MANAGE_DSM_VIEW_VALIDATIONS"
]
},
{
"id": "78c0355a-e1ca-4978-b60c-e9d66b9e1f30",
"name": "Account Manager",
"permissions": [
"MANAGE_AM_ACCOUNT",
"VIEW_AM_AUDIT_LOG"
]
},
{
"id": "fd2b688d-43bd-4b4a-9fd6-f883ad9e813d",
"name": "CA Manager",
"permissions": [
"VIEW_CM_LICENSE"
]
},
{
"id": "7660bdb3-66e7-46e6-928f-dcae4d64ee91",
"name": "Software Trust",
"permissions": [
"MANAGE_SM_CERTIFICATE_PROFILE",
"VIEW_SM_CERTIFICATE",
"SIGN_SM_HASH"
]
}
],
"accounts": [
{
"id": "4b13f12d-c8b2-4c49-a21f-9b399364f2ce",
"name": "Example account",
"active": true,
"service_period": {
"from": "2021-05-06",
"to": "2030-05-06"
},
"friendly_identifier": "1234567",
"locale": "en_US"
}
]
}
]
```
## In this section
- [Authentication](https://dev.digicert.com/md/get-started/authentication.md) — Learn how service users authenticate API requests with tokens or client certificates.
- [Environments & base URLs](https://dev.digicert.com/md/get-started/environments-base-urls.md) — Choose the right environment, regional hostname, and base URL pattern for API requests.
- [Make your first API call](https://dev.digicert.com/md/get-started/make-your-first-api-call.md) — Create credentials, send a test request, and explore common GET request patterns.
- [Error handling & rate limits](https://dev.digicert.com/md/get-started/error-handling-rate-limits.md) — Learn how to parse API errors, handle status codes, and implement retry logic.
- [About the APIs](https://dev.digicert.com/md/get-started/about-the-apis.md) — Review available API families, common platform patterns, and when to use each API.