Skip to content

✨(ingestion) expose offers/upsert endpoint#547

Merged
vincentporte merged 10 commits into
mainfrom
vp/post_offer_endpoitn
Jun 2, 2026
Merged

✨(ingestion) expose offers/upsert endpoint#547
vincentporte merged 10 commits into
mainfrom
vp/post_offer_endpoitn

Conversation

@vincentporte
Copy link
Copy Markdown
Collaborator

@vincentporte vincentporte commented May 13, 2026

📝 Description

🎸 Add ingestion end point to save cleaned offers in web

🦺 All datas sent are not saved yet, updating Offer will be requested in an upcoming PR

🏷️ Type of change

  • 🎢 New feature (non-breaking change that adds functionality)

🏝️ How to test (if applicable)

  • check redoc schema
  • send post request to /api/v1/offres/creer_modifier

✅ Checklist

  • 💅 I have added or updated the appropriate tests.
  • 📝 I have updated or added the necessary documentation.
  • 🚀 I have considered the impact on performance, security, and user experience.
  • 👀 I have requested a review from a team member.

@vincentporte vincentporte marked this pull request as draft May 13, 2026 15:21
@vincentporte vincentporte requested review from AntoineAugusti and Atheane and removed request for AntoineAugusti May 13, 2026 15:21
@vincentporte vincentporte self-assigned this May 13, 2026
@vincentporte vincentporte added the added PR: backward compatible addition label May 13, 2026
@vincentporte vincentporte force-pushed the vp/post_offer_endpoitn branch 2 times, most recently from 1753cf8 to b81054e Compare May 19, 2026 13:07
Copy link
Copy Markdown
Collaborator

@Atheane Atheane left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very good start. SOme few comments for better compliance with clean archi. And missing tests for OffersUpsertView, but I am sure you are already working on it :)

Comment thread src/web/domain/value_objects/area.py
Comment thread src/web/domain/value_objects/education_level.py Outdated
Comment thread src/web/domain/value_objects/language_level.py
Comment thread src/web/presentation/ingestion/serializers.py Outdated
Comment thread src/web/presentation/ingestion/serializers.py Outdated
Comment thread src/web/presentation/ingestion/views.py Outdated
Comment thread src/web/presentation/ingestion/views.py Outdated
Comment thread src/web/presentation/ingestion/serializers.py
@vincentporte
Copy link
Copy Markdown
Collaborator Author

vincentporte commented May 20, 2026

  • retour message erreur en FR

upcoming PR

  • DomainError if metier does not exist
  • valider les country code

Comment thread src/web/presentation/ingestion/openapi.py
Comment thread src/web/presentation/ingestion/serializers.py Outdated
@vincentporte vincentporte force-pushed the vp/post_offer_endpoitn branch 2 times, most recently from 9672a46 to 8691d1b Compare May 26, 2026 12:24
@vincentporte vincentporte changed the base branch from main to vp/add_area_in_localisation May 26, 2026 12:25
@vincentporte vincentporte force-pushed the vp/post_offer_endpoitn branch 2 times, most recently from 2aaac81 to d08b3fa Compare May 26, 2026 17:36
@vincentporte vincentporte force-pushed the vp/add_area_in_localisation branch from bda1618 to c5f7657 Compare May 26, 2026 17:37
Base automatically changed from vp/add_area_in_localisation to main May 27, 2026 07:18
@vincentporte vincentporte force-pushed the vp/post_offer_endpoitn branch 2 times, most recently from 5fd91e3 to c444e53 Compare May 27, 2026 13:29
@vincentporte vincentporte marked this pull request as ready for review May 27, 2026 13:32
@vincentporte vincentporte force-pushed the vp/post_offer_endpoitn branch from c444e53 to 96e5da4 Compare May 27, 2026 13:33
Comment thread src/web/presentation/ingestion/serializers.py
Copy link
Copy Markdown
Member

@AntoineAugusti AntoineAugusti left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great work 👏

My main concern is about the unique key and how we could use source_id later on.

Comment thread src/web/presentation/ingestion/serializers.py Outdated
Comment thread src/web/presentation/ingestion/serializers.py Outdated
Comment thread src/web/presentation/ingestion/serializers.py
Comment thread src/web/presentation/ingestion/openapi.py Outdated
Comment thread src/web/presentation/ingestion/openapi.py
Comment thread src/web/domain/value_objects/offer_conditions.py Outdated
Comment thread src/web/presentation/ingestion/openapi.py Outdated
Comment thread src/web/presentation/ingestion/serializers.py
@vincentporte vincentporte force-pushed the vp/post_offer_endpoitn branch 2 times, most recently from 7edba63 to 0fff262 Compare May 28, 2026 07:03
@vincentporte vincentporte force-pushed the vp/post_offer_endpoitn branch from 0fff262 to 4810f23 Compare May 28, 2026 07:08
Copy link
Copy Markdown
Collaborator

@Atheane Atheane left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very nice implementation! Just a suggestion about mapper and we are good to go!

Comment thread src/web/application/ingestion/interfaces/upsert_offers_input.py Outdated
Comment thread src/web/tests/ingestion/unit/test_upsert_offers.py
Comment thread src/web/tests/ingestion/presentation/views/test_upsert_offers.py Outdated
Comment thread src/web/tests/ingestion/presentation/views/test_upsert_offers.py Outdated
Comment thread src/web/tests/ingestion/presentation/views/test_upsert_offers.py Outdated
Comment thread src/web/presentation/ingestion/views.py
Comment thread src/web/presentation/ingestion/serializers.py Outdated
@vincentporte vincentporte force-pushed the vp/post_offer_endpoitn branch from 4810f23 to fed62c0 Compare June 1, 2026 23:02
Copy link
Copy Markdown
Collaborator

@Atheane Atheane left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎯 great example for all future endpoint development, thanks!

@vincentporte vincentporte merged commit c70310e into main Jun 2, 2026
14 of 15 checks passed
@vincentporte vincentporte deleted the vp/post_offer_endpoitn branch June 2, 2026 06:34
@github-actions github-actions Bot mentioned this pull request Jun 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

added PR: backward compatible addition

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[features] [API] exposer une premiere version du endpoint de creation/mise à jour des offres

3 participants