Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
48 commits
Select commit Hold shift + click to select a range
43abec4
Added Missing Analyses Class to SDK-Python
mateuscardosodeveloper Oct 7, 2024
fb45f03
Some improvements
mateuscardosodeveloper Oct 8, 2024
101ad19
Fix token creation request body to unpack tokenParams
mateuscardosodeveloper Apr 29, 2025
2eeca7c
Add Access module and related types for access management functionality
mateuscardosodeveloper May 1, 2025
25b4f0c
Add tests for Access class methods in test_access.py
mateuscardosodeveloper May 1, 2025
67f1c3c
Add documentation for Access Type and update Resources index
mateuscardosodeveloper May 1, 2025
9ee2194
Add Actions module and integrate it into Resources and AccountDepreca…
mateuscardosodeveloper May 2, 2025
a8d25e1
Add tests for Actions class methods in test_actions.py
mateuscardosodeveloper May 2, 2025
ffa6c53
Add documentation for Actions Type and update Resources index
mateuscardosodeveloper May 2, 2025
ac4da3a
Update Actions_Type and Common_Type documentation to correct attribut…
mateuscardosodeveloper May 2, 2025
4ab5157
Refactor import statements in Actions module to remove unused types
mateuscardosodeveloper May 2, 2025
2a9b738
Implement caching mechanism and add Dictionaries module with CRUD ope…
mateuscardosodeveloper May 5, 2025
e18a37f
Add unit tests for Dictionaries module methods in test_dictionaries.py
mateuscardosodeveloper May 5, 2025
9c83791
Add Dictionaries documentation and update Resources index
mateuscardosodeveloper May 5, 2025
547357b
Fix parameter filtering in _converter_dict_param_filter method to ens…
mateuscardosodeveloper May 5, 2025
836d327
Remove unused Tuple import from Cache.py
mateuscardosodeveloper May 5, 2025
0def38f
Add Files module and integrate into Resources; update TagoIOModule pa…
mateuscardosodeveloper May 6, 2025
26b4978
Add test suite for Files module with various mock methods and assertions
mateuscardosodeveloper May 6, 2025
dfbecf7
Add Files Type documentation and update Resources index
mateuscardosodeveloper May 6, 2025
feaeda8
Refactor file upload handling in Files module and improve UploadOptio…
mateuscardosodeveloper May 6, 2025
86b02cf
Add IntegrationConnector and IntegrationConnectorType modules with co…
mateuscardosodeveloper May 6, 2025
8ee63cd
Add IntegrationConnector documentation and update Resources index
mateuscardosodeveloper May 6, 2025
060331a
Add tests for Connectors class methods in test_integration_connector.py
mateuscardosodeveloper May 6, 2025
df94233
Remove unused import of Any from IntegrationConnector module
mateuscardosodeveloper May 6, 2025
822b720
Add Notifications module and integrate it into Resources and AccountD…
mateuscardosodeveloper May 8, 2025
a5d2495
Add tests for Notifications class methods in test_notifications.py
mateuscardosodeveloper May 8, 2025
c4cf7af
Add detailed documentation for Notification types and update Resource…
mateuscardosodeveloper May 8, 2025
1123975
Add requests-toolbelt as a dependency in pyproject.toml
mateuscardosodeveloper May 9, 2025
4fa23fb
Refactor multipart upload handling in Files module to use requests-to…
mateuscardosodeveloper May 9, 2025
8773cd8
Refactor dev-dependencies section in pyproject.toml to use group.dev.…
mateuscardosodeveloper May 9, 2025
ae091e0
Add Secrets module and integrate it into Resources and AccountDeprecated
mateuscardosodeveloper May 12, 2025
2ad831f
Add tests for Secrets class methods in test_secrets.py
mateuscardosodeveloper May 12, 2025
f0b5e69
Add documentation for Secrets module and create index entries for Sec…
mateuscardosodeveloper May 12, 2025
8ca0486
Add ServiceAuthorization module and integrate it into Resources and A…
mateuscardosodeveloper May 12, 2025
df59926
Add tests for ServiceAuthorization methods including tokenList, token…
mateuscardosodeveloper May 12, 2025
fc8d45c
Add ServiceAuthorization documentation and integrate into Resources i…
mateuscardosodeveloper May 12, 2025
40dbbb4
Refactor import statement in ServiceAuthorization module to remove un…
mateuscardosodeveloper May 12, 2025
70a13ae
Merge pull request #47 from tago-io/feat/add-service-authorization-cl…
felipefdl Jul 26, 2025
e820d82
Merge pull request #46 from tago-io/feat/add-secrets-class/SDKPY-128
felipefdl Jul 26, 2025
4ef9ffa
Merge pull request #45 from tago-io/feat/add-notifications-class/SDKP…
felipefdl Jul 26, 2025
da446cd
Merge pull request #44 from tago-io/feat/add-connectors-class/SDKPY-126
felipefdl Jul 26, 2025
289550f
Merge pull request #43 from tago-io/feat/add-files-class/SDKPY-125
felipefdl Jul 26, 2025
c7c97fc
Merge pull request #42 from tago-io/feat/add-dictionaries-class/SDKPY…
felipefdl Jul 26, 2025
30d5253
Merge pull request #40 from tago-io/feat/add-access-class/SDKPY-121
felipefdl Jul 26, 2025
2f14a59
Merge pull request #41 from tago-io/feat/add-actions-class/SDKPY-122
felipefdl Jul 26, 2025
bebefed
Merge main into feat/add-analyses-class/SDKPY-117
felipefdl Jul 26, 2025
85a93af
fix pyproject
felipefdl Jul 26, 2025
3a5718e
Fix tests and linting issues
felipefdl Jul 26, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
72 changes: 72 additions & 0 deletions docs/source/Resources/Access/Access_Type.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
**Access Type**
===============

.. _Permissions:

Permissions
-----------

**Attributes:**

| effect: "allow" or "deny"
| Indicates whether the permission allows or denies the specified actions.

| action: List[str]
| List of actions that are allowed or denied.

| resource: List[str]
| List of resources to which the actions apply.


.. _AccessCreateInfo:

AccessCreateInfo
----------------

**Attributes:**

| name: str
| Name of the access policy.

| permissions: List[:ref:`Permissions`]
| List of permissions assigned to this access policy.

| targets: List[Any]
| List of targets (users, devices, etc.) that this access policy applies to.

| profile: Optional[:ref:`GenericID`]
| Profile ID associated with this access policy.

| tags: Optional[List[:ref:`TagsObj`]]
| List of tags for categorization or filtering.

| active: Optional[bool]
| Indicates if the access policy is active.


.. _AccessInfo:

AccessInfo(:ref:`AccessCreateInfo`)
-----------------------------------

**Attributes:**

| id: :ref:`GenericID`
| Unique identifier for the access policy.

| created_at: datetime
| Date and time when the access policy was created.

| updated_at: datetime
| Date and time when the access policy was last updated.


.. _AccessQuery:

AccessQuery(:ref:`Query`)
-------------------------

**Attributes:**

| fields: Optional[List["name" or "active" or "created_at" or "updated_at"]]
| List of fields to include in the query results.
180 changes: 180 additions & 0 deletions docs/source/Resources/Access/index.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,180 @@
**Access**
==========

Manage access policies in your application.

=======
list
=======

Lists all access rules from the application with pagination support.
Use this to retrieve and manage access policies for your application.

See: `Access Management <https://help.tago.io/portal/en/kb/articles/183-access-management>`_

**Parameters:**

| *Optional* **queryObj**: :ref:`AccessQuery`
| Query parameters to filter the results.

.. code-block::
:caption: **Default queryObj:**

queryObj = {
"page": 1,
"fields": ["id", "name", "tags"],
"filter": {},
"amount": 20,
"orderBy": ["name", "asc"]
}

**Returns:**

| list[:ref:`AccessInfo`]

.. code-block:: python

# If you receive an error "Authorization Denied", check policy "Access Management" / "Access" in Access Management.
from tagoio_sdk import Resources

resources = Resources()
result = resources.access.list({
"page": 1,
"fields": ["id", "name"],
"amount": 10,
"orderBy": ["name", "asc"]
})
print(result) # [{'id': 'access-id-123', 'name': '[Analysis] - Test'}, ...]


=======
create
=======

Creates a new access policy in your application.

See: `Access Management <https://help.tago.io/portal/en/kb/articles/183-access-management>`_

**Parameters:**

| **accessObj**: :ref:`AccessCreateInfo`
| Access policy information

**Returns:**

| dict

.. code-block:: python

# If receive an error "Authorization Denied", check policy "Access Management" / "Create" in Access Management.
from tagoio_sdk import Resources

resources = Resources()
new_access = resources.access.create({
"active": True,
"name": "My Access Policy",
"permissions": [
{
"effect": "allow",
"action": ["access"],
"resource": ["access_management"],
},
],
"targets": [["analysis", "id", "analysis-id-123"]],
"tags": [{"key": "type", "value": "admin"}],
})
print(new_access["am_id"]) # access-id-123


=======
edit
=======

Modifies an existing access policy.

See: `Access Management <https://help.tago.io/portal/en/kb/articles/183-access-management>`_

**Parameters:**

| **accessID**: str
| Access policy ID

| **accessObj**: dict
| Access policy information to update

**Returns:**

| string

.. code-block:: python

# If you receive an error "Authorization Denied", check policy "Access Management" / "Edit" in Access Management.
from tagoio_sdk import Resources

resources = Resources()
result = resources.access.edit("access-id-123", {
"name": "Updated Access Policy",
"permissions": [
{
"effect": "allow",
"action": ["edit"],
"resource": ["access_management"],
},
],
"tags": [{"key": "type", "value": "user"}]
})
print(result) # Access Management Successfully Updated


=======
delete
=======

Removes an access policy from your application.

See: `Access Management <https://help.tago.io/portal/en/kb/articles/183-access-management>`_

**Parameters:**

| **accessID**: str
| Access policy ID

**Returns:**

| string

.. code-block:: python

# If you receive an error "Authorization Denied", check policy "Access Management" / "Delete" in Access Management.
from tagoio_sdk import Resources

resources = Resources()
result = resources.access.delete("access-id-123")
print(result) # Successfully Removed


=======
info
=======

Retrieves detailed information about a specific access policy.

See: `Access Management <https://help.tago.io/portal/en/kb/articles/183-access-management>`_

**Parameters:**

| **accessID**: str
| Access policy ID

**Returns:**

| :ref:`AccessInfo`

.. code-block:: python

# If you receive an error "Authorization Denied", check policy "Access Management" / "Access" in Access Management.
from tagoio_sdk import Resources

resources = Resources()
access_info = resources.access.info("access-id-123")
print(access_info) # {'id': 'access-id-123', 'name': '[Analysis] - Test', ...}
Loading