Skip to main content

Use Shufflepy to control Shuffle and Singul

Project description

Shuffle and Singul agentic API

Connect to your favorite services with a Singul line of code.

This documentation will help you get started with Singul, understand its capabilities, and integrate it into your workflows easily. Whether you're a developer, a security analyst, or an automation engineer — Singul is built for you.

Singul is an API handler that allows you to get or update data in tools like Jira, Outlook, Gmail, Service Now, and more - with a single line of code.

Usage

Run AI Agent: run_agent("action to perform")

from shufflepy import Singul

singul = Singul(
    "APIKEY"
)

singul.run_agent("Handle my emails from yesterday so I don't have to")

Sample functions below. If none of these match, try to use the shuffle.connect() function to run ANYTHING. By default returns the matching translation standard if available, otherwise the raw output.

from shufflepy import Singul 

# If you want to use REMOTE singul (shuffler.io / open source Shuffle)
singul = Singul(
	"APIKEY",
	url='https://shuffler.io',
)

singul.cases.create_ticket("jira", title="Title")
singul.communication.send_message("slack", message="Test")
singul.communication.send_message("teams", message="Test")
tickets = singul.cases.list_tickets("jira")


# If you want to run it 100% locally
resp = singul.run("jira", action="list_tickets")

Normal App run control:

singul.run_app(app_id="bc78f35c6c6351b07a09b7aed5d29652", action="repeat_back_to_me", params={"call": "The value to repeat"})

Manual:

# General connect
resp = singul.cases.list_tickets(
	app="jira",
	org_id=os.environ.get("SHUFFLE_ORG_ID"),
	fields=[{
		"key": "max-amount",
		"value": "10"
	}]
)

### Common Use Cases

# General transformer - Transforms from any data into a standard, e.g. "list_tickets"
sourcedata = [{"title": "Tickettitle", "id": "hiya"}]
tickets = singul.transform(sourcedata, "list_tickets") # (coming soon)

* Send emails using **Outlook or Gmail**
* Fetch and manage tickets from **Jira, GitHub, or TheHive**
* Pull alerts from **SIEM or SOAR platforms**
* Automate security investigations
* Trigger workflow actions across tools
* Build lightweight automation using simple APIs

Basic output for `list_tickets`: 
```json
[{
  "id": "P-123",
  "title": "Ticket 1"
},
{
  "id": "P-124",
  "title": "Ticket 2"
}]

See default standards - Standards are modifiable, and you will see your own standards on the File page in Shuffle.

Exploring usage

To look through past executions, see the execution debugger available on /workflows/debug image

Available Apps & categories

Local testing

cd build_singul
cp -r ../shufflepy singul
python3 -m pip install -e . --break-system-packages

# You can now import the library locally :)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

shufflepy-0.2.2.tar.gz (12.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

shufflepy-0.2.2-py3-none-any.whl (14.2 kB view details)

Uploaded Python 3

File details

Details for the file shufflepy-0.2.2.tar.gz.

File metadata

  • Download URL: shufflepy-0.2.2.tar.gz
  • Upload date:
  • Size: 12.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.10.10

File hashes

Hashes for shufflepy-0.2.2.tar.gz
Algorithm Hash digest
SHA256 0fb8ca805cc34a984cae99f7a14578f37bee559f67ec67a61569001cfb989abb
MD5 3d845bda40f8bf7b35115824150a181e
BLAKE2b-256 b2ca83e5939d801d7531ab72466da66b8bd3a23af997c33a6f0193e306ca8f43

See more details on using hashes here.

File details

Details for the file shufflepy-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: shufflepy-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 14.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.10.10

File hashes

Hashes for shufflepy-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 054254cc0f34362a4147744a897f0b0972f0fb3503a2ac125b739009658ea8a7
MD5 39b3c48820c8f46b203e44c495651d9a
BLAKE2b-256 6f5fc512c9c0d3ddcf1e128aaeb4dd7cd8876049275e4c7134765e9a5dcb4d1b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page