Criar usuário

Criar usuário #

Cria um novo Usuário atribuído a um locatário Cliente.

POST /v1.0/customers/{CUSTOMER_TENANT_ID}/users

Comentários #

Sempre que um novo Utilizador for criado, ser-lhe-á atribuída a função "customer.user" que lhe permite iniciar sessão no Portal do cliente. Isso também enviará um e-mail de ativação para o endereço fornecido assim que o Usuário é criado.

Exemplo #

Este pedido criará um novo Utilizador com os seguintes detalhes:

  • Cliente: Dentro do inquilino do Cliente com id de {CUSTOMER_TENANT_ID}
  • E-mail: [email protected]
  • Nome para exibição: "Novo usuário",
  • Funções:
    • Administrador de usuários (admin.user)
    • Utilizador do Website (customer.user)
    • Nível de Supervisor de Repórter (customer.user.supervisorl1)
    • Configurações do cliente (customer.settings)

Solicitar #

POST <https://api.na.myreports.cloud/api/v1.0/customers/{CUSTOMER_TENANT_ID}/users> HTTP/1.1
Tipo de conteúdo: application/json
Aceitação-Encargos: Verdadeiro
Autorização: Portador {TOKEN}
Conexão: keep-alive
{
	"e-mail": "[[email protected]](mailto:[email protected])",
	"displayName": "Novo Utilizador",
	"papéis": [" admin.user", "customer.user", "customer.user.supervisorl1", "customer.settings"]["admin.user", "customer.user", "customer.user.supervisorl1", "customer.settings"]
}

Resposta #

HTTP/1.1 201 Criado
Tipo de conteúdo: application/json; charset=utf-8
Conteúdo-Comprimento: xx
Localização: <https://api.na.myreports.cloud/api/v1.0/customers/{CUSTOMER_TENANT_ID}/users/{USER_ID}>
{
	"dados": {
		"id": "{USER_ID}",
		"displayName": "Novo Utilizador",
		"e-mail": "[[email protected]](mailto:[email protected])",
		"primaryTenant": "{CUSTOMER_TENANT_ID}",
		"papéis": [" admin.user", "customer.user", "customer.user.supervisorl1", "customer.settings"]["admin.user", "customer.user", "customer.user.supervisorl1", "customer.settings"]
	},
	"status": "sucesso",
	"carimbo de data/hora": "2019-11-29T16:03:23.9251680Z"
}

Erros #

Não autorizado #

Quando o token não é fornecido, inválido ou expirado

HTTP/1.1 401 Não autorizado

Mau pedido #

Quando o ID do locatário fornecido não estiver no formato correto

HTTP/1.1 400 Solicitação incorreta
Data: Thu, 06 Feb 2020 12:45:27 GMT
Tipo de conteúdo: application/json; charset=utf-8
Comprimento do conteúdo: 149
{
	"erro": 400,
	"message": "O valor '<tenant id>' não é válido.",
	"status": "erro",
	"carimbo de data/hora": "2020-02-06T12:45:27.5903465Z"
}

Quando a quantidade de licenças de Utilizador tiver sido excedida

HTTP/1.1 400 Solicitação incorreta
Data: Thu, 06 Feb 2020 12:45:27 GMT
Tipo de conteúdo: application/json; charset=utf-8
Comprimento do conteúdo: 149
{
	"erro": 400,
	"message": "Não há licenças de usuário suficientes disponíveis.",
	"status": "erro",
	"carimbo de data/hora": "2020-02-06T12:45:27.5903465Z"
}

Não encontrado #

Quando não há Clientes que tenham um ID de locatário correspondente

HTTP/1.1 404 Não encontrado
Data: Thu, 06 Feb 2020 12:46:58 GMT
Tipo de conteúdo: application/json; charset=utf-8
Comprimento do conteúdo: 95
{
	"erro": 404,
	"message": "Não encontrado",
	"status": "erro",
	"carimbo de data/hora": "2020-02-06T12:46:58.7669535Z"
}

Pagamento Obrigatório #

Se este pedido puder implicar quaisquer custos adicionais, consulte Encargos.

HTTP/1.1 402 Pagamento Necessário
Data: Thu, 06 Feb 2020 13:01:00 GMT
Tipo de conteúdo: application/json; charset=utf-8
Comprimento do conteúdo: 274
{
	"dados": {
		"id": "{USER_ID}",
		"displayName": "Novo Utilizador",
		"e-mail": "[[email protected]](mailto:[email protected])",
		"primaryTenant": "{CUSTOMER_TENANT_ID}",
		"papéis": [" admin.user", "customer.user", "customer.user.supervisorl1", "customer.settings"]["admin.user", "customer.user", "customer.user.supervisorl1", "customer.settings"]
	},
	"erro": 402,
	"mensagem": "aplicam-se custos adicionais",
	"status": "erro",
	"carimbo de data/hora": "2020-02-06T13:01:01.1302340Z"
}

Conflito #

Se o endereço de e-mail desse novo usuário já for encerrado para outro usuário neste locatário do Cliente

HTTP/1.1 409 Conflito
Data: Thu, 06 Feb 2020 13:05:39 GMT
Tipo de conteúdo: application/json; charset=utf-8
Conteúdo-Comprimento: 178
{
	"erro": 409,
	"errorCode": "EmailConflict",
	"message": "Um usuário com o endereço de e-mail [[email protected]](mailto:[email protected]) já existe.",
	"status": "erro",
	"carimbo de data/hora": "2020-02-06T13:05:39.5486342Z"
}