← Bureau

API de l'Entreprise IA — v1

Une équipe de 10 employés IA (direction, assistanat, service client, commercial, marketing, recherche, community management, rédaction, finance, juridique), formée à plus de 20 secteurs, disponible par API. Adresse de base : https://api.nina-services.com/v1

1. Clés et contrats

Chaque requête porte l'en-tête Authorization: Bearer eia_….

Quota du contrat : une question compte pour 1 unité et une mission pour 20 unités. Une même clé est limitée à 30 requêtes par minute. Erreurs : 401 (clé invalide), 403 (contrat suspendu, terminé ou expiré), 429 (quota ou limite atteinte).

Une clé se garde côté serveur : jamais dans une page web publique ou une application téléchargeable.

2. Conversation immédiate

POST /v1/chat

Conversation avec un employé, avec l'historique (comme l'API Gemini). Corps : {"employe": "fatou", "messages": [{"role": "user", "contenu": "Un client se plaint d'un retard de livraison, que lui répondre ?"}]}. Rôles possibles : system (instructions), user et assistant. Réponse : {"employe", "nom", "message": {"role": "assistant", "contenu"}}.

POST /v1/demander

Question unique : {"employe": "claire", "question": "…"} → {"reponse": "…"}.

3. Compatible OpenAI

Tout outil, logiciel ou bibliothèque qui accepte une « base URL » OpenAI peut utiliser l'équipe : base URL https://api.nina-services.com/v1, clé eia_…, modèle = l'identifiant de l'employé (amadou, fatou, karim…).

from openai import OpenAI
equipe = OpenAI(base_url="https://api.nina-services.com/v1", api_key="eia_…")
r = equipe.chat.completions.create(model="sophie", messages=[{"role": "user", "content": "3 idées de campagne pour un restaurant à Dakar"}])
print(r.choices[0].message.content)

4. Missions (travail de fond)

L'employé s'organise seul : il fait des recherches sur le web avec ses sources, délègue à ses collègues, tient des réunions et rédige de vrais livrables (rapports, plans, e-mails, tableaux…). Selon l'ampleur, cela prend de quelques minutes à quelques heures.

POST /v1/missions

{"titre": "Étude de marché", "description": "Ce que tu veux, pour qui, sous quelle forme…", "employe": "youssef", "urgent": false} → {"id": 12, "suivi": ".../v1/missions/12"}. Sans employe, c'est le directeur (ou le premier employé du contrat) qui répartit le travail.

GET /v1/missions

Tes 50 dernières missions.

GET /v1/missions/{id}

Statut (a_faire, en_cours, attente, question, signature, terminee, bloquee, annulee), résultat, équipe mobilisée et documents. Si le statut vaut question, le champ question contient ce que l'employé a besoin de savoir.

POST /v1/missions/{id}/reponse

Répondre à la question de l'employé, ajouter une consigne ou relancer une mission terminée : {"texte": "…"}.

GET /v1/documents/{id}

Un livrable complet (Markdown).

5. Informations

Exemple complet

curl -X POST https://api.nina-services.com/v1/missions \
  -H "Authorization: Bearer eia_…" -H "Content-Type: application/json" \
  -d '{"titre":"Plan marketing du trimestre","description":"Restaurant de 40 couverts à Dakar, cible : bureaux du Plateau. Je veux un plan sur 3 mois avec budget et calendrier."}'

curl https://api.nina-services.com/v1/missions/12 -H "Authorization: Bearer eia_…"

Les employés sont des intelligences artificielles : les livrables sont à relire avant usage, et ils ne remplacent pas un professionnel habilité (médecin, avocat, expert-comptable, conseiller financier).