Foliade

Turn PDFs into mobile flipbook catalogues: upload private drafts, customise, publish, get stats.

사용해야 할까요

품질 및 안전성

A
설명 품질
94%
스키마 완전성
73%
이름 품질
80%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

발견 사항 (4)

  • LOWTool 'foliade_catalogue_status' description lacks action verbfoliade_catalogue_status에서
  • LOWTool 'foliade_import_chapters' description lacks action verbfoliade_import_chapters에서
  • LOWTool 'foliade_set_shelf_access' description lacks action verbfoliade_set_shelf_access에서
  • LOWTool 'foliade_update_tracking_link' description lacks action verbfoliade_update_tracking_link에서

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~8,485토큰 (도구 정의)
~2.0 KB일반적인 응답 크기
상당한 주의 영향 (128k 컨텍스트의 6.63%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "foliade": {
      "url": "https://foliade.gekkode.com/mcp"
    }
  }
}

원격 엔드포인트

https://foliade.gekkode.com/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (34)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢foliade_account

Confirms the address and the plan of the destination account, without secrets or payment data.

입력 스키마

{
  "type": "object",
  "properties": {},
  "title": "accountArguments"
}
🟢foliade_list_catalogues(limit, offset)

Lists the private and public catalogues of the connected account, with pagination.

입력 스키마

{
  "type": "object",
  "properties": {
    "limit": {
      "default": 25,
      "maximum": 100,
      "minimum": 1,
      "title": "Limit",
      "type": "integer"
    },
    "offset": {
      "default": 0,
      "minimum": 0,
      "title": "Offset",
      "type": "integer"
    }
  },
  "title": "list_cataloguesArguments"
}
🟡foliade_prepare_upload(filename, size_bytes, sha256, title, language, ...)

Creates a single-use 10-minute deposit. Compute the size and the SHA-256 of the local PDF. Transfer the bytes to upload_url with PUT, Content-Type application/pdf, with the headers returned. Do not publish these headers in your reply. This ticket allows no reading and is not an API key for the account.

입력 스키마

{
  "type": "object",
  "properties": {
    "filename": {
      "maxLength": 240,
      "minLength": 1,
      "title": "Filename",
      "type": "string"
    },
    "size_bytes": {
      "minimum": 1,
      "title": "Size Bytes",
      "type": "integer"
    },
    "sha256": {
      "pattern": "^[a-fA-F0-9]{64}$",
      "title": "Sha256",
      "type": "string"
    },
    "title": {
      "default": "",
      "maxLength": 240,
      "title": "Title",
      "type": "string"
    },
    "language": {
      "default": "fr",
      "maxLength": 5,
      "title": "Language",
      "type": "string"
    },
    "notice_version": {
      "default": "",
      "title": "Notice Version",
      "type": "string"
    },
    "guest_mode": {
      "default": false,
      "title": "Guest Mode",
      "type": "boolean"
    }
  },
  "required": [
    "filename",
    "size_bytes",
    "sha256"
  ],
  "title": "prepare_uploadArguments"
}
🟡foliade_finalize_upload(upload_id, guest_token)

Finalises an upload that has been received. A repeat returns the same catalogue, never a duplicate. Conversion is asynchronous: check foliade_catalogue_status before giving the final result. The catalogue stays private until it is published explicitly.

입력 스키마

{
  "type": "object",
  "properties": {
    "upload_id": {
      "title": "Upload Id",
      "type": "string"
    },
    "guest_token": {
      "default": "",
      "title": "Guest Token",
      "type": "string"
    }
  },
  "required": [
    "upload_id"
  ],
  "title": "finalize_uploadArguments"
}
🟢foliade_catalogue_status(catalogue_id, guest_token)

Private state: owner OAuth or guest token, never the public link alone.

입력 스키마

{
  "type": "object",
  "properties": {
    "catalogue_id": {
      "title": "Catalogue Id",
      "type": "string"
    },
    "guest_token": {
      "default": "",
      "title": "Guest Token",
      "type": "string"
    }
  },
  "required": [
    "catalogue_id"
  ],
  "title": "catalogue_statusArguments"
}
🟡foliade_publish_catalogue(catalogue_id, guest_token)

Makes the catalogue public, on explicit request only. Keeps its identifier.

입력 스키마

{
  "type": "object",
  "properties": {
    "catalogue_id": {
      "title": "Catalogue Id",
      "type": "string"
    },
    "guest_token": {
      "default": "",
      "title": "Guest Token",
      "type": "string"
    }
  },
  "required": [
    "catalogue_id"
  ],
  "title": "publish_catalogueArguments"
}
🟢foliade_catalogue_stats(catalogue_id, days)

Aggregated statistics: reads and contacts, without disclosing the contact details.

입력 스키마

{
  "type": "object",
  "properties": {
    "catalogue_id": {
      "title": "Catalogue Id",
      "type": "string"
    },
    "days": {
      "default": 30,
      "maximum": 3650,
      "minimum": 1,
      "title": "Days",
      "type": "integer"
    }
  },
  "required": [
    "catalogue_id"
  ],
  "title": "catalogue_statsArguments"
}
🔴foliade_unpublish_catalogue(catalogue_id, guest_token)

Closes the public link without deleting the data. Requires an explicit request.

입력 스키마

{
  "type": "object",
  "properties": {
    "catalogue_id": {
      "title": "Catalogue Id",
      "type": "string"
    },
    "guest_token": {
      "default": "",
      "title": "Guest Token",
      "type": "string"
    }
  },
  "required": [
    "catalogue_id"
  ],
  "title": "unpublish_catalogueArguments"
}
🟢foliade_capabilities

Effective entitlements, JSON schemas and examples. Read before configuring; omitted fields are kept, null is refused. Setting changes are visible immediately on a published catalogue. Binary media, PDF replacements, API keys, REST webhooks, team and billing stay in the workspace/API.

입력 스키마

{
  "type": "object",
  "properties": {},
  "title": "capabilitiesArguments"
}
🟢foliade_get_catalogue_settings(catalogue_id)

Settings, table of contents, lead capture, protection without secrets, and the revision needed for changes.

입력 스키마

{
  "type": "object",
  "properties": {
    "catalogue_id": {
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "title": "Catalogue Id",
      "type": "string"
    }
  },
  "required": [
    "catalogue_id"
  ],
  "title": "get_catalogue_settingsArguments"
}
🔴foliade_update_catalogue(catalogue_id, patch, expected_revision, dry_run)

Changes only the fields supplied: colours, bar, controls, sound, reading, logo, title, language, PDF. dry_run returns a preview without writing. No change to the publication state.

입력 스키마

{
  "type": "object",
  "properties": {
    "catalogue_id": {
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "title": "Catalogue Id",
      "type": "string"
    },
    "patch": {
      "$ref": "#/$defs/CataloguePatch"
    },
    "expected_revision": {
      "pattern": "^[a-f0-9]{64}$",
      "title": "Expected Revision",
      "type": "string"
    },
    "dry_run": {
      "default": false,
      "title": "Dry Run",
      "type": "boolean"
    }
  },
  "required": [
    "catalogue_id",
    "patch",
    "expected_revision"
  ],
  "$defs": {
    "CataloguePatch": {
      "additionalProperties": false,
      "properties": {
        "fond": {
          "default": null,
          "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$",
          "title": "Fond",
          "type": "string"
        },
        "barre_fond": {
          "default": null,
          "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$",
          "title": "Barre Fond",
          "type": "string"
        },
        "barre_icones": {
          "default": null,
          "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$",
          "title": "Barre Icones",
          "type": "string"
        },
        "progression": {
          "default": null,
          "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$",
          "title": "Progression",
          "type": "string"
        },
        "fond_couleur2": {
          "default": null,
          "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$",
          "title": "Fond Couleur2",
          "type": "string"
        },
        "titre_sur_fond": {
          "default": null,
          "title": "Titre Sur Fond",
          "type": "boolean"
        },
        "barre_auto": {
          "default": null,
          "title": "Barre Auto",
          "type": "boolean"
        },
        "surligner_liens": {
          "default": null,
          "title": "Surligner Liens",
          "type": "boolean"
        },
        "son_actif": {
          "default": null,
          "title": "Son Actif",
          "type": "boolean"
        },
        "fond_type": {
          "default": null,
          "enum": [
            "couleur",
            "degrade",
            "image"
          ],
          "title": "Fond Type",
          "type": "string"
        },
        "fond_direction": {
          "default": null,
          "enum": [
            "vertical",
            "diagonal",
            "horizontal"
          ],
          "title": "Fond Direction",
          "type": "string"
        },
        "fond_position": {
          "default": null,
          "enum": [
            "haut",
            "centre",
            "bas"
          ],
          "title": "Fond Position",
          "type": "string"
        },
        "barre_position": {
          "default": null,
          "enum": [
            "bas",
            "haut"
          ],
          "title": "Barre Position",
          "type": "string"
        },
        "barre_ton": {
          "default": null,
          "enum": [
            "sombre",
            "clair"
          ],
          "title": "Barre Ton",
          "type": "string"
        },
        "invite": {
          "default": null,
          "enum": [
            "coin",
            "fleches",
            "survol",
            "aucune"
          ],
          "title": "Invite",
          "type": "string"
        },
        "disposition": {
          "default": null,
          "enum": [
            "auto",
            "simple",
            "double"
          ],
          "title": "Disposition",
          "type": "string"
        },
        "logo_taille": {
          "default": null,
          "enum": [
            "petit",
            "moyen",
            "grand"
          ],
          "title": "Logo Taille",
          "type": "string"
        },
        "logo_coin": {
          "default": null,
          "enum": [
            "haut-gauche",
            "haut-droite",
            "bas-gauche",
            "bas-droite"
          ],
          "title": "Logo Coin",
          "type": "string"
        },
        "effet": {
          "default": null,
          "enum": [
            "magazine",
            "book",
            "slide",
            "cards",
            "coverflow",
            "single"
          ],
          "title": "Effet",
          "type": "string"
        },
        "fond_flou": {
          "default": null,
          "maximum": 40,
          "minimum": 0,
          "title": "Fond Flou",
          "type": "integer"
        },
        "fond_opacite": {
          "default": null,
          "maximum": 100,
          "minimum": 0,
          "title": "Fond Opacite",
          "type": "integer"
        },
        "son_volume": {
          "default": null,
          "maximum": 100,
          "minimum": 0,
          "title": "Son Volume",
          "type": "integer"
        },
        "logo_lien": {
          "default": null,
          "maxLength": 300,
          "minLength": 0,
          "title": "Logo Lien",
          "type": "string"
        },
        "controles_masques": {
          "default": null,
          "items": {
            "enum": [
              "premiere",
              "zoom",
              "sommaire",
              "recherche",
              "partager",
              "imprimer",
              "pleinecran",
              "telecharger"
            ],
            "type": "string"
          },
          "maxItems": 8,
          "title": "Controles Masques",
          "type": "array"
        },
        "titre": {
          "default": null,
          "maxLength": 240,
          "minLength": 1,
          "title": "Titre",
          "type": "string"
        },
        "description": {
          "default": null,
          "maxLength": 2000,
          "minLength": 0,
          "title": "Description",
          "type": "string"
        },
        "langue": {
          "default": null,
          "enum": [
            "fr",
            "en",
            "es",
            "de",
            "it",
            "pt",
            "pl",
            "nl"
          ],
          "title": "Langue",
          "type": "string"
        },
        "droite_vers_gauche": {
          "default": null,
          "title": "Droite Vers Gauche",
          "type": "boolean"
        },
        "page_depart": {
          "default": null,
          "maximum": 100000,
          "minimum": 1,
          "title": "Page Depart",
          "type": "integer"
        },
        "telechargement_pdf": {
          "default": null,
          "enum": [
            "heriter",
            "autoriser",
            "interdire"
          ],
          "title": "Telechargement Pdf",
          "type": "string"
        }
      },
      "title": "CataloguePatch",
      "type": "object"
    }
  },
  "title": "update_catalogueArguments"
}
🔴foliade_set_catalogue_access(catalogue_id, expected_revision, protection, password, sous_domaine, ...)

Changes access on explicit request only. Never publishes a draft. The password is never returned. Declaring a domain does not configure DNS/TLS; activation remains a separate operation.

입력 스키마

{
  "type": "object",
  "properties": {
    "catalogue_id": {
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "title": "Catalogue Id",
      "type": "string"
    },
    "expected_revision": {
      "pattern": "^[a-f0-9]{64}$",
      "title": "Expected Revision",
      "type": "string"
    },
    "protection": {
      "default": "keep",
      "enum": [
        "keep",
        "none",
        "password"
      ],
      "title": "Protection",
      "type": "string"
    },
    "password": {
      "default": "",
      "maxLength": 128,
      "title": "Password",
      "type": "string"
    },
    "sous_domaine": {
      "anyOf": [
        {
          "maxLength": 64,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Sous Domaine"
    },
    "domaine": {
      "anyOf": [
        {
          "maxLength": 160,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Domaine"
    },
    "dry_run": {
      "default": false,
      "title": "Dry Run",
      "type": "boolean"
    }
  },
  "required": [
    "catalogue_id",
    "expected_revision"
  ],
  "title": "set_catalogue_accessArguments"
}
🔴foliade_set_lead_capture(catalogue_id, patch, expected_revision, dry_run)

Sets activation, page, blocking mode, fields and consent. A plan with lead capture is required; email is mandatory.

입력 스키마

{
  "type": "object",
  "properties": {
    "catalogue_id": {
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "title": "Catalogue Id",
      "type": "string"
    },
    "patch": {
      "$ref": "#/$defs/LeadPatch"
    },
    "expected_revision": {
      "pattern": "^[a-f0-9]{64}$",
      "title": "Expected Revision",
      "type": "string"
    },
    "dry_run": {
      "default": false,
      "title": "Dry Run",
      "type": "boolean"
    }
  },
  "required": [
    "catalogue_id",
    "patch",
    "expected_revision"
  ],
  "$defs": {
    "LeadPatch": {
      "additionalProperties": false,
      "properties": {
        "actif": {
          "default": null,
          "title": "Actif",
          "type": "boolean"
        },
        "page": {
          "default": null,
          "maximum": 100000,
          "minimum": 1,
          "title": "Page",
          "type": "integer"
        },
        "bloquant": {
          "default": null,
          "title": "Bloquant",
          "type": "boolean"
        },
        "champs": {
          "default": null,
          "items": {
            "enum": [
              "email",
              "nom",
              "societe",
              "telephone"
            ],
            "type": "string"
          },
          "maxItems": 4,
          "title": "Champs",
          "type": "array"
        },
        "consentement": {
          "default": null,
          "maxLength": 4000,
          "minLength": 1,
          "title": "Consentement",
          "type": "string"
        }
      },
      "title": "LeadPatch",
      "type": "object"
    }
  },
  "title": "set_lead_captureArguments"
}
🔴foliade_set_chapters(catalogue_id, chapters, expected_revision, dry_run)

Replaces the table of contents with the ordered list supplied; an empty list removes it.

입력 스키마

{
  "type": "object",
  "properties": {
    "catalogue_id": {
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "title": "Catalogue Id",
      "type": "string"
    },
    "chapters": {
      "items": {
        "$ref": "#/$defs/Chapter"
      },
      "maxItems": 300,
      "title": "Chapters",
      "type": "array"
    },
    "expected_revision": {
      "pattern": "^[a-f0-9]{64}$",
      "title": "Expected Revision",
      "type": "string"
    },
    "dry_run": {
      "default": false,
      "title": "Dry Run",
      "type": "boolean"
    }
  },
  "required": [
    "catalogue_id",
    "chapters",
    "expected_revision"
  ],
  "$defs": {
    "Chapter": {
      "additionalProperties": false,
      "properties": {
        "titre": {
          "maxLength": 120,
          "minLength": 1,
          "title": "Titre",
          "type": "string"
        },
        "page": {
          "minimum": 1,
          "title": "Page",
          "type": "integer"
        }
      },
      "required": [
        "titre",
        "page"
      ],
      "title": "Chapter",
      "type": "object"
    }
  },
  "title": "set_chaptersArguments"
}
⚪foliade_import_chapters(catalogue_id, expected_revision, dry_run)

Merges the PDF bookmarks into the table of contents without duplicates.

입력 스키마

{
  "type": "object",
  "properties": {
    "catalogue_id": {
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "title": "Catalogue Id",
      "type": "string"
    },
    "expected_revision": {
      "pattern": "^[a-f0-9]{64}$",
      "title": "Expected Revision",
      "type": "string"
    },
    "dry_run": {
      "default": false,
      "title": "Dry Run",
      "type": "boolean"
    }
  },
  "required": [
    "catalogue_id",
    "expected_revision"
  ],
  "title": "import_chaptersArguments"
}
🟢foliade_get_brand

Brand name, colour and default PDF download; without any billing information.

입력 스키마

{
  "type": "object",
  "properties": {},
  "title": "get_brandArguments"
}
🔴foliade_update_brand(patch, expected_revision, dry_run)

Account-wide impact: use it when a global customisation is asked for, prefer update_catalogue for a single PDF.

입력 스키마

{
  "type": "object",
  "properties": {
    "patch": {
      "$ref": "#/$defs/BrandPatch"
    },
    "expected_revision": {
      "pattern": "^[a-f0-9]{64}$",
      "title": "Expected Revision",
      "type": "string"
    },
    "dry_run": {
      "default": false,
      "title": "Dry Run",
      "type": "boolean"
    }
  },
  "required": [
    "patch",
    "expected_revision"
  ],
  "$defs": {
    "BrandPatch": {
      "additionalProperties": false,
      "properties": {
        "societe": {
          "default": null,
          "maxLength": 160,
          "minLength": 0,
          "title": "Societe",
          "type": "string"
        },
        "couleur": {
          "default": null,
          "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$",
          "title": "Couleur",
          "type": "string"
        },
        "telechargement_pdf_defaut": {
          "default": null,
          "title": "Telechargement Pdf Defaut",
          "type": "boolean"
        }
      },
      "title": "BrandPatch",
      "type": "object"
    }
  },
  "title": "update_brandArguments"
}
🟢foliade_list_themes(limit, offset)

Account themes, their settings and revisions; a theme is a copy, not a live link.

입력 스키마

{
  "type": "object",
  "properties": {
    "limit": {
      "default": 25,
      "maximum": 100,
      "minimum": 1,
      "title": "Limit",
      "type": "integer"
    },
    "offset": {
      "default": 0,
      "minimum": 0,
      "title": "Offset",
      "type": "integer"
    }
  },
  "title": "list_themesArguments"
}
🟡foliade_create_theme(catalogue_id, name, expected_revision)

Saves the existing styling and media of the catalogue as a theme, within the limit of the plan.

입력 스키마

{
  "type": "object",
  "properties": {
    "catalogue_id": {
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "title": "Catalogue Id",
      "type": "string"
    },
    "name": {
      "maxLength": 80,
      "minLength": 1,
      "title": "Name",
      "type": "string"
    },
    "expected_revision": {
      "pattern": "^[a-f0-9]{64}$",
      "title": "Expected Revision",
      "type": "string"
    }
  },
  "required": [
    "catalogue_id",
    "name",
    "expected_revision"
  ],
  "title": "create_themeArguments"
}
🔴foliade_update_theme(theme_id, patch, expected_revision, name, make_default, ...)

Changes the theme for its future applications. make_default changes the starting point of new catalogues.

입력 스키마

{
  "type": "object",
  "properties": {
    "theme_id": {
      "minimum": 1,
      "title": "Theme Id",
      "type": "integer"
    },
    "patch": {
      "$ref": "#/$defs/ReaderPatch"
    },
    "expected_revision": {
      "pattern": "^[a-f0-9]{64}$",
      "title": "Expected Revision",
      "type": "string"
    },
    "name": {
      "anyOf": [
        {
          "maxLength": 80,
          "minLength": 1,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Name"
    },
    "make_default": {
      "default": false,
      "title": "Make Default",
      "type": "boolean"
    },
    "dry_run": {
      "default": false,
      "title": "Dry Run",
      "type": "boolean"
    }
  },
  "required": [
    "theme_id",
    "patch",
    "expected_revision"
  ],
  "$defs": {
    "ReaderPatch": {
      "additionalProperties": false,
      "properties": {
        "fond": {
          "default": null,
          "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$",
          "title": "Fond",
          "type": "string"
        },
        "barre_fond": {
          "default": null,
          "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$",
          "title": "Barre Fond",
          "type": "string"
        },
        "barre_icones": {
          "default": null,
          "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$",
          "title": "Barre Icones",
          "type": "string"
        },
        "progression": {
          "default": null,
          "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$",
          "title": "Progression",
          "type": "string"
        },
        "fond_couleur2": {
          "default": null,
          "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$",
          "title": "Fond Couleur2",
          "type": "string"
        },
        "titre_sur_fond": {
          "default": null,
          "title": "Titre Sur Fond",
          "type": "boolean"
        },
        "barre_auto": {
          "default": null,
          "title": "Barre Auto",
          "type": "boolean"
        },
        "surligner_liens": {
          "default": null,
          "title": "Surligner Liens",
          "type": "boolean"
        },
        "son_actif": {
          "default": null,
          "title": "Son Actif",
          "type": "boolean"
        },
        "fond_type": {
          "default": null,
          "enum": [
            "couleur",
            "degrade",
            "image"
          ],
          "title": "Fond Type",
          "type": "string"
        },
        "fond_direction": {
          "default": null,
          "enum": [
            "vertical",
            "diagonal",
            "horizontal"
          ],
          "title": "Fond Direction",
          "type": "string"
        },
        "fond_position": {
          "default": null,
          "enum": [
            "haut",
            "centre",
            "bas"
          ],
          "title": "Fond Position",
          "type": "string"
        },
        "barre_position": {
          "default": null,
          "enum": [
            "bas",
            "haut"
          ],
          "title": "Barre Position",
          "type": "string"
        },
        "barre_ton": {
          "default": null,
          "enum": [
            "sombre",
            "clair"
          ],
          "title": "Barre Ton",
          "type": "string"
        },
        "invite": {
          "default": null,
          "enum": [
            "coin",
            "fleches",
            "survol",
            "aucune"
          ],
          "title": "Invite",
          "type": "string"
        },
        "disposition": {
          "default": null,
          "enum": [
            "auto",
            "simple",
            "double"
          ],
          "title": "Disposition",
          "type": "string"
        },
        "logo_taille": {
          "default": null,
          "enum": [
            "petit",
            "moyen",
            "grand"
          ],
          "title": "Logo Taille",
          "type": "string"
        },
        "logo_coin": {
          "default": null,
          "enum": [
            "haut-gauche",
            "haut-droite",
            "bas-gauche",
            "bas-droite"
          ],
          "title": "Logo Coin",
          "type": "string"
        },
        "effet": {
          "default": null,
          "enum": [
            "magazine",
            "book",
            "slide",
            "cards",
            "coverflow",
            "single"
          ],
          "title": "Effet",
          "type": "string"
        },
        "fond_flou": {
          "default": null,
          "maximum": 40,
          "minimum": 0,
          "title": "Fond Flou",
          "type": "integer"
        },
        "fond_opacite": {
          "default": null,
          "maximum": 100,
          "minimum": 0,
          "title": "Fond Opacite",
          "type": "integer"
        },
        "son_volume": {
          "default": null,
          "maximum": 100,
          "minimum": 0,
          "title": "Son Volume",
          "type": "integer"
        },
        "logo_lien": {
          "default": null,
          "maxLength": 300,
          "minLength": 0,
          "title": "Logo Lien",
          "type": "string"
        },
        "controles_masques": {
          "default": null,
          "items": {
            "enum": [
              "premiere",
              "zoom",
              "sommaire",
              "recherche",
              "partager",
              "imprimer",
              "pleinecran",
              "telecharger"
            ],
            "type": "string"
          },
          "maxItems": 8,
          "title": "Controles Masques",
          "type": "array"
        }
      },
      "title": "ReaderPatch",
      "type": "object"
    }
  },
  "title": "update_themeArguments"
}
🔴foliade_apply_theme(catalogue_id, theme_id, expected_revision)

Copies the styling and media of a theme of this account onto this catalogue.

입력 스키마

{
  "type": "object",
  "properties": {
    "catalogue_id": {
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "title": "Catalogue Id",
      "type": "string"
    },
    "theme_id": {
      "minimum": 1,
      "title": "Theme Id",
      "type": "integer"
    },
    "expected_revision": {
      "pattern": "^[a-f0-9]{64}$",
      "title": "Expected Revision",
      "type": "string"
    }
  },
  "required": [
    "catalogue_id",
    "theme_id",
    "expected_revision"
  ],
  "title": "apply_themeArguments"
}
🟢foliade_get_enrichments(catalogue_id)

Elements, published version, differences and revision. The files remain those of the catalogue.

입력 스키마

{
  "type": "object",
  "properties": {
    "catalogue_id": {
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "title": "Catalogue Id",
      "type": "string"
    }
  },
  "required": [
    "catalogue_id"
  ],
  "title": "get_enrichmentsArguments"
}
🔴foliade_update_enrichments(catalogue_id, elements, expected_revision, dry_run)

Replaces the draft: 13 types, links, buttons, videos, forms, products, galleries, tours, questions. No element that is invalid or closed off by the plan is accepted. Nothing is published before publish_enrichments. See capabilities and get_enrichments for the examples and the native structure.

입력 스키마

{
  "type": "object",
  "properties": {
    "catalogue_id": {
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "title": "Catalogue Id",
      "type": "string"
    },
    "elements": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "maxItems": 400,
      "title": "Elements",
      "type": "array"
    },
    "expected_revision": {
      "pattern": "^[a-f0-9]{64}$",
      "title": "Expected Revision",
      "type": "string"
    },
    "dry_run": {
      "default": false,
      "title": "Dry Run",
      "type": "boolean"
    }
  },
  "required": [
    "catalogue_id",
    "elements",
    "expected_revision"
  ],
  "title": "update_enrichmentsArguments"
}
🔴foliade_publish_enrichments(catalogue_id, expected_revision)

Publishes the interactive elements explicitly, with history. Does not publish the catalogue itself.

입력 스키마

{
  "type": "object",
  "properties": {
    "catalogue_id": {
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "title": "Catalogue Id",
      "type": "string"
    },
    "expected_revision": {
      "pattern": "^[a-f0-9]{64}$",
      "title": "Expected Revision",
      "type": "string"
    }
  },
  "required": [
    "catalogue_id",
    "expected_revision"
  ],
  "title": "publish_enrichmentsArguments"
}
🔴foliade_restore_enrichments(catalogue_id, publication_id, expected_revision)

Restores a version of this catalogue after re-checking the plan; creates a new history entry.

입력 스키마

{
  "type": "object",
  "properties": {
    "catalogue_id": {
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "title": "Catalogue Id",
      "type": "string"
    },
    "publication_id": {
      "minimum": 1,
      "title": "Publication Id",
      "type": "integer"
    },
    "expected_revision": {
      "pattern": "^[a-f0-9]{64}$",
      "title": "Expected Revision",
      "type": "string"
    }
  },
  "required": [
    "catalogue_id",
    "publication_id",
    "expected_revision"
  ],
  "title": "restore_enrichmentsArguments"
}
🟢foliade_list_shelves(limit, offset)

Paginated list of the shelves and their settings, without passwords.

입력 스키마

{
  "type": "object",
  "properties": {
    "limit": {
      "default": 25,
      "maximum": 100,
      "minimum": 1,
      "title": "Limit",
      "type": "integer"
    },
    "offset": {
      "default": 0,
      "minimum": 0,
      "title": "Offset",
      "type": "integer"
    }
  },
  "title": "list_shelvesArguments"
}
🟢foliade_get_shelf(shelf_id)

Settings, catalogues in order, and revision of the shelf.

입력 스키마

{
  "type": "object",
  "properties": {
    "shelf_id": {
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "title": "Shelf Id",
      "type": "string"
    }
  },
  "required": [
    "shelf_id"
  ],
  "title": "get_shelfArguments"
}
🟡foliade_create_shelf(name, patch)

Creates a shelf as a draft. The Distributeur plan is required; nothing is published automatically.

입력 스키마

{
  "type": "object",
  "properties": {
    "name": {
      "maxLength": 160,
      "minLength": 1,
      "title": "Name",
      "type": "string"
    },
    "patch": {
      "$ref": "#/$defs/ShelfPatch"
    }
  },
  "required": [
    "name",
    "patch"
  ],
  "$defs": {
    "ShelfPatch": {
      "additionalProperties": false,
      "properties": {
        "nom": {
          "default": null,
          "maxLength": 160,
          "minLength": 1,
          "title": "Nom",
          "type": "string"
        },
        "surtitre": {
          "default": null,
          "maxLength": 160,
          "minLength": 0,
          "title": "Surtitre",
          "type": "string"
        },
        "titre": {
          "default": null,
          "maxLength": 240,
          "minLength": 0,
          "title": "Titre",
          "type": "string"
        },
        "intro": {
          "default": null,
          "maxLength": 2000,
          "minLength": 0,
          "title": "Intro",
          "type": "string"
        },
        "pied": {
          "default": null,
          "maxLength": 300,
          "minLength": 0,
          "title": "Pied",
          "type": "string"
        },
        "contact": {
          "default": null,
          "maxLength": 320,
          "minLength": 0,
          "title": "Contact",
          "type": "string"
        },
        "layout": {
          "default": null,
          "enum": [
            "grille",
            "rayonnage",
            "liste",
            "coverflow",
            "vedette",
            "kiosque"
          ],
          "title": "Layout",
          "type": "string"
        },
        "taille_couv": {
          "default": null,
          "enum": [
            "petite",
            "moyenne",
            "grande"
          ],
          "title": "Taille Couv",
          "type": "string"
        },
        "planche": {
          "default": null,
          "enum": [
            "noyer",
            "chene",
            "ebene",
            "verre",
            "metal",
            "beton",
            "couleur"
          ],
          "title": "Planche",
          "type": "string"
        },
        "planche_couleur": {
          "default": null,
          "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$",
          "title": "Planche Couleur",
          "type": "string"
        },
        "fond": {
          "default": null,
          "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$",
          "title": "Fond",
          "type": "string"
        },
        "accent": {
          "default": null,
          "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$",
          "title": "Accent",
          "type": "string"
        },
        "texte": {
          "default": null,
          "pattern": "^(?:|#[0-9a-fA-F]{3}|#[0-9a-fA-F]{6})$",
          "title": "Texte",
          "type": "string"
        },
        "police_titre": {
          "default": null,
          "maxLength": 80,
          "minLength": 0,
          "title": "Police Titre",
          "type": "string"
        },
        "police_texte": {
          "default": null,
          "maxLength": 80,
          "minLength": 0,
          "title": "Police Texte",
          "type": "string"
        },
        "ouverture": {
          "default": null,
          "enum": [
            "page",
            "onglet"
          ],
          "title": "Ouverture",
          "type": "string"
        },
        "collections": {
          "default": null,
          "title": "Collections",
          "type": "boolean"
        },
        "recherche": {
          "default": null,
          "title": "Recherche",
          "type": "boolean"
        },
        "badge": {
          "default": null,
          "title": "Badge",
          "type": "boolean"
        }
      },
      "title": "ShelfPatch",
      "type": "object"
    }
  },
  "title": "create_shelfArguments"
}
🔴foliade_update_shelf(shelf_id, patch, expected_revision, dry_run)

Texts, six layouts, covers, shelf boards, colours, fonts, collections, search and opening.

입력 스키마

{
  "type": "object",
  "properties": {
    "shelf_id": {
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "title": "Shelf Id",
      "type": "string"
    },
    "patch": {
      "$ref": "#/$defs/ShelfPatch"
    },
    "expected_revision": {
      "pattern": "^[a-f0-9]{64}$",
      "title": "Expected Revision",
      "type": "string"
    },
    "dry_run": {
      "default": false,
      "title": "Dry Run",
      "type": "boolean"
    }
  },
  "required": [
    "shelf_id",
    "patch",
    "expected_revision"
  ],
  "$defs": {
    "ShelfPatch": {
      "additionalProperties": false,
      "properties": {
        "nom": {
          "default": null,
          "maxLength": 160,
          "minLength": 1,
          "title": "Nom",
          "type": "string"
        },
        "surtitre": {
          "default": null,
          "maxLength": 160,
          "minLength": 0,
          "title": "Surtitre",
          "type": "string"
        },
        "titre": {
          "default": null,
          "maxLength": 240,
          "minLength": 0,
          "title": "Titre",
          "type": "string"
        },
        "intro": {
          "default": null,
          "maxLength": 2000,
          "minLength": 0,
          "title": "Intro",
          "type": "string"
        },
        "pied": {
          "default": null,
          "maxLength": 300,
          "minLength": 0,
          "title": "Pied",
          "type": "string"
        },
        "contact": {
          "default": null,
          "maxLength": 320,
          "minLength": 0,
          "title": "Contact",
          "type": "string"
        },
        "layout": {
          "default": null,
          "enum": [
            "grille",
            "rayonnage",
            "liste",
            "coverflow",
            "vedette",
            "kiosque"
          ],
          "title": "Layout",
          "type": "string"
        },
        "taille_couv": {
          "default": null,
          "enum": [
            "petite",
            "moyenne",
            "grande"
          ],
          "title": "Taille Couv",
          "type": "string"
        },
        "planche": {
          "default": null,
          "enum": [
            "noyer",
            "chene",
            "ebene",
            "verre",
            "metal",
            "beton",
            "couleur"
          ],
          "title": "Planche",
          "type": "string"
        },
        "planche_couleur": {
          "default": null,
          "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$",
          "title": "Planche Couleur",
          "type": "string"
        },
        "fond": {
          "default": null,
          "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$",
          "title": "Fond",
          "type": "string"
        },
        "accent": {
          "default": null,
          "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$",
          "title": "Accent",
          "type": "string"
        },
        "texte": {
          "default": null,
          "pattern": "^(?:|#[0-9a-fA-F]{3}|#[0-9a-fA-F]{6})$",
          "title": "Texte",
          "type": "string"
        },
        "police_titre": {
          "default": null,
          "maxLength": 80,
          "minLength": 0,
          "title": "Police Titre",
          "type": "string"
        },
        "police_texte": {
          "default": null,
          "maxLength": 80,
          "minLength": 0,
          "title": "Police Texte",
          "type": "string"
        },
        "ouverture": {
          "default": null,
          "enum": [
            "page",
            "onglet"
          ],
          "title": "Ouverture",
          "type": "string"
        },
        "collections": {
          "default": null,
          "title": "Collections",
          "type": "boolean"
        },
        "recherche": {
          "default": null,
          "title": "Recherche",
          "type": "boolean"
        },
        "badge": {
          "default": null,
          "title": "Badge",
          "type": "boolean"
        }
      },
      "title": "ShelfPatch",
      "type": "object"
    }
  },
  "title": "update_shelfArguments"
}
🔴foliade_set_shelf_catalogues(shelf_id, items, expected_revision, dry_run)

Replaces the contents of the shelf with this ordered list with collection names. The PDFs themselves are kept.

입력 스키마

{
  "type": "object",
  "properties": {
    "shelf_id": {
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "title": "Shelf Id",
      "type": "string"
    },
    "items": {
      "items": {
        "$ref": "#/$defs/ShelfItem"
      },
      "maxItems": 400,
      "title": "Items",
      "type": "array"
    },
    "expected_revision": {
      "pattern": "^[a-f0-9]{64}$",
      "title": "Expected Revision",
      "type": "string"
    },
    "dry_run": {
      "default": false,
      "title": "Dry Run",
      "type": "boolean"
    }
  },
  "required": [
    "shelf_id",
    "items",
    "expected_revision"
  ],
  "$defs": {
    "ShelfItem": {
      "additionalProperties": false,
      "properties": {
        "catalogue_id": {
          "pattern": "^[A-Za-z0-9_-]{1,64}$",
          "title": "Catalogue Id",
          "type": "string"
        },
        "collection": {
          "default": "",
          "maxLength": 80,
          "title": "Collection",
          "type": "string"
        }
      },
      "required": [
        "catalogue_id"
      ],
      "title": "ShelfItem",
      "type": "object"
    }
  },
  "title": "set_shelf_cataloguesArguments"
}
🔴foliade_set_shelf_access(shelf_id, expected_revision, state, protection, password, ...)

Publication and access of the shelf on explicit request only; DNS/TLS remain separate.

입력 스키마

{
  "type": "object",
  "properties": {
    "shelf_id": {
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "title": "Shelf Id",
      "type": "string"
    },
    "expected_revision": {
      "pattern": "^[a-f0-9]{64}$",
      "title": "Expected Revision",
      "type": "string"
    },
    "state": {
      "default": "keep",
      "enum": [
        "keep",
        "brouillon",
        "public",
        "protege"
      ],
      "title": "State",
      "type": "string"
    },
    "protection": {
      "default": "keep",
      "enum": [
        "keep",
        "none",
        "password"
      ],
      "title": "Protection",
      "type": "string"
    },
    "password": {
      "default": "",
      "maxLength": 128,
      "title": "Password",
      "type": "string"
    },
    "sous_domaine": {
      "anyOf": [
        {
          "maxLength": 64,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Sous Domaine"
    },
    "domaine": {
      "anyOf": [
        {
          "maxLength": 160,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Domaine"
    },
    "dry_run": {
      "default": false,
      "title": "Dry Run",
      "type": "boolean"
    }
  },
  "required": [
    "shelf_id",
    "expected_revision"
  ],
  "title": "set_shelf_accessArguments"
}
🟢foliade_list_tracking_links(catalogue_id, limit, offset)

Named links of the catalogue owned by the account. Contains the recipients; do not disclose them publicly.

입력 스키마

{
  "type": "object",
  "properties": {
    "catalogue_id": {
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "title": "Catalogue Id",
      "type": "string"
    },
    "limit": {
      "default": 25,
      "maximum": 100,
      "minimum": 1,
      "title": "Limit",
      "type": "integer"
    },
    "offset": {
      "default": 0,
      "minimum": 0,
      "title": "Offset",
      "type": "integer"
    }
  },
  "required": [
    "catalogue_id"
  ],
  "title": "list_tracking_linksArguments"
}
🟡foliade_create_tracking_link(catalogue_id, recipient, email, note)

Creates a named Business link. No email is sent; does not publish the catalogue.

입력 스키마

{
  "type": "object",
  "properties": {
    "catalogue_id": {
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "title": "Catalogue Id",
      "type": "string"
    },
    "recipient": {
      "maxLength": 200,
      "minLength": 1,
      "title": "Recipient",
      "type": "string"
    },
    "email": {
      "default": "",
      "maxLength": 320,
      "title": "Email",
      "type": "string"
    },
    "note": {
      "default": "",
      "maxLength": 240,
      "title": "Note",
      "type": "string"
    }
  },
  "required": [
    "catalogue_id",
    "recipient"
  ],
  "title": "create_tracking_linkArguments"
}
🔴foliade_update_tracking_link(catalogue_id, link_id, patch, expected_revision, dry_run)

Changes recipient, note, email or active flag; closing is explicit and reversible, with no message sent.

입력 스키마

{
  "type": "object",
  "properties": {
    "catalogue_id": {
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "title": "Catalogue Id",
      "type": "string"
    },
    "link_id": {
      "minimum": 1,
      "title": "Link Id",
      "type": "integer"
    },
    "patch": {
      "$ref": "#/$defs/LinkPatch"
    },
    "expected_revision": {
      "pattern": "^[a-f0-9]{64}$",
      "title": "Expected Revision",
      "type": "string"
    },
    "dry_run": {
      "default": false,
      "title": "Dry Run",
      "type": "boolean"
    }
  },
  "required": [
    "catalogue_id",
    "link_id",
    "patch",
    "expected_revision"
  ],
  "$defs": {
    "LinkPatch": {
      "additionalProperties": false,
      "properties": {
        "destinataire": {
          "default": null,
          "maxLength": 200,
          "minLength": 1,
          "title": "Destinataire",
          "type": "string"
        },
        "email": {
          "default": null,
          "maxLength": 320,
          "title": "Email",
          "type": "string"
        },
        "note": {
          "default": null,
          "maxLength": 240,
          "title": "Note",
          "type": "string"
        },
        "actif": {
          "default": null,
          "title": "Actif",
          "type": "boolean"
        }
      },
      "title": "LinkPatch",
      "type": "object"
    }
  },
  "title": "update_tracking_linkArguments"
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 34개