Update descriptions
Update vendor profile descriptions (about, services, areas served, etc.). All fields are optional; only provided (non-null) fields are applied.
curl --request PATCH \
--url https://www.renovationfind.com/rest-manager-api-v1/vendors/{vendorId}/descriptions \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"description": "We specialize in kitchen and bathroom renovations.",
"servicesDescription": "Kitchen, bathroom, basement"
}
'import requests
url = "https://www.renovationfind.com/rest-manager-api-v1/vendors/{vendorId}/descriptions"
payload = {
"description": "We specialize in kitchen and bathroom renovations.",
"servicesDescription": "Kitchen, bathroom, basement"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
description: 'We specialize in kitchen and bathroom renovations.',
servicesDescription: 'Kitchen, bathroom, basement'
})
};
fetch('https://www.renovationfind.com/rest-manager-api-v1/vendors/{vendorId}/descriptions', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://www.renovationfind.com/rest-manager-api-v1/vendors/{vendorId}/descriptions",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'description' => 'We specialize in kitchen and bathroom renovations.',
'servicesDescription' => 'Kitchen, bathroom, basement'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://www.renovationfind.com/rest-manager-api-v1/vendors/{vendorId}/descriptions"
payload := strings.NewReader("{\n \"description\": \"We specialize in kitchen and bathroom renovations.\",\n \"servicesDescription\": \"Kitchen, bathroom, basement\"\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("https://www.renovationfind.com/rest-manager-api-v1/vendors/{vendorId}/descriptions")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"description\": \"We specialize in kitchen and bathroom renovations.\",\n \"servicesDescription\": \"Kitchen, bathroom, basement\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://www.renovationfind.com/rest-manager-api-v1/vendors/{vendorId}/descriptions")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"description\": \"We specialize in kitchen and bathroom renovations.\",\n \"servicesDescription\": \"Kitchen, bathroom, basement\"\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"id": 1234,
"vendorName": "ABC Renovations",
"email": "info@abcrenovations.com",
"salesEmail": "sales@abcrenovations.com",
"vendorType": "COMPANY",
"urlTagPrefix": "abc-renovations",
"activated": true,
"prospect": false,
"contactAddress1": "123 Main St",
"contactAddress2": "Suite 200",
"contactCity": "Calgary",
"contactProvince": "AB",
"contactPostalCode": "T2P 1A1",
"contactPhoneNumber": "4031234567",
"realContactPhoneNumber": "4031234567",
"smsPhoneNumber": "4031234567",
"feedbackSMSPhoneNumber": "4031234567",
"feedbackEmail": "feedback@abcrenovations.com",
"cityId": 42,
"cityName": "Calgary",
"provinceName": "Alberta",
"websiteUrl": "https://www.abcrenovations.com",
"bbbUrl": "https://www.bbb.org/abc-renovations",
"facebookUrl": "https://www.facebook.com/abcrenovations",
"twitterUrl": "https://twitter.com/abcrenovations",
"googlePlusUrl": "https://g.page/abcrenovations",
"linkedInUrl": "https://www.linkedin.com/company/abcrenovations",
"instagramUrl": "https://www.instagram.com/abcrenovations",
"pinterestUrl": "https://www.pinterest.com/abcrenovations",
"youTubeUrl": "https://www.youtube.com/abcrenovations",
"description": "We specialize in home renovations...",
"covId19Description": "COVID-19 safety measures...",
"servicesDescription": "Kitchen, bathroom, basement renovations",
"areasServedDescription": "Calgary and surrounding areas",
"paymentOptions": "Cash, cheque, credit card",
"enableFullRMS": true,
"enableStandaloneFeedbackBooster": true,
"enableStandaloneReviewBooster": true,
"enableStandaloneReferralBooster": true,
"hasLeadBooster": true,
"viewStatsPermission": true,
"disableVendorInvoiceAccess": true,
"energyEfficiencyContractor": true,
"pendingCertification": true,
"directoryInventoryReserved": true,
"highRatingOnBbb": true,
"customerReviewsPassed": true,
"creditReportsPassed": true,
"legalsPassed": true,
"insuranceExpires": "15/06/2026",
"wcbExpires": "01/12/2026",
"businessLicenseExpires": "31/03/2027",
"dunsNumber": "123456789",
"dnbMonitoring": true,
"accredited": true,
"pqVendor": true,
"pqVendorDescription": "<string>",
"pqEmails": "<string>",
"pqPhoneNumbers": "<string>",
"discountLive": true,
"discountMember": true,
"discountPriority": 123,
"discountCategory": "<string>",
"discountBriefDescription": "<string>",
"discountDetailedDescription": "<string>",
"discountInventoryReserved": true,
"packageType": 1,
"manualPaymentType": "<string>",
"enableVendorContests": true,
"contestParticipantLimit": 123,
"pauseCurrentDripsInPipeline": true,
"pauseVendorContestDrippingFromCFS": true
},
"message": "<string>"
}{
"success": false,
"error": "<string>"
}{
"success": false,
"error": "Rate limit exceeded. Maximum 250 requests per 5 minutes. Please retry later."
}Authorizations
JWT token issued from the RenovationFind Manager Portal
Path Parameters
Vendor ID
Body
Response
Descriptions updated, returns full vendor details
true
Full vendor profile returned by the Manager API. Fields are grouped by section:
Account - id, vendorName, email, salesEmail, vendorType, urlTagPrefix, activated, prospect
Contact - contactAddress1, contactAddress2, contactCity, contactProvince, contactPostalCode, contactPhoneNumber, realContactPhoneNumber, smsPhoneNumber, feedbackSMSPhoneNumber, feedbackEmail
City (read-only) - cityId, cityName, provinceName
Social - websiteUrl, bbbUrl, facebookUrl, twitterUrl, googlePlusUrl, linkedInUrl, instagramUrl, pinterestUrl, youTubeUrl
Descriptions - description, covId19Description, servicesDescription, areasServedDescription, paymentOptions
Features - enableFullRMS, enableStandaloneFeedbackBooster, enableStandaloneReviewBooster, enableStandaloneReferralBooster, hasLeadBooster, viewStatsPermission, disableVendorInvoiceAccess, energyEfficiencyContractor, pendingCertification, directoryInventoryReserved
Compliance - highRatingOnBbb, customerReviewsPassed, creditReportsPassed, legalsPassed, insuranceExpires, wcbExpires, businessLicenseExpires, dunsNumber, dnbMonitoring, accredited
PQ - pqVendor, pqVendorDescription, pqEmails, pqPhoneNumbers
Discount - discountLive, discountMember, discountPriority, discountCategory, discountBriefDescription, discountDetailedDescription, discountInventoryReserved
Subscription - packageType, manualPaymentType
Contests - enableVendorContests, contestParticipantLimit, pauseCurrentDripsInPipeline, pauseVendorContestDrippingFromCFS
Show child attributes
Show child attributes
curl --request PATCH \
--url https://www.renovationfind.com/rest-manager-api-v1/vendors/{vendorId}/descriptions \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"description": "We specialize in kitchen and bathroom renovations.",
"servicesDescription": "Kitchen, bathroom, basement"
}
'import requests
url = "https://www.renovationfind.com/rest-manager-api-v1/vendors/{vendorId}/descriptions"
payload = {
"description": "We specialize in kitchen and bathroom renovations.",
"servicesDescription": "Kitchen, bathroom, basement"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
description: 'We specialize in kitchen and bathroom renovations.',
servicesDescription: 'Kitchen, bathroom, basement'
})
};
fetch('https://www.renovationfind.com/rest-manager-api-v1/vendors/{vendorId}/descriptions', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://www.renovationfind.com/rest-manager-api-v1/vendors/{vendorId}/descriptions",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'description' => 'We specialize in kitchen and bathroom renovations.',
'servicesDescription' => 'Kitchen, bathroom, basement'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://www.renovationfind.com/rest-manager-api-v1/vendors/{vendorId}/descriptions"
payload := strings.NewReader("{\n \"description\": \"We specialize in kitchen and bathroom renovations.\",\n \"servicesDescription\": \"Kitchen, bathroom, basement\"\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("https://www.renovationfind.com/rest-manager-api-v1/vendors/{vendorId}/descriptions")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"description\": \"We specialize in kitchen and bathroom renovations.\",\n \"servicesDescription\": \"Kitchen, bathroom, basement\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://www.renovationfind.com/rest-manager-api-v1/vendors/{vendorId}/descriptions")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"description\": \"We specialize in kitchen and bathroom renovations.\",\n \"servicesDescription\": \"Kitchen, bathroom, basement\"\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"id": 1234,
"vendorName": "ABC Renovations",
"email": "info@abcrenovations.com",
"salesEmail": "sales@abcrenovations.com",
"vendorType": "COMPANY",
"urlTagPrefix": "abc-renovations",
"activated": true,
"prospect": false,
"contactAddress1": "123 Main St",
"contactAddress2": "Suite 200",
"contactCity": "Calgary",
"contactProvince": "AB",
"contactPostalCode": "T2P 1A1",
"contactPhoneNumber": "4031234567",
"realContactPhoneNumber": "4031234567",
"smsPhoneNumber": "4031234567",
"feedbackSMSPhoneNumber": "4031234567",
"feedbackEmail": "feedback@abcrenovations.com",
"cityId": 42,
"cityName": "Calgary",
"provinceName": "Alberta",
"websiteUrl": "https://www.abcrenovations.com",
"bbbUrl": "https://www.bbb.org/abc-renovations",
"facebookUrl": "https://www.facebook.com/abcrenovations",
"twitterUrl": "https://twitter.com/abcrenovations",
"googlePlusUrl": "https://g.page/abcrenovations",
"linkedInUrl": "https://www.linkedin.com/company/abcrenovations",
"instagramUrl": "https://www.instagram.com/abcrenovations",
"pinterestUrl": "https://www.pinterest.com/abcrenovations",
"youTubeUrl": "https://www.youtube.com/abcrenovations",
"description": "We specialize in home renovations...",
"covId19Description": "COVID-19 safety measures...",
"servicesDescription": "Kitchen, bathroom, basement renovations",
"areasServedDescription": "Calgary and surrounding areas",
"paymentOptions": "Cash, cheque, credit card",
"enableFullRMS": true,
"enableStandaloneFeedbackBooster": true,
"enableStandaloneReviewBooster": true,
"enableStandaloneReferralBooster": true,
"hasLeadBooster": true,
"viewStatsPermission": true,
"disableVendorInvoiceAccess": true,
"energyEfficiencyContractor": true,
"pendingCertification": true,
"directoryInventoryReserved": true,
"highRatingOnBbb": true,
"customerReviewsPassed": true,
"creditReportsPassed": true,
"legalsPassed": true,
"insuranceExpires": "15/06/2026",
"wcbExpires": "01/12/2026",
"businessLicenseExpires": "31/03/2027",
"dunsNumber": "123456789",
"dnbMonitoring": true,
"accredited": true,
"pqVendor": true,
"pqVendorDescription": "<string>",
"pqEmails": "<string>",
"pqPhoneNumbers": "<string>",
"discountLive": true,
"discountMember": true,
"discountPriority": 123,
"discountCategory": "<string>",
"discountBriefDescription": "<string>",
"discountDetailedDescription": "<string>",
"discountInventoryReserved": true,
"packageType": 1,
"manualPaymentType": "<string>",
"enableVendorContests": true,
"contestParticipantLimit": 123,
"pauseCurrentDripsInPipeline": true,
"pauseVendorContestDrippingFromCFS": true
},
"message": "<string>"
}{
"success": false,
"error": "<string>"
}{
"success": false,
"error": "Rate limit exceeded. Maximum 250 requests per 5 minutes. Please retry later."
}
