# esim profile activations — NCM API

Beta. Validates and executes the activation of carrier profiles on the eSIMs in your Cradlepoint devices. List activations, submit a new one, then fetch or update it by ID; bulk activation is supported. Check esim profiles first to see which carrier profiles a device already holds.

Base URL: https://api.cradlepointecm.com

### GET /api/v3/beta/esim_profile_activations

List bulk or individual activation jobs

Return bulk and individual activation jobs

> **Beta:** This endpoint is served on a `/beta/` path. Beta endpoints are still evolving and may change without the stability guarantees of GA endpoints.

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| state | query | string | no | State of the activation jobs |
| type | query | string | no | Type of the activation job, either bulk_esim_profile_activations or esim_profile_activations |

**Example request**

```bash
curl "https://api.cradlepointecm.com/api/v3/beta/esim_profile_activations" \
  -H "Authorization: Bearer <token>"
```

**Response 200**

```json
{
  "data": {
    "id": "abcdABCD001",
    "type": "bulk_esim_profile_activations",
    "attributes": {
      "created_at": "2024-06-01T11:00:00Z",
      "updated_at": "2024-06-01T12:00:00Z",
      "state": "initiated",
      "operation": "preview",
      "count": 3
    }
  }
}
```

**Response 400** — Bad request

**Response 403** — Request forbidden

### POST /api/v3/beta/esim_profile_activations

Execute an esim profile activation job, with the capability of a preview option.

Creates a bulk esim profile activation job

> **Beta:** This endpoint is served on a `/beta/` path. Beta endpoints are still evolving and may change without the stability guarantees of GA endpoints.

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| operation | query | string (execute | preview) | yes | Either preview or execute an esim profile activation job. |
| payload | query | string | yes | A CSV formatted file that contains activation information. |

**Request body**

**Example request**

```bash
curl -X POST "https://api.cradlepointecm.com/api/v3/beta/esim_profile_activations" \
  -H "Authorization: Bearer <token>"
```

**Response 201** — Bulk Activation Job Created

```json
{
  "data": {
    "id": "abcdABCD001",
    "type": "bulk_esim_profile_activations",
    "attributes": {
      "created_at": "2024-06-01T11:00:00Z",
      "updated_at": "2024-06-01T12:00:00Z",
      "state": "preview",
      "operation": "string",
      "count": 3
    }
  }
}
```

**Response 400** — Bad request

**Response 403** — Request forbidden

### GET /api/v3/beta/esim_profile_activations/{id}

Retrieve an esim profile bulk or device activation job.

Retrieves a single bulk or individual activation job.

> **Beta:** This endpoint is served on a `/beta/` path. Beta endpoints are still evolving and may change without the stability guarantees of GA endpoints.

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| id | path | string | yes |  |

**Example request**

```bash
curl "https://api.cradlepointecm.com/api/v3/beta/esim_profile_activations/{id}" \
  -H "Authorization: Bearer <token>"
```

**Response 200**

**Response 400** — Bad request

**Response 403** — Request forbidden

### PUT /api/v3/beta/esim_profile_activations/{id}

Execute an esim profile activation job, that currently has the operation set to preview.

Update a bulk esim profile activation job to begin execution.

> **Beta:** This endpoint is served on a `/beta/` path. Beta endpoints are still evolving and may change without the stability guarantees of GA endpoints.

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| id | path | string | yes |  |
| operation | query | string (execute) | yes | Update the operation to execute an esim profile activation job. |

**Request body**

**Example request**

```bash
curl -X PUT "https://api.cradlepointecm.com/api/v3/beta/esim_profile_activations/{id}" \
  -H "Authorization: Bearer <token>"
```

**Response 200** — Bulk Activation Job Updated

```json
{
  "data": {
    "type": "bulk_esim_profile_activations",
    "id": "string",
    "attributes": {
      "created_at": "2024-11-07T14:37:21.230Z",
      "updated_at": "2024-11-07T14:37:21.230Z",
      "state": "string",
      "operation": "execute",
      "count": 0
    },
    "links": {
      "self": "http://api.example.org/accounts/1"
    }
  }
}
```

**Response 400** — Bad request

**Response 403** — Request forbidden
