List Integrations
List the ATS integrations Kini offers. Use the slug of an entry as the ats value when creating or updating a company, and as integration in Compose Company Integration.
Only publicly offered integrations are returned, ordered by name. The response is a plain array — this endpoint is not paginated.
Requires a partner-scoped API key.
curl -X GET "https://api.getkini.com/integrations/" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN"
import requests
import json
url = "https://api.getkini.com/integrations/"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_TOKEN"
}
response = requests.get(url, headers=headers)
print(response.json())
const response = await fetch("https://api.getkini.com/integrations/", {
method: "GET",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_TOKEN"
}
});
const data = await response.json();
console.log(data);
package main
import (
"fmt"
"net/http"
)
func main() {
req, err := http.NewRequest("GET", "https://api.getkini.com/integrations/", nil)
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Authorization", "Bearer YOUR_API_TOKEN")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
fmt.Println("Response Status:", resp.Status)
}
require 'net/http'
require 'json'
uri = URI('https://api.getkini.com/integrations/')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Get.new(uri)
request['Content-Type'] = 'application/json'
request['Authorization'] = 'Bearer YOUR_API_TOKEN'
response = http.request(request)
puts response.body
[
{
"id": 17,
"slug": "personio",
"name": "Personio",
"logo": "https://storage.googleapis.com/prod-getkini-public-static-files/ats-logos/personio.png",
"is_beta": false,
"is_visible": true,
"job_sync_supported": true,
"candidate_sync_supported": true,
"help_article_url": "https://scribehow.com/embed/Anleitung_zur_Generierung_der_Personio_API_Keys__5r5b-PHIScGj-y7tH5FvuA?skipIntro=true&removeLogo=true",
"external_documentation_url": "https://developer.personio.de/docs/getting-started-with-the-personio-api",
"info_text": null,
"config": {}
}
]
{
"error": "Forbidden",
"message": "You don't have permission to access this resource",
"code": 403
}
/integrations/
Target server for requests. Edit to use your own host.
Authenticate every request with an API key from the Kini Partner App, sent as Authorization: Bearer <your_api_key>.
Authorization: Bearer <your_api_key>.Request Preview
Response
Response will appear here after sending the request
Authentication
Bearer token. Authenticate every request with an API key from the Kini Partner App, sent as Authorization: Bearer \<your_api_key\>.
Responses
Kini ID of the integration
Unique slug of the integration. This is the value you pass as ats when creating or updating a company, and as integration in Compose Company Integration.
Display name of the integration
Logo URL of the integration
Whether the integration is still in beta
Whether the integration is offered publicly. Only visible integrations are returned by this endpoint, so this is always true here.
Whether jobs can be synchronised from this integration
Whether candidates can be synchronised to this integration
Kini walkthrough for obtaining the integration's credentials. Safe to surface to the company admin who has to fill in the setup form.
The vendor's own API documentation
Free-text note about the integration, shown during setup
Integration-level default configuration. Usually empty.