cURL
curl --request POST \
--url 'https://api.kloo.li/v1/links' \
--header 'Authorization: Bearer {api_key}' \
--header 'Content-Type: multipart/form-data' \
--form 'type=link' \
--form 'is_bulk=1' \
--form 'location_urls=https://example.com/a\nhttps://example.com/b'
const formData = new FormData();
formData.append('type', 'link');
formData.append('is_bulk', '1');
formData.append('location_urls', 'https://example.com/a\nhttps://example.com/b');
const response = await fetch('https://api.kloo.li/v1/links', {
method: 'POST',
headers: { Authorization: 'Bearer {api_key}' },
body: formData
});
const data = await response.json();
console.log(data);
import requests
url = 'https://api.kloo.li/v1/links'
headers = {'Authorization': 'Bearer {api_key}'}
data = {
'type': 'link',
'is_bulk': '1',
'location_urls': 'https://example.com/a\nhttps://example.com/b'
}
response = requests.request('POST', url, headers=headers, data=data)
print(response.json())
<?php
$ch = curl_init('https://api.kloo.li/v1/links');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_HTTPHEADER => ['Authorization: Bearer {api_key}'],
CURLOPT_POSTFIELDS => [
'type' => 'link',
'is_bulk' => '1',
'location_urls' => 'https://example.com/a\nhttps://example.com/b'
],
]);
echo curl_exec($ch);
curl_close($ch);
package main
import (
"bytes"
"fmt"
"io"
"mime/multipart"
"net/http"
)
func main() {
var body bytes.Buffer
writer := multipart.NewWriter(&body)
_ = writer.WriteField("type", "link")
_ = writer.WriteField("is_bulk", "1")
_ = writer.WriteField("location_urls", "https://example.com/a\nhttps://example.com/b")
_ = writer.Close()
req, _ := http.NewRequest("POST", "https://api.kloo.li/v1/links", &body)
req.Header.Set("Authorization", "Bearer {api_key}")
req.Header.Set("Content-Type", writer.FormDataContentType())
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
data, _ := io.ReadAll(res.Body)
fmt.Println(string(data))
}
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.kloo.li/v1/links"))
.header("Authorization", "Bearer {api_key}")
.header("Content-Type", "application/x-www-form-urlencoded")
.method("POST", HttpRequest.BodyPublishers.ofString("type=link&is_bulk=1&location_urls=https://example.com/a\nhttps://example.com/b"))
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
using var client = new HttpClient();
client.DefaultRequestHeaders.Add("Authorization", "Bearer {api_key}");
var content = new FormUrlEncodedContent(new Dictionary<string, string> { { "type", "link" }, { "is_bulk", "1" }, { "location_urls", "https://example.com/a\nhttps://example.com/b" } });
var request = new HttpRequestMessage(HttpMethod.Post, "https://api.kloo.li/v1/links") { Content = content };
var response = await client.SendAsync(request);
Console.WriteLine(await response.Content.ReadAsStringAsync());
require 'net/http'
require 'uri'
uri = URI('https://api.kloo.li/v1/links')
req = Net::HTTP::Post.new(uri)
req['Authorization'] = 'Bearer {api_key}'
req.set_form_data('type' => 'link', 'is_bulk' => '1', 'location_urls' => 'https://example.com/a\nhttps://example.com/b')
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) { |http| http.request(req) }
puts res.body
{
"data": {
"id": 1
}
}
Liens et pages
Créer des liens courts (bulk)
Liens et pages — Créer des liens courts en masse. POST /links
POST
/
links
cURL
curl --request POST \
--url 'https://api.kloo.li/v1/links' \
--header 'Authorization: Bearer {api_key}' \
--header 'Content-Type: multipart/form-data' \
--form 'type=link' \
--form 'is_bulk=1' \
--form 'location_urls=https://example.com/a\nhttps://example.com/b'
const formData = new FormData();
formData.append('type', 'link');
formData.append('is_bulk', '1');
formData.append('location_urls', 'https://example.com/a\nhttps://example.com/b');
const response = await fetch('https://api.kloo.li/v1/links', {
method: 'POST',
headers: { Authorization: 'Bearer {api_key}' },
body: formData
});
const data = await response.json();
console.log(data);
import requests
url = 'https://api.kloo.li/v1/links'
headers = {'Authorization': 'Bearer {api_key}'}
data = {
'type': 'link',
'is_bulk': '1',
'location_urls': 'https://example.com/a\nhttps://example.com/b'
}
response = requests.request('POST', url, headers=headers, data=data)
print(response.json())
<?php
$ch = curl_init('https://api.kloo.li/v1/links');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_HTTPHEADER => ['Authorization: Bearer {api_key}'],
CURLOPT_POSTFIELDS => [
'type' => 'link',
'is_bulk' => '1',
'location_urls' => 'https://example.com/a\nhttps://example.com/b'
],
]);
echo curl_exec($ch);
curl_close($ch);
package main
import (
"bytes"
"fmt"
"io"
"mime/multipart"
"net/http"
)
func main() {
var body bytes.Buffer
writer := multipart.NewWriter(&body)
_ = writer.WriteField("type", "link")
_ = writer.WriteField("is_bulk", "1")
_ = writer.WriteField("location_urls", "https://example.com/a\nhttps://example.com/b")
_ = writer.Close()
req, _ := http.NewRequest("POST", "https://api.kloo.li/v1/links", &body)
req.Header.Set("Authorization", "Bearer {api_key}")
req.Header.Set("Content-Type", writer.FormDataContentType())
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
data, _ := io.ReadAll(res.Body)
fmt.Println(string(data))
}
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.kloo.li/v1/links"))
.header("Authorization", "Bearer {api_key}")
.header("Content-Type", "application/x-www-form-urlencoded")
.method("POST", HttpRequest.BodyPublishers.ofString("type=link&is_bulk=1&location_urls=https://example.com/a\nhttps://example.com/b"))
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
using var client = new HttpClient();
client.DefaultRequestHeaders.Add("Authorization", "Bearer {api_key}");
var content = new FormUrlEncodedContent(new Dictionary<string, string> { { "type", "link" }, { "is_bulk", "1" }, { "location_urls", "https://example.com/a\nhttps://example.com/b" } });
var request = new HttpRequestMessage(HttpMethod.Post, "https://api.kloo.li/v1/links") { Content = content };
var response = await client.SendAsync(request);
Console.WriteLine(await response.Content.ReadAsStringAsync());
require 'net/http'
require 'uri'
uri = URI('https://api.kloo.li/v1/links')
req = Net::HTTP::Post.new(uri)
req['Authorization'] = 'Bearer {api_key}'
req.set_form_data('type' => 'link', 'is_bulk' => '1', 'location_urls' => 'https://example.com/a\nhttps://example.com/b')
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) { |http| http.request(req) }
puts res.body
{
"data": {
"id": 1
}
}
Créez plusieurs liens courts d’un coup avec
is_bulk. Les alias sont générés aléatoirement ; url personnalisé est ignoré.
Collez votre clé API dans le champ Authorization :
Bearer {api_key}.boolean
requis
Active le mode masse. Envoyez
1 ou toute valeur présente.string
requis
URLs de destination séparées par des retours à la ligne.
string
Type de ressource. Défaut :
link.integer
ID du domaine.
0 = domaine principal.integer
ID du projet appartenant à l’utilisateur authentifié.
cURL
curl --request POST \
--url 'https://api.kloo.li/v1/links' \
--header 'Authorization: Bearer {api_key}' \
--header 'Content-Type: multipart/form-data' \
--form 'type=link' \
--form 'is_bulk=1' \
--form 'location_urls=https://example.com/a\nhttps://example.com/b'
const formData = new FormData();
formData.append('type', 'link');
formData.append('is_bulk', '1');
formData.append('location_urls', 'https://example.com/a\nhttps://example.com/b');
const response = await fetch('https://api.kloo.li/v1/links', {
method: 'POST',
headers: { Authorization: 'Bearer {api_key}' },
body: formData
});
const data = await response.json();
console.log(data);
import requests
url = 'https://api.kloo.li/v1/links'
headers = {'Authorization': 'Bearer {api_key}'}
data = {
'type': 'link',
'is_bulk': '1',
'location_urls': 'https://example.com/a\nhttps://example.com/b'
}
response = requests.request('POST', url, headers=headers, data=data)
print(response.json())
<?php
$ch = curl_init('https://api.kloo.li/v1/links');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_HTTPHEADER => ['Authorization: Bearer {api_key}'],
CURLOPT_POSTFIELDS => [
'type' => 'link',
'is_bulk' => '1',
'location_urls' => 'https://example.com/a\nhttps://example.com/b'
],
]);
echo curl_exec($ch);
curl_close($ch);
package main
import (
"bytes"
"fmt"
"io"
"mime/multipart"
"net/http"
)
func main() {
var body bytes.Buffer
writer := multipart.NewWriter(&body)
_ = writer.WriteField("type", "link")
_ = writer.WriteField("is_bulk", "1")
_ = writer.WriteField("location_urls", "https://example.com/a\nhttps://example.com/b")
_ = writer.Close()
req, _ := http.NewRequest("POST", "https://api.kloo.li/v1/links", &body)
req.Header.Set("Authorization", "Bearer {api_key}")
req.Header.Set("Content-Type", writer.FormDataContentType())
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
data, _ := io.ReadAll(res.Body)
fmt.Println(string(data))
}
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.kloo.li/v1/links"))
.header("Authorization", "Bearer {api_key}")
.header("Content-Type", "application/x-www-form-urlencoded")
.method("POST", HttpRequest.BodyPublishers.ofString("type=link&is_bulk=1&location_urls=https://example.com/a\nhttps://example.com/b"))
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
using var client = new HttpClient();
client.DefaultRequestHeaders.Add("Authorization", "Bearer {api_key}");
var content = new FormUrlEncodedContent(new Dictionary<string, string> { { "type", "link" }, { "is_bulk", "1" }, { "location_urls", "https://example.com/a\nhttps://example.com/b" } });
var request = new HttpRequestMessage(HttpMethod.Post, "https://api.kloo.li/v1/links") { Content = content };
var response = await client.SendAsync(request);
Console.WriteLine(await response.Content.ReadAsStringAsync());
require 'net/http'
require 'uri'
uri = URI('https://api.kloo.li/v1/links')
req = Net::HTTP::Post.new(uri)
req['Authorization'] = 'Bearer {api_key}'
req.set_form_data('type' => 'link', 'is_bulk' => '1', 'location_urls' => 'https://example.com/a\nhttps://example.com/b')
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) { |http| http.request(req) }
puts res.body
{
"data": {
"id": 1
}
}
⌘I

