Create or Update Accounts in Bulk

Let’s you create or update accounts in bulk. You can create or update up to 25 records with a single call.

  • The “CompanyTypeName” you pass must be of an existing account type in your LeadSquared application.
  • Accounts will be created/updated based on the unique account field you pass in the “SearchBy” parameter. Accepted values are “Company Name”, “CompanyNumber” and “CompanyIdentifier”.
  • You can decide the override behaviour using the “CollisionResolutionStrategy” parameter. Accepted values include “FillMissingFields”, “OverwriteAllFields” and “IgnoreDuplicate”.
  • In the “Companies” node, you must pass data corresponding to the unique field you passed in “SearchBy”. For example if you pass “Company Name” in “SearchBy”, you must pass the “CompanyName” data in the “Companies” node for all accounts you’re creating/updating.

 

API URL

POST
https://{host}/v2/CompanyManagement.svc/Company/Bulk/CreateOrUpdate?accessKey=AccessKey&secretKey=SecretKey
Copy URL

Request

JSON Body/Payload

Content-Type: application/json

{
    "CompanyType":{"CompanyTypeName" : "Vendors"},
    "Options":{
        "SearchBy":"CompanyName",
        "CollisionResolutionStrategy": "FillMissingFields"
    },
    "Companies": [
    [
        {
            "Attribute": "CompanyName",
            "Value": "Water Services"
        }
    ],
    [
        {
            "Attribute": "CompanyName",
            "Value": "CCTV Services"
        },
        {
            "Attribute": "Phone",
            "Value": "+91-1234123415"
        },
         { 
            "Attribute" :"State" , 
            "Value": "Karnataka"
        }
    ]
    ]
}

JSON Properties

Parameter Description
CompanyType

You must pass an existing “CompanyTypeName” here. If you pass a company type that doesn’t exist in your LeadSquared application, you’ll receive an error.

SearchBy

Let’s you specify the field based on which you want to create/update accounts.

Accepted values include “Company Name”“CompanyNumber” and “CompanyIdentifier”

CollisionResolutionStrategy

Accepted values are “FillMissingFields”“OverwriteAllFields” and “IgnoreDuplicate”

Companies

Here you can pass attribute-value pairs to define the fields and data you want to create/update.

Response

200 OK

Content-Type: application/json

[
    {
        "RowNumber": 1,
        "CompanyId": "80df1c33-69b4-46a5-aa74-063f3a8bb3db",
        "CompanyCreated": true,
        "CompanyUpdated": false
    },
    {
        "RowNumber": 2,
        "CompanyId": "c42e81ad-197d-41ba-85ab-4d16d4259555",
        "CompanyCreated": true,
        "CompanyUpdated": false
    }
]

HTTP Response Code

Code Description
200 OK

This is the status code for successful API call.

401 Unauthorized

The API call was made with invalid access credentials. Check your AccessKey and SecretKey.

400 Bad Request

The message body on the request is not as per API specification. Make sure that content type is set to “application/json” and the JSON body has correct attribute names and structure.

404 Not Found

The API could not be found. Please check the API signature.

429 Too Many Requests

API calls exceeded the limit of 25 in 5 second(s)

500 Internal Server Error

The API called failed. There could be many reasons for it. Check the exception message to get more details.