Permissões
Painel multiusuário disponível a partir do plano CUSTOM
Introdução
Permite o gerenciamento de permissões.
Permissões criadas nesta api podem ser associadas a um grupo de usuários para controle de acesso a áreas específicas da API e Painel GoCache.
Requisitos
Permissões são criadas a partir de dois componentes:
- Uma lista de domínios aos quais as permissões serão aplicadas
- Uma lista de ações que o usuário poderá executar (para a lista de domínios) na API e no painel GoCache
Alterar permissões
Permite ativar e desativar uma permissão ou alterar seus componentes.
PUT /v1/permission/{permission-id}
$ curl -i "https://api.gocache.com.br/v1/permission/100" \
-X PUT \
-H 'GoCache-Token:seu_token' \
-d 'enabled=false' \
-d 'action_list_id=199' \
-d 'domain_list_id=99'
<?php
$ch = curl_init("https://api.gocache.com.br/v1/permission/100");
curl_setopt($ch, CURLOPT_PUT, TRUE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("GoCache-Token: seu_token"));
$urls = array(
"enabled=false",
"action_list_id=199"
"domain_list_id=99"
);
curl_setopt($ch, CURLOPT_POSTFIELDS, implode("&", $urls));
$response = curl_exec($ch);
$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
?>
Parâmetros
Campo | Opcional | Tipo | Descrição |
---|---|---|---|
action_list_id | ✓ | Number | Identificador da lista de ações |
domain_list_id | ✓ | Number | Identificador da lista de dominios |
enabled | ✓ | Bool | Se a permissão será ativada ou desativada Valores permitidos: true, false |
HTTP/1.1 200 OK
{
"status_code": 200,
"response": []
}
<?php
if( $statusCode == 200 ) {
echo("Sucesso!\n");
$obj = json_decode($response);
if ($obj->result)
echo("Resultado: " . $obj->result);
}
?>
Criar permissão
Cria uma nova permissão utilizando uma lista de domínio e uma lista de ações.
POST /v1/permission
$ curl -i "https://api.gocache.com.br/v1/permission" \
-X POST \
-H 'GoCache-Token:seu_token' \
-d 'action_list_id=6' \
-d 'domain_list_id=9'
<?php
$ch = curl_init("https://api.gocache.com.br/v1/permission");
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("GoCache-Token: seu_token"));
$urls = array(
'action_list_id=6',
'domain_list_id=9'
);
curl_setopt($ch, CURLOPT_POSTFIELDS, implode("&", $urls));
$response = curl_exec($ch);
$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
?>
Parâmetros
Campo | Opcional | Tipo | Descrição |
---|---|---|---|
action_list_id | ✓ | Number | id da lista de permissão Listar grupos de permissões |
domain_list_id | ✓ | Number | id da lista de domínios Listar grupos de dominios |
enabled | ✓ | Bool | Se a permissão será ativada ou desativada Valores permitidos: true, false |
HTTP/1.1 200 OK
{
"status_code": 200,
"response": {
"id": 203
}
}
<?php
if( $statusCode == 200 ) {
echo("Sucesso!\n");
$obj = json_decode($response);
echo("Permissão criada com sucesso: " . $obj->result->id);
}
?>
Listar permissões
Consulta todas as permissões criadas
GET /v1/permission
$ curl -i "https://api.gocache.com.br/v1/permission" \
-H 'GoCache-Token:seu_token'
<?php
$ch = curl_init("https://api.gocache.com.br/v1/permission");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("GoCache-Token: seu_token"));
$response = curl_exec($ch);
$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
?>
HTTP/1.1 200 OK
{
"status_code":200,
"response":{
"id":563
}
}
<?php
if( $statusCode == 200 ) {
echo("Sucesso!\n");
$obj = json_decode($response);
print_r($obj);
}
?>
Remover permissão
Remove permissões atribuídas à um usuário
DELETE /v1/permission/{id}
$ curl -i "https://api.gocache.com.br/v1/permission/20" \
-X DELETE \
-H 'GoCache-Token:seu_token'
<?php
$ch = curl_init("https://api.gocache.com.br/v1/permission/20");
curl_setopt($ch, CURLOPT_DELETE, TRUE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("GoCache-Token: seu_token"));
$response = curl_exec($ch);
$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
?>
Parâmetros
Campo | Tipo | Descrição |
---|---|---|
id | Number | Identificador da permissão atribuída ao usuário |
HTTP/1.1 200 OK
{
"status_code": 200,
"response": []
}
<?php
if( $statusCode == 200 ) {
echo("Permissão removida com sucesso");
$obj = json_decode($response);
}
?>