curl --request POST \
--url http://localhost:9371/modules \
--header 'Content-Type: application/json' \
--data '
{
"url": "<string>",
"autoUpdate": true
}
'import requests
url = "http://localhost:9371/modules"
payload = {
"url": "<string>",
"autoUpdate": True
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({url: '<string>', autoUpdate: true})
};
fetch('http://localhost:9371/modules', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_PORT => "9371",
CURLOPT_URL => "http://localhost:9371/modules",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'url' => '<string>',
'autoUpdate' => true
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "http://localhost:9371/modules"
payload := strings.NewReader("{\n \"url\": \"<string>\",\n \"autoUpdate\": true\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("http://localhost:9371/modules")
.header("Content-Type", "application/json")
.body("{\n \"url\": \"<string>\",\n \"autoUpdate\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("http://localhost:9371/modules")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"url\": \"<string>\",\n \"autoUpdate\": true\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"name": "<string>",
"type": "adapter",
"description": "<string>",
"version": "2.0.0",
"isBuiltin": true,
"enabled": true,
"missing": true,
"hasIcon": true,
"createdAt": "<string>",
"autoUpdate": true,
"autoUpdateConstraint": "<string>",
"hash": "<string>",
"source": "<string>",
"configSchema": {},
"secretsSchema": {}
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}{
"error": "rate_limit_exceeded",
"message": "<string>",
"retryAfter": 1
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}Install a module from a direct URL
Downloads a .tar.zst archive from the supplied direct URL, validates the module.json manifest, and registers the module. Newly installed modules start disabled by default. No registry source is stored.
curl --request POST \
--url http://localhost:9371/modules \
--header 'Content-Type: application/json' \
--data '
{
"url": "<string>",
"autoUpdate": true
}
'import requests
url = "http://localhost:9371/modules"
payload = {
"url": "<string>",
"autoUpdate": True
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({url: '<string>', autoUpdate: true})
};
fetch('http://localhost:9371/modules', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_PORT => "9371",
CURLOPT_URL => "http://localhost:9371/modules",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'url' => '<string>',
'autoUpdate' => true
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "http://localhost:9371/modules"
payload := strings.NewReader("{\n \"url\": \"<string>\",\n \"autoUpdate\": true\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("http://localhost:9371/modules")
.header("Content-Type", "application/json")
.body("{\n \"url\": \"<string>\",\n \"autoUpdate\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("http://localhost:9371/modules")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"url\": \"<string>\",\n \"autoUpdate\": true\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"name": "<string>",
"type": "adapter",
"description": "<string>",
"version": "2.0.0",
"isBuiltin": true,
"enabled": true,
"missing": true,
"hasIcon": true,
"createdAt": "<string>",
"autoUpdate": true,
"autoUpdateConstraint": "<string>",
"hash": "<string>",
"source": "<string>",
"configSchema": {},
"secretsSchema": {}
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}{
"error": "rate_limit_exceeded",
"message": "<string>",
"retryAfter": 1
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}Body
Response
The module manifest record for the newly installed module.
Full module manifest record returned by the get module endpoint.
Module identifier.
1Module display name.
1Module type.
adapter, environment Human-readable description of the module.
Semantic version of the installed module manifest.
1"2.0.0"
Whether the module is bundled with the API.
Whether the module is currently enabled.
Whether the module is installed but has no matching factory loaded.
Whether the module has a registry-declared icon.
ISO-8601 timestamp of when the module was installed.
Whether the module opted into the background auto-update sweep.
Semver range pinning the auto-update registry version, or null for latest.
Content hash of the installed module archive.
1Install source URL used to fetch the module archive.
JSON Schema describing the module configuration object.
Show child attributes
Show child attributes
JSON Schema describing the module secrets object.
Show child attributes
Show child attributes
Was this page helpful?