Документація API

Для ціноутворення API натисніть тут

API Pintere.com розміщено на pintere.com .


Аутентифікація

Щоб отримати доступ до API Pintere.com, ви повинні додати свій унікальний ключ API. Ви можете отримати ключ API, зареєструвавшись за допомогою своєї електронної адреси. Будь ласка, пам’ятайте про конфіденційність свого ключа API.

Автентифікація за допомогою API обробляється через заголовки HTTP. Для всіх запитів потрібен заголовок авторизації, який містить ваш ключ API у форматі ключа: YOUR_API_KEY , де YOUR_API_KEY – це ключ, доступний на сторінці вашого облікового запису.

З міркувань безпеки всі запити мають надсилатися через зашифроване з’єднання HTTPS, щоб захистити ваші дані під час передачі.


Завантажте будь-яку URL-адресу галереї зображень

Завантажте будь-яку URL-адресу галереї зображень за допомогою нашого API, включаючи відео в Pinterest, ролики, фотографії, IGTV і каруселі

приклад:

Замініть YOUR_API_KEY на свій унікальний ключ API (знайдений на сторінці облікового запису Pintere.com) і замініть «URL» на URL-адресу ресурсу:

from time import sleep

import requests

headers = {"Authorization": "API_KEY"}
r = requests.post(
    url="https://pintere.com/api/v1/submit/",
    headers=headers,
    data={
        "url": "URL"
    }
)

if r.status_code == 200:
    response = r.json()
    uuid = response.get("uuid")

    results = None

    while not results:
        r = requests.post(
            url="https://pintere.com/api/v1/results/",
            headers=headers,
            data={
                "uuid": uuid
            }
        )

        if r.status_code == 200:
            response = r.json()

            if response.get("loading"):
                print("processing ...")
                sleep(5)
                continue

            results = response.get("results")

            print("Download links")
            print(results)
            break
        else:
            print("Error getting result:")
            print(f"Status code: {r.status_code}")
            print(f"Response: {r.text}")

            break

else:
    print("Error submitting your URL:")
    print(f"Status code: {r.status_code}")
    print(f"Response: {r.text}")
const axios = require('axios');

const sleep = ms => new Promise(resolve => setTimeout(resolve, ms));

async function submitAndFetchResults() {
    const headers = {
        "Authorization": "API_KEY",
        "Content-Type": "application/x-www-form-urlencoded"
    };

    try {
        // Submit URL
        const submitResponse = await axios.post(
            'https://pintere.com/api/v1/submit/',
            new URLSearchParams({
                url: "URL"
            }),
            { headers }
        );

        if (submitResponse.status === 200) {
            const uuid = submitResponse.data.uuid;
            let results = null;

            while (!results) {
                const resultResponse = await axios.post(
                    'https://pintere.com/api/v1/results/',
                    new URLSearchParams({
                        uuid: uuid
                    }),
                    { headers }
                );

                if (resultResponse.status === 200) {
                    if (resultResponse.data.loading) {
                        console.log('processing ...');
                        await sleep(5000);
                        continue;
                    }

                    results = resultResponse.data.results;
                    console.log('Download links');
                    console.log(results);
                    break;
                } else {
                    console.log('Error getting result:');
                    console.log(`Status code: ${resultResponse.status}`);
                    console.log(`Response: ${resultResponse.data}`);
                    break;
                }
            }

        } else {
            console.log('Error submitting your URL:');
            console.log(`Status code: ${submitResponse.status}`);
            console.log(`Response: ${submitResponse.data}`);
        }

    } catch (error) {
        if (error.response) {
            console.error('Error response from server:');
            console.error(`Status code: ${error.response.status}`);
            console.error(error.response.data);
        } else {
            console.error('An error occurred:', error.message);
        }
    }
}

submitAndFetchResults();
<?php

function sleep_ms($milliseconds) {
    usleep($milliseconds * 1000); // usleep usa microsegundos
}

function postRequest($url, $headers, $data) {
    $ch = curl_init($url);

    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
    curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));

    $response = curl_exec($ch);
    $statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);

    curl_close($ch);

    return [$statusCode, $response];
}

// Setup
$apiKey = "API_KEY";
$headers = [
    "Authorization: $apiKey",
    "Content-Type: application/x-www-form-urlencoded"
];

// Submit URL
list($statusCode, $responseBody) = postRequest(
    "https://pintere.com/api/v1/submit/",
    $headers,
    ["url" => "URL"]
);

if ($statusCode === 200) {
    $response = json_decode($responseBody, true);
    $uuid = $response['uuid'] ?? null;
    $results = null;

    while (!$results) {
        list($resultStatusCode, $resultBody) = postRequest(
            "https://pintere.com/api/v1/results/",
            $headers,
            ["uuid" => $uuid]
        );

        if ($resultStatusCode === 200) {
            $resultData = json_decode($resultBody, true);

            if (!empty($resultData['loading'])) {
                echo "processing ...\n";
                sleep_ms(5000); // 5 segundos
                continue;
            }

            $results = $resultData['results'] ?? null;

            echo "Download links:\n";
            print_r($results);
            break;
        } else {
            echo "Error getting result:\n";
            echo "Status code: $resultStatusCode\n";
            echo "Response: $resultBody\n";
            break;
        }
    }

} else {
    echo "Error submitting your URL:\n";
    echo "Status code: $statusCode\n";
    echo "Response: $responseBody\n";
}

?>
// Submit URL
// You will get the response UUID
curl -X POST "https://pintere.com/api/v1/submit/" \
  -H "Authorization: API_KEY" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "url=URL"

// Fetch results
curl -X POST "https://pintere.com/api/v1/results/" \
  -H "Authorization: API_KEY" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "uuid=UUID"

API Політика конфіденційності Умови обслуговування Зв'яжіться з нами BlueSky Слідкуйте за нами на BlueSky

2025 Pintere LLC | Зроблено nadermx