We need your help! 🔥
Please consider disabling your ad-blocker to support this website! 🔑
We are a free, community-supported website! 🥰
We only display small unobtrusive ads which help us stay online! 💯
Thank you in advance! ❤️
1. Auth
2. Request
3. Send
4. Read JSON
5. Read HTML
6. Utilities
7. Listen

Swiftlet

ADDON. Version 0.1.9. Released on 16-Jul-2023. Provides 87 components. Created by Sergey Pigach. Features 0 video tutorials.
Swiftlet is a tool that lets you call into Web APIs directly from Grasshopper. If you are interested in scraping the internet, tapping into public and private APIs or testing your own web backends, Swiftlet is a tool for you! It provides a streamlined workflow for sending GET, POST, DELETE, PUT and PATCH requests to any API endpoint. It gives you advanced control over request headers, query params, supports several kinds of web authentication and lets you parse JSON formatted web responses.

6. Utilities

Base64 to Byte Array (B64BA)
Converts a Base64 encoded string to a byte array
Bitmap to Byte Array (BTBA)
Converts a bitmap to a byte array
Generate QR code (QR)
Generates a QR code from a string
Bitmap to Mesh (BTM)
Converts a bitmap to a Rhino mesh
Byte Array To Bitmap (BATBMP)
Converts a byte array to a bitmap
Byte Array To Base64 (BAB64)
Converts a Byte Array to a Base64 encoded string
URL encode (URLE)
URL-encodes a string to make it URL-safe
Byte Array To List (BAL)
Converts a byte array into a list of integers
Color to Hex (CTH)
Converts a Color value to a hex code
Generate GUID (GGUID)
Generates a random GUID (Globally Unique Identifier)
This is useful if you need a quick way to reliably generate unique IDs
Split Text Into Lines (STIL)
Takes a block of text and splits it into individual lines by the newline character
Read CSV Line (RCSVL)
Extracts individual values from a delimeter-separated line
Decompress Data (UGZIP)
Un-GZIP byte array data
Compress Data (GZIP)
GZIP byte array data
Create CSV Line (CSVL)
Formats multiple strings as a single line of delimeter-separated values
Byte Array to File (BAF)
Save a byte array to a local file
Save Text (ST)
Save text to disk
Save Web Response (SWR)
Save Web Response to disk
Byte Array To Text (BATXT)
Converts a byte array to text
File To Byte Array (FBA)
Read a file into a byte array
Base64 to Text (B64T)
Converts a Base64 encoded string to cleartext
Hex to Color (HTC)
Parses a hex code into a color value
Text To Base64 (TB64)
Converts text to a Base64 encoded string
List To Byte Array (LBA)
Converts a list of integers into a byte array
Replace Empty Branches (REB)
Substitutes all empty branches in a tree with a provided list of values.
Useful for padding missing values in a web scraping scenario
Text To Byte Array (TXTBA)
Converts text to a byte array
Save CSV (CSV)
Save formatted CSV Lines as a CSV file
Bitmap (BMP)
Collection of Bitmaps
Byte Array (BA)
Collection of Byte Arrays

2. Request

Create Byte Array Body (CBAB)
Create a Request Body that supports Byte Array content
Create Http Header (CH)
Create a new Http Header
Create JSON Array (CJA)
Combine a list of JTokens into a JArray
Create JSON Object (CJO)
Create a JObject from keys and values
Create JSON Value (CJV)
Turn a Grasshopper value into a JSON value
Create Multipart Form Body Unnamed (CMFBU)
Create a Request Body that supports the multipart/form-data Content-Type with unnamed fields
Create Query Param (CQP)
Create an Http Query Param
Create Byte Array Body from File (BABFF)
Create a Request Body that supports Byte Array content by providing a filepath
Create Multipart Form Body Named (CMFBN)
Create a Request Body that supports the multipart/form-data Content-Type with named fields
Create Text Body Custom (CTBC)
Create a Request Body that supports text formats with a custom Content-Type header
Create Text Body (CTB)
Create a Request Body that supports text formats
Create URL (CURL)
Construct a URL from its constituent parts
Remove JSON Key (RJK)
Remove a key from JObject
Set JSON Key (SJK)
Add or modify a JObject key
Http Header (H)
A collection of Http Headers
Http Response (HR)
Http Web Response
Query Param (QP)
Container for Http Query Params
Request Body (RB)
Collection of Request Body objects

4. Read JSON

Get JSON Object Key (GJOK)
Get a specific key from JObject
Parse JSON String (PJS)
Parse a string into a searchable JSON Object
Read JSON Array (RJA)
Read a JSON Array into a series of searchable JSON objects
Read JSON Object (RJO)
Get all keys and values from JObject
Read JSON Value (RJV)
Read JSON Value
Stringify JSON Token (SJT)
Convert any abstract JToken to an indented JSON string
Format Json String (FJS)
Prettify a JSON string by formatting it with proper indentations
Separate JSON Tokens (SJT)
Separate tokens into JObjects, JArrays and JValues
JArray (JA)
Collection of JSON Arrays
JObject (JO)
Collection of JSON Objects
JToken (JT)
Collection of JSON Tokens
JValue (JV)
Collection of JSON Values

5. Read HTML

Get Attribute Value (GATTR)
Get the value of an HTML attribute
Get Element By Id (BYID)
Get an HTML element by ID
Get Elements By Attribute Value (BYATTR)
Get all HTML elements where a certain attribute is equal to a certain value
Get Elements By Class Name (BYCLASS)
Get all HTML elements by a specific class name
Get Elements By Tag Name (BYTAG)
Get HTML Elements by Tag Name
Get Elements By XPATH (BYXPATH)
Get HTML elements via an XPATH expression
Get Child Nodes (GCH)
Get all child nodes of an HTML node
Get Inner HTML (INNER)
Get the inner HTML of an element
Read HTML (HTML)
Read HTML Markup
Stringify HTML Node (SHTML)
Convert an HTML Node to cleartext
Get Html Attributes (GATTRS)
Get all attributes and values of an HTML element
Html Node (HTML)
Collection of Html Nodes

3. Send

Deconstruct Http Header (DHH)
Deconstruct a Header into its constituent parts
Deconstruct Query Param (DQP)
Deconstruct a Query Param into its constituent parts
Throttle (THRTL)
This is a simple passthrough component that lets you add a delay. Useful when sending multiple calls to APIs with limitations on maximum number of requests per minute
Deconstruct URL (DURL)
Deconstruct a URL into its constituent parts
Deconstruct Response (DR)
Deconstruct Http Response
DELETE Request (DELETE)
Send a DELETE request
HTTP Request (REQ)
A multithreaded component that supports all HTTP methods
GET Request (GET)
Send a GET request
PATCH Request (PATCH)
Send a PATCH request
PUT Request (PUT)
Send a PUT request
POST Request (POST)
Send a POST request

1. Auth

API Key (API)
Create a header and a query param (you'll likely need one or the other, not both) for API key auth
Basic Auth (BASIC)
Creates an Authorization header for your Basic auth
Bearer Token Auth (BEARER)
Creates an Authorization header for your Bearer token

7. Listen

HTTP Listener (L)
A simple HTTP listener component that can receive HTTP requests.
This component is VERY ALPHA. Use at your own risk.
Socket Listener (SOCKET)
A simple socket listener component

Site design © Robin Rodricks.   Swiftlet and associated data © 2024 Sergey Pigach.  
Rhinoceros and Grasshopper are registered trademarks of Robert McNeel & Associates.  Hosted by GitHub

Report an Issue  |  Terms of Service