---
title: "Update regulated entity"
method: PUT
path: "/api-regulated/v1/regulated-entities/self"
tags: ["RegulatedEntity"]
---

# Update regulated entity

`PUT /api-regulated/v1/regulated-entities/self`

## Request

- Base URL: `https://api.currencyguard.com`
- URL: `https://api.currencyguard.com/api-regulated/v1/regulated-entities/self`
- Auth: OAuth 2 (implicit, authorization URL `https://auth.currencyguard.com/oauth2/authorize`, scopes: `regulated.parties.canModifyRegulatedEntity`)

Update the regulated entity details for the authenticated regulated user.

**Required entitlement:** `regulated.parties.canModifyRegulatedEntity`  
_Entitles the regulated user to update their own regulated entity profile_

## Request body

- RegulatedEntityDTOUpdate: Updated regulated entity data
  - `piiData` RegulatedEntityDTOUpdatePiiData: **Extensible JSONB field** - The PII data for this regulated entity as JSONB (includes name, regulatory info, address, phone, website, and contact). This field accepts any valid JSON structure and can be extended with additional properties as needed. Note: While the structure is extensible, known fields shown in the example are subject to application validation.
  - `oauthPoolId` string, uuid: The OAuth pool this regulated entity's staff authenticate against.

## Response `200`

Regulated entity updated successfully

- RegulatedEntityDTO: Schema for representing a RegulatedEntity
  - `id` string, uuid: The ID for this regulated entity.
  - `entityReferenceCode` string: Two-character code identifying this regulated entity in customer-facing references, e.g. the 'SP' in Guard reference GSP1000104. Immutable once a Guard has been issued under it.
  - `piiData` RegulatedEntityDTOPiiData: **Extensible JSONB field** - The PII data for this regulated entity as JSONB (includes name, regulatory info, address, phone, website, and contact). This field accepts any valid JSON structure and can be extended with additional properties as needed. Note: While the structure is extensible, known fields shown in the example are subject to application validation.
  - `oauthPoolId` string, uuid: The OAuth pool this regulated entity's staff authenticate against.
  - `perimeterId` string, uuid: The tenant perimeter whose KMS key encrypts this record's PII.
  - `eventSequence` integer: Event sequence number for event sourcing.
  - `versionNumber` integer: The strictly monotonically increasing version number for this record.
  - `updatedBy` string: The username of the person or entity that updated this record.
  - `updatedAt` string: The timestamp of the last update in UTC.
  - `createdAt` string: The timestamp of creation in UTC.

## Other responses

- `400`: Invalid request data — [`http/malformed-request`](/problems/http/malformed-request/)
- `401`: Not authenticated — [`security/authentication-failed`](/problems/security/authentication-failed/)
- `403`: Not authorized - requires regulated role or attempting to update different entity — [`security/insufficient-permissions`](/problems/security/insufficient-permissions/)
- `404`: Regulated entity not found — [`http/resource-not-found`](/problems/http/resource-not-found/)
- `409`: Conflict - name already exists or version mismatch — [`http/resource-conflict`](/problems/http/resource-conflict/)
- `500`: Server error — [`server/internal-error`](/problems/server/internal-error/)

---

[API](https://skmtc.dev/currencyguard/apis/currencyguard-trading-system-api-external.md) · [All operations](https://skmtc.dev/currencyguard/apis/currencyguard-trading-system-api-external/llms.txt) · [OpenAPI document](https://skmtc.dev/currencyguard/apis/currencyguard-trading-system-api-external/revisions/a1f3f854190d?raw)
