> ## Documentation Index
> Fetch the complete documentation index at: https://altostrat.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# List supported protocols

> Retrieves a list of all supported network protocols and their corresponding integer values, which are required when creating firewall rules.



## OpenAPI

````yaml /api/en/security-groups.yaml get /vpc/reference/protocols
openapi: 3.0.3
info:
  title: Altostrat Security Groups API
  version: 1.0.0
  description: >-
    The Altostrat Security Groups API is the microservice responsible for the
    centralized management of stateful firewall rulesets and reusable IP address
    collections.


    It serves as the source of truth for all network security policies within
    the Altostrat SDX platform, translating abstract rules into concrete
    configurations that are asynchronously deployed to MikroTik routers.


    This API allows you to programmatically manage:

    - **Security Groups:** Containers for stateful firewall rules that define
    allowed inbound and outbound traffic for associated network sites.

    - **Prefix Lists:** Reusable, named collections of IP addresses and CIDR
    blocks that can be referenced within Security Group rules to simplify policy
    management.


    Developers use this API to programmatically define, manage, and automate
    network security policies at scale across their entire MikroTik
    infrastructure.
servers:
  - url: https://v1.api.altostrat.io
    description: Production API Server
security: []
tags:
  - name: Security Groups
    description: Manage firewall rule containers and their associations with network sites.
  - name: Prefix Lists
    description: Manage reusable collections of IP addresses and CIDR blocks.
  - name: Reference Data
    description: Retrieve static data like supported protocols and services.
paths:
  /vpc/reference/protocols:
    get:
      tags:
        - Reference Data
      summary: List supported protocols
      description: >-
        Retrieves a list of all supported network protocols and their
        corresponding integer values, which are required when creating firewall
        rules.
      operationId: listProtocols
      responses:
        '200':
          description: A list of supported protocols.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ProtocolReference'
        '500':
          $ref: '#/components/responses/InternalServerError'
      security:
        - bearerAuth: []
components:
  schemas:
    ProtocolReference:
      type: object
      properties:
        name:
          type: string
          description: The common name of the protocol (e.g., 'TCP', 'UDP').
          example: TCP
        value:
          type: integer
          description: The integer value representing the protocol.
          example: 6
        supports_ports:
          type: boolean
          description: Indicates if this protocol uses port numbers.
          example: true
    ErrorResponse:
      type: object
      properties:
        type:
          type: string
          description: A broad category for the error (e.g., 'invalid_request_error').
          example: invalid_request_error
        code:
          type: string
          description: A short, unique string identifying the specific error.
          example: parameter_missing
        message:
          type: string
          description: A human-readable description of what went wrong.
          example: The 'name' parameter is required for this request.
        doc_url:
          type: string
          description: >-
            A direct link to the documentation page for this specific error
            code.
          example: https://docs.altostrat.io/errors/parameter_missing
  responses:
    InternalServerError:
      description: Internal Server Error - An unexpected error occurred on the server.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Authentication is performed via an Auth0-issued JSON Web Token (JWT).
        Provide the token in the `Authorization` header with the `Bearer`
        scheme.

````