Pular para conteúdo

Lista de ações

Painel multiusuário disponível a partir do plano CUSTOM

API de gerenciamento de listas de ações para permissões.

Uma lista de ações define as ações que um grupo de usuários poderá acessar na API e painel GoCache.

Para associar uma lista de permissões a um grupo de usuários, veja Criar permissão.

Alterar lista de ações

Altera as ações em uma lista existente. Todas as ações serão substituidas pela nova lista fornecida.

PUT /v1/action-list/{id}
$ curl -i "https://api.gocache.com.br/v1/action-list/99" \
-X PUT \
-H 'GoCache-Token:seu_token' \
-d 'smartrules.*=read'
<?php

$ch = curl_init("https://api.gocache.com.br/v1/action-list/99");

curl_setopt($ch, CURLOPT_PUT, TRUE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

curl_setopt($ch, CURLOPT_HTTPHEADER, array("GoCache-Token: seu_token"));
$urls = array(
        "smartrules.*=read"
        );
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
id Number Identificador da lista de ações. Esse identificador pode ser obtido usando GET ou ao cadastrar uma lista.
name String Nome da lista de ações
account Object account.*
Seção de configurações da conta (Minha Conta)
Valores permitidos: "create", "read", "update", "delete"
 account Object account.account
Acesso e renovação da chave de API e um usuário
Valores permitidos: "read" , "update"
 history Object account.history
Acesso ao histórico de alterações
Valores permitidos: "read"
 invoice Object account.invoce
Acesso a faturas
Valores permitidos: "read"
 permission Object account.permission
Gerenciamento de permissões
Valores permitidos: "create" , "read" , "update" , "delete"
 plan Object account.plan
Acesso a informações do plano
Valores Permitidos: "read"
 usage Object account.usage
Acesso a informações de consumo
Valores permitidos: "read"
 user Object account.user
Gerenciamento de usuários
Valores permitidos: "create" , "read" , "update" , "delete"
 domain Object account.domain
Habilita a criação de novos domínios
Valores permitidos: "create"
 edge_insights Object account.edge_insights
Habilita o acesso a funcionalidade do Edge Insights
Valores permitidos: "create" , "read" , "update" , "delete"
domain Object domain.*
Seção de Domínios
Valores permitidos: "create" , "read"" , "update"" , "delete"
 analytics Object domain.analytics
Acesso ao Analytics
Valores permitidos: "read"
 dns Object domain.dns
Gerenciamento de entradas de DNS
Valores permitidos: "create", "read", "update", "delete"
 domain Object domain.domain
Gerenciamento de domínios
Valores permitidos: "read", "delete"
security Object security.*
Seção de segurança
Valores permitidos: "create" , "read" , "update" , "delete"
 event Object security.event
Acesso aos eventos de segurança
Valores permitidos: "read"
 firewall Object security.firewall
Gerenciamento de regras de firewall
Valores permitidos: "create" , "read" , "update" , "delete"
 ratelimit Object security.ratelimit.*
Seção de Rate Limit
Valores permitidos: "create" , "read" , "update" , "delete"

CUSTOM
  rate_limit_ignore_known_bots Object security.ratelimit.rate_limit_ignore_known_bots
Desconsiderar bots legítimos
Valores permitidos: "read" , "update"

CUSTOM
  rate_limit_ignore_static_content Object security.ratelimit.rate_limit_ignore_static_content
Desconsiderar conteúdo estático
Valores permitidos: "read", "update"

CUSTOM
  rate_limit_status Object security.ratelimit.rate_limit_status
Ativa ou desativa o Rate Limit
Valores permitidos: "read , "update"

CUSTOM
  rule Object security.ratelimit.rule
Gerenciamento de regras de Rate Limit
Valores permitidos: "create" , "read" , "update" , "delete"

CUSTOM
 bot_mitigation Object security.botmitigation
Gerenciamento do Bot Mitigation
Valores permitidos: "create", "read" , "update" , "delete"

 waf Object security.waf
Gerenciamento do WAF
Valores permitidos: "create", "read" , "update" , "delete"

 expire_challenge Object security.expire_challenge
Validade do captcha
Valores permitidos: "read" , "update" , "delete"

settings Object settings.*
Seção de configurações
Valores permitidos: "create" , "read" , "update" , "delete"
 cache Object settings.cache.*
Seção de configurações relacionadas ao cache
Valores permitidos: "read" , "update" , "delete"
  cache 301 Object settings.cache.cache_301
Configuração de cache por status code 301
Valores permitidos: "read" , "update"
  cache 302 Object settings.cache.cache_302
Configuração de cache por status code 302
Valores permitidos: "read" , "update"
  cache 404 Object settings.cache.cache_404
Configuração de cache por status code 404
Valores permitidos: "read" , "update"
  cache_ttl Object settings.cache.cache_ttl
Configuração de TTL de cache
Valores permitidos: "read" , "update"
  cache_behavior Object settings.cache.caching_behavior
Configuração de comportamento de cache
Valores permitidos: "read" , "update"
  deploy_mode Object settings.cache.deploy_mode
Configuração de TTL do modo de desenvolvimento
Valores permitidos: "read" , "update"
  expires_ttl Object settings.cache.expires_ttl
Valores permitidos: "read" , "update"
  ignore_cache_control Object settings.cache.ignore_cache_control
Configuração de ignorar cabeçalho cache-control
Valores permitidos: "read" , "update"
  ignore_expires Object settings.cache.ignore_expires
Configuração de ignorar cabeçalho expires
Valores permitidos: "read" , "update"
  ignore_vary Object settings.cache.ignore_vary
Configuração de ignorar cabeçalho vary
Valores permitidos: "read" , "update"
  purge Object settings.cache.purge
Limpeza de cache por URL, tags, mime-type
Valores permitidos: "delete"
  purge_all Object settings.cache.purge_all
Limpeza de cache completa
Valores permitidos: "delete"
  smart_status Object settings.cache.smart_status
Configuração de SmartCache
Valores permitidos: "read" , "update"
  smart_tpl Object settings.cache.smart_tpl
Configuração de template de SmartCache
Valores permitidos: "read" , "update"
  smart_ttl Object settings.cache.smart_ttl
Tempo de expiração de cache do SmartCache
Valores permitidos: "read" , "update"
 main Object settings.main.*
Seção de configurações principais
Valores permitidos: "read", "update"
  cdn_mode Object settings.main.cdn_mode
Modo NS/CNAME
Valores permitidos: "read" , "update"
  header_device_type Object settings.main.header_device_type
Configuração de tipo de dispositivo
Valores permitidos: "read" , "update"
  header_geoip_continent Object settings.main.header_geoip_continent
Configuração de cabeçalho de continente
Valores permitidos: "read" , "update"
  header_geoip_country Object settings.main.header_geoip_country
Configuração de cabeçalho de país
Valores permitidos: "read" , "update"
  header_geoip_continent Object settings.main.header_geoip_continent
Configuração de cabeçalho de continente
Valores permitidos: "read" , "update"
  header_geoip_org Object settings.main.header_geoip_org
Configuração de cabeçalho de organização
Valores permitidos: "read" , "update"
 performance Object settings.performance.*
Seção de configurações relacionadas a performance e otimizações
Valores permitidos: "read", "update"
  gzip_status Object settings.performance.gzip_status
Alteração de configuração de compressão gzip
Valores permitidos: "read" , "update"
  image_optimize Object settings.performance.image_optimize
Configuração de ativação do Lithio
Valores permitidos: "read" , "update"

  image_optimize_level Object settings.performance.image_optimize_level
Configuração de nível de otimização do Lithio
Valores permitidos: "read" , "update"

  image_optimize_metadata Object settings.performance.image_optimize_metadata
Configuração de remover metadados do Lithio
Valores permitidos: "read" , "update"

  image_optimize_progressive Object settings.performance.image_optimize_progressive
Configuração de jpeg progressivo do Lithio
Valores permitidos: "read" , "update"

  image_optimize_webp Object settings.performance.image_optimize_webp
Configuração de otimização webp do Lithio
Valores permitidos: "read" , "update"

 ssl Object settings.ssl.*
Seção de configurações de SSL
Valores permitidos: "create", "read", "update", "delete"
  certificate Object settings.ssl.certificate
Alteração de certificado customizado
Valores permitidos: "create", "read", "update", "delete"

  ssl_mode Object settings.ssl.ssl_mode
Configuração de modo SSL
Valores permitidos: "read" , "update"
  tls10 Object settings.ssl.tls10
Configuração de TLS 1.0
Valores permitidos: "read" , "update"
  tls11 Object settings.ssl.tls11
Configuração de TLS 1.1
Valores permitidos: "read" , "update"
smartrules Object smartrules.*

Valores permitidos: "create", "read", "update", "delete" , "order"
 firewall Object smartrules.firewal
Alteração da ordem de Smart Rules de firewall
Valores permitidos: "create", "read", "update", "delete" , "order"

 rewrite Object smartrules.rewrite
Alteração da ordem de Smart Rules redirecionamento
Valores permitidos: "create", "read", "update", "delete" , "order"
 settings Object smartrules.settings
Alteração da ordem de Smart Rules gerais
Valores permitidos: "create", "read", "update", "delete" , "order"
wildcard Object *
Todas as ações. Podem ser inseridas com =
Valores permitidos: "create", "read", "update", "delete" , "order" , "*"
    HTTP/1.1 200 OK
        {
            "status_code": 200,
        "response": [
            {
                "actions": {
                    "security.waf.expire_bypass_sec": [
                            "read"
                    ],
                    "account.usage": [
                        "read"
                    ]
                },
                "name": "read only",
                "created_at": "2021-01-13 16:42:42",
                "id": 421
            }
        ]
    }
    <?php

    if( $statusCode == 200 ) {

        echo("Sucesso!\n");

        $obj = json_decode($obj->response);
        echo("Lista de acoes alterada: " . $obj['id']);
    }
    ?>

Criar lista de ações

Cria uma lista de ações

POST /v1/action-list/
    $ curl -i "https://api.gocache.com.br/v1/action-list" \
    -X POST \
    -H 'GoCache-Token:seu_token' \
    -d 'name=Permissoes de Suporte' \
    -d 'settings.performance.image_optimize=read, update' \
    -d 'smartrules.*=create, read, update' \
    -d 'domain.dns=*'
    <?php
    $ch = curl_init("https://api.gocache.com.br/v1/action-list");

    curl_setopt($ch, CURLOPT_POST, TRUE);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

    curl_setopt($ch, CURLOPT_HTTPHEADER, array("GoCache-Token: seu_token"));
    $urls = array(
    "name=Permissoes de Suporte",
    'settings.performance.image_optimize=read, update',
    'smartrules.*=create, read, update',
    'domain.dns=*',
           );
    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
name String Nome da lista de ações
account Object account.*
Seção de configurações da conta (Minha Conta)
Valores permitidos:"create", "read", "update", "delete"
 account Object account.account
Acesso e renovação da chave de API e um usuário
Valores permitidos: "read" , "update"
 history Object account.history
Acesso ao histórico de alterações
Valores permitidos: "read"
 invoice Object account.invoce
Acesso a faturas
Valores permitidos: "read"
 permission Object account.permission
Gerenciamento de permissões
Valores permitidos: "create" , "read" , "update" , "delete"
 plan Object account.plan
Acesso a informações do plano
Valores Permitidos: "read"
 usage Object account.usage
Acesso a informações de consumo
Valores permitidos: "read"
 user Object account.user
Gerenciamento de usuários
Valores permitidos: "create" , "read" , "update" , "delete"
 domain Object account.domain
Habilita a criação de novos domínios
Valores permitidos: "create"
 edge_insights Object account.edge_insights
Habilita o acesso a funcionalidade do Edge Insights
Valores permitidos: "create" , "read" , "update" , "delete"
domain Object domain.*
Seção de Domínios
Valores permitidos: "create" , "read"" , "update"" , "delete"
 analytics Object domain.analytics
Acesso ao Analytics
Valores permitidos: "read"
 dns Object domain.dns
Gerenciamento de entradas de DNS
Valores permitidos: "create", "read", "update", "delete"
 domain Object domain.domain
Gerenciamento de domínios
Valores permitidos: "read", "delete"
security Object security.*
Seção de segurança
Valores permitidos: "create" , "read" , "update" , "delete"
 event Object security.event
Acesso aos eventos de segurança
Valores permitidos: "read"
 firewall Object security.firewall
Gerenciamento de regras de firewall
Valores permitidos: "create" , "read" , "update" , "delete"
 ratelimit Object security.ratelimit.*
Seção de Rate Limit
Valores permitidos: "create" , "read" , "update" , "delete"

CUSTOM
  rate_limit_ignore_known_bots Object security.ratelimit.rate_limit_ignore_known_bots
Desconsiderar bots legítimos
Valores permitidos: "read" , "update"

CUSTOM
  rate_limit_ignore_static_content Object security.ratelimit.rate_limit_ignore_static_content
Desconsiderar conteúdo estático
Valores permitidos: "read", "update"

CUSTOM
  rate_limit_status Object security.ratelimit.rate_limit_status
Ativa ou desativa o Rate Limit
Valores permitidos: "read , "update"

CUSTOM
  rule Object security.ratelimit.rule
Gerenciamento de regras de Rate Limit
Valores permitidos: "create" , "read" , "update" , "delete"

CUSTOM
 bot_mitigation Object security.botmitigation
Gerenciamento do Bot Mitigation
Valores permitidos: ""create"", "read" , "update" , "delete"

 waf Object security.waf
Gerenciamento do WAF
Valores permitidos: ""create", "read" , "update" , "delete"

 expire_challenge Object security.expire_challenge
Validade do captcha
Valores permitidos: "read" , "update" , "delete"

settings Object settings.*
Seção de configurações
Valores permitidos: "create" , "read" , "update" , "delete"
 cache Object settings.cache.*
Seção de configurações relacionadas ao cache
Valores permitidos: "read" , "update" , "delete"
  cache 301 Object settings.cache.cache_301
Configuração de cache por status code 301
Valores permitidos: "read" , "update"
  cache 302 Object settings.cache.cache_302
Configuração de cache por status code 302
Valores permitidos: "read" , "update"
  cache 404 Object settings.cache.cache_404
Configuração de cache por status code 404
Valores permitidos: "read" , "update"
  cache_ttl Object settings.cache.cache_ttl
Configuração de TTL de cache
Valores permitidos: "read" , "update"
  cache_behavior Object settings.cache.caching_behavior
Configuração de comportamento de cache
Valores permitidos: "read" , "update"
  deploy_mode Object settings.cache.deploy_mode
Configuração de TTL do modo de desenvolvimento
Valores permitidos: "read" , "update"
  expires_ttl Object settings.cache.expires_ttl
Valores permitidos: "read" , "update"
  ignore_cache_control Object settings.cache.ignore_cache_control
Configuração de ignorar cabeçalho cache-control
Valores permitidos: "read" , "update"
  ignore_expires Object settings.cache.ignore_expires
Configuração de ignorar cabeçalho expires
Valores permitidos: "read" , "update"
  ignore_vary Object settings.cache.ignore_vary
Configuração de ignorar cabeçalho vary
Valores permitidos: "read" , "update"
  purge Object settings.cache.purge
Limpeza de cache por URL, tags, mime-type
Valores permitidos: "delete"
  purge_all Object settings.cache.purge_all
Limpeza de cache completa
Valores permitidos: "delete"
  smart_status Object settings.cache.smart_status
Configuração de SmartCache
Valores permitidos: "read" , "update"
  smart_tpl Object settings.cache.smart_tpl
Configuração de template de SmartCache
Valores permitidos: "read" , "update"
  smart_ttl Object settings.cache.smart_ttl
Tempo de expiração de cache do SmartCache
Valores permitidos: "read" , "update"
 main Object settings.main.*
Seção de configurações principais
Valores permitidos: "read", "update"
  cdn_mode Object settings.main.cdn_mode
Modo NS/CNAME
Valores permitidos: "read" , "update"
  header_device_type Object settings.main.header_device_type
Configuração de tipo de dispositivo
Valores permitidos: "read" , "update"
  header_geoip_continent Object settings.main.header_geoip_continent
Configuração de cabeçalho de continente
Valores permitidos: "read" , "update"
  header_geoip_country Object settings.main.header_geoip_country
Configuração de cabeçalho de país
Valores permitidos: "read" , "update"
  header_geoip_continent Object settings.main.header_geoip_continent
Configuração de cabeçalho de continente
Valores permitidos: "read" , "update"
  header_geoip_org Object settings.main.header_geoip_org
Configuração de cabeçalho de organização
Valores permitidos: "read" , "update"
 performance Object settings.performance.*
Seção de configurações relacionadas a performance e otimizações
Valores permitidos: "read", "update"
  gzip_status Object settings.performance.gzip_status
Alteração de configuração de compressão gzip
Valores permitidos: "read" , "update"
  image_optimize Object settings.performance.image_optimize
Configuração de ativação do Lithio
Valores permitidos: "read" , "update"

  image_optimize_level Object settings.performance.image_optimize_level
Configuração de nível de otimização do Lithio
Valores permitidos: "read" , "update"

  image_optimize_metadata Object settings.performance.image_optimize_metadata
Configuração de remover metadados do Lithio
Valores permitidos: "read" , "update"

  image_optimize_progressive Object settings.performance.image_optimize_progressive
Configuração de jpeg progressivo do Lithio
Valores permitidos: "read" , "update"

  image_optimize_webp Object settings.performance.image_optimize_webp
Configuração de otimização webp do Lithio
Valores permitidos: "read" , "update"

 ssl Object settings.ssl.*
Seção de configurações de SSL
Valores permitidos: "create", "read", "update", "delete"
  certificate Object settings.ssl.certificate
Alteração de certificado customizado
Valores permitidos: "create", "read", "update", "delete"

  ssl_mode Object settings.ssl.ssl_mode
Configuração de modo SSL
Valores permitidos: "read" , "update"
  tls10 Object settings.ssl.tls10
Configuração de TLS 1.0
Valores permitidos: "read" , "update"
  tls11 Object settings.ssl.tls11
Configuração de TLS 1.1
Valores permitidos: "read" , "update"
smartrules Object smartrules.*

Valores permitidos: "create", "read", "update", "delete" , "order"
 firewall Object smartrules.firewal
Alteração da ordem de Smart Rules de firewall
Valores permitidos: "create", "read", "update", "delete" , "order"

 rewrite Object smartrules.rewrite
Alteração da ordem de Smart Rules redirecionamento
Valores permitidos: "create", "read", "update", "delete" , "order"
 settings Object smartrules.settings
Alteração da ordem de Smart Rules gerais
Valores permitidos: "create", "read", "update", "delete" , "order"
wildcard Object *
Todas as ações. Podem ser inseridas com =
Valores permitidos: "create", "read", "update", "delete" , "order" , "*"

Exibir lista de ações

Consulta lista de ações cadastradas

GET /v1/action-list/
            $ curl -i "https://api.gocache.com.br/v1/action-list" \
            -H 'GoCache-Token:seu_token'
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
``` php
        <?php

        $ch = curl_init("https://api.gocache.com.br/v1/action-list");

        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);
        ?>
```

Exemplo de sucesso

    HTTP/1.1 200 OK
    {
        "status_code": 200,
        "response": [
            {
                "id": 99,
                "name": Permissoes de Suporte",
                "created_at": "2021-01-01 23:59:59",
                "actions": {
                    "settings.performance.image_optimize": [
                        "read",
                        "update"
                    ],
                    "smartrules.settings": [
                        "create",
                        "read",
                        "update"
                    ],
                    "smartrules.firewall": [
                        "create",
                        "read",
                        "update"
                    ],
                    "smartrules.rewrite": [
                        "create",
                        "read",
                        "update"
                    ],
                    "domain.dns": [
                        "create",
                        "read",
                        "update",
                        "delete"
                    ]
                }
            }
        ]
    }
    <?php

    if( $statusCode == 200 ) {

        echo("Sucesso!\n");

        $obj = json_decode($response);

        echo("Lista de acoes criada: " . $obj['id'] );
    }
?>

Remover lista de ações

Remove uma lista de ações

Exclui uma lista de ações

DELETE /v1/action-list/{id}
    $ curl -i "https://api.gocache.com.br/v1/action-list/20" \
    -X DELETE \
    -H 'GoCache-Token:seu_token'
    <?php


    $ch = curl_init("https://api.gocache.com.br/v1/action-list/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âmetro

Campo Opcional Tipo Descrição
id Number Identificador da lista de ações. Esse identificador pode ser obtido usando GET ou ao cadastrar uma lista.
    HTTP/1.1 200 OK
    {
    "status_code": 200
    }
    <?php

    if( $statusCode == 200 ) {

        echo("Lista de acoes removida com sucesso!\n");
    }
    ?>