Connect ABC Sales AI with Codex or Claude Code
Building a website with an AI coding assistant? Give it ABC's integration instructions so it can connect your form to your ABC Sales AI account. Visitors fill in your website form, and their details arrive in ABC as leads.
The ABC Codex plugin teaches Codex how to write that connection. Claude Code can use the same integration skill from your project. Choose the setup for the assistant you use; you do not need both.
What Can It Help You Build?
- Connect a contact, quotation, registration or application form to ABC.
- Match names, phone numbers, emails and custom answers to the right lead fields.
- Add file uploads and spam protection when your form needs them.
- Help a developer build server-side integrations using ABC's API, such as reading conversations or subscribing to lead events.
The current plugin provides instructions and an API reference. Your coding assistant still needs your project files and the appropriate ABC connection details. It is separate from AI Manager inside the ABC app.
Step 1: Set Up Your Coding Assistant
Option A: Codex
Open your website project in Codex, then paste this:
codex plugin marketplace add https://git.jcalonso.com/abcsalesbot/abcsalesai-codex-plugin.gitcodex plugin add abcsalesai@abcsalesai-pluginscodex plugin list --marketplace abcsalesai-plugins --jsonConfirm that abcsalesai@abcsalesai-plugins is installed and enabled. If it is already installed, verify it rather than creating a duplicate. Explain any authentication or CLI error. Do not ask me to paste passwords or access tokens into this conversation.
Adding the marketplace makes the plugin available. The second command installs it. Verification should show installed: true and enabled: true. If it is not available in the current conversation afterwards, start a new Codex task in the same project and ask it to use the ABC integration skill.
Option B: Claude Code
Use Claude Code in your website project for this option. The repository currently contains a Codex plugin manifest, so use its skill files rather than trying to install it as a Claude plugin marketplace.
Paste this into Claude Code:
Read plugins/abcsalesai/skills/abc-lead-integration/SKILL.md and its referenced files. Copy the complete abc-lead-integration folder into this project's .claude/skills/ directory, including the reference folder. Preserve any existing project instructions and review an existing copy before replacing it. Confirm that .claude/skills/abc-lead-integration/SKILL.md and reference/abc-public-api.yaml are present. If repository access fails, explain what access is missing without asking me to paste credentials into chat.
Then ask Claude Code to use abc-lead-integration when connecting the form. Copying only SKILL.md leaves out the API reference it relies on. See Claude Code's skills guide for how project skills work.
Step 2: Prepare Your ABC Website Form
For a website form, open Settings > Website Forms in the ABC account that should receive the leads. Follow Connect Your Website Forms to create the connection.
Have these details ready:
- Environment: live or staging. Use a form key created in the matching ABC app.
- Form key: the publishable key beginning with
pfk_, copied after saving. - Website address: add the exact origin to Allowed websites, such as
https://www.example.com, without a page path. - Field matching: the exact names your website sends and where each answer should be saved. For example,
name→ Name,email→ E-mail address, andphone→ Phone, if those are the names your form sends. - Spam protection: No protection, or Cloudflare Turnstile plus its public Site key. Selecting an automation requires Turnstile.
- Next page: the page visitors should reach after a successful submission.
If you do not know your website's field names, ask your coding assistant to inspect the form and give you the values to paste into Field matching. If different languages send leads to different ABC accounts, prepare a separate connection for each account.
Step 3: Copy This Connection Prompt
Replace each placeholder, then paste this into Codex or Claude Code:
Form page: {FORM_PAGE_URL}
ABC environment: {LIVE_OR_STAGING}
Publishable form key: {PFK_FORM_KEY}
Allowed website origin: {WEBSITE_ORIGIN}
Field matching: {EXACT_WEBSITE_FIELD_NAMES_AND_ABC_DESTINATIONS}
Spam protection: {NONE_OR_TURNSTILE}
Public Turnstile Site key, if enabled: {SITE_KEY_OR_NOT_NEEDED}
Thank-you page: {THANK_YOU_PAGE_URL}
Use the Website Forms submission endpoint for that environment. Put the public form key in X-Form-Key, the answers in fields, and the Turnstile token in captcha_token when enabled. Keep private credentials out of browser code. Redirect to my thank-you page only after ABC confirms success. On failure, keep the visitor's answers and explain how to retry. Run the relevant checks and show me what changed. Ask me to designate a test contact before making a real submission that could trigger follow-up.
The public form key identifies the form receiving the answers. It is designed to be used in the website's code; it is not a field visitors fill in. The assistant writes the connection, and your normal website deployment publishes it.
Step 4: Verify the Whole Journey
- Use a test contact you control and submit the form on the deployed website.
- Check the intended ABC account for the lead, its answers and lead source.
- Confirm the website opens your thank-you page after the successful submission.
- Check any configured automation or follow-up separately.
A thank-you page alone does not prove the lead was saved. Ask your assistant to distinguish a simulated test from a real submission, and confirm both sides before launching.
Which Keys Can I Give the Assistant?
- Publishable form key (
pfk_): may be included in the website setup prompt and browser code. - Turnstile Site key: public; give it to the assistant if the website needs that widget.
- Turnstile Secret key: enter it in ABC only. Do not include it in public code or the setup prompt.
- Private ABC API key: needed for server-side API integrations. Store it in the server's environment or secret settings, not in browser code or chat. See the Public API guide.