NAV
Wallpapers.ai
shell python php javascript

Муқаддима

Хуш омадед ба API платформаи Wallpapers.ai!

Ҳар як хусусият барои кӯмак расонидан ба корбарони мо тарҳрезӣ шудааст, ки бо AI дар системаи Wallpapers.ai деворҳои девориро осонтар созанд.

Барои гирифтани калиди API-и худ лутфан ба саҳифаи ҳисоб равед.

URL Асосии пешфарз

URL-и пешфарз барои API Wallpapers.ai ин аст: https://api.wallpapers.ai/v1/

Эзоҳ: бо сабабҳои амниятӣ, ҳама API-ҳои TLDWai.com танҳо тавассути HTTPS хидмат мекунанд.

Иҷозатнома

Барои истифодаи API Wallpapers.ai, ба шумо калиди API лозим аст, ки ба ҳисоби шумо пайваст аст.

Арзиши авторизатсия бояд дар дархости сарлавҳаҳо фиристода шавад.

Authorization: <api_key>

Эҷоди обои

 import requests
import time
import shutil
import json

headers = {"Authorization": "api_key"}
params = {
    "terms": "харгӯш ба мактаб рафтан, санъати тату услуби ҷоҳил",
    "dimension": "desktop",
}
base_api_url = "https://api.wallpapers.ai"
api_url = f"{base_api_url}/v1"


def download_file(url, local_filename):
    url = f"{base_api_url}/{url}"
    with requests.get(url, stream=True) as r:
        with open(local_filename, "wb") as f:
            shutil.copyfileobj(r.raw, f)
    return local_filename


def convert_files(api_url, params, headers):
    r = requests.post(
        url=f"{api_url}/create-wallpaper/",
        json=params,
        headers=headers
    )
    return r.json()


def get_results(params):
    if params.get("error"):
        print(params)
        return

    r = requests.post(
        url=f"{api_url}/results/",
        data=params
    )
    data = r.json()
    finished = data.get("finished")

    while not finished:
        if int(data.get("queue_count")) > 0:
            print("queue: %s" % data.get("queue_count"))

        time.sleep(5)
        results = get_results(params)
        results = json.dumps(results)

        if results:
            break

    if finished:
        for f in data.get("files"):
            print(f.get("url"))
            download_file("%s" % f.get("url"), "%s" % f.get("filename"))
        return {"finished": "files downloaded"}
    return r.json()


get_results(convert_files(api_url, params, headers))
Create image

curl -X POST \
  https://api.wallpapers.ai/v1/create-wallpaper/ \
  -H 'Authorization: api_key' \
  -H 'Content-Type: application/json' \
  -d '{
    "terms": "харгӯш ба мактаб рафтан, санъати тату услуби ҷоҳил",
    "dimension": "desktop",
}'


Ҷавоб

curl -X POST \
  https://api.wallpapers.ai/v1/results/ \
  -F 'uuid=response_uuid'
<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ERROR | E_PARSE);

$headers = array("Authorization: api_key");
$file_list = ['/test_files/test.jpeg'];
$api_url = "https://api.wallpapers.ai/v1/edit-image/";
$results_url = "https://api.wallpapers.ai/v1/results/";

function download_file($url, $filename){
    $curl = curl_init();
    $url = "https://api.wallpapers.ai" . $url;
    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($curl, CURLOPT_SSLVERSION, 3);
    $data = curl_exec($curl);
    $error = curl_error($curl);
    curl_close ($curl);
    # Make sure destionation path exists
    $destination_path = "/path/to/result/files/";
    $destination_file = fopen($destination_path . $filename, "w+");
    fwrite($destination_file, $data);
    fclose($destination_file);
}

function convert_files($file_list, $headers, $api_url) {
    $post_data['terms'] = 'харгӯш ба мактаб рафтан, санъати тату услуби ҷоҳил';
    $post_data['dimension'] = 'desktop';

    foreach ($file_list as $index => $file) {
        $post_data['file[' . $index . ']'] = curl_file_create(
            realpath($file),
            mime_content_type($file),
            basename($file)
        );
    }

    $curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, $api_url);
    curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
    curl_setopt($curl, CURLOPT_POST, 1);
    curl_setopt($curl, CURLOPT_POSTFIELDS, $post_data);
    curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
    $content = curl_exec($curl);
    curl_close($curl);

    return json_decode($content);
}

function get_results($params, $results_url, $headers) {
    if ($params->error) {
        print_r($params->error);
        return;
    }

    $curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, $results_url);
    curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
    curl_setopt($curl, CURLOPT_POST, 1);
    curl_setopt($curl, CURLOPT_POSTFIELDS, json_decode(json_encode($params), true));
    curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
    $content = json_decode(curl_exec($curl));
    curl_close($curl);

    if ($content->finished == false) {
        if (intval($content->queue_count) > 0) {
            print_r("queue: $content->queue_count");
        }

        sleep(5);
        $results = get_results($params, $results_url, $headers);
        return;
    }

    foreach ($content->files as $f) {
        download_file($f->url, $f->filename);
    }
}

$resp = convert_files($file_list, $headers, $api_url);
get_results($resp, $results_url, $headers);
?>
const request = require('request');
const fs = require('fs');

let file_list = ['/test_files/sala.png']
const api_url = 'https://api.wallpapers.ai/v1/create-wallpaper/'
const results_url = 'https://api.wallpapers.ai/v1/results/'

function convertFiles(file_list) {
    let data = {
        "terms": "харгӯш ба мактаб рафтан, санъати тату услуби ҷоҳил",
        "dimension": "desktop",
    };

    for (var i = 0; i < file_list.length; i++) {
        formData['files'] = fs.createReadStream(file_list[i]);
    }

    request({
        url: api_url,
        method: 'post',
        json: data,
        headers: {
            "Authorization": "api_key",
            "Content-Type": "application/json",
        }
    }, function (err, res, body) {
        if (err) {
            console.error(err);
            return err;
        }
        getResults(JSON.parse(body));
    });
}

function getResults(data) {
    if (data.error) {
        console.error(data);
        return data.error;
    }
    request({
        url: results_url,
        method: 'post',
        formData: data
    }, function (e, r, body) {
        response = JSON.parse(body);
        console.log(response);
        if (!response.finished) {
            setTimeout(
                function () {
                    getResults(data);
                }, 1000
            );
        }

        console.log(response);
    })
}

convertFiles(file_list);

Reponse

/path/to/local/result.jpg

Дархости HTTP

POST /create-wallpaper/

Параметрҳои дархост

Параметр Навъи Тавсифи
terms Талаб карда мешавад Ба AI бигӯед, ки шумо кадом обои эҷод кардан мехоҳед. харгӯш ба мактаб рафтан, санъати тату услуби ҷоҳил
dimension Ихтиёрӣ Барои мизи корӣ ё телефонҳо обои обои гиред, агар холӣ ё нул бошад, арзиши "desktop" пешфарз аст. desktop ё phone