Crear subcuenta

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

Si el representante de su cuenta no ha habilitado las subcuentas, recibirá el error access_denied|missing_permission.

Use este terminal para crear una nueva subcuenta.

Cuando cree una cuenta administrada, la clave API aparece solo esta vez en el parámetro api_key del cuerpo de la respuesta. Nunca se volverá a mostrar y no hay forma de recuperarla si se pierde.

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 de la solicitud

Nombre Solicitud/opción Tipo Descripción
account_type obligatorio string Especifique el tipo de subcuenta que se debe crear.
Vea Glosario: tipos de subcuentas
Valores permitidos: standard, enterprise, reseller, managed
allowed_grandchildren obligatorio array Lista de tipos de cuenta que pueden crearse en la cuenta.
Vea Glosario: tipos de subcuentas
Valores permitidos: standard, enterprise, reseller
account_manager_user_id opcional int Id. de un usuario existente que administrará la subcuenta.
bill_parent opcional bool Especifique si todos los pedidos de certificados deben facturarse a la cuenta principal.
Predeterminado: false
user obligatorio object Detalles sobre el nuevo usuario de la subcuenta que se debe crear.
.. first_name obligatorio string Nombre del usuario de la subcuenta.
.. last_name obligatorio string Apellido del usuario de la subcuenta.
.. email obligatorio string Dirección de correo electrónico del usuario de la subcuenta.
El correo electrónico de creación de la cuenta se enviará a esta dirección.
.. username opcional string Nombre de usuario utilizado para iniciar sesión en la subcuenta.
Si se omite, el valor email se usará como el nombre de usuario.
.. job_title opcional string Nombre del cargo del usuario de la subcuenta.
.. telephone opcional string Número de teléfono del usuario de la subcuenta.
organization obligatorio object Detalles sobre la organización principal de la subcuenta
.. name obligatorio string Nombre legal de la organización.
.. assumed_name opcional string Nombre público de la organización.
También denominado «nombre DBA».
.. address obligatorio string Dirección de la organización.
.. address2 opcional string
.. zip obligatorio string Código postal de la organización.
.. city obligatorio string Ciudad donde se encuentra la organización.
.. state obligatorio string Estado donde se encuentra la organización.
.. country obligatorio string País donde se encuentra la organización.
.. telephone opcional string Número de teléfono de la organización.

Parámetros de la respuesta

Nombre Tipo Descripción
id int Id. de cuenta de la subcuenta.
account_type string Tipo de cuenta de la subcuenta.
account_manager_user_id int Id. de usuario del administrador de la subcuenta.
bill_parent bool Especifica si todos los pedidos de certificados se facturan a la cuenta principal.
organization object Detalles sobre la organización principal de la subcuenta.
.. id int Id. de organización.
.. status string Estado de la organización.
Posibles valores: active, inactive
.. name string Nombre legal de la organización.
.. assumed_name string Nombre público de la organización.
También denominado «nombre DBA».
.. display_name string Nombre completo de la organización.
Formado usando nombre + assumed_name.
.. is_active bool Estado activo de la organización.
.. address string Dirección de la organización.
.. address2 string
.. zip string Código postal de la organización.
.. city string Ciudad donde se encuentra la organización.
.. state string Estado donde se encuentra la organización.
.. country string País donde se encuentra la organización.
.. telephone string Número de teléfono de la organización.
.. container object Contenedor principal al que está vinculada la organización.
.. .. id int Id. de contenedor.
.. .. parent_id int Id. del contenedor principal de un contenedor.
.. .. name string Nombre de contenedor.
.. .. is_active bool Estado activo de la organización.
user object Detalles sobre el nuevo usuario de la subcuenta.
.. id int Id. de usuario.
.. username string Nombre de usuario utilizado para iniciar sesión en la subcuenta.
.. account_id int Id. de cuenta de la nueva subcuenta.
.. first_name string Nombre del usuario.
.. last_name string Apellido del usuario.
.. email string Dirección de correo electrónico del usuario.
.. job_title string Nombre del cargo del usuario.
.. telephone string Número de teléfono del usuario.
.. type string Tipo de usuario.
Posibles valores: standard
api_key string Clave API generada para la subcuenta.
Solo se devuelve si subaccount_type es managed.