---
title: "Create a delivery event for an activation challenge"
method: POST
path: "/v1/mfa/challenges/activation/{id}/delivery_events"
tags: ["Activation challenges"]
---

# Create a delivery event for an activation challenge

`POST /v1/mfa/challenges/activation/{id}/delivery_events`

Registers a new delivery event that updates the delivery status of an activation challenge.

## Path parameters

- `id` string, required — Activation challenge id.

## Request body

- object
  - `type` 'DISPATCHED' | 'IN_TRANSIT' | 'DELIVERED' | 'UNDELIVERED' | 'LOST' | 'RETURNED' | 'SENT' | 'BOUNCED', required — Current status of the delivery process.
  - `provider` 'DEUTSCHE POST' | 'DHL' | 'TWILIO' — Name of the provider used to deliver the activation code.
  - `additional_details` string — Additional details about the event.
  - `timestamp` string, required — UTC timestamp of the event in RFC 3339 format.

## Response `201`

Created

- ActivationChallenge — Activation challenge
  - `id` string — The ID of the challenge.
  - `person_id` string — The ID of the person for whom the activation code is created
  - `code` string — activation code
  - `created_at` string — The date and time when the code was created.
  - `expires_at` string — The date and time when the code will expire.
  - `origin` string — Origin of the request. Origin specifed while creating a new activation code is returned here. "SOLARISBANK" is a reserved origin value which will be used by Solaris SE for internally generated requests.
  - `purpose` string — Purpose of the activation_code. The generated activation_code can be used only for the desired purpose. Currently the only supported purpose is DEVICE_BINDING. More purposes may be supported in future.
  - `delivery_method` string — Partner's method of delivering activation code to the endcustomer.
  - `usage_count` integer — The number of times the activation code has been used.
  - `max_usage_count` integer — The maximum number of times the activation code can be used.

## Other responses

- `400` — Validation error
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not found
- `500` — Internal server error

---

[API](https://skmtc.net/solarisgroup/apis/device-management.md) · [All operations](https://skmtc.net/solarisgroup/apis/device-management/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/solarisgroup/device-management/revisions/80dd46738839/schema)
