publication:query

Description: Retrieve a single published publication by ID or import_id.

Only published publications are returned. If the publication is a draft or does not exist, a not_found error is returned.


Request Schema

{
  "payload": {
    "type": "publication:query",
    "id": 1
  },
  "signature": "payload_ed25519_hex_signature",
  "source_public_key": "your_client_public_key"
}

Or by import_id:

{
  "payload": {
    "type": "publication:query",
    "import_id": "pub_abc123"
  },
  "signature": "payload_ed25519_hex_signature",
  "source_public_key": "your_client_public_key"
}

Request Attributes

  • See global request attributes
  • payload.id - Integer - Arkipel ID of the publication
  • payload.import_id - String - External system identifier for the publication

At least one of id or import_id must be provided.

Response Schema

{
  "source_public_key": "community_public_key",
  "source_site": {
    "protocol": "http",
    "fqdn": "arkipel.localhost:3000"
  },
  "created_at": "2025-11-13T20:52:49Z",
  "signature": "8b6392d5550605bd6ccddf9c21ebec470de4b44e4b4deb746076e37ab61c5346e07e7c7c7cebb5bbee41cdd92a476bcd3f02373d146ec165b31c31fc31c9ce0d",
  "payload": {
    "type": "publication:query",
    "resource": {
      "id": 1,
      "import_id": "pub_abc123",
      "name": "Superb Article!",
      "locale": "en",
      "introduction": "The introduction as text",
      "content": "<p>She said, \"Hello there!\" and smiled.</p>",
      "image_url": "https://unsplash.com/photos/OEvLi8LM7cc/download?force=true&w=640",
      "video_url": "https://example.com/videos/demo.mp4",
      "updated_at": "2025-11-13T20:52:49Z"
    }
  }
}

Response Field Constraints

Field Type Constraints
id Integer Arkipel ID
import_id String External system identifier
name String Publication title
locale Enum Language. Values: fr, en
introduction String Introduction or summary text
content HTML Main content. Relative URLs for embedded images are resolved to absolute URLs. See HTML Content Guide
image_url URL Public image URL, if present
video_url URL Public video URL, if present
updated_at DateTime Last update timestamp. Use for change detection.

Error Responses

Not Found

When the publication does not exist, is not published, or belongs to another account:

{
  "source_public_key": "community_public_key",
  "source_site": {
    "protocol": "http",
    "fqdn": "arkipel.localhost:3000"
  },
  "created_at": "2025-11-13T20:52:49Z",
  "signature": "...",
  "payload": {
    "type": "publication:query"
  },
  "error": "Publication not found for id: 999999 or import_id: ",
  "status": "not_found"
}

Back to top

Welcome to the Arkipel DevKit! This documentation will guide you through everything you need to build clients for Arkipel communities.

Contact: devkit@arkipel.co | Page URLs

Copyright © 2026 Arkipel. Distributed under an MIT license.