BNI Portal API
Integuru generates a production-ready HTTP API for BNI Portal, the SuiteDash-based client portal at portal.bomberjacket.net that runs CRM contacts, projects, invoicing, document signing, an LMS and email marketing behind one login. 37 verified actions read and write across those modules, with every production write gated behind confirm_prod and a dry-run fingerprint, and further actions available on request.
37
Verified actions live today
<3 sec
Response latency per call
99.9%+
Reliability rate on generated APIs
24/7
On-call maintenance on Production plans
Integration facts
- Authenticates against
- https://portal.bomberjacket.net/
- Authentication
- Login flows, including 2FA, handled by Integuru using your own BNI Portal credentials.
- Approach
- Direct HTTP requests, with no browser automation or RPA involved.
Endpoints
Available actions
Don't see the action you need?
The actions above cover the most common BNI Portal integration patterns, but they're not the full picture. Integuru can build additional workflows for any capability the platform exposes. Our Managed Service handles scoping, building, and maintaining custom actions on your behalf, so just let us know what you need.
Guide
BNI Portal integration guide
Does BNI Portal have a public API?
BNI Portal is a white-labelled SuiteDash workspace, and the actions on this page were built against its signed-in portal rather than any vendor API. Integuru's 37 verified actions give the portal login direct HTTP access to CRM, projects, invoicing, document generators, the LMS and email campaigns, with every production write gated behind an explicit confirm_prod flag and a dry-run fingerprint check.
What you can do with the BNI Portal API
CRM. list_contacts and list_companies page 20 records at a time with a sort field, and list_custom_fields returns the schema behind them. create_crm_contact_without_invitation creates a contact with email, first_name, last_name and role, using existing_policy to decide whether an exact match is a no-op or a conflict. search_prod_deal_targets_v2 finds Add-Deal targets by query (2 to 100 characters) with an optional target_type filter, and get_prod_deal_binding_inventory_v2 and get_prod_deal_creation_contract_v2 inventory the live deal setup read-only.
Projects. list_projects filters by client_id, create_project_from_template builds a project for a client from a task_template_id (default 37396) with optional leader_id, status_id and team_ids, and list_project_template_tasks shows what a template will create.
Documents and e-signature. create_document_generator_v3 creates a template from body_html, which must include the {{documentTargetSignature}} and {{documentOrganizationSignature}} placeholders, and update_generator replaces a template body or its signature requirement. read_generator_body reads a template, generate_document_from_template sends it to a staff_id with save_as_draft, require_signature and email options, list_staff_documents lists documents for a staff_email (or the whole company with include_all), and delete_contract removes one by contract_id.
Invoicing. list_invoice_clients and list_invoice_items read billing setup, get_invoice_number_assignment_diagnostic_v1 checks numbering against the live account, and get_prod_dynamic_estimate_summary_v1 summarises dynamic estimates.
LMS. list_lms_products reads the catalogue; create_lms_single_course_product, add_lms_module_and_lesson and publish_lms_course_and_activate_product build and publish a course behind the dry-run gate; get_lms_product_notifications and lms_blank_start_experience_email manage a product's notification emails.
Email and marketing. list_email_templates (with include_active_status costing about 140 extra requests), get_email_template by path, list_stream_emails (default 50, filterable by recipient_email), list_drip_sequence by audience_id, and three read-only campaign inventories: get_prod_marketing_campaign_inventory_v1, get_prod_marketing_campaign_audience_assignment_state_v1 and get_email_cannon_inventory_contract_v1.
Forms and settings. read_form_submissions pages a form's submissions by form_hash, 20 per page, or returns one submission_id in full; list_staff_users searches staff; get_notification_preferences and get_staff_document_target_options_contract_v1 read account settings.
How the write-safety gate works
Every write requires confirm_prod set to exactly true, otherwise the call is rejected with HTTP 400 before anything reaches the portal. mode defaults to dry_run, which reads the current state, reports title or identity collisions and returns a fingerprint with zero mutations. Applying means calling again with mode set to apply and the expected_fingerprint from that dry run; a stale fingerprint returns HTTP 409, so a change made in the UI between the two calls blocks the write instead of overwriting it. Staff and document actions also take sd_verify_token in the form {userId}.{companyId}.
Who uses this
Operations teams running a membership or client organisation on the portal sync contacts and companies into their own systems with list_contacts and list_companies, generate and send agreements from templates, and read form submissions into onboarding pipelines. AI agents built for back-office work fit the dry-run pattern well: propose, show the payload, apply on approval. The AI agents industry page covers that pattern, and teams that enrich contacts through FullEnrich via Integuru feed the results into create_crm_contact_without_invitation under the same auth model.
Setup notes
Integuru authenticates against portal.bomberjacket.net with your portal user. Start with the read-only inventory actions, each of which accepts only confirm_prod and rejects extra fields, to confirm the connection and learn the live IDs. Run every write as a dry run first and store the returned fingerprint; apply immediately afterwards, since any intervening change invalidates it. base_url and app_url are runtime metadata that the platform injects; do not pass them as caller input.
Get started
Install the CLI and connect your BNI Portal login:
npm install -g integuru
Or sign in at app.integuru.com and add BNI Portal. To bring invoice creation, campaign sending or contact updates into the same workflow, the Managed Service scopes and builds those actions against your account with the same dry-run gate.
Good to know
Before you start
- Can I use it today?
- Yes. Every action listed above has been verified against live BNI Portal traffic. Install the CLI or sign in at app.integuru.com, connect your BNI Portal account, and start calling the endpoints.
- What if BNI Portal changes or breaks?
- On Production plans the Integuru team is on call around the clock, with auth auto-healing included, so target-platform changes get fixed by Integuru rather than by your engineers.
- What does it cost?
- Start on the Free plan at $0/month with 100 API calls/month. Production starts at $499/month with 24/7 on-call maintenance and auth auto-healing.
FAQ