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

Uploaded Python 3

File details

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

File metadata

  • Download URL: shufflepy-0.2.1.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.1.tar.gz
Algorithm Hash digest
SHA256 14bcb53c49acd974e76805b47e3e0bc35b26eb06a9708846c8f69ab80d564d46
MD5 e90d643852a24fae0bed044f637308d8
BLAKE2b-256 c610fc1d1d54eca63f0ad6594c9c3e5568898ae430ab81a11a1745a3a0d94bb7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: shufflepy-0.2.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0eea042304f58c2c281e7ad9b37bc97c96262f32531fc0154ad960eaef7ab2da
MD5 94af955c214c63d1678a657f2cdfb1a1
BLAKE2b-256 da215d3ac4da7804ad92cf88fb4c7c3b427439adc330aaa05329083cea60505b

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