Documentation
API

Our API documentation provides a comprehensive guide to integrating and using our platform’s features efficiently.

Heads up — we’re upgrading to API version v2.3.1!

As part of our ongoing improvements to the Unduit platform, we’re rolling out API v2.3.1, built on our next-gen tech stack to improve scalability, security, and dev experience.

During this transition, a few endpoints may be temporarily unavailable or in read-only mode.
No action is required for customers already integrated — all existing APIs will remain stable and fully supported.

Unduit APIs

Welcome to the Unduit API Collection

The Unduit API collection enables developers to seamlessly integrate their platforms with the Unduit system. Using these APIs, you can access and interact with data related to your company on the Unduit platform.

Purpose

This collection provides endpoints to:

  • Authenticate and manage access securely using tokens.
  • Fetch and manage records relevant to your company.
  • Support seamless integrations with high efficiency and security.

Key Features

  • Secure Access: Every request requires proper authentication, ensuring secure data handling.
  • Company-Specific Data: All APIs are scoped to provide data that is specific to your company in the Unduit system.
  • Ease of Use: Example requests and detailed documentation included for each endpoint.
  • Scalable Integration: Built to handle multiple integrations and high-volume requests efficiently.
  • Standardized Error Handling: Clear error codes are provided for better debugging and integration management.

Error Codes

The Unduit API follows standard HTTP status codes for responses:

CodeDescription
200Successful response.
400 Bad request (e.g., missing parameters).
401 Unauthorized (e.g., invalid or expired token).
404Not found (e.g., invalid endpoint or resource).
422Validation error (e.g., invalid input format).
500Server error (e.g., an unexpected issue).

Getting Started

  1. Import this Postman collection into your workspace.
  2. Set up an environment with the following variables:
    • base_urlhttps://dev-api.unduit.com/api/v1
    • auth_token: The Bearer Token obtained from the Login API.
  3. Follow the detailed instructions provided in each API folder to understand specific functionality.

Support

If you have any questions or need assistance, feel free to reach out to the Unduit team at developer@unduit.com.

Authentication

The Authentication folder contains endpoints required to securely access the Unduit API. These APIs help you manage your access tokens and ensure secure interactions with the platform.

Endpoints in this Folder

  1. Login API: Obtain an access token by authenticating with your email and password.
  2. Refresh Token API: Renew your access token when it is about to expire.

1. Login API

Purpose:

POST https://dev-api.unduit.com/api/v1/auth/login

Authenticate a user and retrieve a JSON Web Token for subsequent API requests. This token is required to authorize every request to the Unduit APIs.

Endpoint:

Request Structure

				
					{ "email": "your-email@example.com", "password": "your-password"}
				
			

Response

On successful login, you’ll receive a token valid for 4 hours.
Example Response:

				
					{
  "message": "Login successful",
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6MiwiZW1haWwiOiJmYWlyd2F5aW5kZXBlbmRlbnRtb3J0Z2FnZWNvcnBvcmF0aW9uQHVuZHVpdC5jb20iLCJjb21wYW55X2lkIjozMTcsImlhdCI6MTczMzMxNTY4OCwiZXhwIjoxNzMzMzE5Mjg4fQ.RNon3WMwoBrz0C0HZxi3TDSt-LjIwL38Wnrue6yvCVw"
}
				
			

Error Handling

If the credentials are invalid, you’ll receive an error response:

				
					{
  "message": "Invalid email or password"
}
				
			

2. Refresh Token API

If the credentials are invalid, you’ll receive an error response:

Purpose:

Renew an expired or soon-to-expire token to maintain uninterrupted access to the API.

Endpoint:

POST https://dev-api.unduit.com/api/v1/refresh-token

Request Structure:

  • Body: (Raw JSON)

Example Request

				
					{
  "refresh_token": "your_current_token"
}
				
			

Response

On success, you’ll receive a new token valid for the next 4 hours.
Example Response:

				
					{
  "message": "Token refreshed successfully",
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6MiwiZW1haWwiOiJmYWlyd2F5aW5kZXBlbmRlbnRtb3J0Z2FnZWNvcnBvcmF0aW9uQHVuZHVpdC5jb20iLCJjb21wYW55X2lkIjozMTcsImlhdCI6MTczMzIxNTc4OCwiZXhwIjoxNzMzMzE5Mjg4fQ.RNon3WMwoBrz0C0HZxi3TDSt-LjIwL38Wnrue6yvCVw"
}
				
			

Error Handling:

If the token is invalid or expired, you’ll receive an error response

				
					{
  "message": "Invalid email or password"
}
				
			

Usage Notes

  • Always include the Bearer Token in the Authorization header for secured endpoints.
  • Tokens expire after 4 hours. Use the Refresh Token API to renew them before expiry.
  • Ensure secure storage of tokens on the client-side to prevent unauthorized access.

Example Request

				
					curl --location 'https://dev-api.unduit.com/api/v1/auth/login' \
--data-raw '{
  "email": "jane.smith@example.com",
  "password": "password"
}'
				
			

Example Response

				
					{
  "message": "Login successful",
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6MiwiZW1haWwiOiJmYWlyd2F5aW5kZXBlbmRlbnRtb3J0Z2FnZWNvcnBvcmF0aW9uQHVuZHVpdC5jb20iLCJjb21wYW55X2lkIjozMTcsImlhdCI6MTczMzM5Mzk5NSwiZXhwIjoxNzMzMzk3NTk1fQ.qvWAgXO-AUr5-JurBC_cBMJ1y-SWJmkcTlihS-n5gjw"
}
				
			

Example Request

				
					curl --location 'https://dev-api.unduit.com/api/v1/refresh-token' \
--data '{
    "refresh_token": "<token>"
}'
				
			

Example Response

				
					{
  "message": "Token has been refreshed successfully.",
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6MiwiZW1haWwiOiJmYWlyd2F5aW5kZXBlbmRlbnRtb3J0Z2FnZWNvcnBvcmF0aW9uQHVuZHVpdC5jb20iLCJjb21wYW55X2lkIjozMTcsImlhdCI6MTczMzM5Mzk5NSwiZXhwIjoxNzMzMzk3NTk1fQ.qvWAgXO-AUr5-JurBC_cBMJ1y-SWJmkcTlihS-n5gjw"
}
				
			

Manage

The Manage folder provides APIs to manage users and assets associated with a company on the Unduit platform. These APIs enable developers to retrieve lists of users and assets, view detailed information, and filter assets based on specific criteria. Below is a detailed breakdown of the APIs within this folder:

API Endpoints

  1. Endpoint: https://dev-api.unduit.com/api/v1/users
  2. Description: Retrieves a paginated list of users associated with the company. Each page contains up to 10 records by default. Developers can apply filters, such as by email, to narrow down the results. Each user object includes an AssignedAssets array, which contains all assets assigned to the user. If no asset is assigned, this array will be empty.

Example Request:

Method: GET

  1. Get all users (default behaviour)
  2. Filter by email:

Query Parameters:

ParameterTypeDescription
pageNumber Specifies the page number for pagination. Default is 1.
emailString(Optional) Filters users by email address. Returns matching users only.

Example Response

				
					{
    "totalUsers": 465,
    "totalPages": 47,
    "currentPage": 1,
    "users": [
        {
            "FirstName": "John",
            "LastName": "Doe",
            "LocationName": null,
            "PhoneCountryCode": "US",
            "ContactInfo": "1234567890",
            "Email": "john.doe@example.com",
            "Country": "US",
            "State": "CA",
            "City": "Los Angeles",
            "Zip": "90001",
            "LocationType": "Remote Employee",
            "Address_1": "1234 Elm Street",
            "Address_2": "",
            "AssignedAssets": []
        },
        {
            "FirstName": "Jane",
            "LastName": "Smith",
            "LocationName": null,
            "PhoneCountryCode": "US",
            "ContactInfo": "0987654321",
            "Email": "jane.smith@example.com",
            "Country": "US",
            "State": "NY",
            "City": "New York",
            "Zip": "10001",
            "LocationType": "Remote Employee",
            "Address_1": "5678 Oak Avenue",
            "Address_2": "Unit 202",
            "AssignedAssets": [
                {
                    "assetId": "LEN-0000-ABCD1234",
                    "modelName": "Demo Laptop",
                    "modelNumber": "DL-1234",
                    "productType": "Laptop",
                    "purchaseDate": "2024-10-31",
                    "serialNumber": "SN-ABCD1234",
                    "imei": "",
                    "imei2": "",
                    "sku": "",
                    "assetStatus": "In Use",
                }
            ]
        }
    ]
}
				
			

2. Asset List

Method: GET

Endpoint: https://dev-api-v1.unduit.com/api/v1/assets

Description: Retrieves a paginated list of all assets associated with the company. Each page contains up to 10 records by default. Developers can apply filters such as serialNumber and assetId to narrow down the results. Each asset object includes an AssignedUser object, which contains the name and email of the user to whom the device is assigned. If the device is unassigned, the AssignedUser object will be null.

Method: GET

  • Get all assets (default behaviour):
  • Filter by serial number:
  • Filter by asset ID:
    • https://dev-api-v1.unduit.com/api/v1/assets?page=1&assetId=101
    • Retrieves assets with the specified asset ID.
  • Filter by both serial number and asset ID:
    • https://dev-api-v1.unduit.com/api/v1/assets?page=1&serialNumber=MBP2022XYZ&assetId=101
    • Retrieves assets that match both the specified serial number and asset ID.

Query Parameters:

ParameterTypeDescription
pageNumber Specifies the page number for pagination. Default is 1.
serialNumberString(Optional) Filters assets by serial number.
assetId String(Optional) Filters assets by ID.

Example Response

				
					{
    "currentPage": 1,
    "totalPages": 53,
    "totalItems": 523,
    "assets": [
        {
            "assetId": "DEMO-ASSET-123",
            "modelName": "Demo Device",
            "modelNumber": "Model X",
            "productType": "Laptop",
            "purchaseDate": "2024-01-01",
            "serialNumber": "SN123456",
            "imei": "",
            "imei2": "",
            "sku": "SKU123",
            "assetStatus": "In Use",
            "AssignedUser": {
                "firstname": "John",
                "lastname": "Doe",
                "username": "John Doe",
                "email": "john.doe@example.com"
            }
        },
        {
            "assetId": "DEMO-ASSET-456",
            "modelName": "Demo Device",
            "modelNumber": "Model Y",
            "productType": "Tablet",
            "purchaseDate": "2024-02-01",
            "serialNumber": "SN654321",
            "imei": "",
            "imei2": "",
            "sku": "SKU456",
            "assetStatus": "In Use",
            "AssignedUser": {
                "firstname": "Jane",
                "lastname": "Smith",
                "username": "Jane Smith",
                "email": "jane.smith@example.com"
            }
        }
    ]
}
				
			

Key Notes

  • These APIs allow developers to efficiently manage user and asset data for their company on the Unduit platform.
  • Be mindful of user and asset identifiers when making requests to ensure accurate results.
  • Always secure your API calls with a valid token as described in the Authentication section.

GET Users List

Example Request

				
					curl --location 'https://dev-api.unduit.com/api/v1/users?page=1' \
--header 'Authorization: Bearer <token>'
				
			

Example Response

				
					{
    "totalUsers": 465,
    "totalPages": 47,
    "currentPage": 1,
    "users": [
        {
            "FirstName": "John",
            "LastName": "Doe",
            "LocationName": null,
            "PhoneCountryCode": "US",
            "ContactInfo": "1234567890",
            "Email": "john.doe@example.com",
            "Country": "US",
            "State": "CA",
            "City": "Los Angeles",
            "Zip": "90001",
            "LocationType": "Remote Employee",
            "Address_1": "1234 Elm Street",
            "Address_2": "",
            "AssignedAssets": []
        },
        {
            "FirstName": "Jane",
            "LastName": "Smith",
            "LocationName": null,
            "PhoneCountryCode": "US",
            "ContactInfo": "0987654321",
            "Email": "jane.smith@example.com",
            "Country": "US",
            "State": "NY",
            "City": "New York",
            "Zip": "10001",
            "LocationType": "Remote Employee",
            "Address_1": "5678 Oak Avenue",
            "Address_2": "Unit 202",
            "AssignedAssets": [
                {
                    "assetId": "LEN-0000-ABCD1234",
                    "modelName": "Demo Laptop",
                    "modelNumber": "DL-1234",
                    "productType": "Laptop",
                    "purchaseDate": "2024-10-31",
                    "serialNumber": "SN-ABCD1234",
                    "imei": "",
                    "imei2": "",
                    "sku": "",
                    "assetStatus": "In Use",
                }
            ]
        }
    ]
}

				
			

GETAssets List

Example Request

				
					curl --location 'https://dev-api.unduit.com/api/v1/assets?page=1' \
--header 'Authorization: Bearer <token>'
				
			

Example Response

				
					{
  "currentPage": 1,
  "totalPages": 53,
  "totalItems": 523,
  "assets": [
    {
      "assetId": "DEMO-ASSET-123",
      "modelName": "Demo Device",
      "modelNumber": "Model X",
      "productType": "Laptop",
      "purchaseDate": "2024-01-01",
      "serialNumber": "SN123456",
      "imei": "",
      "imei2": "",
      "sku": "SKU123",
      "assetStatus": "In Use",
      "AssignedUser": {
        "firstname": "John",
        "lastname": "Doe",
        "username": "John Doe",
        "email": "john.doe@example.com"
      }
    },
    {
      "assetId": "DEMO-ASSET-456",
      "modelName": "Demo Device",
      "modelNumber": "Model Y",
      "productType": "Tablet",
      "purchaseDate": "2024-02-01",
      "serialNumber": "SN654321",
      "imei": "",
      "imei2": "",
      "sku": "SKU456",
      "assetStatus": "In Use",
      "AssignedUser": {
        "firstname": "Jane",
        "lastname": "Smith",
        "username": "Jane Smith",
        "email": "jane.smith@example.com"
      }
    }
  ]
}
				
			

Recover

The Recover folder provides APIs to manage IT asset recovery workflows on the Unduit platform. These APIs allow users to create recovery orders, retrieve lists of users participating in campaigns, view asset and order information, monitor recovery statuses, and access shipment tracking details. The APIs offer full visibility into the recovery process, helping organizations efficiently track and manage returning assets without modifying asset records.

GETCampaign List

1. Recover Campaigns List API

  1. Endpoint: GET https://dev-api.unduit.com/api/v1/recover/campaigns
  2. Description: Retrieves a paginated list of Recover Campaigns associated with the company. By default, the response includes up to 10 campaigns per page. The API also supports filtering options to narrow down the results as needed.

Query Parameters:

Method: GET

Endpoint: https://dev-api.unduit.com/api/v1/recover/campaigns

Query Parameters:

ParameterTypeDescriptionExample
pageNumberPage number for pagination1
limitNumber(Optional) Number of records per page (default is 10)10

Example Request

				
					curl --location 'https://dev-api.unduit.com/api/v1/recover/campaigns' \
--header 'Authorization: Bearer <token>'
				
			

Example Response

				
					{
  "totalRecords": 9,
  "totalPages": 1,
  "currentPage": 1,
  "campaigns": [
    {
      "campaign_number": "17448093142852",
      "compain_title": "sfsd",
      "Start_date": "Apr 11th, 2025",
      "country": {
        "name": "India",
        "code": "IN"
      },
      "total_device_count": 11,
      "total_users": 4
    },
    {
      "campaign_number": "17448094992831",
      "compain_title": "asdfgh",
      "Start_date": "Feb 5th, 2025",
      "country": {
        "name": "India",
        "code": "IN"
      },
      "total_device_count": 14,
      "total_users": 6
    },
    {
      "campaign_number": "17448094992830",
      "compain_title": "qwerty",
      "Start_date": "Feb 5th, 2025",
      "country": {
        "name": "United States",
        "code": "US"
      },
      "total_device_count": 16,
      "total_users": 9
    },
    {
      "campaign_number": "17448094992829",
      "compain_title": "UK Cmapaign",
      "Start_date": "Feb 5th, 2025",
      "country": {
        "name": "United Kingdom",
        "code": "GB"
      },
      "total_device_count": 7,
      "total_users": 6
    },
    {
      "campaign_number": "17448094992654",
      "compain_title": "Rolling Campaign for Printer Return",
      "Start_date": "Oct 25th, 2023",
      "country": {
        "name": "United States",
        "code": "US"
      },
      "total_device_count": 20,
      "total_users": 4
    },
    {
      "campaign_number": "17448094992450",
      "compain_title": "Fairway Rolling Campaign",
      "Start_date": "Jan 27th, 2023",
      "country": {
        "name": "United States",
        "code": "US"
      },
      "total_device_count": 8017,
      "total_users": 3422
    },
    {
      "campaign_number": "17448094992391",
      "compain_title": "Equipment Return - Corp RIF 12/01",
      "Start_date": "Dec 21st, 2022",
      "country": {
        "name": "United States",
        "code": "US"
      },
      "total_device_count": 61,
      "total_users": 23
    },
    {
      "campaign_number": "17448094992384",
      "compain_title": "Fairway Wholesale",
      "Start_date": "Dec 12th, 2022",
      "country": {
        "name": "United States",
        "code": "US"
      },
      "total_device_count": 39,
      "total_users": 23
    },
    {
      "campaign_number": "17448094992365",
      "compain_title": "Corp RIF - Dec 2022",
      "Start_date": "Jan 30th, 2023",
      "country": {
        "name": "United States",
        "code": "US"
      },
      "total_device_count": 131,
      "total_users": 57
    }
  ]
}
				
			

Key Notes for Recover Campaigns List API

  • This API allows developers to retrieve and manage Recover Campaign data associated with their company on the Unduit platform.
  • Campaign data includes details such as campaign number, title, start date, country, total devices, and total users.
  • Results are paginated by default, with 10 campaigns per page unless otherwise specified via query parameters.
  • The response structure includes country information (name and ISO code) to help with region-specific filtering or analytics.
  • The assignedAssets array is present in associated user data, indicating which devices are tied to specific users (if applicable).
  • Ensure your API calls are secured using a valid Bearer token, as outlined in the Authentication section.
  • Use the page query parameter to navigate through multiple pages of campaign records.
  • Be consistent with date formatting, and consider converting human-readable dates to a machine-parsable format if needed on the client side.
  • Always validate the campaign number and associated identifiers when integrating with other modules or systems to maintain data integrity

GETCampaign Details

Description:

This API retrieves detailed information about a specific Recover Campaign, including:

  • Campaign metadata (title, country, start date)
  • Return address information
  • A list of users associated with the campaign
  • Assets assigned to each user
  • Tracking information for each user

Path Parameters

ParameterTypeRequiredDescription
campaign_numberString✅ YesUnique identifier of the recover campaign

Query Parameters (for pagination)

ParameterTypeRequiredDefaultDescription
pageNumber❌ No1 Page number to retrieve (for paginated user results)
limit Number❌ No10Number of users to return per page

Example Request

				
					curl --location 'https://dev-api.unduit.com/api/v1/recover/employees/details/17449821332893'
				
			

Example Response

				
					{
  "campaign_number": "17448093142852",
  "title": "sfsd",
  "country": {
    "name": "India",
    "code": "IN"
  },
  "start_date": "Apr 11th, 2025",
  "helpdesk_email": null,
  "returnAddress": [
    {
      "name": "Unduit Indore",
      "title": "sfsd",
      "company": "Unduit LLC",
      "country": {
        "name": "India",
        "code": "IN"
      },
      "state": {
        "name": "Madhya Pradesh",
        "code": "MP",
        "country_code": "IN"
      },
      "city": "Indore",
      "zip_code": "452010",
      "address": "173 PU4, Vijay Nagar, 2nd Floor",
      "phone": "7088816169",
      "email": "rnppxpm@nclnbm.zxv",
      "packages": [
        {
          "device": "Laptop",
          "qty": 1,
          "incomingWeight": 10,
          "length": 16,
          "width": 12,
          "height": 4
        }
      ]
    }
  ],
  "users": [
    {
      "recovery_id": "174521963851545",
      "email": "hetosuni@mailinator.com",
      "firstname": "Dora",
      "lastname": "Blevins",
      "phone_country": "IN",
      "phone_number": "4243234242",
      "country": {
        "name": "India",
        "code": "IN"
      },
      "state": {
        "name": "Delhi",
        "code": "DL",
        "country_code": "IN"
      },
      "city": "Ipsum culpa evenie",
      "zip": "26439",
      "address_line_1": "34 West First Street",
      "address_line_2": "Labore deserunt temporibus eius ducimus nece",
      "items": [
        {
          "item": "Rachel Key",
          "item_serial_no": "2134",
          "item_asset_id": "2134",
          "item_imei": "213",
          "custom_field_1": "2134",
          "custom_field_2": "2134"
        },
        {
          "item": "Katelyn Livingston",
          "item_serial_no": "1234",
          "item_asset_id": "1234",
          "item_imei": "12342134",
          "custom_field_1": "2312314",
          "custom_field_2": "2134"
        },
        {
          "item": "Fay Hoffman",
          "item_serial_no": "",
          "item_asset_id": "",
          "item_imei": "",
          "custom_field_1": null,
          "custom_field_2": null
        },
        {
          "item": "Zachary Becker",
          "item_serial_no": "",
          "item_asset_id": "",
          "item_imei": "",
          "custom_field_1": null,
          "custom_field_2": null
        },
        {
          "item": "Helen Stewart",
          "item_serial_no": "",
          "item_asset_id": "",
          "item_imei": "",
          "custom_field_1": null,
          "custom_field_2": null
        }
      ],
      "tracking": []
    },
    {
      "recovery_id": "174522003651546",
      "email": "nirebyhi@mailinator.com",
      "firstname": "Jakeem",
      "lastname": "Carney",
      "phone_country": "IN",
      "phone_number": "1234123412",
      "country": {
        "name": "India",
        "code": "IN"
      },
      "state": {
        "name": "Assam",
        "code": "AS",
        "country_code": "IN"
      },
      "city": "Distinctio Dolore q",
      "zip": "21793",
      "address_line_1": "286 Rocky Old Boulevard",
      "address_line_2": "Laboriosam accusantium vitae nihil dolor",
      "items": [
        {
          "item": "Nerea Rice",
          "item_serial_no": "",
          "item_asset_id": "",
          "item_imei": "",
          "custom_field_1": null,
          "custom_field_2": null
        },
        {
          "item": "asfddfsadf",
          "item_serial_no": "sadf",
          "item_asset_id": "sadf",
          "item_imei": "1234",
          "custom_field_1": "12341234",
          "custom_field_2": "2134"
        }
      ],
      "tracking": []
    },
    {
      "recovery_id": "174522395051578",
      "email": "john222.doe@example.com",
      "firstname": "John 2",
      "lastname": "Doe 223",
      "phone_country": "US",
      "phone_number": "3123123123",
      "country": {
        "name": "United States",
        "code": "US"
      },
      "state": {
        "name": "New York",
        "code": "NY",
        "country_code": "US"
      },
      "city": "New York",
      "zip": "10001",
      "address_line_1": "123 Main St",
      "address_line_2": null,
      "items": [
        {
          "item": "Rachel Key",
          "item_serial_no": "2134",
          "item_asset_id": "2134",
          "item_imei": "213",
          "custom_field_1": "2134",
          "custom_field_2": "2134"
        },
        {
          "item": "Katelyn Livingston",
          "item_serial_no": "1234",
          "item_asset_id": "1234",
          "item_imei": "12342134",
          "custom_field_1": "2312314",
          "custom_field_2": "2134"
        }
      ],
      "tracking": []
    },
    {
      "recovery_id": "174522412151579",
      "email": "john222.doe@example.com",
      "firstname": "John 2",
      "lastname": "Doe 223",
      "phone_country": "IN",
      "phone_number": "3123123123",
      "country": {
        "name": "India",
        "code": "IN"
      },
      "state": {
        "name": "Madhya Pradesh",
        "code": "MP",
        "country_code": "IN"
      },
      "city": "Indore",
      "zip": "10001",
      "address_line_1": "123 Main St",
      "address_line_2": null,
      "items": [
        {
          "item": "Rachel Key",
          "item_serial_no": "2134",
          "item_asset_id": "2134",
          "item_imei": "213",
          "custom_field_1": "2134",
          "custom_field_2": "2134"
        },
        {
          "item": "Katelyn Livingston",
          "item_serial_no": "1234",
          "item_asset_id": "1234",
          "item_imei": "12342134",
          "custom_field_1": "2312314",
          "custom_field_2": "2134"
        }
      ],
      "tracking": []
    }
  ],
  "totalUsers": 4,
  "totalPages": 1,
  "currentPage": 1
}
				
			

POSTAdd User

This API is used to add a new user to an existing Recover Campaign, along with their return address and assigned asset details. The user will be associated with the specified campaign and will be expected to return the listed items.

Request Body

FieldTypeRequiredDescription
campaign_numberString✅ YesUnique identifier of the recover campaign
emailString✅ YesUser's email address
firstnameString✅ YesFirst name of the user
lastnameString✅ YesLast name of the user
phoneString✅ YesUser's phone number (with country code if international)
address_line_1String✅ YesPrimary address line
address_line_2String❌ NoSecondary address line
cityString✅ YesCity of the user’s address
stateString✅ YesState or province code
zipString✅ YesZIP or postal code
countryString✅ YesISO 2-letter country code (e.g., US, IN, GB)
itemsArray✅ YesList of items/assets assigned to the user (at least one item is required)

⚠️ Max limit: You can assign a maximum of 5 items per user.

🔁 Items Object (each item in items array)

FieldTypeRequiredDescription
itemString✅ YesName/label of the asset
item_serial_noString❌ NoSerial number of the asset
item_asset_idString❌ NoInternal asset ID
item_imeiString❌ NoIMEI number (for mobile devices)
custom_field_1String❌ NoCustom metadata field 1
custom_field_2String❌ NoCustom metadata field 2

Example Request

				
					curl --location --request GET 'https://dev-api.unduit.com/api/v1/recover/user/add' \
--data-raw '{
  "campaign_number": 17449821332893,
  "email": "john.doe@company.com",
  "firstname": "John",
  "lastname": "Doe",
  "phone": "1632960123",
  "address_line_1": "123 Business Park",
  "address_line_2": "Suite 200",
  "city": "London",
  "state": "LDN",
  "zip": "10001",
  "country": "GB",
  "items": [
    {
      "item": "MacBook Pro 16\"",
      "item_serial_no": "C02XL0XXXXX1",
      "item_asset_id": "IT-APPLE-001",
      "item_imei": "",
      "custom_field_1": "2023-issue",
      "custom_field_2": "Finance Dept"
    },
    {
      "item": "iPhone 15 Pro",
      "item_serial_no": "DNXXXXXX1JKL",
      "item_asset_id": "IT-APPLE-002",
      "item_imei": "35693803564XXXX",
      "custom_field_1": "Mobile Plan: Corp",
      "custom_field_2": "Manager Approval"
    }
  ]
}'
				
			

Example Response

				
					{
  "success": true,
  "message": "Employee added successfully"
}
				
			
Scroll to Top

See Unduit in Action

Personalized walkthrough of the Unduit Platform with our experts.

See Unduit in Action

Personalized walkthrough of the Unduit Platform with our experts.

🍪 Our website uses cookies

Our website use cookies. By continuing, we assume your permission to deploy cookies as detailed in our Privacy Policy.