Léim ar ábhar
ShopentlyLearn

Liostaigh · Ailt

Ailt a léamh agus réamhamharc a dhéanamh ar dhréachtaí

GET/api/v1/addons/shopently.blog/posts

Fíordheimhniú
Bearer
Ar fáil ó
BASIC
Modúl suiteáilte riachtanach
shopently.blog · Leagan de chonradh an mhodúil 1
Ceadanna riachtanacha
addon.shopently.blog:post_read

Samplaí cóid

Sampla iarratais

cURL

: "${SHOPENTLY_SHOP_URL:?}"

curl --disable --globoff --fail-with-body --silent --show-error \
  --proto '=https' --connect-timeout 5 --max-time 30 \
  --request GET \
  --header "Authorization: Bearer ${SHOPENTLY_ACCESS_TOKEN:?}" \
  --url "${SHOPENTLY_SHOP_URL%/}"'/api/v1/addons/shopently.blog/posts?limit=10&locale=pl&status=draft'

PHP

<?php
declare(strict_types=1);

$baseUrl = rtrim(getenv('SHOPENTLY_SHOP_URL') ?: '', '/');
$origin = parse_url($baseUrl);
if (!$origin || ($origin['scheme'] ?? '') !== 'https' || empty($origin['host']) ||
    isset($origin['user'], $origin['pass']) || isset($origin['user']) || isset($origin['path']) ||
    isset($origin['query']) || isset($origin['fragment'])) {
    throw new RuntimeException('SHOPENTLY_SHOP_URL must be an HTTPS origin');
}
$credential = getenv('SHOPENTLY_ACCESS_TOKEN') ?: '';
if ($credential === '' || strpbrk($credential, "\r\n") !== false) {
    throw new RuntimeException('Invalid credential');
}
$headers = [];
$headers[] = 'Authorization: Bearer ' . $credential;
$responseHeaders = [];
$handle = curl_init($baseUrl . '/api/v1/addons/shopently.blog/posts?limit=10&locale=pl&status=draft');
curl_setopt_array($handle, [
    CURLOPT_CUSTOMREQUEST => 'GET',
    CURLOPT_HTTPHEADER => $headers,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_FOLLOWLOCATION => false,
    CURLOPT_PROTOCOLS => CURLPROTO_HTTPS,
    CURLOPT_SSL_VERIFYPEER => true,
    CURLOPT_SSL_VERIFYHOST => 2,
    CURLOPT_CONNECTTIMEOUT => 5,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HEADERFUNCTION => static function ($handle, string $line) use (&$responseHeaders): int {
        if (str_contains($line, ':')) {
            [$name, $value] = explode(':', $line, 2);
            $responseHeaders[strtolower(trim($name))] = trim($value);
        }
        return strlen($line);
    },
]);
$raw = curl_exec($handle);
$status = curl_getinfo($handle, CURLINFO_RESPONSE_CODE);
$error = curl_error($handle);
curl_close($handle);
if ($raw === false) {
    throw new RuntimeException('Transport error: ' . $error);
}
if ($status < 200 || $status >= 300) {
    throw new RuntimeException('HTTP ' . $status . '; request_id=' .
        ($responseHeaders['x-request-id'] ?? '') . '; retry_after=' . ($responseHeaders['retry-after'] ?? ''));
}
$result = $raw === '' ? null : json_decode($raw, true, 512, JSON_THROW_ON_ERROR | JSON_BIGINT_AS_STRING);
echo json_encode($result, JSON_THROW_ON_ERROR | JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE), PHP_EOL;

Python

from contextlib import ExitStack
import json
import os
from urllib.parse import urlsplit

import requests  # python -m pip install requests

base_url = os.environ["SHOPENTLY_SHOP_URL"].rstrip("/")
origin = urlsplit(base_url)
if origin.scheme != "https" or not origin.hostname or origin.username or origin.password or origin.path or origin.query or origin.fragment:
    raise ValueError("SHOPENTLY_SHOP_URL must be an HTTPS origin")
credential = os.environ['SHOPENTLY_ACCESS_TOKEN']
if not credential or "\r" in credential or "\n" in credential:
    raise ValueError("Invalid credential")
headers = {}
headers["Authorization"] = 'Bearer' + " " + credential
body = None
if body is not None:
    headers["Content-Type"] = "application/json"

with ExitStack() as stack:
    session = stack.enter_context(requests.Session())
    files = None
    if False:
        image = stack.enter_context(open(os.environ["SHOPENTLY_IMAGE_FILE"], "rb"))
        if os.fstat(image.fileno()).st_size > 5242880:
            raise ValueError("Image exceeds 5 MiB")
        files = {"file": ("article.png", image, "image/png")}
    response = session.request(
        'GET', base_url + '/api/v1/addons/shopently.blog/posts?limit=10&locale=pl&status=draft', headers=headers,
        data=body.encode("utf-8") if body is not None else None, files=files,
        timeout=(5, 30), allow_redirects=False,
    )
    if not 200 <= response.status_code < 300:
        raise RuntimeError(f"HTTP {response.status_code}; request_id={response.headers.get('X-Request-ID', '')}; retry_after={response.headers.get('Retry-After', '')}")
    if False:
        if response.headers.get("Content-Type") != "image/webp" or len(response.content) > 5242880:
            raise ValueError("Unexpected image response")
        with open(os.environ["SHOPENTLY_OUTPUT_FILE"], "xb") as output:
            output.write(response.content)
    else:
        result = response.json() if response.content else None
        print(json.dumps(result, ensure_ascii=False, indent=2))

Sampla freagra 200

JSON
{
  "data": [
    {
      "author_name": "Store editorial team",
      "cover_alt": "Niebieska ilustracja poradnika",
      "cover_media_id": "e8663afe-3c38-461c-a142-a980085630af",
      "first_published_at": null,
      "id": "2103ba96-2713-420b-b197-8a008730c851",
      "public_number": 1,
      "publish_at": null,
      "status": "draft",
      "title": "Jak wybrać produkt",
      "updated_at": "2026-10-07T23:17:44.320869Z",
      "version": 1
    }
  ],
  "meta": {
    "pagination": {
      "has_more": false,
      "limit": 10,
      "next_cursor": null
    },
    "request_id": "56b810d9-7dfa-4bc5-8928-0af90d80dbda"
  }
}

Forléargas

Reáchtáil blag do shiopa le hailt HTML, grianghraif, údair agus meiteashonraí d’innill chuardaigh. Sábháil dréachtaí, ullmhaigh aistriúcháin agus foilsigh láithreach nó ag am roghnaithe i gcrios ama ar leith. Bainistigh tráchtanna agus modhnóireacht sa phainéal; is féidir le gineadóir seachtrach an API a úsáid leis na ceadanna a dheonaíonn tú.

BASIC · api.enabled · addons.use(shopently.blog) · addon.shopently.blog:post_read

Paraiméadair

Paraiméadair fhiosrúcháin

localeTeaghránRiachtanach

Teanga roghnaithe don iarratas seo.

minLength: 2maxLength: 35
Srianta
pattern
"^[a-zA-Z]{2,3}(?:-[a-zA-Z0-9]{2,8})*$"
Sampla: "pl"
limitSlánuimhirRoghnach

Uaslíon taifead ar an leathanach seo.

minimum: 1maximum: 100
Réamhshocrú: 50Sampla: 10
cursorTeaghrán nullRoghnach

Luach leanúna neamhléirmhínithe a tháinig ón leathanach roimhe.

Teaghrán:maxLength: 512
statusTeaghrán nullRoghnach

Stádas a ghlacann an oibríocht áirithe seo.

Srianta · Teaghrán 1
enum
["draft", "scheduled", "published", "archived"]
Sampla: "draft"
titleTeaghrán nullRoghnach

Teideal sa teanga roghnaithe.

Teaghrán:maxLength: 200
author_idTeaghrán nullRoghnach

Údar

Teaghrán:format: "uuid"
publish_fromTeaghrán nullRoghnach

Foilsithe ó

Teaghrán:format: "date-time"
publish_toTeaghrán nullRoghnach

Foilsithe roimh

Teaghrán:format: "date-time"

Ní ghlacann an oibríocht seo le corp JSON.

Freagraí

Freagra 200

dataEagar <OibiachtRéimsí breise: Níl> Riachtanach

Sonraí freagra rathúil.

maxItems: 100
Réimsí · data

OibiachtRéimsí breise: Níl

author_nameTeaghránRiachtanach

Údar

maxLength: 160
cover_altTeaghránRiachtanach

Téacs malartach

maxLength: 250
cover_media_idTeaghrán nullRiachtanach

Grianghraf clúdaigh

Teaghrán:format: "uuid"
first_published_atTeaghrán nullRiachtanach

Foilsithe den chéad uair

Teaghrán:format: "date-time"
idTeaghránRiachtanach

Aitheantóir acmhainne; coinnigh mar a tugadh ar ais é.

format: "uuid"
public_numberSlánuimhirRiachtanach

Uimhir

minimum: 1
publish_atTeaghrán nullRiachtanach

Dáta foilsithe

Teaghrán:format: "date-time"
statusTeaghránRiachtanach

Stádas a ghlacann an oibríocht áirithe seo.

Srianta
enum
["draft", "scheduled", "published", "archived"]
titleTeaghránRiachtanach

Teideal sa teanga roghnaithe.

maxLength: 200
updated_atTeaghránRiachtanach

Am an nuashonraithe is déanaí.

format: "date-time"
versionSlánuimhirRiachtanach

Leagan acmhainne a úsáidtear le haghaidh rialú comhreatha.

minimum: 1maximum: 9223372036854775807
metaOibiachtRéimsí breise: NílRiachtanach

Meiteashonraí an fhreagra.

Réimsí · meta
paginationOibiachtRéimsí breise: NílRiachtanach

Meiteashonraí leathanaithe le cúrsóir.

Réimsí · pagination
has_moreLuach BooleRiachtanach

An bhfuil leathanach eile ar fáil.

limitSlánuimhirRiachtanach

Uaslíon taifead ar an leathanach seo.

minimum: 1maximum: 100
next_cursorTeaghrán nullRiachtanach

Luach leanúna don chéad leathanach eile, nó null.

Teaghrán:maxLength: 512
request_idTeaghránRiachtanach

Aitheantóir iarratais; i meiteashonraí freagra aithníonn sé an t-iarratas HTTP.

minLength: 1maxLength: 100
Sampla freagra

Stádas HTTP

200
Freagra rathúil Scéim
400
Iarratas neamhbhailí
401
Fíordheimhniú riachtanach
403
Cead diúltaithe
404
Acmhainn gan aimsiú
409
Coinbhleacht leagain
422
Theip ar bhailíochtú
429
Teorainn iarratas sáraithe
Stádais HTTP eile (7)
405
Modh neamhcheadaithe
413
Iarratas rómhór
415
Formáid gan tacaíocht
500
Earráid freastalaí
502
Earráid gheata API
503
Seirbhís gan fáil
504
Teorainn ama sáraithe

Catalóg earráidí: ErrorResponse

Ceanntásca

401

WWW-AuthenticateTeaghránRoghnach

An scéim fíordheimhnithe a éilíonn an freastalaí.

405

AllowTeaghránRoghnach

Modhanna HTTP a thacaíonn an acmhainn seo leo.

429, 503

Retry-AfterSlánuimhirRoghnach

An mhoill íosta roimh atriail, i soicindí.

minimum: 0