Check a draft
curl 'https://api.xholic.ai/v1/drafts/check?text=Shipping+the+API+today' \ -H "Authorization: Bearer $XHOLIC_API_KEY"xholic drafts check --text 'Shipping the API today'{ "name": "check_draft", "arguments": { "text": "Shipping the API today" }}const response = await fetch("https://api.xholic.ai/v1/drafts/check?text=Shipping+the+API+today", { headers: { Authorization: `Bearer ${process.env.XHOLIC_API_KEY}` },});const result = await response.json();console.log(result.summary);import axios from "axios";
const { data } = await axios.get("https://api.xholic.ai/v1/drafts/check", { params: { "text": "Shipping the API today" }, headers: { Authorization: `Bearer ${process.env.XHOLIC_API_KEY}` },});console.log(data.summary);import osimport requests
response = requests.get( "https://api.xholic.ai/v1/drafts/check", headers={"Authorization": f"Bearer {os.environ['XHOLIC_API_KEY']}"}, params={ "text": "Shipping the API today" },)print(response.json()["summary"])package main
import ( "fmt" "io" "net/http" "os")
func main() { req, _ := http.NewRequest("GET", "https://api.xholic.ai/v1/drafts/check?text=Shipping+the+API+today", nil) req.Header.Set("Authorization", "Bearer "+os.Getenv("XHOLIC_API_KEY")) res, err := http.DefaultClient.Do(req) if err != nil { panic(err) } defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body))}<?php$ch = curl_init("https://api.xholic.ai/v1/drafts/check?text=Shipping+the+API+today");curl_setopt_array($ch, [ CURLOPT_RETURNTRANSFER => true, CURLOPT_HTTPHEADER => ['Authorization: Bearer ' . getenv('XHOLIC_API_KEY')],]);$result = json_decode(curl_exec($ch), true);echo $result['summary'];require "net/http"require "json"
uri = URI("https://api.xholic.ai/v1/drafts/check?text=Shipping+the+API+today")req = Net::HTTP::Get.new(uri)req["Authorization"] = "Bearer #{ENV.fetch("XHOLIC_API_KEY")}"res = Net::HTTP.start(uri.host, uri.port, use_ssl: true) { |http| http.request(req) }puts JSON.parse(res.body)["summary"]Free checks before posting: length for the account’s X tier, links (Xholic drafts never contain links), near-copies of a source post, repeats of what the account posted recently, and thread structure. Run it on every draft you write; fix what it flags.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Query Parameters
Section titled “Query Parameters”Example
Shipping the API todayFor a thread: every part in order, starting with the same first post as text.
For a thread: every part in order, starting with the same first post as text.
The post you built from, to catch near-copies.
The post you built from, to catch near-copies.
X account to act on, as @handle. Leave it out to use the connection’s default account.
X account to act on, as @handle. Leave it out to use the connection’s default account.
Responses
Section titled “Responses”Success
object
One or two readable sentences about the result.
The result. Its shape depends on the action.
object
Example
{ "ok": true}default
Section titled “default”Error
object
object
Example
{ "ok": false, "error": { "code": "UNAUTHENTICATED", "scope": "account" }}