Manage assets

Manage assets

Use the V2 asset routes to list, create, read, update, and delete assets for
your organization.

Prerequisite

Get an OAuth access token (see Authentication).

Choose an asset type

An owned asset belongs to your organization. Doppel uses owned assets for
detection coverage. An associated asset is related to your organization, but
your organization does not own it.

Use owned or associated as the asset_type value.

List assets

GET /v2/assets requires asset_type. You can also use platform_name,
brand_ids, brand_names, limit, and offset.

curl --request GET \
  --url "https://api.doppel.com/v2/assets?asset_type=owned&limit=100&offset=0" \
  --header "Authorization: Bearer <YOUR_ACCESS_TOKEN>"

The response contains active assets of one type. It also contains the total
count before pagination.

Create an asset

Use POST /v2/assets. Send the asset value, asset type, and zero to 100 brand
IDs.

curl --request POST \
  --url "https://api.doppel.com/v2/assets" \
  --header "Authorization: Bearer <YOUR_ACCESS_TOKEN>" \
  --header "Content-Type: application/json" \
  --data '{
    "brand_ids": ["123e4567-e89b-12d3-a456-426614174000"],
    "asset_value": "https://example.com",
    "asset_type": "owned"
  }'

A successful request returns 201 Created. The response contains the matching
asset. An empty brand_ids list creates an asset without a brand association.

Creating an asset archives matching open alerts in your organization. An owned
asset also creates detection coverage. An associated asset does not create
detection coverage.

You can repeat the same request after a timeout or a connection error. The API
returns the existing active asset. If the matching asset is archived, the API
restores it. Use the same asset_value, asset_type, and brand_ids in the
repeated request.

Create an asset from an alert

Use POST /v2/alert/assets to use the value and brand from an alert. Identify
the alert with exactly one of id or entity. Send only the asset type in the
body.

curl --request POST \
  --url "https://api.doppel.com/v2/alert/assets?id=ACM-1234" \
  --header "Authorization: Bearer <YOUR_ACCESS_TOKEN>" \
  --header "Content-Type: application/json" \
  --data '{"asset_type": "owned"}'

The same replay behavior applies to this operation.

Get one asset

Use GET /v2/asset with the asset UUID. This operation returns active and
archived assets.

curl --request GET \
  --url "https://api.doppel.com/v2/asset?id=123e4567-e89b-12d3-a456-426614174000" \
  --header "Authorization: Bearer <YOUR_ACCESS_TOKEN>"

Replace asset brands

Use PUT /v2/asset/brands to replace all brand associations for one asset. The
asset can be active or archived. Each brand must belong to your organization.

curl --request PUT \
  --url "https://api.doppel.com/v2/asset/brands?id=123e4567-e89b-12d3-a456-426614174000" \
  --header "Authorization: Bearer <YOUR_ACCESS_TOKEN>" \
  --header "Content-Type: application/json" \
  --data '{
    "brand_ids": ["223e4567-e89b-12d3-a456-426614174000"]
  }'

Send an empty brand_ids list to remove all brand associations.

Delete an asset

Use DELETE /v2/protected-asset/{id}. This operation deletes owned and
associated assets.

curl --request DELETE \
  --url "https://api.doppel.com/v2/protected-asset/123e4567-e89b-12d3-a456-426614174000" \
  --header "Authorization: Bearer <YOUR_ACCESS_TOKEN>"

A successful request returns 200 OK. An asset that does not belong to your
organization returns 404 Not Found.

Deprecated operations

GET /v2/protected-assets and POST /v2/protected-asset continue to work. Do
not use them for a new integration. Use GET /v2/assets and POST /v2/assets.


Did this page help you?