API

L'API OneScrip permet à vos propres systèmes et scripts d'ajouter des publications (éléments) dans OneScrip, y compris avec des images ou des vidéos.

Créer une clé API

  1. Dans le tableau de bord OneScrip, ouvrez « Clés API » dans la barre latérale
  2. Cliquez sur « Créer une nouvelle clé »
  3. Saisissez un libellé facile à reconnaître et, dans les autorisations, cochez « Ajouter des éléments (publications, images, vidéos) »
  4. Cliquez sur « Créer » et copiez le secret affiché

Le secret n'est affiché qu'une seule fois, juste après la création de la clé. OneScrip ne le conserve pas : il ne peut pas être affiché à nouveau. En cas de perte, supprimez la clé et créez-en une nouvelle.

  • Seuls les propriétaires et les administrateurs du projet peuvent créer ou supprimer des clés API
  • Le nombre de clés disponibles dépend de votre forfait
  • Une clé n'a accès qu'aux données du projet pour lequel elle a été créée

Principes de base

ÉlémentDétails
URL de basehttps://api.onescrip.com/v1
AuthentificationEn-tête Authorization: Bearer <clé API> ou X-API-Key: <clé API>
Limite de débit60 requêtes par minute et par clé API
Format de réponseJSON

Traitez votre clé API comme un mot de passe et ne l'utilisez que depuis des environnements sûrs, comme un serveur ou un script. Les appels depuis du JavaScript exécuté dans un navigateur (CORS) ne sont pas pris en charge.

Lister les contenus

GET /contents

Renvoie les contenus de votre projet. Utilisez cette requête pour trouver l'id du contenu auquel ajouter des publications.

curl https://api.onescrip.com/v1/contents \
  -H "Authorization: Bearer $ONESCRIP_API_KEY"
{
  "contents": [
    {
      "id": "6f1c2a4e-....",
      "name": "Publications du compte officiel",
      "description": null,
      "type": "social",
      "folderId": null
    }
  ]
}

Seuls les contenus dont le type est social acceptent des publications.

Ajouter une publication

POST /contents/{contentId}/items

Envoyez les publications en texte seul au format JSON. Pour joindre des images ou des vidéos, utilisez multipart/form-data.

ParamètreTypeDescription
valuechaîne (obligatoire)Texte de la publication, 1000 caractères maximum
keychaîneClé facultative pour identifier la publication
imagesfichierFichier image. JPEG / PNG / WebP / GIF, 5 Mo maximum chacun
imageUrlstableau de chaînesURL d'images. OneScrip télécharge et enregistre les images
videofichierFichier vidéo. MP4 / WebM / MOV / AVI, 50 Mo maximum
videoUploadIdchaîneID d'une grande vidéo envoyée au préalable (voir plus bas)
videoThumbnailfichierMiniature de la vidéo. Si elle est omise, elle est générée à partir de la vidéo
  • Vous pouvez joindre jusqu'à 4 images au total (images et imageUrls), ou 1 vidéo
  • Une publication ne peut pas contenir à la fois des images et une vidéo
  • Les images sont converties en WebP lors de l'enregistrement

En cas de succès, l'API renvoie 201 avec l'ID de la nouvelle publication.

{ "id": "0b8d5c1f-...." }

Publication en texte seul

curl -X POST https://api.onescrip.com/v1/contents/$CONTENT_ID/items \
  -H "Authorization: Bearer $ONESCRIP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"value": "Notre nouveau produit est disponible"}'

Publication avec images

curl -X POST https://api.onescrip.com/v1/contents/$CONTENT_ID/items \
  -H "Authorization: Bearer $ONESCRIP_API_KEY" \
  -F "value=Notre nouveau produit est disponible" \
  -F "images=@./photo1.jpg" \
  -F "images=@./photo2.png"

Les URL d'images peuvent être envoyées en JSON.

curl -X POST https://api.onescrip.com/v1/contents/$CONTENT_ID/items \
  -H "Authorization: Bearer $ONESCRIP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"value": "Notre nouveau produit est disponible", "imageUrls": ["https://example.com/photo.jpg"]}'

Publication avec une vidéo

Les vidéos d'environ 30 Mo maximum peuvent être jointes directement.

curl -X POST https://api.onescrip.com/v1/contents/$CONTENT_ID/items \
  -H "Authorization: Bearer $ONESCRIP_API_KEY" \
  -F "value=Une publication avec une vidéo" \
  -F "video=@./movie.mp4"

Envoyer une grande vidéo

Une requête est limitée à environ 32 Mo. Pour les vidéos plus lourdes (jusqu'à 50 Mo), suivez ces trois étapes.

1. Demander une URL d'envoi

POST /contents/{contentId}/video-uploads
curl -X POST https://api.onescrip.com/v1/contents/$CONTENT_ID/video-uploads \
  -H "Authorization: Bearer $ONESCRIP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"contentType": "video/mp4", "size": 41943040}'

Indiquez dans contentType l'une des valeurs video/mp4, video/webm, video/quicktime ou video/x-msvideo, et dans size la taille du fichier en octets.

{
  "uploadId": "3e7a9b20-....",
  "uploadUrl": "https://storage.googleapis.com/....",
  "method": "PUT",
  "headers": {
    "Content-Type": "video/mp4",
    "Cache-Control": "private, max-age=0",
    "x-goog-if-generation-match": "0"
  }
}

2. Envoyer le fichier vidéo

Envoyez le fichier avec PUT vers uploadUrl, en ajoutant tous les en-têtes de headers. L'envoi échoue s'il en manque un.

curl -X PUT "$UPLOAD_URL" \
  -H "Content-Type: video/mp4" \
  -H "Cache-Control: private, max-age=0" \
  -H "x-goog-if-generation-match: 0" \
  --data-binary @./movie.mp4

3. Ajouter la publication

Indiquez dans videoUploadId l'uploadId obtenu à l'étape 1.

curl -X POST https://api.onescrip.com/v1/contents/$CONTENT_ID/items \
  -H "Authorization: Bearer $ONESCRIP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"value": "Une publication avec une vidéo", "videoUploadId": "3e7a9b20-...."}'

Les URL d'envoi expirent 15 minutes après leur émission.

Erreurs

Les erreurs renvoient un message au format suivant.

{ "error": "Invalid API key" }
StatutSignificationCauses fréquentes
400Données invalidesTexte vide, type ou taille de fichier non pris en charge, images et vidéo jointes ensemble
401Échec de l'authentificationClé API absente, incorrecte ou supprimée
403Action non autoriséeLa clé n'a pas l'autorisation, ou la limite de publications ou de stockage du forfait est atteinte
404IntrouvableL'ID du contenu est incorrect ou appartient à un autre projet
429Trop de requêtesLimite de débit dépassée. Patientez un instant puis réessayez

Questions fréquentes

Les publications ajoutées via l'API sont-elles publiées immédiatement ?

Les publications ajoutées via l'API sont enregistrées dans le contenu comme celles ajoutées depuis le tableau de bord. Leur publication suit les paramètres et la planification du contenu.

Que faire si ma clé API a fuité ?

Supprimez la clé depuis « Clés API » dans le tableau de bord. Une clé supprimée cesse immédiatement de fonctionner.

Commencez par créer un compte

Les fonctionnalités de base de OneScrip sont disponibles gratuitement. Vous pouvez changer ou annuler votre plan à tout moment.

S'inscrire gratuitement