--- title: "Upload VMC or CMC logo (encoded)" source_url: https://dev.digicert.com/certcentral-apis/services-api/orders/upload-vmc-or-cmc-logo-encoded.html api_method: POST api_endpoint: "/services/v2/order/certificate/12345/vmc/encoded-logo" api_url: "https://www.digicert.com/services/v2/order/certificate/12345/vmc/encoded-logo" --- **POST** `https://www.digicert.com/services/v2/order/certificate/12345/vmc/encoded-logo` Use this endpoint to upload an SVG logo to a pending order for a Verified Mark Certificates (VMC) or a Common Mark Certificate (CMC). Uploading a logo replaces any existing logo for the order. If the logo already exists in your account, we assign the existing logo and any trademark details associated with it to the order instead of uploading a duplicate logo to your account. This endpoint accepts compressed logo data, formatted as a base64-encoded string. To upload raw SVG data, use the [Upload VMC or CMC logo (SVG)](https://dev.digicert.com/md/certcentral-apis/services-api/orders/upload-vmc-or-cmc-logo-svg.md) endpoint. > **Info** > > Before uploading a logo, make sure it meets the requirements for VMC or CMC: > > - [Validate VMC or CMC logo format (SVG)](https://dev.digicert.com/md/certcentral-apis/services-api/utilities/validate-vmc-or-cmc-logo-format-svg.md) > - [Validate VMC or CMC logo format (encoded)](https://dev.digicert.com/md/certcentral-apis/services-api/utilities/validate-vmc-or-cmc-logo-format-encoded.md) ## Request format To submit a request to the **Upload VMC or CMC logo (encoded)** endpoint: - Set the `Content-Type` header to `application/json`. - Format the data for your SVG logo as a compressed, base64-encoded string. For example, in a bash shell, run this command: ```bash echo '' | gzip | base64 ``` - In the JSON payload, submit the string containing the encoded logo data as the value of the `logo` parameter. ## Example requests and responses **cURL** ```bash curl --request POST 'https://www.digicert.com/services/v2/order/certificate/12345/vmc/encoded-logo' \ --header 'Content-Type: application/json' \ --header 'X-DC-DEVKEY: {{api_key}} \ --data-raw '{ "logo" : {{compressed_base64_encoded_svg_logo}} }'curl --request POST 'https://www.digicert.com/services/v2/order/certificate/12345/vmc/encoded-logo' \ --header 'Content-Type: application/json' \ --header 'X-DC-DEVKEY: {{api_key}} \ --data-raw '{ "logo" : {{compressed_base64_encoded_svg_logo}} }' ``` **Python** ```python import requests import json url = "https://www.digicert.com/services/v2/order/certificate/144457106/vmc/encoded-logo" payload = json.dumps({ "logo": {{compressed_base64_encoded_svg_logo}} }) headers = { 'X-DC-DEVKEY': {{api_key}}, 'Content-Type': 'application/json' } response = requests.request("POST", url, headers=headers, data=payload) print(response.text) ``` **Go** ```go package main import ( "fmt" "strings" "net/http" "io/ioutil" ) func main() { url := "https://www.digicert.com/services/v2/order/certificate/144457106/vmc/encoded-logo" method := "POST" payload := strings.NewReader(`{ "logo": {{compressed_base64_encoded_svg_logo}} }`) client := &http.Client { } req, err := http.NewRequest(method, url, payload) if err != nil { fmt.Println(err) return } req.Header.Add("X-DC-DEVKEY", {{api_key}}) res, err := client.Do(req) if err != nil { fmt.Println(err) return } defer res.Body.Close() body, err := ioutil.ReadAll(res.Body) if err != nil { fmt.Println(err) return } fmt.Println(string(body)) } ``` **NodeJS** ```javascript var request = require('request'); var options = { 'method': 'POST', 'url': 'https://www.digicert.com/services/v2/order/certificate/144457106/vmc/encoded-logo', 'headers': { 'X-DC-DEVKEY': {{api_key}}, 'Content-Type': 'application/json' }, body: JSON.stringify({ "logo": {{api_key}} }) }; request(options, function (error, response) { if (error) throw new Error(error); console.log(response.body); }); ``` **200 OK (new logo)** ```json { "id": 99, "organization_id": 1374401 } ``` **200 OK (existing logo)** ```json { "id": 101, "organization_id": 12345, "trademark_country_code": "au", "trademark_registration_number": "C1234-D1234" } ``` ## Path parameters
Name Req/Opt Description
order_id required ID of a pending order for a VMC or CMC.
## Response parameters
Name Type Description
id integer Logo ID.
organization_id integer ID of the organization for the logo.
trademark_country_code string Two-letter country code that specifies the country or region where you have the rights to use the logo or where the logo is registered.
Possible values: See Glossary – Trademark offices and country codes for VMC or CMC logos
Note: Only returned when the uploaded logo matches an existing logo that is already assigned a country_code value.
trademark_registration_number string Trademark registration number for the mark.
Note: Only returned when the uploaded logo matches an existing logo that is already assigned a registration_number value.