Skip to content

feat(commcare): inbound API atoms; conditional-alert deferred#393

Merged
jjackson merged 1 commit into
mainfrom
emdash/ocs-vw0t6
May 22, 2026
Merged

feat(commcare): inbound API atoms; conditional-alert deferred#393
jjackson merged 1 commit into
mainfrom
emdash/ocs-vw0t6

Conversation

@jjackson
Copy link
Copy Markdown
Owner

Inbound API list + create atoms. Conditional alerts and user fields documented as deferred manual-step items in V1 (atoms can land in V1.5).

🤖 Generated with Claude Code

…ferred

  - commcare_list_inbound_apis: POST paginate to /motech/inbound/.
  - commcare_create_inbound_api: action=create on the same URL with the
    ConfigurableAPICreateForm fields (name, description, filter_expression,
    transform_expression, backend). Returns the new id either from the
    CRUD response itemData or via list-and-find.

Both gated by Pro/DATA_FORWARDING. Verified against
/tmp/ace-refs/hq/corehq/motech/generic_inbound/views.py + forms.py.

V1 scope cut: conditional alerts and custom-user-data-fields creation
are deferred from V1's atom matrix.
  - Conditional alert create is a 3-form combined POST
    (basic_info + criteria + schedule) with dynamic fields and async
    handlers — multi-day build, low ROI for V1 since each cohort needs
    only one alert. Bulk upload is XLS, not CSV (probe report was wrong).
  - User Fields create is a hidden-JSON form. Same conclusion:
    one-time-per-domain, doable manually for V1.

The /ace:interview-domain-bootstrap skill will prompt the operator to
do these two manual steps and then continue. Atoms can land in V1.5.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@jjackson jjackson enabled auto-merge May 22, 2026 00:57
@jjackson jjackson merged commit 51f7120 into main May 22, 2026
2 checks passed
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