Skip to main content

3d models

Skin Tokens API

Gérer un personnage à la main est un travail de spécialiste lent. Skin Tokens le fait automatiquement : envoyez un maillage de personnage GLB et récupérez un GLB truqué avec un squelette ajusté et des poids de skinning par sommet - $0.30 par tâche, aucun gréeur dans la boucle.

Commencer !

Skin Tokens API Pricing

Pay-as-you-go access through PiAPI.

Auto-Rigmesh2rig

$0.30

Rig one GLB character mesh, up to 80,000 triangles.

Ce que font les jetons de skin

Un point final, une tâche : transformez un maillage statique en un maillage animable.

Rigging sans Rigger

Soumettez un maillage de personnage 3D et des jetons de peau s'adaptent à un squelette et résolvent les poids de skinning par sommet pour vous. Un maillage arrivé statique laisse animable, sans passe de rigging manuel.

GLB Entrée, GLB Sortie

L'entrée est un binaire glTF 2.0 valide (GLB) comprenant jusqu'à des triangles 80, 000, donné sous la forme d'un URL accessible au public ou d'un URI de données base64. La réponse renvoie un GLB truqué dans output.model_file contenant le maillage d'origine, le squelette ajusté et les poids de skinning.

Plat $0.30 Par tâche

Chaque tâche de rig coûte le même quelle que soit la complexité du maillage, de sorte que le coût de rigging d'une bibliothèque de personnages entière est prévisible avant de commencer.

Asynchrone par conception

Créez une tâche, puis interrogez le point de terminaison d'extraction jusqu'à ce qu'il atteigne un état terminal. Rien ne bloque votre fil de requête pendant le traitement d'un maillage. Notifications du webhook

Webhook Notifications

Fournissez config.webhook_config.endpoint et un secret facultatif pour recevoir un rappel lorsqu'une tâche se termine ou échoue. Dédupliquez les rappels par task_id et récupérez la tâche pour confirmer l'état final. Identificateurs d'articulations stables

Les articulations squelettes

utilisent des identifiants stables bone_0 à bone_N sans étiquettes sémantiques, ce qui permet de garder la dénomination et le reciblage humanoïde sous le contrôle de votre propre pipeline plutôt que de deviner les conventions. Questions fréquemment posées sur

Get started

Create your API key

Sign up and grab an API key from the PiAPI workspace — free credits are included on sign-up.

Top up credits

Add credits on the billing page when you are ready to scale beyond the free tier.

Call the API

POST your first task following the API docs, then poll the task until the result is ready.

Iterate in the playground

Prototype prompts and settings in the the playground above before wiring them into your product.

curl -X POST 'https://api.piapi.ai/api/v1/task' \
  -H 'X-API-Key: YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
    "model": "Qubico/skin-tokens",
    "task_type": "rig",
    "input": {
      "model": "YOUR_GLB_URL",
      "seed": -1,
      "bone_names": "original"
    }
  }'

# → { "task_id": "9d5a…", "status": "pending" }

Frequently Asked Questions

Qu'est-ce que les jetons de skin API ?

Skin Tokens crée automatiquement un maillage de personnage 3D. Vous soumettez un maillage GLB et recevez un GLB truqué contenant le maillage d'origine, un squelette ajusté et des poids de skinning par sommet.

Quel mesh puis-je envoyer ?

Un binaire glTF 2.0 valide (GLB) ne comportant pas plus de triangles 80, 000, fourni soit sous forme d'URI URL accessible au public, soit sous forme d'URI de données base64. Un maillage humanoïde propre dans une pose neutre produit généralement la plate-forme la plus fiable.

Combien ça coûte ?

$0.30 par tâche d'installation.

Les os sont-ils nommés ?

Non. Les articulations squelettiques utilisent des identifiants stables bone_0 à bone_N sans étiquettes sémantiques. Si votre pipeline a besoin d’os humanoïdes nommés, mappez-les lors de votre propre étape de reciblage.

Le API est-il synchrone ?

Non. Le rigging est une tâche asynchrone : créez la tâche, puis interrogez le point de terminaison de récupération jusqu'à ce qu'il atteigne un état terminal. Vous pouvez également enregistrer un webhook pour être averti lorsque la tâche est terminée ou échoue.

À quoi sert le paramètre seed ? La valeur de départ

est facultative et la valeur par défaut est -1, qui utilise une valeur de départ aléatoire. Définissez-le sur une valeur fixe lorsque vous souhaitez un résultat reproductible pour le même maillage d'entrée.

Que se passe-t-il si une tâche échoue ?

La tâche atteint un état d'échec du terminal, que vous observez soit en interrogeant le point de terminaison de récupération, soit via votre webhook. Récupérez la tâche pour confirmer l'état final avant de réessayer.

More questions? See the API docs.