Aller au contenu

Référence des outils

Upwork

Upwork. 19 outils, avec leurs paramètres et des exemples d’appel.

Outils de l’agent Upwork : offres publiques lues, notées et rédigées depuis la base de connaissances du workspace. Rien n’est envoyé à Upwork.

Chaque appel est une requête POST avec la clé en Authorization: Bearer. Le corps JSON est l’entrée de l’outil, et la réponse a la forme { "tool": "nom", "output": … }. Les exemples ne portent que les paramètres requis. Les descriptions des paramètres sont celles que lisent les agents, en anglais.

searchUpworkJobs#

Lit une page de résultats publics (une dizaine d’offres) et note chaque offre selon la base de connaissances. Les offres sont ajoutées au pipeline du workspace.

POSThttps://piqline.com/api/v1/tools/searchUpworkJobs

Type : Lecture en direct. Scopes : explore.

ParamètreTypeRequisDescription
qstringOuiKeywords as a client would write them in a job post, e.g. 'next.js developer'
jobTypeany | hourly | fixedNon
hourlyMinintegerNonHourly rate floor in USD
hourlyMaxintegerNon
fixedMinintegerNonFixed-price budget floor in USD
fixedMaxintegerNon
experiencearray<entry | intermediate | expert>Non
proposalsarray<0-4 | 5-9 | 10-14 | 15-19 | 20-49>NonKeep only jobs with this many proposals so far (less competition)
clientHiresarray<0 | 1-9 | 10+>Non
pageintegerNon
scorebooleanNonScore each job against the knowledge base (judge capped at 12 per call)
persistbooleanNonAdd the jobs to the workspace pipeline (upwork_pipeline)
curl -s https://piqline.com/api/v1/tools/searchUpworkJobs \
  -H "Authorization: Bearer $PIQLINE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"q":"levée de fonds"}'

getUpworkJob#

Lit une offre : description, compétences, budget, activité, client. Ajoute un instantané daté au pipeline.

POSThttps://piqline.com/api/v1/tools/getUpworkJob

Type : Lecture en direct. Scopes : explore.

ParamètreTypeRequisDescription
urlstringOui
scorebooleanNon
curl -s https://piqline.com/api/v1/tools/getUpworkJob \
  -H "Authorization: Bearer $PIQLINE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://exemple.fr/article"}'

scoreUpworkJobs#

Note à nouveau les offres du pipeline après un changement de la base de connaissances. Aucune page n’est lue.

POSThttps://piqline.com/api/v1/tools/scoreUpworkJobs

Type : Écriture. Scopes : write.

ParamètreTypeRequisDescription
jobIdsarray<string>Oui
curl -s https://piqline.com/api/v1/tools/scoreUpworkJobs \
  -H "Authorization: Bearer $PIQLINE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"jobIds":["texte"]}'

getUpworkRadar#

Radar de marché : volume par jour, quartiles de tarif et de budget, compétences, concurrence, pays des clients.

POSThttps://piqline.com/api/v1/tools/getUpworkRadar

Type : Lecture en direct. Scopes : explore.

ParamètreTypeRequisDescription
searchobjectNon
curl -s https://piqline.com/api/v1/tools/getUpworkRadar \
  -H "Authorization: Bearer $PIQLINE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'

listUpworkLeads#

Pipeline Upwork : compte par statut, meilleures offres d’abord, issue de chacune.

POSThttps://piqline.com/api/v1/tools/listUpworkLeads

Type : Lecture. Scopes : read.

ParamètreTypeRequisDescription
statusarray<new | shortlisted | drafted | submitted | viewed | replied | interview | won | …>Non
minScoreintegerNon
limitintegerNon
curl -s https://piqline.com/api/v1/tools/listUpworkLeads \
  -H "Authorization: Bearer $PIQLINE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'

updateUpworkLead#

Change le statut d’une offre du pipeline (envoyée, réponse, entretien, gagnée, perdue, ignorée) et garde une note.

POSThttps://piqline.com/api/v1/tools/updateUpworkLead

Type : Écriture. Scopes : write.

ParamètreTypeRequisDescription
jobIdstringOui
statusnew | shortlisted | drafted | submitted | viewed | replied | interview | won | …Oui
notestringNon
curl -s https://piqline.com/api/v1/tools/updateUpworkLead \
  -H "Authorization: Bearer $PIQLINE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"jobId":"5a0e9c1f-2b7d-4e63-8f14-d3c8a6b92e70","status":"new"}'

getUpworkKnowledge#

Base de connaissances Upwork du workspace : services, outils, projets à éviter, tarifs plancher, études de cas, ton, signature.

POSThttps://piqline.com/api/v1/tools/getUpworkKnowledge

Type : Lecture. Scopes : read.

Cet outil n’attend aucun paramètre : envoyez un corps vide, {}.

curl -s https://piqline.com/api/v1/tools/getUpworkKnowledge \
  -H "Authorization: Bearer $PIQLINE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'

updateUpworkKnowledge#

Met à jour la base de connaissances. Les listes envoyées remplacent les listes stockées.

POSThttps://piqline.com/api/v1/tools/updateUpworkKnowledge

Type : Écriture. Scopes : write.

ParamètreTypeRequisDescription
namestringNon
headlinestringNon
servicesarray<string>Non
toolsarray<string>Non
avoidarray<string>NonKinds of projects to never bid on, as short phrases or keywords
languagesarray<string>Non
hourlyMinnumberNonLowest acceptable hourly rate, USD
fixedMinnumberNonLowest acceptable fixed budget, USD
freelancerCountrystringNon
caseStudiesarray<object>Non
examplesarray<object>Non
tonestringNon
signaturestringNon
curl -s https://piqline.com/api/v1/tools/updateUpworkKnowledge \
  -H "Authorization: Bearer $PIQLINE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'

listUpworkTemplates#

Modèles de proposition enregistrés, avec leurs emplacements et leurs règles de questions.

POSThttps://piqline.com/api/v1/tools/listUpworkTemplates

Type : Lecture. Scopes : read.

Cet outil n’attend aucun paramètre : envoyez un corps vide, {}.

curl -s https://piqline.com/api/v1/tools/listUpworkTemplates \
  -H "Authorization: Bearer $PIQLINE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'

upsertUpworkTemplate#

Crée ou met à jour un modèle de proposition.

POSThttps://piqline.com/api/v1/tools/upsertUpworkTemplate

Type : Écriture. Scopes : write.

ParamètreTypeRequisDescription
idstringOuiStable slug; reuse it to update
namestringOui
bodystringOuiLiteral text kept word for word. { {instruction} } = filled per job by the writer. { {var:job.title} } etc. = filled by code.
questionRulesarray<object>Non
curl -s https://piqline.com/api/v1/tools/upsertUpworkTemplate \
  -H "Authorization: Bearer $PIQLINE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"id":"5a0e9c1f-2b7d-4e63-8f14-d3c8a6b92e70","name":"texte","body":"texte"}'

draftUpworkProposal#

Rédige une proposition pour une offre à partir d’un modèle. Le texte reste à coller soi-même sur Upwork.

POSThttps://piqline.com/api/v1/tools/draftUpworkProposal

Type : Écriture. Scopes : write, explore.

ParamètreTypeRequisDescription
urlstringNonUpwork job URL
jobIdstringNonJob id already in the pipeline, e.g. ~022113077029286601014
templateIdstringNonTemplate id or name; default = first saved template, else the built-in one
screeningQuestionsarray<string>NonScreening questions copied verbatim from the job
extraInstructionsstringNon
curl -s https://piqline.com/api/v1/tools/draftUpworkProposal \
  -H "Authorization: Bearer $PIQLINE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'

listUpworkCampaigns#

Campagnes enregistrées : recherche, score minimum, statut, dernière actualisation, santé de la source.

POSThttps://piqline.com/api/v1/tools/listUpworkCampaigns

Type : Lecture. Scopes : read.

Cet outil n’attend aucun paramètre : envoyez un corps vide, {}.

curl -s https://piqline.com/api/v1/tools/listUpworkCampaigns \
  -H "Authorization: Bearer $PIQLINE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'

saveUpworkCampaign#

Crée ou met à jour une campagne : nom, recherche, score minimum, modèle.

POSThttps://piqline.com/api/v1/tools/saveUpworkCampaign

Type : Écriture. Scopes : write.

ParamètreTypeRequisDescription
idstringNonStable slug; reuse it to update an existing campaign
namestringOui
searchobjectOui
minScoreintegerNon
templateIdstringNon
curl -s https://piqline.com/api/v1/tools/saveUpworkCampaign \
  -H "Authorization: Bearer $PIQLINE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name":"texte","search":{"q":"levée de fonds"}}'

simulateUpworkCampaign#

Simule une campagne sur de vraies offres avant de la suivre. Rien n’est enregistré.

POSThttps://piqline.com/api/v1/tools/simulateUpworkCampaign

Type : Lecture en direct. Scopes : explore.

ParamètreTypeRequisDescription
campaignIdstringNon
campaignobjectNon
pagesintegerNon
curl -s https://piqline.com/api/v1/tools/simulateUpworkCampaign \
  -H "Authorization: Bearer $PIQLINE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'

followUpworkCampaign#

Demande au Motor de suivre une campagne enregistrée, à son rythme de collecte.

POSThttps://piqline.com/api/v1/tools/followUpworkCampaign

Type : Action. Scopes : act.

ParamètreTypeRequisDescription
campaignIdstringOui
namestringNonNom de la campagne, pour la carte de confirmation.
curl -s https://piqline.com/api/v1/tools/followUpworkCampaign \
  -H "Authorization: Bearer $PIQLINE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"campaignId":"5a0e9c1f-2b7d-4e63-8f14-d3c8a6b92e70"}'

pauseUpworkCampaign#

Arrête le suivi d’une campagne par le Motor. Les offres déjà vues restent dans le pipeline.

POSThttps://piqline.com/api/v1/tools/pauseUpworkCampaign

Type : Action. Scopes : act.

ParamètreTypeRequisDescription
campaignIdstringOui
namestringNonNom de la campagne, pour la carte de confirmation.
curl -s https://piqline.com/api/v1/tools/pauseUpworkCampaign \
  -H "Authorization: Bearer $PIQLINE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"campaignId":"5a0e9c1f-2b7d-4e63-8f14-d3c8a6b92e70"}'

refreshUpworkCampaigns#

Actualise les campagnes suivies : fusionne les offres collectées par le Motor, relit la première page en direct, note les nouvelles offres.

POSThttps://piqline.com/api/v1/tools/refreshUpworkCampaigns

Type : Écriture. Scopes : write, explore.

ParamètreTypeRequisDescription
campaignIdstringNon
livebooleanNon
curl -s https://piqline.com/api/v1/tools/refreshUpworkCampaigns \
  -H "Authorization: Bearer $PIQLINE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'

checkUpworkOutcomes#

Relit les pages des candidatures en cours pour dater leur issue : clôturée, entretiens commencés, sans réponse.

POSThttps://piqline.com/api/v1/tools/checkUpworkOutcomes

Type : Écriture. Scopes : write, explore.

ParamètreTypeRequisDescription
jobIdsarray<string>Non
limitintegerNon
curl -s https://piqline.com/api/v1/tools/checkUpworkOutcomes \
  -H "Authorization: Bearer $PIQLINE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'

syncUpworkReplies#

Lit les e-mails de notification Upwork des boîtes connectées du créateur de la clé et fait avancer le statut des offres du pipeline.

POSThttps://piqline.com/api/v1/tools/syncUpworkReplies

Type : Écriture. Scopes : write.

ParamètreTypeRequisDescription
accountIdstringNon
limitintegerNon
curl -s https://piqline.com/api/v1/tools/syncUpworkReplies \
  -H "Authorization: Bearer $PIQLINE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'

Une question sur l’API, ou une erreur dans cette page ? Écrivez-nous.