---
title: "ResourceDto"
url: "https://public-api-docs.cipherscale.com/apis/cipherscale-api-1/versions/fef69080-6094-4620-8bf0-16fd2de7b598/schemas/ResourceDto"
---

> Full API specification: https://public-api-docs.cipherscale.com/apis/cipherscale-api-1/versions/fef69080-6094-4620-8bf0-16fd2de7b598.md

# ResourceDto

## OpenAPI definition

```yaml
openapi: 3.0.0
info:
  title: Cipherscale API
  version: "1.0"
servers:
  - url: https://public-api.cipherscale.com/qa
    description: Cipherscale Public API Server
components:
  schemas:
    AddressDto:
      type: object
      properties:
        id:
          type: string
          format: uuid
        address:
          type: string
        isIp:
          type: boolean
        type:
          enum:
            - PRIVATE
            - SAAS
            - INTERNET
          type: string
        protocols:
          type: array
          items:
            $ref: "#/components/schemas/ProtocolDto"
      required:
        - id
        - address
        - isIp
        - type
        - protocols
    GatewayDto:
      type: object
      description: Network gateway configuration and status information
      properties:
        id:
          type: string
          format: uuid
          description: Unique identifier for the gateway
        createdAt:
          format: date-time
          type: string
          description: Timestamp when the gateway was created
        deployedOn:
          format: date-time
          type: string
          nullable: true
          description: Timestamp when the gateway was first successfully deployed
        updatedAt:
          format: date-time
          type: string
          description: Timestamp when the gateway was last updated
        name:
          type: string
          description: Human-readable name for the gateway
        description:
          type: string
          description: Detailed description of the gateway's purpose and location
        wireguardPort:
          type: string
          description: WireGuard VPN port number for this gateway
        status:
          enum:
            - PENDING
            - ONLINE
            - OFFLINE
            - MAINTENANCE
            - ERROR
          type: string
          description: Current operational status of the gateway
        error:
          type: string
          description: Error message if the gateway is in ERROR status
        token:
          type: string
          description: Authentication token for gateway communication
        lastOnline:
          format: date-time
          type: string
          description: Timestamp when the gateway was last online
        relayEnabled:
          type: boolean
          description: Whether the gateway can relay traffic between network segments
        endpoint:
          type: string
          description: Network endpoint address for the gateway
        autoDiscoverEndpoint:
          type: boolean
          description: Whether the gateway endpoint is automatically discovered
        resources:
          type: array
          items:
            $ref: "#/components/schemas/GatewayResourceDto"
          description: List of resources accessible through this gateway
      required:
        - id
        - createdAt
        - deployedOn
        - updatedAt
        - name
        - wireguardPort
        - status
        - token
        - autoDiscoverEndpoint
    ProtocolDto:
      type: object
      properties:
        id:
          type: string
          format: uuid
        name:
          type: string
        networkProtocols:
          type: array
          items:
            $ref: "#/components/schemas/NetworkProtocolDto"
        type:
          enum:
            - ALL
            - PREDEFINED
            - CUSTOM
          type: string
      required:
        - id
        - name
        - networkProtocols
        - type
    GatewayResourceDto:
      type: object
      properties:
        id:
          type: string
          format: uuid
        name:
          type: string
      required:
        - id
        - name
    NetworkProtocolDto:
      type: object
      properties:
        protocol:
          type: string
          enum:
            - TCP
            - UDP
            - ICMP
        port:
          type: string
      required:
        - protocol
    ResourceDto:
      type: object
      properties:
        id:
          type: string
          format: uuid
        createdAt:
          format: date-time
          type: string
        updatedAt:
          format: date-time
          type: string
        name:
          type: string
        type:
          enum:
            - PRIVATE
            - SAAS
            - INTERNET
          type: string
        loadBalancingMode:
          default: MANUAL
          enum:
            - MANUAL
            - AUTOMATIC
          type: string
        status:
          enum:
            - ONLINE
            - OFFLINE
          type: string
        description:
          type: string
        addresses:
          type: array
          items:
            $ref: "#/components/schemas/AddressDto"
        gateways:
          type: array
          items:
            $ref: "#/components/schemas/GatewayDto"
      required:
        - id
        - createdAt
        - updatedAt
        - name
        - type
        - loadBalancingMode
        - addresses
        - gateways
```
