--- title: "Submit for validation" source_url: https://dev.digicert.com/certcentral-apis/services-api/organizations/submit-for-validation.html api_method: POST api_endpoint: "/services/v2/organization/{{organization_id}}/validation" api_url: "https://www.digicert.com/services/v2/organization/{{organization_id}}/validation" --- **POST** `https://www.digicert.com/services/v2/organization/{{organization_id}}/validation` Use this endpoint to submit an organization to be validated and add verified contacts who can approve orders for the given product type. > **Info** > > To get a list of possible user IDs to use for the `verified_users` array, use the [List approvers](https://dev.digicert.com/md/certcentral-apis/services-api/organizations/list-approvers.md) endpoint. > **Info** > > **Organization validation reuse periods will decrease to 397 days** > > Due to industry-wide changes, the organization validation reuse period will continue to shorten over time. Starting February 24, 2026, the maximum organization validation reuse period will be 397 days. For existing pre-validated organization, the new expiration date must be calculated as the last validation date + 397 days. For more information, see Organization validation reuse changes for public OV TLS certificates in 2026. ## Example requests and responses **cURL** ```bash curl -X POST \ 'https://www.digicert.com/services/v2/organization/{{organization_id}}/validation' \ -H 'Content-Type: application/json' \ -H 'X-DC-DEVKEY: {{api_key}}' \ -d '{ "validations": [ { "type": "ov" }, { "type": "ev", "verified_users": [ { "id": 112233 }, { "first_name": "Jill", "last_name": "Valentine", "job_title": "CTO", "telephone": "555-555-5555", "email": "jill.valentine@digicert.com" } ] } ] }' ``` **Python** ```python import requests url = "https://www.digicert.com/services/v2/organization/{{organization_id}}/validation" payload = "{\n \"validations\": [\n {\n \"type\": \"ov\"\n },\n {\n \"type\": \"ev\",\n \"verified_users\": [\n {\n \"id\": 112233\n },\n {\n \"first_name\": \"Jill\",\n \"last_name\": \"Valentine\",\n \"job_title\": \"CTO\",\n \"telephone\": \"555-555-5555\",\n \"email\": \"jill.valentine@digicert.com\"\n }\n ]\n }\n ]\n}" headers = { 'X-DC-DEVKEY': "{{api_key}}", 'Content-Type': "application/json" } response = requests.request("POST", url, data=payload, headers=headers) print(response.text) ``` **Go** ```go package main import ( "fmt" "strings" "net/http" "io/ioutil" ) func main() { url := "https://www.digicert.com/services/v2/organization/{{organization_id}}/validation" payload := strings.NewReader("{\n \"validations\": [\n {\n \"type\": \"ov\"\n },\n {\n \"type\": \"ev\",\n \"verified_users\": [\n {\n \"id\": 112233\n },\n {\n \"first_name\": \"Jill\",\n \"last_name\": \"Valentine\",\n \"job_title\": \"CTO\",\n \"telephone\": \"555-555-5555\",\n \"email\": \"jill.valentine@digicert.com\"\n }\n ]\n }\n ]\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-DC-DEVKEY", "{{api_key}}") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := ioutil.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) } ``` **NodeJS** ```javascript var request = require("request"); var options = { method: 'POST', url: 'https://www.digicert.com/services/v2/organization/{{organization_id}}/validation', headers: { 'Content-Type': 'application/json', 'X-DC-DEVKEY': '{{api_key}}' }, body: { validations: [ { type: 'ov' }, { type: 'ev', verified_users: [ { id: 112233 }, { first_name: 'Jill', last_name: 'Valentine', job_title: 'CTO', telephone: '555-555-5555', email: 'jill.valentine@digicert.com' } ] } ] }, json: true }; request(options, function (error, response, body) { if (error) throw new Error(error); console.log(body); }); ``` ## 204 No Content ```json // empty ``` ## Request parameters > **Info** > > When adding an existing contact, use the `id` parameter in the request body and omit the `first_name`, `last_name`, `job_title`, `telephone`, and `email` parameters.
Name Req/Opt Type Description
validations required array List of validation types the organization will be validated for.
.. type required string Validation type identifier.
Possible values:
  • ov: Normal Organization Validation
  • ev Extended Organization Validation
  • cs: Code Signing Organization Validation
  • ev_cs: Code Signing Organization Extended Validation
  • ds: Document Signing Validation
  • smime: SMIME Organization Validation

See also: Glossary – Validation types.
.. verified_users conditional array List of verified contacts for the organization.
Required if the validation type is ev, cs, or ev_cs. Not used for other validation types.
.. .. id conditional int ID of the user to add as the verified contact.
Only required if adding an existing user as the verified contact. If included, other contact parameters are ignored.
.. .. first_name conditional string First name of the verified contact.
Required if the id parameter is omitted.
.. .. last_name conditional string Last name of the verified contact.
Required if the id parameter is omitted.
.. .. job_title conditional string Job title of the verified contact.
Required if the id parameter is omitted.
.. .. telephone conditional string Telephone number of the verified contact.
Required if the id parameter is omitted.
.. .. email conditional string Email address of the verified contact.
Required if the id parameter is omitted.