---
title: "Add a product's first-party service override"
method: POST
path: "/ops/first_party_services/product/{product_id}"
tags: ["ops", "ops-first-party-services"]
---

# Add a product's first-party service override

`POST /ops/first_party_services/product/{product_id}`

## Request

- Base URL: `https://api.topi-staging.eu`
- URL: `https://api.topi-staging.eu/ops/first_party_services/product/{product_id}`
- Auth: OAuth 2
  - Authorization code: `/oauth2/authorize`
  - Token URL: `/oauth2/token` scopes: `catalog:edit`

Add a first party service override for a product

## Path parameters

- `product_id` string, regexp, required: The internal ID for the product

## Request body

- AddFirstPartyServiceOverrideForProductRequestBody
  - `additional_values` FirstPartyServiceAdditionalValues: Additional values for specific first party types.
    - `accessory_type` string: if the first party service is an accessory, this value is the kind of the accessory
    - `deductible_price` MoneyAmountWithOptionalGross
      - `currency` string, required: Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
      - `gross` integer: Gross amount of money, expressed in the minor unit for the currency
      - `net` integer, required: Net amount of money, expressed in the minor unit for the currency
    - `images` FirstPartyServiceImages
      - `url1x` string, required: URL to redirect to on success
      - `url2x` string, required: URL to redirect to on success
      - `url3x` string, required: URL to redirect to on success
  - `disabled` boolean, required: If the service should be disabled for a given product
  - `monthly_price` MoneyAmount
    - `currency` string, required: Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
    - `gross` integer, required: Gross amount of money, expressed in the minor unit for the currency
    - `net` integer, required: Net amount of money, expressed in the minor unit for the currency
  - `type` 'topi_repair' | 'topi_replace' | 'demo_first_party_service' | 'topi_accessory' | 'topi_data_deletion_certificate' | 'topi_care_plus_synaxon' | 'topi_care_plus_michaelag', required: The kind of first party service available

## Response `200`

OK response.

- FirstPartyServiceProductOverride: First Party Service override information for a product
  - `additional_values` FirstPartyServiceAdditionalValues: Additional values for specific first party types.
    - `accessory_type` string: if the first party service is an accessory, this value is the kind of the accessory
    - `deductible_price` MoneyAmountWithOptionalGross
      - `currency` string, required: Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
      - `gross` integer: Gross amount of money, expressed in the minor unit for the currency
      - `net` integer, required: Net amount of money, expressed in the minor unit for the currency
    - `images` FirstPartyServiceImages
      - `url1x` string, required: URL to redirect to on success
      - `url2x` string, required: URL to redirect to on success
      - `url3x` string, required: URL to redirect to on success
  - `disabled` boolean, required: If the service should be disabled for a given product
  - `monthly_price` MoneyAmount
    - `currency` string, required: Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
    - `gross` integer, required: Gross amount of money, expressed in the minor unit for the currency
    - `net` integer, required: Net amount of money, expressed in the minor unit for the currency
  - `product_id` string, regexp, required: The internal ID for the product
  - `type` 'topi_repair' | 'topi_replace' | 'demo_first_party_service' | 'topi_accessory' | 'topi_data_deletion_certificate' | 'topi_care_plus_synaxon' | 'topi_care_plus_michaelag', required

## Other responses

- `401`: Unauthorized: Unauthorized response.
- `403`: InvalidScopes: Forbidden response.
- `404`: NotFound: Not Found response.

## Changes

- **2026-10-27** `ac6979514123`: 1 info
  - api operation id `catalog.AddFirstPartyServiceOverrideForProduct` removed and replaced with `catalog#AddFirstPartyServiceOverrideForProduct`
- **2026-10-26** `7ff7ee94b30e`: 2 info
  - api operation id `catalog#AddFirstPartyServiceOverrideForProduct` removed and replaced with `catalog.AddFirstPartyServiceOverrideForProduct`
  - api tag `ops-first-party-services` added

[Operation history](https://skmtc.dev/topi/apis/topi-public-api/changes/ops/first_party_services/product/:product_id/post.md)

---

[API](https://skmtc.dev/topi/apis/topi-public-api.md) - [All operations](https://skmtc.dev/topi/apis/topi-public-api/llms.txt) - [OpenAPI document](https://skmtc.dev/topi/apis/topi-public-api/revisions/09f585e29aa8?raw)
