Skip to main content
llms.txt

Créer, publier et gérer des offres via l’API

Consultez les offres actives, créez un brouillon, vérifiez le financement, confirmez la publication et traitez les doublons ou les réponses incertaines.

Lire les offres actives

GET /v2/jobs exige jobs:read, read ou une permission accordant cette lecture.

ParamètreSignification
qRecherche dans le titre, l’entreprise et les tags.
job_typefulltime, parttime, freelance, contract ou internship.
remoteUtilisez true pour les offres à distance uniquement. Omettez ce paramètre ou utilisez false pour inclure tous les modes de travail.
cityIdentifiant URL de ville, par exemple berlin.
page, per_pageLa numérotation commence à 1. Par défaut, 20 résultats par page, maximum 50.
curl --fail-with-body --max-time 30   'https://api.coworkies.com/v2/jobs?city=berlin&job_type=fulltime'   -H "X-API-Key: ${COWORKIES_API_KEY}"

Une clé d’espace renvoie les offres actives de cet espace dans data.jobs. Suivez data.pagination.next tant que has_next vaut true.

Créer une offre

POST /v2/jobs crée une offre. Utilisez jobs:draft pour un brouillon ou jobs:publish pour demander la publication. Les anciennes autorisations jobs:write et write restent compatibles. Envoyez du JSON.

Champ obligatoireValeur
titleTitre de l’offre.
companyNom de l’entreprise.
descriptionTexte ou HTML simple (p, br, ul, ol, li, h2, h3, strong, em, a).
job_typefulltime, parttime, freelance, contract ou internship.
tagsTags séparés par des virgules.
LieuUtilisez un id_city vérifié, ou un city_name exact avec city_country et, si nécessaire, city_region. Une offre à distance peut omettre la ville.

Les champs facultatifs comprennent external_url, apply_url, is_remote (0 ou 1), inv_email, currency (EUR, USD, GBP), sal_min, sal_max, id_space, id_plan (valeur par défaut 5) et status (draft ou active). Le salaire minimum ne peut pas dépasser le maximum. Consultez la référence complète pour tous les champs.

Votre identifiant détermine le compte de recrutement. Un id_space contradictoire est refusé. Levez toute ambiguïté sur la ville avant l’envoi.

# Valeur unique pour une nouvelle offre ; conserver pour ses nouvelles tentatives.
COWORKIES_JOB_REQUEST_ID='space-job-community-manager-001'
curl --fail-with-body --max-time 30   'https://api.coworkies.com/v2/jobs'   -X POST   -H "X-API-Key: ${COWORKIES_API_KEY}"   -H 'Content-Type: application/json'   -H "Idempotency-Key: ${COWORKIES_JOB_REQUEST_ID}"   -d '{
    "title": "Community Manager",
    "company": "Example Workspace",
    "description": "Lead member experience at our Berlin workspace.",
    "job_type": "fulltime",
    "city_name": "Berlin",
    "city_country": "DE",
    "status": "draft",
    "tags": "community,events,hospitality",
    "apply_url": "https://example.com/careers/apply",
    "is_remote": 0,
    "currency": "EUR",
    "sal_min": 35000,
    "sal_max": 45000
  }'

Publier ou modifier un brouillon

Vérifiez data.status après chaque écriture. Une réponse HTTP réussie peut correspondre à un brouillon ou à un paiement requis. Un brouillon reste privé et ne consomme aucun crédit. Conservez le data.job_id renvoyé. Listez vos brouillons avec GET /v2/jobs/owned?status=draft ou obtenez la révision actuelle avec GET /v2/jobs/owned?job_id=ID.

  1. Envoyez l’identifiant et la révision à POST /v2/jobs/publish-preview. Vérifiez le brouillon, le compte de recrutement et le financement proposé (gratuit, un crédit Pro ou paiement sur le site).
  2. Après accord explicite, envoyez cet identifiant, cette révision et le funding_confirmation inchangé à POST /v2/jobs/publish. Si l’aperçu expire ou que l’offre change, relisez-la et demandez une nouvelle confirmation.
  3. Vérifiez l’état renvoyé. Terminez le paiement sur Coworkies s’il est requis. Pour une nouvelle offre payante ou une republication nécessitant une confirmation de financement, envoyez d’abord action (create ou repost) et payload (les données exactes prévues) à POST /v2/jobs/publication-preview. Si une confirmation de financement est renvoyée, vérifiez-la puis transmettez-la inchangée avec l’écriture approuvée.

Pour modifier l’offre, utilisez POST /v2/jobs/update avec son identifiant et sa révision actuelle. Pour republier, utilisez POST /v2/jobs/repost avec jobs:publish. Pour retirer, utilisez POST /v2/jobs/unpublish avec jobs:lifecycle. La référence OpenAPI détaille chaque requête. Gardez les liens privés de modification et de paiement hors des journaux.

Doublons et écritures au résultat incertain

Une création ordinaire ou par assistant correspondant à une offre existante renvoie 409 job_exists avec son identifiant. Elle ne modifie pas son contenu ni son état. Seuls les importateurs de plateforme autorisés peuvent mettre à jour par empreinte. Réutilisez la même clé d’idempotence pour une requête identique. Après une expiration du délai, vérifiez l’offre avant de réessayer.

Si les écritures durables sont activées pour votre connexion, envoyez X-Coworkies-Durable-Job: 1 avec la clé d’idempotence d’origine. Pour récupérer le résultat, envoyez operation et le request_id d’origine à POST /v2/jobs/recover avec cet en-tête et l’autorisation d’origine. Vérifiez la disponibilité de ce mode facultatif via GET /v2/auth/context.