Skip to main content

API Endpoints

Conventions

  • Base path: /api/201308.
  • List endpoints using paging accept startAt and limit. limit defaults to 30 and cannot exceed 100 unless the controller passes a lower maximum.
  • Request bodies for create/update endpoints are deserialized by the matching API service into the matching API object unless noted otherwise.
  • JSON examples below are representative. Runtime-generated values such as encoded IDs, URLs, registration codes, localized text, and omitted/null fields depend on the database, serializer configuration, authenticated retailer, and 201308 API.

Endpoint Summary

MethodPathPurpose
GET/api/201308/categoriesList active categories.
GET/api/201308/categories/{categoryId}Get one category.
POST/api/201308/customersCreate a customer.
PUT/api/201308/customers/{encodedCustomerId}Update a customer.
GET/api/201308/customers/{encodedCustomerId}Get customer by encoded ID.
GET/api/201308/customersGet customer by email or reference.
GET/api/201308/whoamiReturn calling retailer identity.
POST/api/201308/itemsCreate an item.
GET/api/201308/items/{encodedItemId}Get item by encoded ID.
GET/api/201308/itemsGet item by reference.
POST/api/201308/manufacturersCreate manufacturer.
GET/api/201308/manufacturersList or search manufacturers.
GET/api/201308/manufacturers/{manufacturerId}Get manufacturer.
GET/api/201308/products/{productId}/offersGet warranty-plan offers for a product.
POST/api/201308/productsCreate product.
GET/api/201308/productsSearch products.
GET/api/201308/products/{productId}Get product.
POST/api/201308/voucher-batchGenerate voucher batch.
PUT/api/201308/voucher/{voucherCode}Mark voucher as sold.
POST/api/201308/warrantiesCreate warranty.
POST/api/201308/items/{encodedItemId}/warrantiesCreate warranty for item.
GET/api/201308/warrantiesList/search warranties.
GET/api/201308/warranties/{encodedWarrantyId}Get warranty.
GET/api/201308/items/{encodedItemId}/warrantiesGet warranties for item.
DELETE/api/201308/warranties/{encodedWarrantyId}Refund/invalidate warranty.
DELETE/api/201308/warrantiesRefund/invalidate by registration code.
GET/api/201308/warranty-plansList warranty plans.
GET/api/201308/warranty-plans/{planId}Get warranty plan.

Categories

GET /api/201308/categories

Returns all active categories.

Query parameters:

NameRequiredDescription
treeNoIf truthy, asks for tree format instead of flat format.

Response: ApiCategory[].

Flat list response:

[
{
"id": "100",
"name": "Electronics",
"subCategoryIds": ["101", "102"],
"parentCategoryId": null
}
]

Tree response when tree=1:

[
{
"id": "100",
"name": "Electronics",
"subCategoryIds": ["101"],
"subCategories": [
{
"id": "101",
"name": "Mobile Phones",
"subCategoryIds": [],
"parentCategoryId": "100"
}
],
"parentCategoryId": null
}
]

GET /api/201308/categories/{categoryId}

Returns one category by numeric category ID.

Response: ApiCategory.

Single category response:

{
"id": "101",
"name": "Mobile Phones",
"subCategoryIds": [],
"parentCategoryId": "100"
}

Customers

POST /api/201308/customers

Creates a customer from an ApiCustomer request body.

Body: serialized ApiCustomer. Fields used by the service include customer identity, email, address, refId, and orderRefId.

Create/update request:

{
"salesRepEmail": "sales@example-retailer.com",
"firstName": "Jane",
"lastName": "Customer",
"refId": "CUST-10001",
"orderRefId": "ORDER-90001",
"emailAddress": "jane.customer@example.com",
"companyName": "Example Co",
"streetAddress": "123 Main St",
"city": "Vancouver",
"state": "BC",
"postalCode": "V6B 1A1",
"phone": "6045550100",
"country": "CA",
"isWalkIn": false,
"optIn": true
}

Response:

StatusDescription
201 CreatedCustomer created. Includes Location header.
redirectDuplicate customer data can redirect to the customer lookup route using emailAddress.

Create/update/get response:

{
"id": "8f3a2c",
"salesRepEmail": "sales@example-retailer.com",
"firstName": "Jane",
"lastName": "Customer",
"refId": "CUST-10001",
"orderRefId": "ORDER-90001",
"customerUrl": "https://www.warrantylife.com/api/201308/customers/8f3a2c.json",
"emailAddress": "jane.customer@example.com",
"companyName": "Example Co",
"streetAddress": "123 Main St",
"city": "Vancouver",
"state": "BC",
"postalCode": "V6B 1A1",
"phone": "6045550100",
"country": "CA",
"isWalkIn": false,
"optIn": true
}

PUT /api/201308/customers/{encodedCustomerId}

Updates a customer from an ApiCustomer request body.

Response: 201 Created with updated ApiCustomer and Location header.

Create/update request:

{
"salesRepEmail": "sales@example-retailer.com",
"firstName": "Jane",
"lastName": "Customer",
"refId": "CUST-10001",
"orderRefId": "ORDER-90001",
"emailAddress": "jane.customer@example.com",
"companyName": "Example Co",
"streetAddress": "123 Main St",
"city": "Vancouver",
"state": "BC",
"postalCode": "V6B 1A1",
"phone": "6045550100",
"country": "CA",
"isWalkIn": false,
"optIn": true
}

Create/update/get response:

{
"id": "8f3a2c",
"salesRepEmail": "sales@example-retailer.com",
"firstName": "Jane",
"lastName": "Customer",
"refId": "CUST-10001",
"orderRefId": "ORDER-90001",
"customerUrl": "https://www.warrantylife.com/api/201308/customers/8f3a2c.json",
"emailAddress": "jane.customer@example.com",
"companyName": "Example Co",
"streetAddress": "123 Main St",
"city": "Vancouver",
"state": "BC",
"postalCode": "V6B 1A1",
"phone": "6045550100",
"country": "CA",
"isWalkIn": false,
"optIn": true
}

GET /api/201308/customers/{encodedCustomerId}

Returns a customer by encoded customer ID.

Response: ApiCustomer.

Create/update/get response:

{
"id": "8f3a2c",
"salesRepEmail": "sales@example-retailer.com",
"firstName": "Jane",
"lastName": "Customer",
"refId": "CUST-10001",
"orderRefId": "ORDER-90001",
"customerUrl": "https://www.warrantylife.com/api/201308/customers/8f3a2c.json",
"emailAddress": "jane.customer@example.com",
"companyName": "Example Co",
"streetAddress": "123 Main St",
"city": "Vancouver",
"state": "BC",
"postalCode": "V6B 1A1",
"phone": "6045550100",
"country": "CA",
"isWalkIn": false,
"optIn": true
}

GET /api/201308/customers

Looks up a customer by email or partner reference.

Query parameters:

NameRequiredDescription
emailNoIf present, lookup uses customer email.
refIdNoPartner customer reference. Used when email is absent.
orderRefIdNoPartner order reference. Used when email is absent.

Response: ApiCustomer.

Create/update/get response:

{
"id": "8f3a2c",
"salesRepEmail": "sales@example-retailer.com",
"firstName": "Jane",
"lastName": "Customer",
"refId": "CUST-10001",
"orderRefId": "ORDER-90001",
"customerUrl": "https://www.warrantylife.com/api/201308/customers/8f3a2c.json",
"emailAddress": "jane.customer@example.com",
"companyName": "Example Co",
"streetAddress": "123 Main St",
"city": "Vancouver",
"state": "BC",
"postalCode": "V6B 1A1",
"phone": "6045550100",
"country": "CA",
"isWalkIn": false,
"optIn": true
}

Developer

GET /api/201308/whoami

Returns identity information for the authenticated API caller.

Response: WhoamiResult.

Response:

{
"retailerId": "42",
"name": "Example Retailer"
}

Items

POST /api/201308/items

Creates an item from an ApiItem request body.

Body fields used by the service include customerId, productId or productSku, categoryId, refId, orderRefId, pricing, serial number, damage/repair flags, purchase date, and optional sales rep data.

Create request:

{
"refId": "ITEM-10001",
"orderRefId": "ORDER-90001",
"customerId": "8f3a2c",
"dateOfPurchase": "2026-06-09T00:00:00-07:00",
"productId": "12345",
"productSku": "RET-SKU-12345",
"purchasedCondition": "NEW",
"categoryId": "101",
"pricePaid": 599.99,
"pricePaidCurrencyCode": "CAD",
"taxPaid": 72.0,
"shippingPaid": 0.0,
"serialNumber": "SN123456789",
"serialNumberType": "serial",
"salesRepEmail": "sales@example-retailer.com",
"isRepaired": false,
"hasDamage": false,
"contractYears": "2",
"certifiedDate": null
}

Response: 201 Created with ApiItem and Location header.

Response:

{
"id": "a91bc0",
"refId": "ITEM-10001",
"orderRefId": "ORDER-90001",
"customerId": "8f3a2c",
"dateOfPurchase": "2026-06-09T00:00:00-07:00",
"productId": "12345",
"productSku": "RET-SKU-12345",
"model": "Phone Model X",
"manufacturer": "Example Manufacturer",
"purchasedCondition": "NEW",
"categoryId": "101",
"pricePaid": 599.99,
"pricePaidCurrencyCode": "CAD",
"taxPaid": 72.0,
"shippingPaid": 0.0,
"serialNumber": "SN123456789",
"serialNumberType": "serial",
"salesRepEmail": "sales@example-retailer.com",
"isRepaired": false,
"hasDamage": false,
"contractYears": "2",
"certifiedDate": null
}

GET /api/201308/items/{encodedItemId}

Returns an item by encoded item ID.

Response: ApiItem.

Response:

{
"id": "a91bc0",
"refId": "ITEM-10001",
"orderRefId": "ORDER-90001",
"customerId": "8f3a2c",
"dateOfPurchase": "2026-06-09T00:00:00-07:00",
"productId": "12345",
"productSku": "RET-SKU-12345",
"model": "Phone Model X",
"manufacturer": "Example Manufacturer",
"purchasedCondition": "NEW",
"categoryId": "101",
"pricePaid": 599.99,
"pricePaidCurrencyCode": "CAD",
"taxPaid": 72.0,
"shippingPaid": 0.0,
"serialNumber": "SN123456789",
"serialNumberType": "serial",
"salesRepEmail": "sales@example-retailer.com",
"isRepaired": false,
"hasDamage": false,
"contractYears": "2",
"certifiedDate": null
}

GET /api/201308/items

Looks up an item by partner reference.

Query parameters:

NameRequiredDescription
refIdNoPartner item reference.
orderRefIdNoPartner order reference.

Response: ApiItem.

Response:

{
"id": "a91bc0",
"refId": "ITEM-10001",
"orderRefId": "ORDER-90001",
"customerId": "8f3a2c",
"dateOfPurchase": "2026-06-09T00:00:00-07:00",
"productId": "12345",
"productSku": "RET-SKU-12345",
"model": "Phone Model X",
"manufacturer": "Example Manufacturer",
"purchasedCondition": "NEW",
"categoryId": "101",
"pricePaid": 599.99,
"pricePaidCurrencyCode": "CAD",
"taxPaid": 72.0,
"shippingPaid": 0.0,
"serialNumber": "SN123456789",
"serialNumberType": "serial",
"salesRepEmail": "sales@example-retailer.com",
"isRepaired": false,
"hasDamage": false,
"contractYears": "2",
"certifiedDate": null
}

Manufacturers

POST /api/201308/manufacturers

Creates a manufacturer from an ApiManufacturer request body.

Body fields: name.

Create request:

{
"name": "Example Manufacturer"
}

Response: 201 Created with ApiManufacturer and Location header.

Response:

{
"id": "501",
"name": "Example Manufacturer"
}

GET /api/201308/manufacturers

Lists active manufacturers or searches by name.

Query parameters:

NameRequiredDescription
nameNoIf present, searches manufacturer names. If absent, lists manufacturers.
startAtNoPaging start index. Defaults to 0.
limitNoPage size. Defaults to 30, max 100.

Response: ApiManufacturer[].

List response:

[
{
"id": "501",
"name": "Example Manufacturer"
}
]

GET /api/201308/manufacturers/{manufacturerId}

Returns one manufacturer.

Response: ApiManufacturer.

Response:

{
"id": "501",
"name": "Example Manufacturer"
}

Offers

GET /api/201308/products/{productId}/offers

Returns warranty-plan offers for a product.

Query parameters:

NameRequiredDescription
priceYesProduct/item price or value. Service rejects missing, non-numeric, or negative values.
conditionNoItem condition. Must be one of the item purchase conditions, documented in-controller as NEW, USED, REFURBISHED, or CERTIFIED.
categoryIdNoCategory ID to use for offer selection. Must be a positive integer and existing category.
strategyNoPartner-selected offer strategy.

Response: ApiOffer.

Response:

{
"status": "OK",
"warrantyPlans": [
{
"id": "7001",
"applicableCategoryIds": ["101"],
"name": "2 Year Protection Plan",
"description": "Coverage for eligible products.",
"deductible": "0.00",
"productMinPrice": 500.0,
"productMaxPrice": 999.99,
"maxItems": 1,
"duration": 2,
"durationUnit": "Years",
"isDurationFixed": true,
"partsDuration": 2,
"partsDurationUnit": "Years",
"labourDuration": 2,
"labourDurationUnit": "Years",
"rmaShippingCoverage": "NONE",
"serviceLocation": "Depot",
"claimPhone": "18005550100",
"planAvailableFrom": null,
"planAvailableTo": null,
"sellableDuration": 30,
"sellableDurationUnit": "Days",
"srp": 99.99,
"wholesaleCost": 65.0,
"retailerCost": 70.0,
"retailPrice": 99.99,
"currencyCode": "CAD",
"countryCode": "CA",
"termsUrl": "https://www.warrantylife.com/terms/7001",
"updatedAt": "2026-06-09T12:00:00-07:00",
"wlSku": "WL-PLAN-2YR",
"retailerSku": "RET-PLAN-2YR"
}
],
"scenarios": {
"recommended": {
"name": "Recommended Plans",
"description": "Recommended plans for this product.",
"type": "standard",
"warrantyPlanIds": [7001]
},
"longest": null,
"premium": null,
"affordable": null,
"espBundle": null,
"espBundleUpgrade": null,
"adhBundle": null,
"lojack": null,
"glass": null,
"trio18basic": null,
"trio18major": null,
"trio18ultimate": null
}
}

Products

POST /api/201308/products

Creates a product from an ApiProduct request body.

Body fields used by the service include manufacturerId, model, mpn, msrp, msrpCurrency, categoryId, upc, ean, sku, categoryRefId, and categoryRefName.

Create request:

{
"sku": "RET-SKU-12345",
"categoryId": "101",
"categoryRefId": "partner-category-phones",
"categoryRefName": "Phones",
"manufacturerId": "501",
"mpn": "MPN-12345",
"model": "Phone Model X",
"msrp": 699.99,
"msrpCurrency": "CAD",
"upc": "123456789012",
"ean": "0123456789012"
}

Response: 201 Created with ApiProduct and Location header.

Response:

{
"id": "12345",
"sku": "RET-SKU-12345",
"categoryId": "101",
"isCategoryKnown": true,
"manufacturerId": "501",
"manufacturer": {
"id": "501",
"name": "Example Manufacturer"
},
"mpn": "MPN-12345",
"model": "Phone Model X",
"msrp": 699.99,
"msrpCurrency": "CAD",
"upc": "123456789012",
"ean": "0123456789012",
"warrantyPlans": [],
"estimatedValue": 699.99
}

GET /api/201308/products

Searches products. At least one non-paging search parameter must be supplied; full product listing is explicitly blocked.

Accepted parameters from ProductService::getSearchParameters():

NameDescription
qGeneral search query.
idProduct ID.
upcUPC.
mpnManufacturer part number.
modelProduct model.
categoryIdCategory ID.
skuPartner/retailer SKU.
manufacturerIdManufacturer ID.
manufacturerNameManufacturer name.
includePlansInclude warranty plans in product response.
includePlansAtPriceInclude plans applicable at a given price.
startAtPaging start index.
limitPage size, default 30, max 100.

Response: ApiProduct[].

Search response:

[
{
"id": "12345",
"sku": "RET-SKU-12345",
"categoryId": "101",
"isCategoryKnown": true,
"manufacturerId": "501",
"manufacturer": {
"id": "501",
"name": "Example Manufacturer"
},
"mpn": "MPN-12345",
"model": "Phone Model X",
"msrp": 699.99,
"msrpCurrency": "CAD",
"upc": "123456789012",
"ean": "0123456789012",
"warrantyPlans": [],
"estimatedValue": 699.99
}
]

GET /api/201308/products/{productId}

Returns one product by numeric product ID.

Response: ApiProduct.

Response:

{
"id": "12345",
"sku": "RET-SKU-12345",
"categoryId": "101",
"isCategoryKnown": true,
"manufacturerId": "501",
"manufacturer": {
"id": "501",
"name": "Example Manufacturer"
},
"mpn": "MPN-12345",
"model": "Phone Model X",
"msrp": 699.99,
"msrpCurrency": "CAD",
"upc": "123456789012",
"ean": "0123456789012",
"warrantyPlans": [],
"estimatedValue": 699.99
}

Vouchers

POST /api/201308/voucher-batch

Generates a voucher batch for the authenticated retailer/user.

Request parameters:

NameRequiredDescription
qtyYesQuantity to generate. Must be numeric and no more than 1000.
warrantyPlanIdYesWarranty plan ID for vouchers.
noteNoNote stored with batch.

Voucher batch request:

{
"qty": 2,
"warrantyPlanId": "7001",
"note": "June promo batch"
}

Response: ApiVoucherBatch. Some internal fields are intentionally nulled before serialization: retailer ID, user ID, requested quantity, prefix, and creation time.

Voucher batch response:

{
"id": "batch-100",
"voucherCodes": ["ABC123", "DEF456"],
"warrantyPlanId": "7001",
"tag": null,
"note": "June promo batch"
}

PUT /api/201308/voucher/{voucherCode}

Marks a voucher as sold and associates sale/item metadata.

Request parameters:

NameRequiredDescription
orderRefIdNoPartner order reference. Max 255 characters.
refIdNoPartner reference. Max 255 characters.
dateOfPurchaseYesParsed by PHP DateTime; invalid formats return 400.
modelNoTruncated to 150 characters.
mpnNoTruncated to 70 characters.
makeNoTruncated to 100 characters.
deviceValueNoMust be numeric if provided.

Voucher sold request:

{
"orderRefId": "ORDER-90001",
"refId": "ITEM-10001",
"dateOfPurchase": "2026-06-09",
"model": "Phone Model X",
"mpn": "MPN-12345",
"make": "Example Manufacturer",
"deviceValue": 599.99
}

Response: 204 No Content.

Voucher sold response: 204 No Content with an empty body.

Warranties

POST /api/201308/warranties

Creates a warranty from an ApiWarranty request body.

Body fields used by the service include warranty plan ID, customer, item IDs/details, item purchase data, refId, orderRefId, and optional registration code.

Create request using existing customer and item IDs:

{
"registrationCode": "ABC123",
"refId": "WARRANTY-10001",
"orderRefId": "ORDER-90001",
"dateOfPurchase": "2026-06-09T00:00:00-07:00",
"warrantyPlanId": "7001",
"itemId": "a91bc0",
"itemIds": ["a91bc0"],
"customerId": "8f3a2c",
"salesRepEmail": "sales@example-retailer.com",
"pricePaid": 99.99,
"pricePaidCurrencyCode": "CAD",
"taxPaid": 12.0
}

Response: 202 Accepted with ApiWarranty.

Response:

{
"id": "warranty-encoded-id",
"registrationCode": "ABC123",
"refId": "WARRANTY-10001",
"orderRefId": "ORDER-90001",
"warrantyUrl": "https://www.warrantylife.com/api/201308/warranties/warranty-encoded-id.json",
"dateOfPurchase": "2026-06-09T00:00:00-07:00",
"warrantyPlanId": "7001",
"itemId": "a91bc0",
"itemIds": ["a91bc0"],
"customerId": "8f3a2c",
"salesRepEmail": "sales@example-retailer.com",
"pricePaid": 99.99,
"pricePaidCurrencyCode": "CAD",
"taxPaid": 12.0,
"registrationDate": "2026-06-09T12:00:00-07:00",
"isTerminated": false
}

POST /api/201308/items/{encodedItemId}/warranties

Creates a warranty for a specific item. If the body also supplies item IDs, the URL item ID must match one of them.

Response: 202 Accepted with ApiWarranty.

Response:

{
"id": "warranty-encoded-id",
"registrationCode": "ABC123",
"refId": "WARRANTY-10001",
"orderRefId": "ORDER-90001",
"warrantyUrl": "https://www.warrantylife.com/api/201308/warranties/warranty-encoded-id.json",
"dateOfPurchase": "2026-06-09T00:00:00-07:00",
"warrantyPlanId": "7001",
"itemId": "a91bc0",
"itemIds": ["a91bc0"],
"customerId": "8f3a2c",
"salesRepEmail": "sales@example-retailer.com",
"pricePaid": 99.99,
"pricePaidCurrencyCode": "CAD",
"taxPaid": 12.0,
"registrationDate": "2026-06-09T12:00:00-07:00",
"isTerminated": false
}

GET /api/201308/warranties

Lists or searches warranties.

Query parameters:

NameRequiredDescription
refIdNoPartner warranty reference.
orderRefIdNoPartner order reference.
codeNoWarranty registration code or voucher code.

Response: ApiWarranty[] or ApiWarranty, depending on service match.

List response:

[
{
"id": "warranty-encoded-id",
"registrationCode": "ABC123",
"refId": "WARRANTY-10001",
"orderRefId": "ORDER-90001",
"warrantyUrl": "https://www.warrantylife.com/api/201308/warranties/warranty-encoded-id.json",
"dateOfPurchase": "2026-06-09T00:00:00-07:00",
"warrantyPlanId": "7001",
"itemId": "a91bc0",
"itemIds": ["a91bc0"],
"customerId": "8f3a2c",
"salesRepEmail": "sales@example-retailer.com",
"pricePaid": 99.99,
"pricePaidCurrencyCode": "CAD",
"taxPaid": 12.0,
"registrationDate": "2026-06-09T12:00:00-07:00",
"isTerminated": false
}
]

GET /api/201308/warranties/{encodedWarrantyId}

Returns one warranty by encoded warranty ID.

Response: ApiWarranty.

Response:

{
"id": "warranty-encoded-id",
"registrationCode": "ABC123",
"refId": "WARRANTY-10001",
"orderRefId": "ORDER-90001",
"warrantyUrl": "https://www.warrantylife.com/api/201308/warranties/warranty-encoded-id.json",
"dateOfPurchase": "2026-06-09T00:00:00-07:00",
"warrantyPlanId": "7001",
"itemId": "a91bc0",
"itemIds": ["a91bc0"],
"customerId": "8f3a2c",
"salesRepEmail": "sales@example-retailer.com",
"pricePaid": 99.99,
"pricePaidCurrencyCode": "CAD",
"taxPaid": 12.0,
"registrationDate": "2026-06-09T12:00:00-07:00",
"isTerminated": false
}

GET /api/201308/items/{encodedItemId}/warranties

Returns warranties for an item.

Response: ApiWarranty[].

List response:

[
{
"id": "warranty-encoded-id",
"registrationCode": "ABC123",
"refId": "WARRANTY-10001",
"orderRefId": "ORDER-90001",
"warrantyUrl": "https://www.warrantylife.com/api/201308/warranties/warranty-encoded-id.json",
"dateOfPurchase": "2026-06-09T00:00:00-07:00",
"warrantyPlanId": "7001",
"itemId": "a91bc0",
"itemIds": ["a91bc0"],
"customerId": "8f3a2c",
"salesRepEmail": "sales@example-retailer.com",
"pricePaid": 99.99,
"pricePaidCurrencyCode": "CAD",
"taxPaid": 12.0,
"registrationDate": "2026-06-09T12:00:00-07:00",
"isTerminated": false
}
]

DELETE /api/201308/warranties/{encodedWarrantyId}

Refunds/invalidates a warranty by encoded warranty ID.

Response: 204 No Content.

DELETE /api/201308/warranties

Refunds/invalidates a warranty by registration code.

Query parameters:

NameRequiredDescription
codeYesRegistration code used when no encoded warranty ID is in the URL.

Response: 204 No Content.

Warranty Plans

GET /api/201308/warranty-plans

Lists warranty plans.

Query parameters:

NameRequiredDescription
categoryIdNoFilter by category ID.
wlSkuNoFilter by WarrantyLife SKU.
retailerSkuNoFilter by retailer SKU.

Response: ApiWarrantyPlan[].

List response:

[
{
"id": "7001",
"applicableCategoryIds": ["101"],
"name": "2 Year Protection Plan",
"description": "Coverage for eligible products.",
"deductible": "0.00",
"productMinPrice": 500.0,
"productMaxPrice": 999.99,
"maxItems": 1,
"duration": 2,
"durationUnit": "Years",
"isDurationFixed": true,
"partsDuration": 2,
"partsDurationUnit": "Years",
"labourDuration": 2,
"labourDurationUnit": "Years",
"rmaShippingCoverage": "NONE",
"serviceLocation": "Depot",
"claimPhone": "18005550100",
"planAvailableFrom": null,
"planAvailableTo": null,
"sellableDuration": 30,
"sellableDurationUnit": "Days",
"srp": 99.99,
"wholesaleCost": 65.0,
"retailerCost": 70.0,
"retailPrice": 99.99,
"currencyCode": "CAD",
"countryCode": "CA",
"termsUrl": "https://www.warrantylife.com/terms/7001",
"updatedAt": "2026-06-09T12:00:00-07:00",
"wlSku": "WL-PLAN-2YR",
"retailerSku": "RET-PLAN-2YR"
}
]

GET /api/201308/warranty-plans/{planId}

Returns one warranty plan.

Response: ApiWarrantyPlan.

Single response:

{
"id": "7001",
"applicableCategoryIds": ["101"],
"name": "2 Year Protection Plan",
"description": "Coverage for eligible products.",
"deductible": "0.00",
"productMinPrice": 500.0,
"productMaxPrice": 999.99,
"maxItems": 1,
"duration": 2,
"durationUnit": "Years",
"isDurationFixed": true,
"partsDuration": 2,
"partsDurationUnit": "Years",
"labourDuration": 2,
"labourDurationUnit": "Years",
"rmaShippingCoverage": "NONE",
"serviceLocation": "Depot",
"claimPhone": "18005550100",
"planAvailableFrom": null,
"planAvailableTo": null,
"sellableDuration": 30,
"sellableDurationUnit": "Days",
"srp": 99.99,
"wholesaleCost": 65.0,
"retailerCost": 70.0,
"retailPrice": 99.99,
"currencyCode": "CAD",
"countryCode": "CA",
"termsUrl": "https://www.warrantylife.com/terms/7001",
"updatedAt": "2026-06-09T12:00:00-07:00",
"wlSku": "WL-PLAN-2YR",
"retailerSku": "RET-PLAN-2YR"
}