# Create user consent for device monitoring Records consent from the given person (specified in the request URL) to collect device fingerprints on their registered device. Each consent is tied to a specific device. Endpoint: POST /v1/persons/{person_id}/device_consents Version: 1.0 ## Path parameters: - `person_id` (string, required) ## Request fields (application/json): - `event_type` (string) Indicates whether the customer approved or rejected device monitoring. Enum: "APPROVED", "REJECTED" - `confirmed_at` (string) UTC timestamp from when the customer consented/refused to consent to device monitoring. Example: "2021-06-25T09:44:25.000Z" ## Response 201 fields (application/json): - `id` (string) ID of the device consent. Example: "17a7389adaf83145770d8e6c00a398ddcon" - `person_id` (string) ID of the person that gave the consent. Example: "e2bbc86268e9a4667861b73f31dba03bcper" - `event_type` (string) Indicates whether the customer approved or rejected device monitoring. Enum: "APPROVED", "REJECTED" - `confirmed_at` (string) UTC timestamp from when the customer consented/refused to consent to device monitoring. Example: "2021-06-25T09:44:25.000Z" - `created_at` (string) UTC timestamp from when the consent event was created on Solaris' backend. Example: "2021-06-25T09:44:25.000Z" ## Response 400 fields (application/json): - `id` (string) Example: "a95f2aaf-4e0c-4d49-8021-8a16a884ed86" - `status` (string) Example: "400" - `code` (string) Example: "constraint_violation" - `title` (string) Example: "The request violated data integrity constraints" - `detail` (string) Example: "confirmedAt --> Date mustn't be in the future." ## Response 403 fields (application/json): - `id` (string) Example: "a95f2aaf-4e0c-4d49-8021-8a16a884ed86" - `status` (string) Example: "403" - `code` (string) Example: "unauthorized_action" - `title` (string) Example: "Unauthorized Action" - `detail` (string) Example: "Unauthorized action is not allowed." ## Response 404 fields (application/json): - `id` (string) Example: "a95f2aaf-4e0c-4d49-8021-8a16a884ed86" - `status` (string) Example: "404" - `code` (string) Example: "person_not_found" - `title` (string) Example: "Person Not Found" - `detail` (string) Example: "Couldn't find person for id 'bbbcccfff388923eb899a5852df6cper'." ## Response 500 fields (application/json): - `id` (string) Example: "e8915041-9d8c-4d96-9dd1-04e8522ecdbf" - `status` (string) Example: "500" - `code` (string) Example: "generic_error" - `title` (string) Example: "Generic Error" - `detail` (string) Example: "There was an error."