{
  "openapi": "3.1.0",
  "info": {
    "title": "Zapi — Artificial Intelligence",
    "description": "Every Artificial Intelligence endpoint on Zapi. Rendered catalog: https://preview.zapi.ink/category/ai",
    "version": "1.0.0",
    "license": {
      "name": "Zapi Terms of Service",
      "url": "https://preview.zapi.ink/terms"
    }
  },
  "servers": [
    {
      "url": "https://api-preview.zapi.ink"
    }
  ],
  "security": [
    {
      "ApiKeyAuth": []
    }
  ],
  "components": {
    "securitySchemes": {
      "ApiKeyAuth": {
        "type": "apiKey",
        "in": "header",
        "name": "x-api-key"
      }
    },
    "schemas": {
      "Envelope": {
        "type": "object",
        "required": [
          "status",
          "message"
        ],
        "properties": {
          "status": {
            "type": "string",
            "enum": [
              "success",
              "error"
            ]
          },
          "message": {
            "type": "string"
          },
          "content": {}
        }
      }
    },
    "responses": {
      "Error": {
        "description": "Invalid key, rate limit, or upstream failure",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Envelope"
            }
          }
        }
      }
    }
  },
  "externalDocs": {
    "url": "https://preview.zapi.ink/category/ai/llms.txt"
  },
  "paths": {
    "/v1/ai:bypass-ai/humanize": {
      "post": {
        "operationId": "ai_bypass_ai_humanize",
        "summary": "Humanize Text",
        "description": "",
        "tags": [
          "Bypass AI (writecream.com)"
        ],
        "externalDocs": {
          "url": "https://preview.zapi.ink/api/ai/bypass-ai#reference-humanize"
        },
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Envelope"
                },
                "example": {
                  "status": "success",
                  "message": "Success",
                  "content": {
                    "input": "Zapi adalah platform Public REST API yang menyediakan akses ke berbagai layanan scraping dan AI tools secara terpadu, dengan dukungan key-based authentication, rate limiting, dan analytics.",
                    "output": "Zapi adalah platform REST API publik yang menghubungkan layanan scraping dan AI lewat satu akses. Platform ini memakai autentikasi berbasis key, membatasi laju permintaan, dan menyediakan analytics.",
                    "inputLength": 189,
                    "outputLength": 198
                  }
                }
              }
            }
          },
          "4XX": {
            "$ref": "#/components/responses/Error"
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "text"
                ],
                "properties": {
                  "text": {
                    "type": "string",
                    "example": "Zapi adalah platform Public REST API yang menyediakan akses ke berbagai layanan scraping dan AI tools secara terpadu."
                  }
                }
              }
            }
          }
        }
      }
    },
    "/v1/ai:copilot/chat": {
      "post": {
        "operationId": "ai_copilot_chat",
        "summary": "Chat Completion",
        "description": "",
        "tags": [
          "Copilot AI"
        ],
        "externalDocs": {
          "url": "https://preview.zapi.ink/api/ai/copilot#reference-chat"
        },
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Envelope"
                },
                "example": {
                  "status": "success",
                  "message": "Success",
                  "content": {
                    "id": "chatcmpl-Zb3136hUQuzzchqzccqsC",
                    "model": "copilot",
                    "usage": {
                      "total_tokens": 62,
                      "prompt_tokens": 36,
                      "completion_tokens": 26
                    },
                    "object": "chat.completion",
                    "choices": [
                      {
                        "index": 0,
                        "message": {
                          "role": "assistant",
                          "content": "Halo, aku Zapi AI, spesialis platform Zapi yang fokus pada integrasi dan pemanfaatan Public Rest API."
                        },
                        "finish_reason": "stop"
                      }
                    ],
                    "created": 1779425383
                  }
                }
              }
            }
          },
          "4XX": {
            "$ref": "#/components/responses/Error"
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "messages"
                ],
                "properties": {
                  "messages": {
                    "type": "array",
                    "example": [
                      {
                        "role": "system",
                        "content": "Kamu adalah Zapi AI, spesialis platform Zapi - Public Rest API"
                      },
                      {
                        "role": "user",
                        "content": "Halo, perkenalkan dirimu dalam 1 kalimat."
                      }
                    ]
                  },
                  "stream": {
                    "type": "boolean"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/v1/ai:dolphin/chat": {
      "post": {
        "operationId": "ai_dolphin_chat",
        "summary": "Chat Completion",
        "description": "",
        "tags": [
          "Dolphin AI"
        ],
        "externalDocs": {
          "url": "https://preview.zapi.ink/api/ai/dolphin#reference-chat"
        },
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Envelope"
                },
                "example": {
                  "status": "success",
                  "message": "Success",
                  "content": {
                    "id": "chatcmpl-s4mi5m98ki",
                    "model": "dolphinserver:24B",
                    "usage": {
                      "total_tokens": 42,
                      "prompt_tokens": 26,
                      "completion_tokens": 16
                    },
                    "object": "chat.completion",
                    "choices": [
                      {
                        "index": 0,
                        "message": {
                          "role": "assistant",
                          "content": "Halo, saya Zapi AI, spesialis platform Zapi - Public Rest API."
                        },
                        "finish_reason": "stop"
                      }
                    ],
                    "created": 1779434368
                  }
                }
              }
            }
          },
          "4XX": {
            "$ref": "#/components/responses/Error"
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "messages"
                ],
                "properties": {
                  "messages": {
                    "type": "array",
                    "example": [
                      {
                        "role": "system",
                        "content": "Kamu adalah Zapi AI, spesialis platform Zapi - Public Rest API"
                      },
                      {
                        "role": "user",
                        "content": "Halo, perkenalkan dirimu dalam 1 kalimat."
                      }
                    ]
                  },
                  "stream": {
                    "type": "boolean"
                  },
                  "template": {
                    "type": "string",
                    "enum": [
                      "logical",
                      "creative",
                      "summarize",
                      "code-beginner",
                      "code-advanced"
                    ],
                    "default": "logical"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/v1/ai:nsfw-checker/check": {
      "post": {
        "operationId": "ai_nsfw_checker_check",
        "summary": "Check Image",
        "description": "",
        "tags": [
          "NSFW Checker (Nyckel)"
        ],
        "externalDocs": {
          "url": "https://preview.zapi.ink/api/ai/nsfw-checker#reference-check"
        },
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Envelope"
                },
                "example": {
                  "status": "success",
                  "message": "Success",
                  "content": {
                    "raw": {
                      "labelId": "label_n2ian8w116lhxuyk",
                      "labelName": "Not Porn",
                      "confidence": 0.9992963344772202
                    },
                    "isNsfw": false,
                    "fileName": "96fc0fc145454ad9457b51e17ae68a55.jpg",
                    "fileSize": 67105,
                    "mimeType": "image/jpeg",
                    "labelName": "Not Porn",
                    "confidence": 0.9992963344772202
                  }
                }
              }
            }
          },
          "4XX": {
            "$ref": "#/components/responses/Error"
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "image"
                ],
                "properties": {
                  "image": {
                    "type": "string",
                    "format": "binary",
                    "example": "photo.jpg"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/v1/ai:perplexity/chat": {
      "post": {
        "operationId": "ai_perplexity_chat",
        "summary": "Chat Completion",
        "description": "",
        "tags": [
          "Perplexity AI"
        ],
        "externalDocs": {
          "url": "https://preview.zapi.ink/api/ai/perplexity#reference-chat"
        },
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Envelope"
                },
                "example": {
                  "status": "success",
                  "message": "Success",
                  "content": "{\"id\": \"pplxsrch-22852bb2\", \"mode\": \"concise\", \"query\": \"carikan berita terbaru yang ada di indonesia!\", \"answer\": \"Berita terbaru di Indonesia saat ini bisa dilihat dari beberapa sumber terkemuka berikut. Saya rangkum inti-inti yang sedang ramai diberitakan:\\\n\\\n- Politik dan hukum:\\\n  - Berbagai pemberitaan terkait dinamika kebijakan nasional, potensi perubahan regulasi, dan perkembangan kasus hukum besar sering muncul setiap hari melalui situs berita nasional seperti Kompas, CNN Indonesia, Merdeka, dan Detik. Pastikan cek rilis resmi dan pernyataan pemerintah untuk konteks yang akurat.[11][14][17]\\\n- Ekonomi dan bisnis:\\\n  - Update seputar kondisi ekonomi Indonesia, investasi, serta laporan perusahaan publik biasanya terlihat di Merdeka, Liputan6, dan Detik News. Untuk analisis data resmi, lihat sumber pemerintah dan laporan keuangan perusahaan publik.[10][13][14]\\\n- Peristiwa terkini:\\\n  - Berita peristiwa, kecelakaan, dan kejadian kriminal sering dipublikasikan harian di DetikNews, Liputan6, dan CNN Indonesia. Jika Anda ingin berita spesifik (misalnya soal suatu daerah atau topik tertentu), beritahu saya agar bisa difokuskan.[14][15][11]\\\n\\\nCara mendapatkan berita terbaru yang relevan dengan kebutuhan Anda:\\\n- Tentukan topik utama: politik, ekonomi, teknologi, olahraga, atau hiburan.\\\n- Tentukan wilayah fokus jika Anda perlu berita Indonesia secara lokal (mis. Jawa, Sumatera, atau nasional).\\\n- Beri tahu rentang waktu yang diinginkan (hari ini, 24 jam terakhir, atau minggu ini).\\\n\\\nJika Anda ingin, saya bisa:\\\n- Mengumpulkan 5-10 berita terpopuler hari ini dari sumber-sumber terpercaya yang Anda pilih.\\\n- Menyajikan ringkasan 1-2 kalimat untuk setiap artikel, beserta tautan asli.\\\n- Membuat pilihan artikel terfavorit berdasarkan topik yang Anda minati (misalnya kebijakan baru, dampak ekonomi, atau peristiwa regional).\\\n\\\nBeritahu saya preferensi Anda (topik, wilayah, rentang waktu), nanti saya akan siapkan rangkuman yang langsung bisa Anda baca.\", \"sources\": [\"web\", \"scholar\", \"social\", \"edgar\"], \"stepTypes\": [\"INITIAL_QUERY\", \"SEARCH_WEB\", \"SEARCH_RESULTS\", \"FINAL\"], \"searchResults\": [{\"url\": \"https://journal.poltekim.ac.id/jlbp/article/view/694\", \"name\": \"URGENSI PENEGAKAN HUKUM KEIMIGRASIAN MELALUI PEMBAHARUAN DESAIN PASPOR NEGARA REPUBLIK INDONESIA DAN FITUR KEAMANAN TERBARU\", \"snippet\": \"Paspor sebagai dokumen perjalanan resmi merupakan salah satu instrumen penting dalam sistem keimigrasian suatu negara. Pembaharuan desain paspor Indonesia yang diluncurkan pada 17 Agustus 2024 mencerminkan upaya pemerintah dalam meningkatkan keamanan dan integritas dokumen perjalanan. Dengan penerapan tema wastra yang mencerminkan kekayaan budaya Indonesia, serta penerapan fitur keamanan terbaru, paspor ini diharapkan dapat meminimalisir pemalsuan dan penyalahgunaan. Penelitian ini bertujuan untuk menganalisis perubahan desain paspor Indonesia dari perspektif penegakan hukum keimigrasian dan untuk mengevaluasi efektivitas fitur keamanan baru dalam melindungi identitas Warga Negara Indonesia (WNI). Metode yang digunakan dalam penelitian ini adalah analisis kualitatif dengan mengumpulkan data dari berbagai sumber, termasuk literatur hukum, berita, dan wawancara dengan ahli keimigrasian. Hasil penelitian menunjukkan bahwa perubahan ini tidak hanya merupakan langkah simbolis, tetapi juga membawa implikasi nyata terhadap sistem keimigrasian dan perlindungan identitas.\"}, {\"url\": \"https://jtiik.ub.ac.id/index.php/jtiik/article/view/8719\", \"name\": \"BIJAKAWEB: Platform Berbasis Web Untuk Deteksi Hate Speech Pada Komentar Berita Bahasa Indonesia\", \"snippet\": \"Jumlah pengguna internet di Indonesia telah mencapai lebih dari 221 juta jiwa, mayoritas penduduk Indonesia menggunakan internet dengan tujuan agar tetap update dengan berita terbaru. Detik, Kompas, dan CNNIndonesia merupakan portal berita daring favorit sebagian besar penduduk Indonesia. Fitur komentar pada portal berita yang ada saat ini memungkinkan pembaca berita dapat memberikan umpan-balik terhadap berita, namun sering kali tidak terkontrol, memicu munculnya ujaran kebencian. Meskipun tersedia fitur moderasi seperti \\\"Laporkan\\\", pendekatan manual ini sering kali lambat dan kurang efektif. Penelitian ini bertujuan untuk mengembangkan sistem deteksi otomatis terhadap ujaran kebencian pada komentar berita daring. Proses penelitian dimulai dengan scraping lebih dari 15 ribu data komentar dari portal berita menggunakan library Python, dilanjutkan dengan pelabelan manual ke dalam dua kategori: “Hate” dan “Non-Hate,” dengan jumlah data yang berhasil dilabeli sebanyak 11.478, yang dibagi ke dalam dua kelas seimbang. Dataset yang telah berlabel kemudian digunakan untuk fine-tuning model IndoBERT selama 14 epoch, dengan akurasi terbaik sebesar 95,91% yang dicapai pada epoch ke-14. Model dengan akurasi terbaik diimplementasikan pada platform web yang diberi nama BijakaWeb (Web Bijak Dalam Berkomentar) dengan menggunakan framework Django. Penelitian ini menghasilkan beberapa kontribusi penting, termasuk tersedianya dataset baru untuk penelitian relevan, model fine-tuned IndoBERT ...\"}, {\"url\": \"https://www.semanticscholar.org/paper/6c5f469f9266ee47a6fae767cd9e114b6edaa9d0\", \"name\": \"Demo AHOK, 4 November Jakarta di serbu Ormas Islam Indonesia | Berita Harian, Informasi Terbaru, Terkini Terpercaya\", \"snippet\": \"\"}, {\"url\": \"https://www.semanticscholar.org/paper/fe6f589beef967cbe8de1a5c707b325bfef09d0d\", \"name\": \"Renungkan, Hal ini Kadang Membuat Kita Ingin Keluar dari Indonesia | Berita Harian, Informasi Terbaru, Terkini Terpercaya\", \"snippet\": \"\"}, {\"url\": \"https://www.semanticscholar.org/paper/f5a98eb883216ea7690d1158afec45ce6d19cd29\", \"name\": \"Video: Pemuda Pancasila bubarkan aksi Makar warga Papua di Surabaya | Liputan Indonesia berita harian, Kabar hari ini, terbaru terkini, hingga dunia\", \"snippet\": \"\"}, {\"url\": \"https://www.semanticscholar.org/paper/da84748b905883046761b34abb5146bb8a586210\", \"name\": \"Pakde Karwo Usulkan Penyederhanaan Proses Pengajuan DAK | Liputan Indonesia berita harian, Kabar hari ini, terbaru terkini, hingga dunia\", \"snippet\": \"\"}, {\"url\": \"https://www.semanticscholar.org/paper/8f8784ba6f174e9e4975dddd6ae2e7fcec03caf2\", \"name\": \"PAMMI Adakan Bakti Sosial dengan 500 Anak Yatim Piatu Di Surabaya | Berita Harian, Informasi Terbaru, Terkini Terpercaya\", \"snippet\": \"\"}, {\"url\": \"https://www.semanticscholar.org/paper/3a5062e2371c1079e50db6f91993f8f206e4acc4\", \"name\": \"TUMBAL - The Dark Offering Game Horor Hadir Di Play Store | Berita Harian, Informasi Terbaru, Terkini Terpercaya\", \"snippet\": \"\"}, {\"url\": \"https://indonesia.travel/id/id/news-update\", \"name\": \"Berita Terbaru\", \"snippet\": \"\"}, {\"url\": \"https://www.merdeka.com\", \"name\": \"Berita Terkini, Kabar Terbaru Hari Ini Indonesia dan Internasional - merdeka.com\", \"snippet\": \"merdeka, com, Berita, Politik, Ekonomi, Hukum, Kriminal, Olahraga, Sepak, Bola, Teknologi, Otomotif, Artis, di, Indonesia, dan, Dunia\"}, {\"url\": \"https://www.cnnindonesia.com/nasional\", \"name\": \"Berita Terkini Nasional - CNN Indonesia\", \"snippet\": \"CNNIndonesia.com menyajikan berita terbaru, terkini Indonesia, dunia, seputar politik, hukum kriminal, peristiwa\"}, {\"url\": \"https://liveberita.com\", \"name\": \"berita terbaru Indonesia, analisis | Latest breaking Indonesian news ...\", \"snippet\": \"\"}, {\"url\": \"https://www.liputan6.com\", \"name\": \"Berita Terkini, Kabar Terbaru Hari Ini Indonesia dan Dunia - Liputan6.com\", \"snippet\": \"Berita hari ini Indonesia dan Dunia, kabar terbaru terkini. Situs berita terpercaya dari politik, peristiwa, bisnis, bola, tekno hingga gosip artis\"}, {\"url\": \"https://news.detik.com/berita/\", \"name\": \"Berita peristiwa dan politik terbaru di Indonesia dan luar negeri\", \"snippet\": \"Ulasan berita hari ini dari peristiwa, kecelakaan, kriminal, hukum, berita unik, Politik, dan liputan khusus di Indonesia dan Internasional\"}, {\"url\": \"https://news.detik.com\", \"name\": \"detikNews - Berita hari ini di Indonesia dan Internasional\", \"snippet\": \"Info berita terbaru hari ini baik peristiwa, kecelakaan, kriminal, hukum, berita unik, Politik, dan liputan khusus di Indonesia dan Internasional\"}, {\"url\": \"https://diberita.com\", \"name\": \"diberita.com - Bacaan Masyarakat Indonesia\", \"snippet\": \"Bacaan Masyarakat Indonesia\"}, {\"url\": \"https://www.kompas.com\", \"name\": \"Berita Terkini Hari Ini, Kabar Akurat Terpercaya - Kompas.com\", \"snippet\": \"Kompas.com - Berita Indonesia dan Dunia Terkini Hari Ini, Kabar Harian Terbaru Terpercaya Terlengkap Seputar Politik, Ekonomi, Travel, Teknologi, Otomotif, Bola\"}, {\"url\": \"https://www.antaranews.com/news\", \"name\": \"Berita terkini dan terpercaya Indonesia - ANTARA News\", \"snippet\": \"Berita terkini dan terpercaya dari Indonesia dan dunia seputar politik, ekonomi, bisnis, humaniora, gaya hidup, hiburan, sepak bola, otomotif\"}]}"
                }
              }
            }
          },
          "4XX": {
            "$ref": "#/components/responses/Error"
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "query"
                ],
                "properties": {
                  "query": {
                    "type": "string",
                    "example": "carikan berita terbaru yang ada di indonesia!"
                  },
                  "mode": {
                    "type": "string",
                    "enum": [
                      "concise",
                      "copilot"
                    ],
                    "default": "concise"
                  },
                  "source_web": {
                    "type": "boolean",
                    "default": true
                  },
                  "source_academic": {
                    "type": "boolean",
                    "default": false
                  },
                  "source_social": {
                    "type": "boolean",
                    "default": false
                  },
                  "source_finance": {
                    "type": "boolean",
                    "default": false
                  },
                  "stream": {
                    "type": "boolean"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/v1/ai:qwen-tts/synthesize": {
      "post": {
        "operationId": "ai_qwen_tts_synthesize",
        "summary": "Synthesize",
        "description": "",
        "tags": [
          "Qwen TTS"
        ],
        "externalDocs": {
          "url": "https://preview.zapi.ink/api/ai/qwen-tts#reference-synthesize"
        },
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Envelope"
                },
                "example": {
                  "status": "success",
                  "message": "Success",
                  "content": {
                    "text": "Halo, selamat datang di Zapi. Public REST API untuk segala kebutuhan.",
                    "voice": "Sunny",
                    "format": "wav",
                    "audioUrl": "https://qwen-qwen-tts-demo.hf.space/gradio_api/file=/tmp/gradio/bbb32daa320fd92b69511a4ef35b370f56ec1024866ff66be9d8d46da7577508/tmp90mx5ccq.wav",
                    "sessionHash": "p15ci5igu1"
                  }
                }
              }
            }
          },
          "4XX": {
            "$ref": "#/components/responses/Error"
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "text"
                ],
                "properties": {
                  "text": {
                    "type": "string",
                    "example": "Halo, selamat datang di Zapi."
                  },
                  "voice": {
                    "type": "string",
                    "enum": [
                      "Dylan",
                      "Sunny",
                      "Jada",
                      "Cherry",
                      "Ethan",
                      "Serena",
                      "Chelsie"
                    ],
                    "default": "Sunny"
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}