Skip to content

MT-23324: replace internal field names in email campaigns spec - #48

Open
Rabsztok wants to merge 1 commit into
mainfrom
MT-23324-campaigns-field-cleanup
Open

MT-23324: replace internal field names in email campaigns spec#48
Rabsztok wants to merge 1 commit into
mainfrom
MT-23324-campaigns-field-cleanup

Conversation

@Rabsztok

@Rabsztok Rabsztok commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

Motivation

https://railsware.atlassian.net/browse/MT-23324

Use correct attribute names for email campaigns API endpoints

Changes

  • EmailCampaign schema: type removed; UUID mailsend_domain_id/mailsend_domain_name replaced with integer domain_id/domain_name
  • Create/update request schemas, required list, prose and the create cURL sample follow the same rename
  • EmailCampaignStats: reject_count removed

How to test

Summary by CodeRabbit

  • Documentation
    • Updated email campaign API documentation to use integer domain IDs instead of UUID-based mail-sending domain IDs.
    • Revised campaign creation requirements, writable attributes, examples, and response schemas accordingly.
    • Removed the legacy type discriminator and domain-name field from campaign definitions.
    • Removed the reject_count field from campaign statistics.

Decisions:
- API drops UUID mailsend_domain_id/mailsend_domain_name for integer domain_id/domain_name; spec follows
- type removed: always ContactsEmailCampaign, carries no information
- reject_count removed from stats: not exposed anywhere else publicly
@coderabbitai

coderabbitai Bot commented Jul 31, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 31226918-81e7-4175-ab6d-f333aaf7d6c4

📥 Commits

Reviewing files that changed from the base of the PR and between b2eacd2 and 95b18d8.

📒 Files selected for processing (1)
  • specs/email-campaigns.openapi.yml

📝 Walkthrough

Walkthrough

The email campaign OpenAPI schema replaces UUID mailsend_domain_id fields with integer domain_id fields. Campaign responses remove the type discriminator and legacy domain field. Campaign statistics remove reject_count.

Changes

Email campaign API schema

Layer / File(s) Summary
Campaign creation domain contract
specs/email-campaigns.openapi.yml
Create descriptions, examples, writable attributes, and required fields now use integer domain_id values.
Campaign response and statistics contract
specs/email-campaigns.openapi.yml
EmailCampaign now exposes domain_id and domain_name without type. EmailCampaignStats no longer exposes reject_count.

Estimated code review effort: 2 (Simple) | ~10 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly identifies the replacement of internal field names in the email campaigns specification.
Description check ✅ Passed The description covers motivation, changes, and testing steps; the optional Images and GIFs section is not relevant to this documentation change.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@Rabsztok
Rabsztok marked this pull request as ready for review July 31, 2026 11:43
@Rabsztok
Rabsztok requested review from IgorDobryn and mklocek July 31, 2026 11:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant