Configurer un plugin
Configurez une instance de plugin sur une diapositive.
curl --request POST \
--url https://faces.app/api/v1/projects/{slug}/slides/{slideId}/plugins \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"pluginId": "<string>",
"localName": "<string>",
"config": {},
"overwrite": true
}
'import requests
url = "https://faces.app/api/v1/projects/{slug}/slides/{slideId}/plugins"
payload = {
"pluginId": "<string>",
"localName": "<string>",
"config": {},
"overwrite": True
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({pluginId: '<string>', localName: '<string>', config: {}, overwrite: true})
};
fetch('https://faces.app/api/v1/projects/{slug}/slides/{slideId}/plugins', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://faces.app/api/v1/projects/{slug}/slides/{slideId}/plugins",
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([
'pluginId' => '<string>',
'localName' => '<string>',
'config' => [
],
'overwrite' => true
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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 := "https://faces.app/api/v1/projects/{slug}/slides/{slideId}/plugins"
payload := strings.NewReader("{\n \"pluginId\": \"<string>\",\n \"localName\": \"<string>\",\n \"config\": {},\n \"overwrite\": true\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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("https://faces.app/api/v1/projects/{slug}/slides/{slideId}/plugins")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"pluginId\": \"<string>\",\n \"localName\": \"<string>\",\n \"config\": {},\n \"overwrite\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://faces.app/api/v1/projects/{slug}/slides/{slideId}/plugins")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"pluginId\": \"<string>\",\n \"localName\": \"<string>\",\n \"config\": {},\n \"overwrite\": true\n}"
response = http.request(request)
puts response.read_body{
"slideId": "<string>",
"versionId": "<string>",
"instanceId": "<string>",
"pluginId": "<string>",
"created": true,
"warning": "<string>"
}{
"error": "<string>",
"hint": "<string>"
}{
"error": "<string>",
"hint": "<string>"
}{
"error": "<string>",
"hint": "<string>"
}Autorisations
API key with "faces_" prefix. Create one at Settings > Developers.
Corps
The plugin ID from listPlugins.
Identifier for this instance, referenced in code as useFormPlugin/usePresenterPlugin(localName). camelCase or snake_case, starting with a letter.
Config object matching the plugin's config schema (see getPluginDocs).
Show child attributes
Show child attributes
Set true to replace an existing instance with the same localName. Defaults to false.
Réponse
Plugin configured
The new project version ID.
The configured instance id, formatted as ${slideId}.${localName}.
True if a new instance was created, false if an existing one was overwritten.
Present when the config was saved but a post-save side effect (e.g. presenter avatar provisioning) failed. The instance is configured; address the warning and call setupPlugin again with overwrite: true to retry.
curl --request POST \
--url https://faces.app/api/v1/projects/{slug}/slides/{slideId}/plugins \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"pluginId": "<string>",
"localName": "<string>",
"config": {},
"overwrite": true
}
'import requests
url = "https://faces.app/api/v1/projects/{slug}/slides/{slideId}/plugins"
payload = {
"pluginId": "<string>",
"localName": "<string>",
"config": {},
"overwrite": True
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({pluginId: '<string>', localName: '<string>', config: {}, overwrite: true})
};
fetch('https://faces.app/api/v1/projects/{slug}/slides/{slideId}/plugins', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://faces.app/api/v1/projects/{slug}/slides/{slideId}/plugins",
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([
'pluginId' => '<string>',
'localName' => '<string>',
'config' => [
],
'overwrite' => true
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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 := "https://faces.app/api/v1/projects/{slug}/slides/{slideId}/plugins"
payload := strings.NewReader("{\n \"pluginId\": \"<string>\",\n \"localName\": \"<string>\",\n \"config\": {},\n \"overwrite\": true\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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("https://faces.app/api/v1/projects/{slug}/slides/{slideId}/plugins")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"pluginId\": \"<string>\",\n \"localName\": \"<string>\",\n \"config\": {},\n \"overwrite\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://faces.app/api/v1/projects/{slug}/slides/{slideId}/plugins")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"pluginId\": \"<string>\",\n \"localName\": \"<string>\",\n \"config\": {},\n \"overwrite\": true\n}"
response = http.request(request)
puts response.read_body{
"slideId": "<string>",
"versionId": "<string>",
"instanceId": "<string>",
"pluginId": "<string>",
"created": true,
"warning": "<string>"
}{
"error": "<string>",
"hint": "<string>"
}{
"error": "<string>",
"hint": "<string>"
}{
"error": "<string>",
"hint": "<string>"
}