1. Contacts
Incomaker Commons v4
  • Social Accounts
    • Get Accounts
      GET
  • Ad Accounts
    • Get Accounts for Facebook
      GET
  • Assets
    • Generate e-mail content (AI)
      POST
  • Audiences
    • Get Audiences
      GET
  • Campaigns
    • Get campaigns
    • Archive Campaign
    • Pause/Resume/Cancel Campaign
    • Rename Campaign
    • Duplicate Campaign
    • Delete Campaign
    • Get Categories
    • Add New Category
  • Contacts
    • Get contact by clientContactId
      GET
    • Get contact by email
      GET
    • Add contact to the list by id
      PUT
    • Remove contact from the list by id
      DELETE
    • Add contact to the list by name
      PUT
    • Remove contact from the list by name
      DELETE
    • Get contact by phoneNumber1
      GET
    • Get all contacts
      GET
    • Create contact
      POST
    • Upsert contact
      PUT
    • Get contact
      GET
    • Update contact
      PUT
    • Delete contact
      DELETE
    • Get total number of contacts
      GET
    • Upsert multiple contacts
      PUT
    • Delete multiple contacts
      DELETE
    • Contact login
      POST
    • Contact logout
      POST
    • Contact get subscriptions
      GET
    • Replace contact's subscriptions (full set)
      PUT
    • Adjust contact's subscriptions (partial)
      PATCH
    • Unsubscribe a contact from all lists
      PATCH
  • Carts
    • Add an Item to Cart
    • Remove an Item from Cart
    • Create an Order from Cart
  • Deals
    • Get deal
    • Update deal
    • Delete deal
    • Find deals
    • Create deal
    • Get deals attachments
    • Post deals attachment
    • Delete deals attachment
    • Get deals contacts
    • Add deals contacts
    • Remove contact from deal
    • Get deals activities
    • List deal states
    • Create deal state
    • Update deal state
    • Delete deal state
  • Delivery
    • Send E-mails delivery
    • Send SMS delivery
    • Send push delivery
    • Send Test E-mail
    • Send Test SMS
    • Send Test Push
    • Validate E-mail (dry run)
    • Validate SMS (dry run)
    • Validate Push (dry run)
    • Get Delivery Job
    • List Delivery Jobs
    • Cancel Delivery Job
    • Pause Delivery Job
  • Events
    • Get event types
    • Custom event
  • Forms
    • Get form settings
    • Update form settings
    • Get form field mappings
    • Update form field mappings
  • Notifications
    • Get notifications
    • Get notification
    • Modify notification
    • Delete notification
  • Lists
    • Get Lists
    • Create List
    • Get List
    • Update List
    • Delete List
    • Get List by name
    • Update List by name
    • Delete List by name
    • Get number of contacts for a list
    • Get number of contacts for a list by name
    • Get contact counts for all lists (grouped by category)
    • Upsert Lists (bulk)
    • Get List categories
    • Create List category
    • Get List category
    • Update List category
    • Delete List category
    • Get List category by name
    • Update List category by name
    • Delete List category by name
    • Upsert List categories (bulk)
  • Products
    • Get products
    • Get products categories
    • Get tags
  • Orders
    • Get orders
    • Create order
    • Upsert multiple orders
    • Get order
    • Update order
    • Update order state
    • Delete order
    • Get order by client ID
    • Update order by client ID
    • Update order state by client ID
    • Delete order by client ID
  • Scenarios
    • Abandoned cart notification by e-mail
    • Abandoned cart notification by SMS
    • Abandoned cart notification by push
    • Abandoned cart notification by Facebook
    • Create birthday greetings
    • Create nameday greetings
    • Create first purchase anniversary
  • Smartflows
    • Triggers
      • Start
        • Get Start trigger
        • Delete Start trigger
        • Create Start trigger
      • Added to list
        • Get Added to list trigger
        • Update Added to list trigger
        • Delete Added to list trigger
        • Create Added to list trigger
      • Removed from list
        • Get Removed from list trigger
        • Update Remove from list trigger
        • Delete Remove from list trigger
        • Create Removed from list trigger
      • Scheduled start
        • Get Scheduled start trigger
        • Update Scheduled start trigger
        • Delete Scheduled start trigger
        • Create Scheduled start trigger
      • Recurring
        • Get Recurring trigger
        • Update Recurring trigger
        • Delete Recurring trigger
        • Create Recurring trigger
      • Nameday
        • Get Nameday trigger
        • Update Nameday trigger
        • Delete Nameday trigger
        • Create Nameday trigger
      • Birthday
        • Get Birthday trigger
        • Update Birthday trigger
        • Delete Birthday trigger
        • Create Birthday trigger
      • First registration
        • Get First registration trigger
        • Update First registration trigger
        • Delete First registration trigger
        • Create First registration trigger
      • First purchase
        • Get First purchase trigger
        • Update First purchase trigger
        • Delete First purchase trigger
        • Create First purchase trigger
      • Email subscription confirmed
        • Get Email subscription confirmed trigger
        • Update Email subscription confirmed trigger
        • Delete Email subscription confirmed trigger
        • Create Email subscription confirmed trigger
      • Link click
        • Get Link click trigger
        • Update Link click trigger
        • Delete Link click trigger
        • Create Link click trigger
      • Mail open
        • Get Open mail trigger
        • Update Open mail trigger
        • Delete Open mail trigger
        • Create Open mail trigger
      • Product added to cart
        • Get Product added to cart trigger
        • Update Product added to cart trigger
        • Delete Product added to cart trigger
        • Create Product added to cart trigger
      • Custom event
        • Get Custom event trigger
        • Update Custom event trigger
        • Delete Custom event trigger
        • Create Custom event trigger
      • Abandoned cart
        • Get Abandoned cart trigger
        • Update Abandoned cart trigger
        • Delete Abandoned cart trigger
        • Create Abandoned cart trigger
    • Actions
      • Double Opt-In
        • Get Double Opt-In action
        • Update Double Opt-In action
        • Delete Double Opt-In action
        • Create Double Opt-In action
      • Add contact to list
        • Get Add contact to list action
        • Update Add contact to list action
        • Delete Add contact to list action
        • Create Add contact to list action
      • Remove contact from list
        • Get Remove contact from list action
        • Update Remove contact from list action
        • Delete Remove contact from list action
        • Create Remove contact from list action
    • Targets
    • Get smartflows
    • Create smartflow
    • Get smartflow
    • Update smartflow
    • Delete smartflow
    • Get smartflow structure
    • Generate smartflow (AI)
    • Pause/Resume/Cancel smartflow
    • Execute smartflow
    • Validate smartflow
    • Export smartflow
    • Import smartflow
    • Duplicate smartflow
    • Get smartflow actions
    • Archive smartflow
    • Get templates
    • Create template
    • Get template actions
    • Get folders
    • Create folder
    • Modify folder
    • Delete folder
    • Get Product in Cart is back in Stock trigger
    • Update Product in cart is back in stock trigger
    • Delete Product in cart is back in stock trigger
    • Create Product in cart is back in stock trigger
    • Get Product in Cart discounted trigger
    • Update Product in Cart discounted trigger
    • Delete Product in Cart discounted trigger
    • Create Product in Cart discounted trigger
    • Get Product in cart running out trigger
    • Update Product in cart running out trigger
    • Delete Product in cart running out trigger
    • Create Product in cart running out trigger
    • Get Product purchased trigger
    • Update Product purchased trigger
    • Delete Product purchased trigger
    • Create Product purchased trigger
    • Get Recently purchased trigger
    • Update Recently purchased trigger
    • Delete Recently purchased trigger
    • Create Recently purchased trigger
    • Get Checkout visited trigger
    • Update Checkout visited trigger
    • Delete Checkout visited trigger
    • Create Checkout visited trigger
    • Get Order cancelled trigger
    • Delete Order cancelled trigger
    • Create Order cancelled trigger
    • Get Invoice confirmation trigger
    • Delete Invoice confirmation trigger
    • Create Invoice confirmation trigger
    • Get Return confirmation trigger
    • Delete Return confirmation trigger
    • Create Return confirmation trigger
    • Get Website search trigger
    • Update Website search trigger
    • Delete Website search trigger
    • Create Website search trigger
    • Get Campaign sent trigger
    • Update Campaign sent trigger
    • Delete Campaign sent trigger
    • Create Campaign sent trigger
    • Get Shipping confirmed trigger
    • Update Shipping confirmed trigger
    • Delete Shipping confirmed trigger
    • Create Shipping confirmed trigger
    • Get Website Viewed trigger
    • Update Website Viewed trigger
    • Delete Website Viewed trigger
    • Create Website Viewed trigger
    • Get Filter target
    • Update Filter target
    • Delete Filter target
    • Create Filter target
    • Get Merge target
    • Delete Merge target
    • Create Merge target
    • Get Split target
    • Update Split target
    • Delete Split target
    • Create Split target
    • Get Splitter target
    • Update Splitter target
    • Delete Splitter target
    • Create Splitter target
    • Get Condition target
    • Update Condition target
    • Delete Condition target
    • Create Condition target
    • Get A/B test target
    • Update AB test target
    • Delete AB test target
    • Create AB test target
    • Get Send mail action
    • Update Send email action
    • Delete Send mail action
    • Create Send mail action
    • Get Send sms action
    • Update Send sms action
    • Delete Send sms action
    • Create Send sms action
    • Get Send social post action
    • Update Send social post action
    • Delete Send social post action
    • Create Send social post action
    • Get Send NPS action
    • Update Send NPS action
    • Delete Send NPS action
    • Create Send NPS action
    • Get Webhook action
    • Update Webhook action
    • Delete Webhook action
    • Create Webhook action
    • Get Meta audience action
    • Update Meta audience action
    • Delete Meta audience action
    • Create Meta audience action
    • Get Sklik audience action
    • Update Sklik audience action
    • Delete Sklik audience action
    • Create Sklik audience action
    • Connect Sklik account
    • Disconnect Sklik account
    • Get Sklik audiences for action
    • Get Delay action
    • Update Delay action
    • Delete Delay action
    • Create Delay action
    • Get Landing page action
    • Update Landing page action
    • Delete Landing page action
    • Create Landing page action
    • Get Add tag action
    • Update Add tag action
    • Delete Add tag action
    • Create Add tag action
    • Get Remove tag action
    • Update Remove tag action
    • Delete Remove tag action
    • Create Remove tag action
    • Get Unsubscribe action
    • Update Unsubscribe action
    • Delete Unsubscribe action
    • Create Unsubscribe action
    • Get list of contact fields to update
    • Get Update contact action
    • Update Update contact action
    • Delete Update contact action
    • Create Update contact action
    • Get Popup action
    • Update Popup action
    • Delete Popup action
    • Create Popup action
  • Website
    • Get Website Info
    • Get Teaser settings
  • Tags
    • Get Tags
    • Create Tag
    • Update Tag
    • Get Tag
    • Delete Tag
    • Get number of contacts for a tag
    • Get contact counts for all tags (grouped by category)
    • Create Tags (bulk)
    • Get Tag categories
    • Create Tag category
    • Get Tag category
    • Update Tag category
    • Delete Tag category
    • Create Tag categories (bulk)
  • Context
    • Get Context
    • Update Context
    • Replace Context
  • Admin
    • Refresh Currency Rates
  • Jobs
    • Get job status
    • List jobs
    • List job items
    • Cancel job
  • Schemas
    • Audience
    • CampaignType
    • Contact
    • CampaignChannel
    • CampaignState
    • Campaign
    • Context
    • CreateActionResponse
    • TeaserFontFamily
    • TeaserFontWeight
    • TeaserCloseButtonSize
    • TeaserCloseButtonPosition
    • TeaserPosition
    • NotificationSeverity
    • NotificationChannel
    • Tag
    • TagCategory
    • List
    • ListCategory
    • Product
    • SmartflowTemplateAction
    • SmartflowAction
    • SmartflowState
    • SmartflowCompletedState
    • SocialNetworkType
    • SocialNetworkEntityType
    • SocialNetworkEntity
    • SocialNetworkUser
    • Smartflow
    • SmartflowFolder
    • SocialAccount
    • AudienceInput
    • EmailAsset
    • SmsAsset
    • PushAsset
    • Cron
    • SocialAccountsResponse
    • AdAccount
    • AdAccountsResponse
    • AudiencesResponse
    • ProductsResponse
    • ProductsCategoriesResponse
    • ProductTagsResponse
    • SmartflowsResponse
    • SmartflowFoldersResponse
    • SmartflowActionsResponse
    • SmartflowTemplateActionsResponse
    • Paging
    • TeaserSettings
    • WebsiteSettings
    • General rules
    • PermId
    • Events
  1. Contacts

Upsert multiple contacts

PUT
/contacts/bulk
Creates or updates up to 100 contacts per request. Each contact is matched automatically using the identifiers present in the contact object, checked in priority order: clientContactId → email → phoneNumber1. Matched contacts are updated (PATCH semantics — only provided fields are changed). Contacts with no match are created as new records. If you need larger volumes of contacts, use asynchronous bulk endpoint.
You cannot use event or permId in bulk operations.
Always returns 207. Inspect the per-item status field to determine the outcome for each contact. The response includes all submitted contacts so that callers can store the Incomaker contactId for future targeted updates.

Request

Header Params

Body Params application/json

Examples

Responses

🟠400
application/json
Bad Request
Bodyapplication/json

🟠403
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request PUT '/contacts/bulk' \
--header 'Authorization: Bearer JWT' \
--header 'Content-Type: application/json' \
--data-raw '{
    "contacts": [
        {
            "clientContactId": "1245451254",
            "firstName": "John",
            "lastName": "Doe",
            "email": "info@incomaker.com",
            "phoneNumber1": "87639642",
            "company": "Incomaker s.r.o.",
            "lists": [
                "Test",
                "Test2"
            ]
        },
        {
            "clientContactId": "1245451278",
            "firstName": "Jane",
            "lastName": "Doe",
            "email": "jane@incomaker.com",
            "phoneNumber1": "12121545",
            "lists": [
                "Test2"
            ]
        }
    ]
}'
Response Response Example
400 - Success
{
    "error": "Request exceeds maximum of 100 contacts per bulk operation."
}
Modified at 2026-06-11 02:37:32
Previous
Get total number of contacts
Next
Delete multiple contacts
Built with