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.0.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.0-py3-none-any.whl (14.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: shufflepy-0.2.0.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.0.tar.gz
Algorithm Hash digest
SHA256 84f75386e29a591292bda7cc478f9ea2aa3e0ec56ebcf5f466b7d82e8a4385eb
MD5 6bda3bcd6d54d351798b32e37814f5fd
BLAKE2b-256 763df08ce3ddc6dcbfe4ec3e9e4afa6c5f333a2ed79a3b3b350044351405a3ac

See more details on using hashes here.

File details

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

File metadata

  • Download URL: shufflepy-0.2.0-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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9e21efb81edb84f2f5a85cc1d4451c94dee18234e1b62cdf0e309207c1a0e1ef
MD5 e3be08d04d2c625cf7a9553317de0a0e
BLAKE2b-256 28a60999767fd110a2e9c6382e9a2f3611de71806b4116e223b75dcdc539ebdc

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