Teliax Port Protection Rule Controller API

The port-protection-rule-controller API from Teliax — 3 operation(s) for port-protection-rule-controller.

Operations 6

GET /v1/port-protection-rules/{ruleId} Get #
PUT /v1/port-protection-rules/{ruleId} Update #
DELETE /v1/port-protection-rules/{ruleId} Delete #
GET /v1/port-protection-rules List 2 #
POST /v1/port-protection-rules Create #
GET /v1/port-protection-rules/effective Effective #

Documentation

Specifications

Schemas & Data

📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/teliax/refs/heads/main/json-schema/teliax-identity-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/teliax/refs/heads/main/json-schema/teliax-query-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/teliax/refs/heads/main/json-schema/teliax-cpr-dump-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/teliax/refs/heads/main/json-schema/teliax-dno-lookup-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/teliax/refs/heads/main/json-schema/teliax-complex-query-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/teliax/refs/heads/main/json-schema/teliax-tandem-query-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/teliax/refs/heads/main/json-schema/teliax-port-project-detail-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/teliax/refs/heads/main/json-schema/teliax-port-project-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/teliax/refs/heads/main/json-schema/teliax-port-project-detail-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/teliax/refs/heads/main/json-schema/teliax-soa-query-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/teliax/refs/heads/main/json-schema/teliax-toll-free-ptr-operation-dto-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/teliax/refs/heads/main/json-schema/teliax-auto-activation-settings-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/teliax/refs/heads/main/json-schema/teliax-github-com-ringer-warp-api-gateway-internal-models-trunk-group-with-ips-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/teliax/refs/heads/main/json-schema/teliax-github-com-ringer-warp-api-gateway-internal-models-assignment-with-usages-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/teliax/refs/heads/main/json-schema/teliax-internal-handlers-trunk-update-result-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/teliax/refs/heads/main/json-schema/teliax-github-com-ringer-warp-api-gateway-internal-models-trunk-group-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/teliax/refs/heads/main/json-schema/teliax-github-com-ringer-warp-api-gateway-internal-models-assignment-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/teliax/refs/heads/main/json-schema/teliax-internal-handlers-bulk-assign-request-schema.json

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/teliax:teliax-port-protection-rule-controller-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

teliax-port-protection-rule-controller-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Teliax Port Protection Rule Controller API
  version: v1
  contact:
    name: Ringer API Support
    url: https://ringer.tel
    email: api-support@ringer.tel
  description: 'Operations tagged port-protection-rule-controller across 2 of this provider''s published API definitions: teliax-tniq-openapi.json, teliax-tniq-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.tniq.ringer.tel
  description: Production
- url: https://tniq-api.ringer.tel
  description: Production (legacy alias)
- url: https://staging-api.ringer.tel
  description: Staging
tags:
- name: port-protection-rule-controller
paths:
  /v1/port-protection-rules/{ruleId}:
    get:
      tags:
      - port-protection-rule-controller
      operationId: get
      parameters:
      - name: ruleId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: customerId
        in: query
        required: false
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/PortProtectionRuleResponse'
      summary: Get
      x-summary-source: derived
    put:
      tags:
      - port-protection-rule-controller
      operationId: update
      parameters:
      - name: ruleId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: customerId
        in: query
        required: false
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateRuleRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/PortProtectionRuleResponse'
      summary: Update
      x-summary-source: derived
    delete:
      tags:
      - port-protection-rule-controller
      operationId: delete
      parameters:
      - name: ruleId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: customerId
        in: query
        required: false
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
      summary: Delete
      x-summary-source: derived
    servers:
    - url: https://api.tniq.ringer.tel
      description: Production
    - url: https://tniq-api.ringer.tel
      description: Production (legacy alias)
    - url: https://staging-api.ringer.tel
      description: Staging
  /v1/port-protection-rules:
    get:
      tags:
      - port-protection-rule-controller
      operationId: list_2
      parameters:
      - name: customerId
        in: query
        required: false
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PortProtectionRuleResponse'
      summary: List 2
      x-summary-source: derived
    post:
      tags:
      - port-protection-rule-controller
      operationId: create
      parameters:
      - name: customerId
        in: query
        required: false
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateRuleRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/PortProtectionRuleResponse'
      summary: Create
      x-summary-source: derived
    servers:
    - url: https://api.tniq.ringer.tel
      description: Production
    - url: https://tniq-api.ringer.tel
      description: Production (legacy alias)
    - url: https://staging-api.ringer.tel
      description: Staging
  /v1/port-protection-rules/effective:
    get:
      tags:
      - port-protection-rule-controller
      operationId: effective
      parameters:
      - name: tn
        in: query
        required: true
        schema:
          type: string
      - name: customerId
        in: query
        required: false
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/EffectivePolicyResponse'
      summary: Effective
      x-summary-source: derived
    servers:
    - url: https://api.tniq.ringer.tel
      description: Production
    - url: https://tniq-api.ringer.tel
      description: Production (legacy alias)
    - url: https://staging-api.ringer.tel
      description: Staging
components:
  schemas:
    ProtectionDecision:
      type: object
      properties:
        action:
          type: string
          enum:
          - BLOCK
          - ALLOW
          - REQUIRE_APPROVAL
          - REQUIRE_PIN
          - HOLD_PERIOD
        matchedRuleId:
          type: string
          format: uuid
        matchedScope:
          type: string
          enum:
          - CUSTOMER
          - SPID
          - TN
        reason:
          type: string
        holdPeriodHours:
          type: integer
          format: int32
    CreateRuleRequest:
      required:
      - action
      - scope
      type: object
      properties:
        scope:
          type: string
          enum:
          - CUSTOMER
          - SPID
          - TN
        target:
          maxLength: 32
          minLength: 0
          type: string
        action:
          type: string
          enum:
          - BLOCK
          - ALLOW
          - REQUIRE_APPROVAL
          - REQUIRE_PIN
          - HOLD_PERIOD
        holdPeriodHours:
          maximum: 168
          minimum: 1
          type: integer
          format: int32
        pin:
          maxLength: 255
          minLength: 0
          type: string
        reason:
          maxLength: 4000
          minLength: 0
          type: string
        expiresAt:
          type: string
          format: date-time
    EffectivePolicyResponse:
      type: object
      properties:
        tn:
          type: string
        decision:
          $ref: '#/components/schemas/ProtectionDecision'
    UpdateRuleRequest:
      required:
      - action
      type: object
      properties:
        action:
          type: string
          enum:
          - BLOCK
          - ALLOW
          - REQUIRE_APPROVAL
          - REQUIRE_PIN
          - HOLD_PERIOD
        holdPeriodHours:
          maximum: 168
          minimum: 1
          type: integer
          format: int32
        reason:
          maxLength: 4000
          minLength: 0
          type: string
        expiresAt:
          type: string
          format: date-time
    PortProtectionRuleResponse:
      type: object
      properties:
        id:
          type: string
          format: uuid
        customerId:
          type: string
          format: uuid
        scope:
          type: string
          enum:
          - CUSTOMER
          - SPID
          - TN
        target:
          type: string
        action:
          type: string
          enum:
          - BLOCK
          - ALLOW
          - REQUIRE_APPROVAL
          - REQUIRE_PIN
          - HOLD_PERIOD
        holdPeriodHours:
          type: integer
          format: int32
        reason:
          type: string
        expiresAt:
          type: string
          format: date-time
        createdByUserId:
          type: string
          format: uuid
        createdBy:
          type: string
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
        systemManaged:
          type: boolean
  securitySchemes:
    bearerAuth:
      type: http
      description: 'Bearer token authentication. Pass your API token or user JWT in the Authorization header: Authorization: Bearer YOUR_TOKEN'
      scheme: bearer
      bearerFormat: JWT
x-refined-from:
- teliax-tniq-openapi.json
- teliax-tniq-openapi.yml