Skip to content
Docs

    Firewall Rule Details

    client.Networking.FirewallRules.Get(ctx, vpcID, firewallRuleID) (*FirewallRule, error)
    GET/v1/networking/vpcs/{vpc_id}/firewall_rules/{firewall_rule_id}

    Get details about a firewall rule

    ParametersExpand Collapse
    vpcID string
    firewallRuleID string
    ReturnsExpand Collapse
    type FirewallRule struct{…}

    Firewall rule details.

    ID string

    Unique identifier for the Firewall Rule.

    CreatedAt Time

    When the Firewall Rule was created.

    formatdate-time
    DestinationAddress string

    Destination address of the Firewall Rule. Either VPC CIDR or VM in VPC.

    DestinationPorts []string

    Destination ports of the Firewall Rule.

    Name string

    Name of the Firewall Rule.

    Protocol FirewallRuleProtocol

    Protocol of the Firewall Rule.

    One of the following:
    const FirewallRuleProtocolTcp FirewallRuleProtocol = "tcp"
    const FirewallRuleProtocolUdp FirewallRuleProtocol = "udp"
    SourceAddress string

    Source address of the Firewall Rule. Address of 0.0.0.0 requires a CIDR mask of 0.

    Status of the resource.

    One of the following:
    const ResourceStatusPending ResourceStatus = "pending"
    const ResourceStatusCreating ResourceStatus = "creating"
    const ResourceStatusUpdating ResourceStatus = "updating"
    const ResourceStatusReady ResourceStatus = "ready"
    const ResourceStatusDeleting ResourceStatus = "deleting"
    const ResourceStatusDeleted ResourceStatus = "deleted"
    const ResourceStatusError ResourceStatus = "error"
    Tags []string

    Tags to attach to the Firewall Rule.

    UpdatedAt Time

    When the Firewall Rule was updated.

    formatdate-time
    VPCID string

    ID of the VPC the Firewall Rule belongs to.

    Firewall Rule Details

    package main
    
    import (
      "context"
      "fmt"
    
      "github.com/nirvana-labs/nirvana-go"
      "github.com/nirvana-labs/nirvana-go/option"
    )
    
    func main() {
      client := nirvana.NewClient(
        option.WithAPIKey("My API Key"),
      )
      firewallRule, err := client.Networking.FirewallRules.Get(
        context.TODO(),
        "vpc_id",
        "firewall_rule_id",
      )
      if err != nil {
        panic(err.Error())
      }
      fmt.Printf("%+v\n", firewallRule.ID)
    }
    
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "created_at": "2025-01-01T00:00:00Z",
      "destination_address": "10.0.0.0/25",
      "destination_ports": [
        "22",
        "80",
        "443"
      ],
      "name": "my-firewall-rule",
      "protocol": "tcp",
      "source_address": "0.0.0.0/0",
      "status": "ready",
      "tags": [
        "production",
        "ethereum"
      ],
      "updated_at": "2025-01-01T00:00:00Z",
      "vpc_id": "123e4567-e89b-12d3-a456-426614174000"
    }
    Returns Examples
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "created_at": "2025-01-01T00:00:00Z",
      "destination_address": "10.0.0.0/25",
      "destination_ports": [
        "22",
        "80",
        "443"
      ],
      "name": "my-firewall-rule",
      "protocol": "tcp",
      "source_address": "0.0.0.0/0",
      "status": "ready",
      "tags": [
        "production",
        "ethereum"
      ],
      "updated_at": "2025-01-01T00:00:00Z",
      "vpc_id": "123e4567-e89b-12d3-a456-426614174000"
    }