Echo: text and file API

The Docs' example Widget. It echoes your text, and the name, size and checksum of a .txt file you add. Free.

Input

Send these Fields as input. A Field not listed here is refused.

text

Text to echo

  • Type: string
  • Required: yes
  • Length in characters: 1 to 30000

file

A .txt file up to 1 MB (optional)

An https URL or an upload id.

  • Type: string
  • Required: no

Run it

One call presses the Widget and answers the run once its status is succeeded or failed, however long it takes. The key is read from ABYSS_API_KEY. Install the library with npm install abysshub or pip install abysshub; cURL sends the Fields as a form.

JavaScript

// index.mjs
import Abyss from "abysshub";

const abyss = new Abyss();

const run = await abyss.run("widget_375", {
  text: "Hello",
});

console.log(run.result);
for (const path of await run.save("output")) {
  console.log(path);
}

Python

from abysshub import Abyss

abyss = Abyss()

run = abyss.run("widget_375", {
    "text": "Hello",
})

print(run.result)
for path in run.save("output"):
    print(path)

cURL

curl https://api.abysshub.com/v1/widgets/widget_375/runs \
  -H "Authorization: Bearer $ABYSS_API_KEY" \
  -F text=Hello

A succeeded run carries its result and its output_files. Their URLs are signed for each read: re-read the run, never store a URL. A run still queued or running in the answer (after an hour, or when the API is busy) is read again at its Location with ?wait=true.

What it answers

The Example Run's result, the JSON the Widget wrote to output/output.json:

{
  "text": "Hello",
  "file": null
}

More

Keys, files, errors and limits: API access.