API Tier1.shop
Połącz swoją usługę lub agenta AI: rejestracja, stawki, zamówienia, linki i status płatności poprzez jedno API. Dane klientów są dostępne wyłącznie za pomocą ich odwoływalnego klucza.
https://tier1.shop/wp-json/tier1-api/v1Pierwsze kroki
Utwórz klucz
Otwórz «API i połączenia» w panelu sterowania lub poproś o link do utworzenia klucza drogą mailową przez POST /api-key-requests.
Potwierdź e-mail
Agent wywołuje POST /registration-intents. Kliknij link w wiadomości e-mail, aby potwierdzić swój adres; dopiero wtedy konto i klucz zostaną utworzone. Telegram można dodać później.
Pierwsze zamówienie — pięć kroków
- Wybierz plan.
GET /catalog/tariffsiGET /balanceswyświetli aktualne ceny i dostępność. - Potwierdź szczegóły.Przed utworzeniem zamówienia uzgodnij ilość, adresy URL, teksty anchor oraz walutę z agentem.
- Pobierz link do płatności.
POST /checkout-intentszwróci jednorazowy adres URL; płatność jest przetwarzana wyłącznie na stronie internetowej. - Zweryfikuj płatność.
GET /checkout-intents/{id}wyświetli status i numer zamówienia WooCommerce. - Otwórz linki.
GET /orders/by-wc/{id}znajdzie zamówienia wewnętrzne;placement_progresswyświetli status realizacji.
/orders/by-wc/{id}, dla wewnętrznego ID użyj /orders/{id}.Autoryzacja
Prześlij klucz w nagłówku HTTPS. Nie wstawiaj go do adresu URL, publicznych promptów ani logów. Klucz można cofnąć w koncie; jego pełna treść jest wyświetlana tylko podczas tworzenia.
Authorization: Bearer t1c_sk_YOUR_KEYKluczowe uprawnienia (zakresy)8
profile:readProfil i status połączeniabalance:readSaldo usług i portfelaorders:readWyświetl zamówienialinks:readWyświetl linkicatalog:readKatalogi i stawkiorders:writeMasowe wypełnianie i wysyłanie zamówieńlinks:writeURL-e, kotwice, tekst otaczający i zgłoszeniecheckout:createTwórz bezpieczne linki płatnościKlucz nie pozwala agentowi na bezpośrednie pobieranie środków z portfela. W przypadku żądań mutujących, losowy Idempotency-Key od 8 do 128 znaków jest wymagane. Jeśli odpowiedź zostanie utracona, powtórz to samo zapytanie z tym samym kluczem; w przypadku nowej akcji utwórz nowy klucz.
Metody API
Metody są podzielone na 9 grupy. Otwórz odpowiednią w celu sprawdzenia parametrów i przykładu odpowiedzi; pełna umowa maszynowa znajduje się w OpenAPI JSON.
Discovery 2
GET/capabilitiesMożliwości API i aktualne linki połączeń.
Przykład odpowiedzi
{
"name": "Tier1.shop API",
"api_enabled": true,
"public_registration": true
}GET/openapi.jsonPełna specyfikacja OpenAPI 3.1.
Przykład odpowiedzi
{
"openapi": "3.1.0",
"info": {
"title": "Tier1.shop Client API"
}
}Zarejestruj się 3
POST/registration-intentsRozpocznij rejestrację nowego klienta z obowiązkowym potwierdzeniem e-mail.
Pobierz JSON
{
"email": "client@example.com",
"telegram_username": "@client",
"locale": "ru",
"issue_api_key": true
}Przykład odpowiedzi
{
"accepted": true,
"request_id": "…",
"status_token": "…",
"status": "pending_email",
"expires_in": 86400
}GET/registration-intents/{id}?status_token={token}Sprawdź status konkretnej rejestracji.
Przykład odpowiedzi
{
"status": "pending_email|email_verified|expired",
"email_verified": false,
"telegram_status": "not_requested|pending_bot_message|verified"
}POST/api-key-requestsPoproś o link do jednorazowego utworzenia klucza dla istniejącego konta.
Pobierz JSON
{
"email": "client@example.com",
"name": "Мой агент"
}Przykład odpowiedzi
{
"accepted": true,
"next_action": "…"
}Konto 2
GET/profileProfil, potwierdzenie e-mail i wszystkie kanały Telegram.
Przykład odpowiedzi
{
"account": {
"email": "client@example.com",
"email_verified": true,
"telegram_username": "@client",
"telegram_usernames": [
"@client",
"@manager"
]
}
}GET/balances?geo=allportfele RUB/$ oraz nieużywane usługi RU/międzynarodowe.
Przykład odpowiedzi
{
"wallets": {
"rub": {
"currency": "RUB",
"amount_minor": 0
},
"usd": {
"currency": "USD",
"amount_minor": 0
}
},
"service_balances": []
}Zamówienia 3
GET/orders?geo=all&page=1&per_page=20Pagnowana lista zamówień konta. per_page jest ograniczone do 50: kontynuuj przez next_page.
Przykład odpowiedzi
{
"orders": [
{
"cabinet_order_id": 123,
"wc_order_id": 456,
"placement_progress": {
"completed": 2,
"total": 3,
"fully_placed": false
}
}
],
"page": 1,
"per_page": 20,
"has_more": false,
"next_page": null
}GET/orders/{id}Pojedyncze zamówienie i linki według cabinet_order_id, a nie numeru WooCommerce z e-maila.
Przykład odpowiedzi
{
"order": {
"cabinet_order_id": 123,
"wc_order_id": 456,
"geo": "ru"
},
"links": []
}GET/orders/by-wc/{id}Wszystkie zamówienia wewnętrzne i linki według numeru WooCommerce klienta.
Przykład odpowiedzi
{
"wc_order_id": 456,
"count": 2,
"orders": [
{
"order": {
"cabinet_order_id": 123
},
"links": []
}
]
}Linki 1
GET/links?geo=all&page=1&per_page=20Linki z filtrami geo, statusu i typu linku; kontynuuj przez next_page.
Przykład odpowiedzi
{
"links": [],
"page": 1,
"per_page": 20,
"total": 0,
"has_more": false,
"next_page": null
}Katalog 2
GET/catalog/tariffs?geo=ruAktualne produkty, ceny, waluty i dokładny skład slotów.
Przykład odpowiedzi
{
"geo": "ru",
"currency": "RUB",
"tariffs": [
{
"product_id": 3708,
"name": "…",
"price": {
"amount_minor": 200000
}
}
]
}GET/catalog/burzh-igamingZanonimizowane strony donora iGaming, metryki, cena i dostępne sloty.
Przykład odpowiedzi
{
"donors": [],
"count": 0,
"price": {
"currency": "USD",
"amount_minor": 9400
}
}Szkice 3
PATCH/links/{id}Zmień URL, tekst kotwicy, tekst otaczający lub harmonogram bez przesyłania linku do przetworzenia.
Pobierz JSON
{
"url": "https://example.com/page",
"anchor": "пример",
"context_text": "Окружающий текст с анкором пример.",
"scheduled_at": "2026-09-01T09:00:00Z"
}Przykład odpowiedzi
{
"link": {
"id": 456,
"status": "awaiting_confirmation"
}
}PUT/links/{id}Alias PATCH dla klientów przesyłających częściowy zestaw modyfikowalnych pól.
Pobierz JSON
{
"anchor": "новый анкор"
}Przykład odpowiedzi
{
"link": {
"id": 456,
"status": "awaiting_confirmation"
}
}POST/orders/{id}/bulk-updateMasowe wypełnianie wierszy zamówień bez wysyłania do produkcji.
Pobierz JSON
{
"links": [
{
"url": "https://example.com/a",
"anchor": "ключ"
},
{
"url": "https://example.com/b",
"anchor": "другой ключ"
}
]
}Przykład odpowiedzi
{
"updated": 2,
"errors": []
}Wyślij 2
POST/links/{id}/submitWyślij jeden gotowy link do produkcji po potwierdzeniu klienta.
Pobierz JSON
[]Przykład odpowiedzi
{
"link": {
"id": 456,
"status": "in_progress"
}
}POST/orders/{id}/submit-allWyślij wszystkie gotowe wiersze zamówienia po potwierdzeniu klienta.
Pobierz JSON
[]Przykład odpowiedzi
{
"submitted": 2,
"skipped": 0
}Płatność 2
POST/checkout-intentsUtwórz bezpieczny jednorazowy link do standardowego procesu zamówienia; żadne środki nie zostaną pobrane.
Pobierz JSON
{
"geo": "ru",
"items": [
{
"product_id": 3708,
"quantity": 1
}
],
"links": [
{
"type": "yearly",
"url": "https://example.com/page",
"anchor": "пример"
}
]
}Przykład odpowiedzi
{
"intent_id": "32-символьный ID",
"checkout_url": "https://tier1.shop/?t1c_agent_checkout=…",
"expires_at": "…",
"summary": {
"currency": "RUB",
"total_minor": 200000
},
"payment_preview": {
"wallet_available_minor": 0,
"nominal_wallet_gap_minor": 200000,
"final_amount_at_checkout": true
}
}GET/checkout-intents/{id}Sprawdź pojawienie się płatności i zamówienia na koncie za pomocą intent_id bez ponownego otwierania jednorazowego linku.
Przykład odpowiedzi
{
"intent_id": "…",
"state": "paid",
"wc_order_id": 456,
"cabinet_order_ids": [
123
],
"fulfilment_pending": false
}Jeśli żądanie nie powiodło się
Listy zwracają maksymalnie 50 wierszy na stronę. Jeśli has_more=true, przejdź do next_page. Wstępna kwota w API nie zastępuje kwoty końcowej ani dostępnych metod płatności w koszyku.
Potrzebujesz MCP zamiast REST API?
Ten sam odwołalny klucz działa dla klienta MCP z nagłówkami HTTP. Możesz również połączyć się poprzez OAuth, jeśli aplikacja go obsługuje.
Otwórz instrukcje MCP



