Criar subconta

POST
https://www.digicert.com/services/v2/account

Se subcontas não tiverem sido habilitadas pelo representante da sua conta, você receberá um erro access_denied|missing_permission.

Use este ponto de extremidade para criar uma nova subconta.

Ao criar uma conta gerenciada, a chave de API é exibida apenas esta vez no parâmetro api_key do corpo da resposta. Ela nunca mais será exibida e não há formas de recuperá-la se perdida.

cURL
curl -X POST \
  https://www.digicert.com/services/v2/account \
  -H 'Content-Type: application/json' \
  -H 'X-DC-DEVKEY: {{api_key}}' \
  -d '{
  "account_type": "retail",
  "allowed_grandchildren": [
    "retail",
    "enterprise",
    "reseller"
  ],
  "account_manager_user_id": 12345,
  "user": {
    "first_name": "John",
    "last_name": "Smith",
    "email": "john.smith@example.com",
    "username": "john.smith@example.com",
    "job_title": "Statistician",
    "telephone": "111-222-333-4444"
  },
  "organization": {
    "name": "Example Company, LLC",
    "address": "123 Fake Street",
    "address2": "Suite 321",
    "zip": "93090",
    "city": "Toledo",
    "state": "AL",
    "country": "US",
    "telephone": "111-222-333-4445"
  }
}'
Python
import requests

url = "https://www.digicert.com/services/v2/account"

payload = "{\n  \"account_type\": \"retail\",\n  \"allowed_grandchildren\": [\n    \"retail\",\n    \"enterprise\",\n    \"reseller\"\n  ],\n  \"account_manager_user_id\": 12345,\n  \"user\": {\n    \"first_name\": \"John\",\n    \"last_name\": \"Smith\",\n    \"email\": \"john.smith@example.com\",\n    \"username\": \"john.smith@example.com\",\n    \"job_title\": \"Statistician\",\n    \"telephone\": \"111-222-333-4444\"\n  },\n  \"organization\": {\n    \"name\": \"Example Company, LLC\",\n    \"address\": \"123 Fake Street\",\n    \"address2\": \"Suite 321\",\n    \"zip\": \"93090\",\n    \"city\": \"Toledo\",\n    \"state\": \"AL\",\n    \"country\": \"US\",\n    \"telephone\": \"111-222-333-4445\"\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
package main

import (
	"fmt"
	"strings"
	"net/http"
	"io/ioutil"
)

func main() {

	url := "https://www.digicert.com/services/v2/account"

	payload := strings.NewReader("{\n  \"account_type\": \"retail\",\n  \"allowed_grandchildren\": [\n    \"retail\",\n    \"enterprise\",\n    \"reseller\"\n  ],\n  \"account_manager_user_id\": 12345,\n  \"user\": {\n    \"first_name\": \"John\",\n    \"last_name\": \"Smith\",\n    \"email\": \"john.smith@example.com\",\n    \"username\": \"john.smith@example.com\",\n    \"job_title\": \"Statistician\",\n    \"telephone\": \"111-222-333-4444\"\n  },\n  \"organization\": {\n    \"name\": \"Example Company, LLC\",\n    \"address\": \"123 Fake Street\",\n    \"address2\": \"Suite 321\",\n    \"zip\": \"93090\",\n    \"city\": \"Toledo\",\n    \"state\": \"AL\",\n    \"country\": \"US\",\n    \"telephone\": \"111-222-333-4445\"\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
var request = require("request");

var options = { method: 'POST',
  url: 'https://www.digicert.com/services/v2/account',
  headers: 
   { 'Content-Type': 'application/json',
     'X-DC-DEVKEY': '{{api_key}}' },
  body: 
   { account_type: 'retail',
     allowed_grandchildren: [ 'retail', 'enterprise', 'reseller' ],
     account_manager_user_id: 12345,
     user: 
      { first_name: 'John',
        last_name: 'Smith',
        email: 'john.smith@example.com',
        username: 'john.smith@example.com',
        job_title: 'Statistician',
        telephone: '111-222-333-4444' },
     organization: 
      { name: 'Example Company, LLC',
        address: '123 Fake Street',
        address2: 'Suite 321',
        zip: '93090',
        city: 'Toledo',
        state: 'AL',
        country: 'US',
        telephone: '111-222-333-4445' } },
  json: true };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
201 Created
{
  "id": 1122334,
  "account_type": "retail",
  "account_manager_user_id": 12345,
  "organization": {
    "id": 3344556,
    "status": "active",
    "name": "Example Company, LLC",
    "display_name": "Example Company, LLC",
    "is_active": true,
    "address": "123 Fake Street",
    "zip": "93090",
    "city": "Toledo",
    "state": "AL",
    "country": "us",
    "telephone": "111-222-333-4445",
    "container": {
      "id": 112234,
      "parent_id": 0,
      "name": "Example Company, LLC",
      "is_active": true
    }
  },
  "user": {
    "id": 45321,
    "username": "john.smith@example.com",
    "account_id": 12121,
    "first_name": "John",
    "last_name": "Smith",
    "email": "john.smith@example.com",
    "job_title": "Statistician",
    "telephone": "111-222-333-4444",
    "type": "standard"
  }
}
201 Created (managed subaccount)
{
  "id": 1122334,
  "account_type": "managed",
  "account_manager_user_id": 12345,
  "organization": {
    "id": 3344556,
    "status": "active",
    "name": "Example Company, LLC",
    "display_name": "Example Company, LLC",
    "is_active": true,
    "address": "123 Fake Street",
    "zip": "93090",
    "city": "Toledo",
    "state": "AL",
    "country": "us",
    "telephone": "111-222-333-4445",
    "container": {
      "id": 112234,
      "parent_id": 0,
      "name": "Example Company, LLC",
      "is_active": true
    }
  },
  "user": {
    "id": 45321,
    "username": "john.smith@example.com",
    "account_id": 12121,
    "first_name": "John",
    "last_name": "Smith",
    "email": "john.smith@example.com",
    "job_title": "Statistician",
    "telephone": "111-222-333-4444",
    "type": "standard"
  },
  "api_key": "{{api_key}}"
}

Parâmetros da solicitação

Nome Obr/Opc Tipo Descrição
account_type obrigatório string Especifique o tipo da subconta para criar.
Veja Glossário — Tipos de subcontas
Valores permitidos: standard, enterprise, reseller, managed
allowed_grandchildren obrigatório array Lista dos tipos de contas que podem ser criadas sob a conta.
Veja Glossário — Tipos de subcontas
Valores permitidos: standard, enterprise, reseller
account_manager_user_id opcional int ID de um usuário existente que gerenciará a subconta.
bill_parent opcional bool Especifique se a conta do pai deve ser cobrada por todos os pedidos de certificados.
Padrão: false
user obrigatório object Detalhes sobre o novo usuário da conta para criar.
.. first_name obrigatório string Primeiro nome do usuário da subconta.
.. last_name obrigatório string Sobrenome do usuário da subconta.
.. email obrigatório string Endereço de e-mail do usuário da subconta.
O e-mail de criação da conta será enviado a este endereço.
.. username opcional string Nome de usuário usado para entrar na subconta.
Se omitido, o valor email será usado como o nome de usuário.
.. job_title opcional string Cargo de trabalho do usuário da subconta.
.. telephone opcional string Número de telefone do usuário da subconta.
organization obrigatório object Detalhes sobre a organização primária da subconta
.. name obrigatório string Nome jurídico da organização.
.. assumed_name opcional string Nome público da organização.
Também chamado de nome DBA.
.. address obrigatório string Endereço da organização.
.. address2 opcional string
.. zip obrigatório string Código postal da organização.
.. city obrigatório string Cidade onde a organização está localizada.
.. state obrigatório string Estado onde a organização está localizada.
.. country obrigatório string País onde a organização está localizada.
.. telephone opcional string Número de telefone da organização.

Parâmetros da resposta

Nome Tipo Descrição
id int ID da conta da subconta.
account_type string Tipo da conta da subconta.
account_manager_user_id int ID do usuário do gerente da subconta.
bill_parent bool Especifica se a conta do pai é cobrada por pedidos de certificados.
organization object Detalhes sobre a organização primária da subconta.
.. id int ID da organização.
.. status string Status da organização.
Valores possíveis: active, inactive
.. name string Nome jurídico da organização.
.. assumed_name string Nome público da organização.
Também chamado de nome DBA.
.. display_name string Nome completo da organização.
Construído usando nome + assumed_name.
.. is_active bool Status ativo da organização.
.. address string Endereço da organização.
.. address2 string
.. zip string Código postal da organização.
.. city string Cidade onde a organização está localizada.
.. state string Estado onde a organização está localizada.
.. country string País onde a organização está localizada.
.. telephone string Número de telefone da organização.
.. container object Recipiente primário a que a organização está anexada.
.. .. id int ID do recipiente.
.. .. parent_id int ID do pai do recipiente.
.. .. name string Nome do recipiente.
.. .. is_active bool Status ativo da organização.
user object Detalhes sobre o novo usuário da conta.
.. id int ID de usuário.
.. username string Nome de usuário usado para entrar na subconta.
.. account_id int ID da conta da nova subconta.
.. first_name string Primeiro nome do usuário.
.. last_name string Sobrenome do usuário.
.. email string Endereço de e-mail do usuário.
.. job_title string Cargo de trabalho do usuário.
.. telephone string Número de telefone do usuário.
.. type string Tipo de usuário.
Valores possíveis: standard
api_key string Chave de API gerada para a subconta.
Retornado apenas se subaccount_type for managed.