--- 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:
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. |
| conditional | string | Email address of the verified contact. Required if the id parameter is omitted. |