Skip to content

feat: ABAC#1319

Open
EmanuelJr wants to merge 18 commits intomainfrom
ENG-257
Open

feat: ABAC#1319
EmanuelJr wants to merge 18 commits intomainfrom
ENG-257

Conversation

@EmanuelJr
Copy link
Contributor

@EmanuelJr EmanuelJr commented Mar 16, 2026

📝 Description

Implements a new Attributes management system that acts as a grouping mechanism to associate connections with guardrail rules, access request rules, and data masking rules. Instead of directly linking rules to connections, attributes serve as an intermediary layer enabling more flexible and reusable policy assignments.

🔗 Related Issue

🚀 Type of Change

  • 🐛 Bug fix (non-breaking change which fixes an issue)
  • ✨ New feature (non-breaking change which adds functionality)
  • 💥 Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • 📚 Documentation update
  • 🎨 Style/UI update
  • ♻️ Code refactor
  • ⚡ Performance improvement
  • ✅ Test update
  • 🔧 Build configuration change
  • 🧹 Chore

📋 Changes Made

  • Added full CRUD REST API for attributes (GET /attributes, GET /attributes/:name, POST /attributes, PUT /attributes/:name, DELETE /attributes/:name) with admin-only access
  • Added Attribute, ConnectionAttribute, AccessRequestRuleAttribute, GuardrailRuleAttribute, and DatamaskingRuleAttribute GORM models with support for upsert, list (paginated + searchable), get, and delete operations
  • Added database migration 000065_attributes creating attributes, connections_attributes, access_request_rules_attributes, guardrail_rules_attributes, and datamasking_rules_attributes junction tables with appropriate foreign key constraints
  • Introduced a services package (guardrails.go, datamasking.go) to abstract attribute-aware rule resolution, falling back to direct connection-based lookup when no attributes are found
  • Updated guardrail rule resolution in transport/client.go, transport/extensions/extension.go, api/session/session.go, and the access request interceptor to use the new services layer

🧪 Testing

Test Configuration:

  • Browser(s): N/A (backend only)
  • OS: macOS

Tests performed:

  • Unit tests pass
  • Integration tests pass
  • Manual testing completed

📸 Screenshots (if applicable)

N/A

✅ Checklist

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • My changes generate no new warnings
  • New and existing unit tests pass locally with my changes
  • I have checked my code and corrected any misspellings

📄 Additional Notes

The attributes system is additive and backward-compatible. If a connection has no attributes assigned, all rule lookups fall back to the existing direct connection-based behavior, ensuring no regression for existing configurations.


@github-actions

This comment was marked as outdated.

@sandromello

This comment was marked as outdated.

@github-actions

This comment was marked as outdated.

@github-actions

This comment was marked as outdated.

@sandromello

This comment was marked as outdated.

@sandromello

This comment was marked as outdated.

@EmanuelJr EmanuelJr marked this pull request as ready for review March 17, 2026 12:34
@github-actions

This comment was marked as outdated.

@github-actions

This comment was marked as outdated.

@github-actions

This comment was marked as outdated.

@sandromello

This comment was marked as outdated.

@sandromello

This comment was marked as outdated.

@github-actions

This comment was marked as outdated.

@sandromello

This comment was marked as outdated.

@github-actions

This comment was marked as outdated.

@sandromello
Copy link
Contributor

✅ Build Completed with Success, Version=1319.0.0-9912d79

@github-actions
Copy link
Contributor

📋 API Changelog

API Changelog unknown vs. unknown

API Changes

GET /access-requests/rules

  • added the optional property 'data/items/attributes' to the response with the '200' status

POST /access-requests/rules

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /access-requests/rules/{name}

  • added the optional property 'attributes' to the response with the '200' status

PUT /access-requests/rules/{name}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /attributes

  • endpoint added

POST /attributes

  • endpoint added

DELETE /attributes/{name}

  • endpoint added

GET /attributes/{name}

  • endpoint added

PUT /attributes/{name}

  • endpoint added

GET /audit/logs

  • ⚠️ deleted the 'query' request parameter 'resource_id'
  • ⚠️ deleted the 'query' request parameter 'resource_name'
  • ⚠️ removed the optional property 'data/items/resource_id' from the response with the '200' status
  • ⚠️ removed the optional property 'data/items/resource_name' from the response with the '200' status
  • added the new optional 'query' request parameter 'client_ip'
  • added the new optional 'query' request parameter 'http_method'
  • added the new optional 'query' request parameter 'http_path'
  • added the new optional 'query' request parameter 'http_status'
  • added the optional property 'data/items/client_ip' to the response with the '200' status
  • added the optional property 'data/items/http_method' to the response with the '200' status
  • added the optional property 'data/items/http_path' to the response with the '200' status
  • added the optional property 'data/items/http_status' to the response with the '200' status

GET /connections

  • added the optional property '/items/attributes' to the response with the '200' status

POST /connections

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /connections/{nameOrID}

  • added the optional property 'attributes' to the response with the '200' status

PATCH /connections/{nameOrID}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

PUT /connections/{nameOrID}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /datamasking-rules

  • added the optional property '/items/attributes' to the response with the '200' status

POST /datamasking-rules

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /datamasking-rules/{id}

  • added the optional property 'attributes' to the response with the '200' status

PUT /datamasking-rules/{id}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /guardrails

  • added the optional property '/items/attributes' to the response with the '200' status

POST /guardrails

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /guardrails/{id}

  • added the optional property 'attributes' to the response with the '200' status

PUT /guardrails/{id}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /sessions/{session_id}/rdp-frames

  • endpoint added

@sandromello
Copy link
Contributor

✅ Build Completed with Success, Version=1319.0.0-96ace14

@github-actions
Copy link
Contributor

📋 API Changelog

API Changelog unknown vs. unknown

API Changes

GET /access-requests/rules

  • added the optional property 'data/items/attributes' to the response with the '200' status

POST /access-requests/rules

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /access-requests/rules/{name}

  • added the optional property 'attributes' to the response with the '200' status

PUT /access-requests/rules/{name}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /attributes

  • endpoint added

POST /attributes

  • endpoint added

DELETE /attributes/{name}

  • endpoint added

GET /attributes/{name}

  • endpoint added

PUT /attributes/{name}

  • endpoint added

GET /audit/logs

  • ⚠️ deleted the 'query' request parameter 'resource_id'
  • ⚠️ deleted the 'query' request parameter 'resource_name'
  • ⚠️ removed the optional property 'data/items/resource_id' from the response with the '200' status
  • ⚠️ removed the optional property 'data/items/resource_name' from the response with the '200' status
  • added the new optional 'query' request parameter 'client_ip'
  • added the new optional 'query' request parameter 'http_method'
  • added the new optional 'query' request parameter 'http_path'
  • added the new optional 'query' request parameter 'http_status'
  • added the optional property 'data/items/client_ip' to the response with the '200' status
  • added the optional property 'data/items/http_method' to the response with the '200' status
  • added the optional property 'data/items/http_path' to the response with the '200' status
  • added the optional property 'data/items/http_status' to the response with the '200' status

GET /connections

  • added the optional property '/items/attributes' to the response with the '200' status

POST /connections

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /connections/{nameOrID}

  • added the optional property 'attributes' to the response with the '200' status

PATCH /connections/{nameOrID}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

PUT /connections/{nameOrID}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /datamasking-rules

  • added the optional property '/items/attributes' to the response with the '200' status

POST /datamasking-rules

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /datamasking-rules/{id}

  • added the optional property 'attributes' to the response with the '200' status

PUT /datamasking-rules/{id}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /guardrails

  • added the optional property '/items/attributes' to the response with the '200' status

POST /guardrails

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /guardrails/{id}

  • added the optional property 'attributes' to the response with the '200' status

PUT /guardrails/{id}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /sessions/{session_id}/rdp-frames

  • endpoint added

@sandromello
Copy link
Contributor

✅ Build Completed with Success, Version=1319.0.0-b3e3e8b

@github-actions
Copy link
Contributor

📋 API Changelog

API Changelog unknown vs. unknown

API Changes

GET /access-requests/rules

  • added the optional property 'data/items/attributes' to the response with the '200' status

POST /access-requests/rules

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /access-requests/rules/{name}

  • added the optional property 'attributes' to the response with the '200' status

PUT /access-requests/rules/{name}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /attributes

  • endpoint added

POST /attributes

  • endpoint added

DELETE /attributes/{name}

  • endpoint added

GET /attributes/{name}

  • endpoint added

PUT /attributes/{name}

  • endpoint added

GET /audit/logs

  • ⚠️ deleted the 'query' request parameter 'resource_id'
  • ⚠️ deleted the 'query' request parameter 'resource_name'
  • ⚠️ removed the optional property 'data/items/resource_id' from the response with the '200' status
  • ⚠️ removed the optional property 'data/items/resource_name' from the response with the '200' status
  • added the new optional 'query' request parameter 'client_ip'
  • added the new optional 'query' request parameter 'http_method'
  • added the new optional 'query' request parameter 'http_path'
  • added the new optional 'query' request parameter 'http_status'
  • added the optional property 'data/items/client_ip' to the response with the '200' status
  • added the optional property 'data/items/http_method' to the response with the '200' status
  • added the optional property 'data/items/http_path' to the response with the '200' status
  • added the optional property 'data/items/http_status' to the response with the '200' status

GET /connections

  • added the optional property '/items/attributes' to the response with the '200' status

POST /connections

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /connections/{nameOrID}

  • added the optional property 'attributes' to the response with the '200' status

PATCH /connections/{nameOrID}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

PUT /connections/{nameOrID}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /datamasking-rules

  • added the optional property '/items/attributes' to the response with the '200' status

POST /datamasking-rules

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /datamasking-rules/{id}

  • added the optional property 'attributes' to the response with the '200' status

PUT /datamasking-rules/{id}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /guardrails

  • added the optional property '/items/attributes' to the response with the '200' status

POST /guardrails

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /guardrails/{id}

  • added the optional property 'attributes' to the response with the '200' status

PUT /guardrails/{id}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /sessions/{session_id}/rdp-frames

  • endpoint added

@sandromello
Copy link
Contributor

✅ Build Completed with Success, Version=1319.0.0-305644f

@github-actions
Copy link
Contributor

📋 API Changelog

API Changelog unknown vs. unknown

API Changes

GET /access-requests/rules

  • added the optional property 'data/items/attributes' to the response with the '200' status

POST /access-requests/rules

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /access-requests/rules/{name}

  • added the optional property 'attributes' to the response with the '200' status

PUT /access-requests/rules/{name}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /attributes

  • endpoint added

POST /attributes

  • endpoint added

DELETE /attributes/{name}

  • endpoint added

GET /attributes/{name}

  • endpoint added

PUT /attributes/{name}

  • endpoint added

GET /audit/logs

  • ⚠️ deleted the 'query' request parameter 'resource_id'
  • ⚠️ deleted the 'query' request parameter 'resource_name'
  • ⚠️ removed the optional property 'data/items/resource_id' from the response with the '200' status
  • ⚠️ removed the optional property 'data/items/resource_name' from the response with the '200' status
  • added the new optional 'query' request parameter 'client_ip'
  • added the new optional 'query' request parameter 'http_method'
  • added the new optional 'query' request parameter 'http_path'
  • added the new optional 'query' request parameter 'http_status'
  • added the optional property 'data/items/client_ip' to the response with the '200' status
  • added the optional property 'data/items/http_method' to the response with the '200' status
  • added the optional property 'data/items/http_path' to the response with the '200' status
  • added the optional property 'data/items/http_status' to the response with the '200' status

GET /connections

  • added the optional property '/items/attributes' to the response with the '200' status

POST /connections

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /connections/{nameOrID}

  • added the optional property 'attributes' to the response with the '200' status

PATCH /connections/{nameOrID}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

PUT /connections/{nameOrID}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /datamasking-rules

  • added the optional property '/items/attributes' to the response with the '200' status

POST /datamasking-rules

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /datamasking-rules/{id}

  • added the optional property 'attributes' to the response with the '200' status

PUT /datamasking-rules/{id}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /guardrails

  • added the optional property '/items/attributes' to the response with the '200' status

POST /guardrails

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /guardrails/{id}

  • added the optional property 'attributes' to the response with the '200' status

PUT /guardrails/{id}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /sessions/{session_id}/rdp-frames

  • endpoint added

@sandromello
Copy link
Contributor

✅ Build Completed with Success, Version=1319.0.0-1de404b

@github-actions
Copy link
Contributor

📋 API Changelog

API Changelog unknown vs. unknown

API Changes

GET /access-requests/rules

  • added the optional property 'data/items/attributes' to the response with the '200' status

POST /access-requests/rules

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /access-requests/rules/{name}

  • added the optional property 'attributes' to the response with the '200' status

PUT /access-requests/rules/{name}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /attributes

  • endpoint added

POST /attributes

  • endpoint added

DELETE /attributes/{name}

  • endpoint added

GET /attributes/{name}

  • endpoint added

PUT /attributes/{name}

  • endpoint added

GET /audit/logs

  • ⚠️ deleted the 'query' request parameter 'resource_id'
  • ⚠️ deleted the 'query' request parameter 'resource_name'
  • ⚠️ removed the optional property 'data/items/resource_id' from the response with the '200' status
  • ⚠️ removed the optional property 'data/items/resource_name' from the response with the '200' status
  • added the new optional 'query' request parameter 'client_ip'
  • added the new optional 'query' request parameter 'http_method'
  • added the new optional 'query' request parameter 'http_path'
  • added the new optional 'query' request parameter 'http_status'
  • added the optional property 'data/items/client_ip' to the response with the '200' status
  • added the optional property 'data/items/http_method' to the response with the '200' status
  • added the optional property 'data/items/http_path' to the response with the '200' status
  • added the optional property 'data/items/http_status' to the response with the '200' status

GET /connections

  • added the new optional 'query' request parameter 'attribute'
  • added the optional property '/items/attributes' to the response with the '200' status

POST /connections

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /connections/{nameOrID}

  • added the optional property 'attributes' to the response with the '200' status

PATCH /connections/{nameOrID}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

PUT /connections/{nameOrID}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /datamasking-rules

  • added the optional property '/items/attributes' to the response with the '200' status

POST /datamasking-rules

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /datamasking-rules/{id}

  • added the optional property 'attributes' to the response with the '200' status

PUT /datamasking-rules/{id}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /guardrails

  • added the optional property '/items/attributes' to the response with the '200' status

POST /guardrails

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /guardrails/{id}

  • added the optional property 'attributes' to the response with the '200' status

PUT /guardrails/{id}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /sessions/{session_id}/rdp-frames

  • endpoint added

@sandromello
Copy link
Contributor

✅ Build Completed with Success, Version=1319.0.0-3c4822e

@github-actions
Copy link
Contributor

📋 API Changelog

API Changelog unknown vs. unknown

API Changes

GET /access-requests/rules

  • added the optional property 'data/items/attributes' to the response with the '200' status

POST /access-requests/rules

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /access-requests/rules/{name}

  • added the optional property 'attributes' to the response with the '200' status

PUT /access-requests/rules/{name}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /attributes

  • endpoint added

POST /attributes

  • endpoint added

DELETE /attributes/{name}

  • endpoint added

GET /attributes/{name}

  • endpoint added

PUT /attributes/{name}

  • endpoint added

GET /audit/logs

  • ⚠️ deleted the 'query' request parameter 'resource_id'
  • ⚠️ deleted the 'query' request parameter 'resource_name'
  • ⚠️ removed the optional property 'data/items/resource_id' from the response with the '200' status
  • ⚠️ removed the optional property 'data/items/resource_name' from the response with the '200' status
  • added the new optional 'query' request parameter 'client_ip'
  • added the new optional 'query' request parameter 'http_method'
  • added the new optional 'query' request parameter 'http_path'
  • added the new optional 'query' request parameter 'http_status'
  • added the optional property 'data/items/client_ip' to the response with the '200' status
  • added the optional property 'data/items/http_method' to the response with the '200' status
  • added the optional property 'data/items/http_path' to the response with the '200' status
  • added the optional property 'data/items/http_status' to the response with the '200' status

GET /connections

  • added the new optional 'query' request parameter 'attribute'
  • added the optional property '/items/attributes' to the response with the '200' status

POST /connections

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /connections/{nameOrID}

  • added the optional property 'attributes' to the response with the '200' status

PATCH /connections/{nameOrID}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

PUT /connections/{nameOrID}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /datamasking-rules

  • added the optional property '/items/attributes' to the response with the '200' status

POST /datamasking-rules

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /datamasking-rules/{id}

  • added the optional property 'attributes' to the response with the '200' status

PUT /datamasking-rules/{id}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /guardrails

  • added the optional property '/items/attributes' to the response with the '200' status

POST /guardrails

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /guardrails/{id}

  • added the optional property 'attributes' to the response with the '200' status

PUT /guardrails/{id}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /sessions/{session_id}/rdp-frames

  • endpoint added

@github-actions
Copy link
Contributor

📋 API Changelog

API Changelog unknown vs. unknown

API Changes

GET /access-requests/rules

  • added the optional property 'data/items/attributes' to the response with the '200' status

POST /access-requests/rules

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /access-requests/rules/{name}

  • added the optional property 'attributes' to the response with the '200' status

PUT /access-requests/rules/{name}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /attributes

  • endpoint added

POST /attributes

  • endpoint added

DELETE /attributes/{name}

  • endpoint added

GET /attributes/{name}

  • endpoint added

PUT /attributes/{name}

  • endpoint added

GET /audit/logs

  • ⚠️ deleted the 'query' request parameter 'resource_id'
  • ⚠️ deleted the 'query' request parameter 'resource_name'
  • ⚠️ removed the optional property 'data/items/resource_id' from the response with the '200' status
  • ⚠️ removed the optional property 'data/items/resource_name' from the response with the '200' status
  • added the new optional 'query' request parameter 'client_ip'
  • added the new optional 'query' request parameter 'http_method'
  • added the new optional 'query' request parameter 'http_path'
  • added the new optional 'query' request parameter 'http_status'
  • added the optional property 'data/items/client_ip' to the response with the '200' status
  • added the optional property 'data/items/http_method' to the response with the '200' status
  • added the optional property 'data/items/http_path' to the response with the '200' status
  • added the optional property 'data/items/http_status' to the response with the '200' status

GET /connections

  • added the new optional 'query' request parameter 'attribute'
  • added the optional property '/items/attributes' to the response with the '200' status

POST /connections

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /connections/{nameOrID}

  • added the optional property 'attributes' to the response with the '200' status

PATCH /connections/{nameOrID}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

PUT /connections/{nameOrID}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /datamasking-rules

  • added the optional property '/items/attributes' to the response with the '200' status

POST /datamasking-rules

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /datamasking-rules/{id}

  • added the optional property 'attributes' to the response with the '200' status

PUT /datamasking-rules/{id}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /guardrails

  • added the optional property '/items/attributes' to the response with the '200' status

POST /guardrails

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '201' status

GET /guardrails/{id}

  • added the optional property 'attributes' to the response with the '200' status

PUT /guardrails/{id}

  • added the new optional request property 'attributes'
  • added the optional property 'attributes' to the response with the '200' status

GET /sessions/{session_id}/rdp-frames

  • endpoint added

@sandromello
Copy link
Contributor

✅ Build Completed with Success, Version=1319.0.0-724524f

@sandromello
Copy link
Contributor

✅ Build Completed with Success, Version=1319.0.0-123ffdb

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants