CCercle API / EXCHANGE
UADIA · CERCLE SOCIAL MEDIA · V0.7

Cercle
API.

Les contenus circulent. Les structures restent souveraines. Une interface bidirectionnelle pour recevoir et distribuer les publications.

COMPTE CERCLE REQUISHTTPS · MULTIPARTPHP 8.3CLÉS RÉVOCABLES18 SEGMENTS ISOLÉS
TRANSPORT DIRECT / BINAIRE
/ EXCHANGE SEQUENCEREADY TO INTEGRATE
01
ReceivePOST · multipart/form-data
↘
02
ValidateIdentité · droits · colonnes SQL · médias
↘
03
PublishCréation native du segment concerné
✓
1 requête · 1 segment applicatif · n fichiers réels
01 · FONDEMENTS

Conçue vers la communication et sa
circulation sociale.

Une architecture compacte de transmission directe : le protocole transporte les publications et leurs médias au sein de Cercle et entre les réseaux compatibles.

01 / TRANSPORT

HTTPS multipart

Le JSON accompagne directement les fichiers. Aucun encodage Base64, aucune recherche d’URL externe pour récupérer une image ou une vidéo transmise.

Données et octets · une requête
02 / STRUCTURE

Format natif

La publication reste un objet nommé selon son segment : SeasePost, ArticlePost ou les autres contrats déjà présents. Les champs reprennent les colonnes réelles.

Aucune table générique ajoutée
03 / DISTRIBUTION

Flux bidirectionnel

Exporter, recevoir ou distribuer vers un pair autorisé. Le connecteur ne mobilise que l’application concernée et le transport configuré pour cette destination.

Destinations contrôlées · droits vérifiés
02 · IDENTITÉ & ACCÈS

Une identité.
Des clés maîtrisées.

Un compte Cercle permet de générer la clé dans Myaccount → onglet Cercle API → Générer ma clé. Une fois attribuée, la clé suffit pour envoyer des requêtes depuis un terminal ou un serveur : aucune connexion au navigateur Cercle n'est nécessaire.

01

Attribution depuis MyaccountOuvre l'onglet Cercle API, nomme une intégration, choisis ses droits, puis clique sur Générer ma clé. Cette gestion utilise la session de ton compte Cercle.

02

Copie de la cléConserve le secret affiché une seule fois dans ton outil serveur ou ton terminal. Myaccount permet ensuite de modifier, renouveler et révoquer les clés.

03

Requête autonomePrésente Authorization: Bearer …. Le serveur vérifie l'empreinte, l'expiration, le droit demandé et la propriété du post, sans réclamer de cookie ni de session navigateur.

KEY / CERCLE USER

GET /main/src/php/CercleExchangeAPI/api/CercleExchangeAPI.php?action=export&segment=ArticlePost&id=15
Authorization: Bearer cercle_v1.<user>.<key_id>.<secret>
Accept: application/json
Stockage : une colonne JSON users.CercleAPIKeys. Le secret est visible une seule fois, à sa génération ; la base conserve uniquement son empreinte SHA-256 et ses permissions.
Portée des clés : export, receive et send. Les opérations non accordées répondent 403. L'expiration ou la révocation ferme l'accès.
03 · TRANSMISSION

Éphéral ou
éternel.

Une URL de source demande au destinataire de retrouver le média. Avec multipart, le fichier est réellement expédié dans le corps de la requête HTTPS.

01

Métadonnées utilesUn JSON unique avec les champs obligatoires du segment choisi. Aucun ajout artificiel.

02

Média binaireUn ou plusieurs fichiers directement rattachés à leurs bases mémoire.

03

Publication vérifiéeLe serveur contrôle les fichiers et crée le post via son créateur natif.

RECEIVE / SEASEPOST

curl -X POST \
  'https://votre-domaine.example/main/src/php/CercleExchangeAPI/api/CercleExchangeAPI.php?action=receive&segment=SeasePost' \
  -H 'Authorization: Bearer <CLÉ_CRÉÉE_DANS_MYACCOUNT>' \
  -H 'Idempotency-Key: <CLÉ_UNIQUE_12+>' \
  -F 'post={"SeasePost":{"seaseTitle":"Un film","description_seasePost":"Présentation du film"}}' \
  -F 'media[url_video_seasePost][0]=@film.mp4;type=video/mp4'
POST multipart : le champ post est du JSON ; media[url_video_seasePost][0] contient les octets du fichier.
04 · GUIDELINE TECHNIQUE

Un socle.
Et plus de segments.

Cette stabilité vient des frontières : l’API contrôle le transport et les droits. Une requête Sease ne dépend ni de Beamline ni d’InfineGames.

01 / CONTRAT

Structure minimale, données entières

Le JSON doit contenir toutes les colonnes obligatoires de son opération, avec leurs noms exacts. Les valeurs absentes ne sont pas remplacées par des false factices. Les fichiers sont envoyés à part dans la même requête multipart.

02 / SÉCURITÉ

Autorisation avant publication

Session et CSRF pour un utilisateur connecté ; Bearer autorisé et clé d’idempotence vers un pair. La session sert à gérer les clés dans Myaccount ; pour la transmission depuis un terminal, la clé Bearer suffit. Les destinations restent contrôlées par le serveur.

03 / INFRASTRUCTURE

PHP-FPM, Nginx et MariaDB

Réutilisation du mode créateur natif UADIA et de oracle_connect.php. Configurer la taille maximale des requêtes dans Nginx et PHP, ainsi qu’un répertoire média existant accessible au serveur. Aucun nouveau service Rust obligatoire.

04 / COMPATIBILITÉ

Chaque média et son champ réel

url_video_seasePost est associé à un fichier vidéo reçu. url_image_articlePost à une image. Les segments dont l’adaptateur de création n’est pas raccordé conservent une réponse explicite 501.

La capacité du protocole à transmettre des fichiers quelconques ne signifie pas qu'une table mémoire accepte tous les types de médias. Les formats effectivement publiables suivent les segments mémoires et les créateurs Cercles.
05 · POINTS D'ENTRÉE

Simple à lire.
Précis à exécuter.

Une même interface PHP dessert les opérations. Les paramètres de transport et d’identification restent dans la requête HTTP ; le JSON du contenu conserve uniquement son segment applicatif.

GET?action=export&segment=SeasePost&id=15Lire un post autorisé
POST?action=receive&segment=SeasePostJSON ou multipart
POST?action=sendDistribuer vers un pair

Point d’entrée : /main/src/php/CercleExchangeAPI/api/CercleExchangeAPI.php

06 · DISTRIBUTION SORTANTE

Chaque destination
est octroyée de ses capacités propres.

Pour envoyer les octets au pair compatible, le serveur sélectionne multipart dans sa configuration de destination. Sans autorisation de transmettre les fichiers, il ne les remplace pas silencieusement par des URL.

La réception extérieure exige un compte et une clé autorisée côté destinataire ; les APIs tierces — réseaux sociaux et médias — conservent leurs propres règles de publication et d’autorisation.

SEND / PARAMÈTRES DE COMMANDE

{
  "segment": "SeasePost",
  "id": 15,
  "destination": "reseau_partenaire"
}
Configuration serveur de la destination : "transport":"multipart". Ce paramètre n’est pas injecté dans le JSON du post.
CERCLE · OPEN DISTRIBUTION

Connecter les contenus
et conserver leur identité.

Interface API Cercle Social Media préparée et prête à être utilisée dans l'infrastructure technologique UADIA.

Retour au début ↑