I’m facing an issue when using the API Connector in Bubble. For example, I’m trying to send a CV and a job offer to the API so it can adapt the CV to the offer, but I’m having trouble retrieving the dynamic fields correctly.
Here is the API request I’m using to send the information:
In my Bubble app, I’m trying to retrieve the CV and job offer from the database fields, using something like Current Page's Candidature's TextFormat for the CV and Current Page's Candidature's CVFormat for the job offer. However, when I pass these values into the API, they are not retrieved and sent properly.
Here’s what I’ve tried:
I’ve set up the API in Bubble and replaced the fields with Current Page's Candidature's TextFormat and Current Page's Candidature's CVFormat in the corresponding spots.
Despite that, I’m not able to get the API to correctly retrieve these values and use them in the request.
Can anyone help me understand why this isn’t working? Is it a formatting issue or a problem with how I’m passing the dynamic values to the API?
Also, you may consider making CV and Offre data using the :formatted as json-safe. To do that, you will need to remove the double quotes around theses dynamic fields because Bubble will add them for you.
Vous ne comprenez pas réellement ce que l’on dit avec la partie “dynamique” de l’expression. La première étape sera de supprimer les “value” que vous avez pour CV et offre et inscrire de réelle possibles valeurs (comme vous auriez dans votre BD pour textformat et csvformat. D’ailleurs, enlever formatted as json-safe the l’action create a new extractpdf)
Ne pas oublier de mettre les guillemets dans cette valeur. Une fois ces valeurs inscrites, faites initialize pour l’API call. Si la réponse est bonne, enregistrez-là. À partir de ce ce moment, vous pourrez utiliser cet API soit dans Get data from API (si vous utilisez l’appel en DATA) ou dans les workflow si vous le mettez en action (dans ce cas-ci, ça me semble plus approprié).
C’est dans cet action que vous utiliserez les valeurs dynamique du genre Current page’s Extract PDF’s TextFormat:formatted as json-safe.
Je vous invite à chercher et regarder des tutoriels youtube ou autre pour comprendre le fonctionnement de l’API connector. de nombreux exemples existent aussi pour chatGPT.
Merci pour vos explications détaillées. J’ai regardé pas mal de tutoriel (ex: https://www.youtube.com/watch?v=nO8PSqeJaWk). Et je ne trouve pas trop les réponses à mes questions.
Pour tout vous dire, vos explications dans le premiers paragraphe sont totalement ce que j’ai réalisé à la base, il y a juste la partie “Current page’s Extract PDF’s TextFormat:formatted as json-safe.” que j’ai du mal à savoir où je dois positionner cela
Par exemple j’ai ajouté cela directement dans le Body de l’appel API que je réalise dans mon workflow mais cela remonte une erreur 400. J’ai cherché pendant des heures où bien le positionner mais je ne trouve pas et mes tests ne sont pas concluant Est-ce bien là ?
Dans mon premier post mes explications et ma réalisation ne sont pas de bonne qualité, veuillez m’excuser j’ai tellement testé plein de choses que je me suis perdu
Le problème vient du content dans role user.
Dans API connector, cela devrait être "content":<content>
Dans l’onglet dynamique ce sera arbitrary-text:formatted as json-safe. Dans le arbitrary text tu auras quelque chose comme:
Voici le CV: Current page's extractPDF's TextFormat et voici l'offre d'emploi: Current page's ExtractPDF's CVFormat. Merci d'adapter le CV pour cette offre.
Ma dernière capture d’écran ne s’est pas chargée, il y a deux role user dans api connector. Un pour le CV et un pour l’offre d’emploi, je suppose que cela change quelque chose ?
Oui mais le même concept s’applique
Tu n’as qu’à prendre un nom différent pour <content>comme <content_1> et <content_2> (mais vaut mieux choisir un titre plus représentatif )
L’appel API fonctionne bien ! Un grand merci pour votre aide (et votre patience )
Maintenant il faut que je cherche pourquoi les champs Current page’s extractPDF TextFormat et CVFormat ne se semble pas se tranmettre à l’API (les champs content et content offre restent vides)