Comment utiliser PolyDrobe.
Configurez un espace de travail, modélisez vos actifs et variantes, invitez l’équipe et corrigez les erreurs qui reviennent le plus souvent.
Opérationnel en quatre étapes
Projet, taxonomie, actifs, équipe. Dans cet ordre.
Créer un projet
Créez votre premier projet et définissez un slug clair.
Configurer la taxonomie
Configurez catégories, raretés, étiquettes, devises, statuts et versions.
Ajouter des assets et variantes
Ajoutez des actifs puis des variantes avec images, prix et métadonnées optionnelles.
Invitez votre équipe
Invitez l'équipe et attribuez les rôles Propriétaire, Éditeur ou Visionneuse.
Tout ce que vous pouvez faire
Ouvrez un workflow pour en voir les détails.
Configuration du projetCommencez par la structure avant le contenu.
- Renseignez les détails du projet et son icône.
- Définissez une taxonomie réutilisable dans les paramètres projet.
Gestion des actifs et variantesUtilisez les actifs pour les objets et les variantes pour les versions.
- Ajoutez les métadonnées d'actif et assignez catégorie/rareté.
- Ajoutez textures, images et prix aux variantes.
Revue et rechercheGardez un catalogue lisible et maintenable.
- Utilisez les filtres, le statut et les étiquettes pour retrouver le travail qui vous attend.
- Vérifiez les changements dans le journal d'activité.
Import et exportÉchangez les données en sécurité avec votre pipeline.
- Exportez les données du projet en JSON ou Excel, ou cochez Inclure les fichiers multimédias pour obtenir une archive ZIP avec les images, les textures et les maillages.
- Importez des fichiers JSON, Excel ou des archives ZIP. Chaque import commence par un aperçu : vous examinez les modifications ligne par ligne et les erreurs avant le moindre enregistrement.
Import Google SheetsImportez actifs, variantes et paramètres de projet depuis une feuille de calcul Google native.
- Créez une feuille de calcul Google native (et non un fichier .xlsx importé) avec une feuille par type d’entité : Currencies, Rarities, Releases, Tags, Categories, Assets, Variants.
- Placez les en-têtes de colonnes exacts sur la première ligne de chaque feuille (la casse compte). La feuille Variants attend par exemple : slug, name, asset_slug, rarity, release, currency, price, description, tags.
- Les entités sont importées dans l’ordre de leurs dépendances : Currencies, Rarities, Releases, Tags, Categories, Assets et enfin Variants. Tout ce qu’une ligne référence doit déjà exister dans le projet ou figurer plus tôt dans la même exécution.
- Dans votre projet, ouvrez la page Échange de données (Importer / Exporter dans le menu du projet), choisissez Feuille Google comme source d’import et connectez votre compte Google. PolyDrobe demande la portée drive.file de Google : il ne peut donc lire que les fichiers que vous lui confiez.
- Sous Créer un profil, donnez un libellé au profil, cliquez sur Parcourir pour choisir votre feuille de calcul dans le Google Picker, ajustez les noms des feuilles si vos onglets portent d’autres noms, puis cliquez sur Enregistrer le profil.
- Lancez d’abord Aperçu sur le profil enregistré. C’est une exécution test qui signale les erreurs de validation sans rien écrire ; Importer applique ensuite la même exécution pour de bon.
- Pour les étiquettes des feuilles Assets ou Variants, séparez les valeurs par des points-virgules : starter;seasonal=winter;limited-edition.
- Les prix acceptent le point comme la virgule en séparateur décimal (9.99 ou 9,99). La rareté est reconnue par son nom, la devise par son code et la version par sa chaîne de version.
Guides développeur
Connectez vos outils, vos agents et vos pipelines à PolyDrobe.
Configuration de l’API RESTIntégrez PolyDrobe à vos outils avec l’API REST standard. Disponible avec le plan Pro.
1. Générer un jeton d’accès
Ouvrez Paramètres de l’espace de travail > Jetons d’API et créez un jeton d’accès personnel. Donnez-lui un nom parlant (« CI Pipeline » ou « Script local », par exemple), cochez les portées lecture et écriture, puis choisissez une durée de validité. Copiez le jeton dès qu’il s’affiche : il n’apparaît qu’une seule fois.
# Your token will look like this: pdtk_a8f3b2c1d4e5f6a7b8c9d0e1f2a3b4c5... # Keep it safe. You cannot retrieve it later. # If lost, revoke it and create a new one.
2. Authentifier vos requêtes
Envoyez le jeton comme jeton Bearer dans l’en-tête Authorization de chaque requête.
curl -H "Authorization: Bearer pdtk_abc123..." \
https://polydrobe.app/api/v1/projects/
3. Lister vos projets
Renvoie tous les projets dont vous êtes membre. La réponse suit le format d’enveloppe standard, avec les clés data et meta.
GET /api/v1/projects/
# Response:
{
"data": [
{
"id": "...",
"name": "Cyber Skins",
"slug": "cyber-skins",
"asset_count": 42,
"my_role": "owner"
}
],
"meta": { "total": 1, "page": 1, "page_size": 25 }
}
4. Créer un actif
Crée un actif dans un projet. Demande le rôle Éditeur ou Propriétaire. Le slug est généré automatiquement à partir du nom.
curl -X POST \
-H "Authorization: Bearer pdtk_abc123..." \
-H "Content-Type: application/json" \
-d '{"name": "Plasma Rifle", "description": "Sci-fi weapon", "category_slug": "weapons"}' \
https://polydrobe.app/api/v1/projects/cyber-skins/assets/
5. Créer une variante
Ajoute à un actif une variante avec son prix, sa rareté et son statut. Toutes les clés étrangères se référencent par slug.
curl -X POST \
-H "Authorization: Bearer pdtk_abc123..." \
-H "Content-Type: application/json" \
-d '{"name": "Gold Edition", "rarity_slug": "legendary", "price": "29.99", "currency_code": "USD"}' \
https://polydrobe.app/api/v1/projects/cyber-skins/assets/plasma-rifle/variants/
6. Rechercher des actifs
Recherche plein texte sur les actifs et les variantes, appuyée sur la recherche PostgreSQL. Elle accepte les expressions exactes, l’opérateur OR et la négation.
GET /api/v1/projects/cyber-skins/search/?q=gold+legendary&type=variant&limit=10
7. Opérations en masse
Modifiez ou supprimez plusieurs variantes d’un coup. Demande la fonctionnalité Opérations en masse, incluse dans le plan Pro.
curl -X POST \
-H "Authorization: Bearer pdtk_abc123..." \
-H "Content-Type: application/json" \
-d '{"slugs": ["v1", "v2", "v3"], "updates": {"status_slug": "released"}}' \
https://polydrobe.app/api/v1/projects/cyber-skins/bulk/variants/update/
Endpoints disponibles
L’API REST atteint toutes les ressources de projet que PolyDrobe conserve, du catalogue lui-même jusqu’aux médias, aux modifications en masse, au journal d’activité et aux webhooks. Les groupes ci-dessous en forment l’ensemble complet. Chaque ressource s’adresse par une URL à base de slug.
Projects: GET|POST /v1/projects/
GET|PATCH|DELETE /v1/projects/{slug}/
Assets: GET|POST /v1/projects/{slug}/assets/
GET|PATCH|DELETE /v1/projects/{slug}/assets/{slug}/
Variants: GET|POST /v1/projects/{slug}/assets/{slug}/variants/
GET|PATCH|DELETE .../assets/{slug}/variants/{slug}/
GET /v1/projects/{slug}/variants/ (flat list)
Media: GET .../variants/{slug}/images/
PATCH|DELETE .../variants/{slug}/images/{uuid}/
GET .../variants/{slug}/textures/
DELETE .../variants/{slug}/textures/{uuid}/
Bundles: GET|POST /v1/projects/{slug}/bundles/
GET|PUT|PATCH|DELETE /v1/projects/{slug}/bundles/{slug}/
GET|POST /v1/projects/{slug}/bundles/{slug}/items/
DELETE .../bundles/{slug}/items/{variant_slug}/
Collections: GET|POST /v1/projects/{slug}/collections/
GET|PUT|PATCH|DELETE .../collections/{slug}/
GET .../collections/{slug}/items/
POST .../collections/{slug}/members/
DELETE .../collections/{slug}/members/{variant_slug}/
POST .../collections/{slug}/duplicate/
Classification: GET|POST /v1/projects/{slug}/{categories|tags|rarities|releases|currencies|statuses}/
PATCH|DELETE /v1/projects/{slug}/{entity}/{slug}/
Favorites: GET /v1/projects/{slug}/favorites/
POST|PUT|DELETE /v1/projects/{slug}/favorites/{kind}/{uuid}/
Team: GET|POST /v1/projects/{slug}/members/
PATCH|DELETE /v1/projects/{slug}/members/{user_id}/
Bulk: POST /v1/projects/{slug}/bulk/variants/update/
POST /v1/projects/{slug}/bulk/variants/delete/
Search: GET /v1/projects/{slug}/search/?q=term&type=all
Activity: GET /v1/projects/{slug}/activity/
Export: GET /v1/projects/{slug}/export/?format=json
Webhooks: GET|POST /v1/projects/{slug}/webhooks/
PATCH|DELETE /v1/projects/{slug}/webhooks/{uuid}/
Configuration du serveur MCPReliez vos assistants IA (Claude, ChatGPT) à PolyDrobe via le Model Context Protocol. Disponible avec le plan Pro.
1. Générer un jeton d’accès personnel
Ouvrez Paramètres de l’espace de travail > Jetons d’API et créez un jeton. Nommez-le d’après votre client IA (« Claude Desktop » ou « Claude Code », par exemple). Cochez les portées lecture et écriture, puis choisissez une longue durée de validité (1 an ou sans expiration). Copiez le jeton dès qu’il s’affiche : il n’apparaît qu’une seule fois.
# Your token will look like this: pdtk_a8f3b2c1d4e5f6a7b8c9d0e1f2a3b4c5... # Use this token in the configuration steps below. # The same token works for both REST API and MCP server.
2. Connecter Claude Desktop
Ajoutez le serveur MCP PolyDrobe à la configuration de Claude Desktop. Ouvrez claude_desktop_config.json et insérez cette entrée.
{
"mcpServers": {
"polydrobe": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://polydrobe.app/mcp"],
"env": {
"MCP_HEADERS": "Authorization: Bearer pdtk_abc123..."
}
}
}
}
3. Connecter Claude Code
Ajoutez le serveur MCP depuis le terminal avec la CLI Claude Code.
claude mcp add polydrobe \ --transport http \ --url https://polydrobe.app/mcp \ --header "Authorization: Bearer pdtk_abc123..."
4. Développement local (mode stdio)
En développement local, lancez le serveur MCP directement sur stdio, sans HTTP. Il s’authentifie d’avance sous l’utilisateur indiqué.
python manage.py mcp_stdio --user=your-username
# Claude Desktop config for local stdio:
{
"mcpServers": {
"polydrobe-local": {
"command": "python",
"args": ["manage.py", "mcp_stdio", "--user=your-username"],
"cwd": "/path/to/polydrobe"
}
}
}
5. Faire un premier essai
Une fois la connexion établie, posez à votre assistant IA des questions en langage naturel sur les données de votre projet.
# Example prompts for your AI assistant: "List all my projects" "Show me the assets in project 'cyber-skins'" "Create a new asset called 'Neon Jacket' in the 'outerwear' category" "Search for legendary variants with price above 20" "Set up categories: Headwear, Outerwear, Footwear, Accessories" "Tag all sword assets with 'melee' and 'weapon'" "Export the project data as JSON" "Give me a project overview with sample thumbnails"
Outils MCP disponibles
Chaque opération de lecture, d’écriture, de recherche et d’export de PolyDrobe est exposée comme un outil. Un assistant IA découvre l’ensemble à la connexion, regroupé par catégorie, sans rien à configurer.
Projects: list_projects, get_project, create_project,
update_project, delete_project
Assets: list_assets, get_asset, create_asset,
update_asset, delete_asset
Variants: list_variants, create_variant,
update_variant, delete_variant
Bundles: list_bundles, get_bundle, create_bundle,
update_bundle, delete_bundle, list_bundle_items,
add_bundle_item, remove_bundle_item,
find_bundles_containing_variant
Collections: collections_list, collections_get,
collections_create, collections_update,
collections_delete, collections_add_member,
collections_remove_member, collections_duplicate
Classification: list_categories, create_category, update_category,
delete_category, list_tags, create_tag, delete_tag,
list_rarities, create_rarity, list_releases,
create_release, list_currencies, create_currency,
list_statuses, create_status
Tags: add_asset_tags, remove_asset_tags,
add_variant_tags, remove_variant_tags
Favorites: list_favorites, add_favorite,
remove_favorite, toggle_favorite
Team: list_members, update_member_role, remove_member
Search: search (full-text across assets & variants)
Activity: get_activity_log
Images: fetch_variant_thumbnail, fetch_variant_image,
fetch_variant_texture, set_variant_thumbnail
Bulk: bulk_create_variants, bulk_update_variants,
bulk_delete_variants
Data: export_project, import_project_data
OAuth 2.1 en production (avancé)
Pour les pipelines CI/CD et les intégrations de serveur à serveur, vous pouvez employer le flux client credentials d’OAuth 2.1 à la place des jetons personnels. Contactez le support pour faire créer une application OAuth.
# Exchange client credentials for an access token: curl -X POST https://polydrobe.app/o/token/ \ -d "grant_type=client_credentials" \ -d "client_id=your-client-id" \ -d "client_secret=your-client-secret" \ -d "scope=read write" # For most use cases, personal access tokens from # Workspace Settings > API Tokens are simpler and sufficient.
Qui peut faire quoi
Trois rôles, découpés selon ce que chacun a besoin de modifier. Les visionneurs restent gratuits.
Propriétaire
Gère les paramètres projet, limites de plan et accès équipe.
- Paramètres du projet
- Facturation
- Gestion d'équipe
- Créer ou modifier des assets
- Import et export
- Navigation en lecture seule
Éditeur
Crée et met à jour actifs, variantes et données opérationnelles.
- Paramètres du projet
- Facturation
- Gestion d'équipe
- Créer ou modifier des assets
- Import et export
- Navigation en lecture seule
Visionneuse
Consulte les données projet pour revue, QA ou visibilité parties prenantes.
- Paramètres du projet
- Facturation
- Gestion d'équipe
- Créer ou modifier des assets
- Import et export
- Navigation en lecture seule
Questions fréquemment posées
Qu’est-ce que PolyDrobe ?
Quels types d’actifs PolyDrobe gère-t-il ?
PolyDrobe permet-il de prévisualiser les modèles 3D ?
Que vaut PolyDrobe face à Google Sheets pour suivre des actifs de jeu ?
En quoi PolyDrobe se distingue-t-il de Notion ou d’Airtable ?
Avec quels moteurs de jeu PolyDrobe est-il compatible ?
Les agents IA peuvent-ils interagir avec PolyDrobe ?
Quelle est la différence entre l’API REST et le serveur MCP ?
Comment obtenir un jeton d’accès à l’API ?
PolyDrobe gère-t-il le travail en équipe ?
Chaque skin doit-il être un actif ou une variante ?
Comment garder des noms cohérents ?
Puis-je partager des données projet en externe ?
Que comprend le plan Free ?
Les sièges Visionneuse comptent-ils dans la facturation ?
PolyDrobe est-il un produit SaaS ?
Puis-je importer dans PolyDrobe des données d’actifs existantes ?
Quelles colonnes le modèle d’import Google Sheets demande-t-il ?
Pourquoi mon import Google Sheets affiche-t-il « Les métadonnées de la feuille n’ont pas pu être chargées » ?
Faut-il connecter Google séparément pour chaque projet ?
Problèmes courants
Solutions rapides pour les problèmes les plus fréquents.
Permissions insuffisantes
Si une action est indisponible, vérifiez votre rôle et demandez un accès à un Propriétaire.
Erreurs de validation à l'import
Vérifiez champs requis, slugs de catégorie et valeurs enum avant réessai.
Problèmes d'envoi média
Vérifiez type de fichier, taille et stockage utilisé selon votre plan.
Google Sheets : « Les métadonnées de la feuille n’ont pas pu être chargées »
Le fichier est probablement un .xlsx importé plutôt qu’une feuille de calcul Google native. Ouvrez-le, choisissez File > Save as Google Sheets, puis cliquez sur Parcourir dans votre profil de synchronisation et sélectionnez le fichier converti. Vérifiez aussi que le compte Google connecté peut ouvrir la feuille de calcul.
Google Sheets : les feuilles Assets ou Variants échouent sur « Étiquette introuvable » ou « Catégorie introuvable »
Les entités référencées doivent exister avant que quoi que ce soit puisse pointer dessus. L’import parcourt les feuilles dans l’ordre (Currencies > Rarities > Releases > Tags > Categories > Assets > Variants) : une catégorie qui n’a pas pu être importée entraîne donc ses actifs avec elle. Lisez l’aperçu de l’exécution test depuis le haut et corrigez d’abord le type d’entité le plus en amont.
Google Sheets : le prix d’une variante est signalé « prix invalide »
L’import accepte le point (9.99) comme la virgule (9,99) en séparateur décimal. Si l’erreur persiste, cherchez des caractères parasites, des symboles monétaires ou des espaces dans la cellule du prix.