openapi: 3.0.0 info: title: API reference description: |- Nector - Powerful Customer Engagement & Loyalty Platform - Never expose write Access or full access API key in frontend - Use read only api key as much as possible - Try and use cachefront.nector.io instead of platform.nector.io as much as possible for GET API calls - A maximum of 60 API calls are allowed per minute - Check your plan usage information from the dashboard - Nector enforces strict param check. (Pass string if it requires string and so on) - We only support UUIDV4 - Contact us at support@nector.io for more information Get started by creating an account on https://merchant.nector.io contact: name: nector url: https://nector.io?utm_source=api_doc email: support@nector.io version: 1.0.0 servers: - url: https://platform.nector.io/api/v2/merchant - url: https://cachefront.nector.io/api/v2/merchant components: schemas: success: title: success required: - meta - data type: object properties: meta: type: object data: type: object example: meta: {} data: {} error: title: error required: - meta - data type: object properties: meta: type: object data: type: object example: meta: {} data: {} merchant_create_activities: title: merchant_create_activities required: - trigger_id type: object properties: trigger_id: type: string description: (Required) (This needs to be triggers _id value) lead_id: type: string description: (One of lead_id, customer_id is required) (This needs to be leads _id value) customer_id: type: string description: (One of lead_id, customer_id is required) (Minimum length is 8) (Maximum length is 128) (This needs to be leads customer_id value) trace: $ref: "#/components/schemas/subschema_trace" example: trigger_id: (Required) (This needs to be triggers _id value) lead_id: (One of lead_id, customer_id is required) (This needs to be leads _id value) customer_id: (One of lead_id, customer_id is required) (Minimum length is 8) (Maximum length is 128) (This needs to be leads customer_id value) trace: via_api_for_wallet: title: (Any string that needs to be passed as a title) (This will be ignored if the trigger is not of type wallet reward or value override is not allowed) description: (Any string that needs to be passed as a description) (This will be ignored if the trigger is not of type wallet reward or value override is not allowed) operation: (This can only be one of cr,dr) (This will be ignored if the trigger is not of type wallet reward or value override is not allowed) coin_range: min: (This is the range between which the wallet point will be rewarded) (This will be ignored if the trigger is not of type wallet reward or value override is not allowed) max: (This is the range between which the wallet point will be rewarded) (This will be ignored if the trigger is not of type wallet reward or value override is not allowed) via_api_for_offer: offer_id: (This needs to be offers _id value) (This will be ignored if the trigger is not of type offer reward or value override is not allowed) via_api_for_email: subject: (Any string that needs to be passed as a subject) (This will be ignored if the trigger is not of type emailtool reward or value override is not allowed) emailtemplate_id: (This needs to be emailtemplates _id value) (This will be ignored if the trigger is not of type emailtool reward or value override is not allowed) params_for_activityrule: evaluation_id: (This needs to be resource value used while evaluating after_delta_day rule, must be passed along with evaluation_type) evaluation_type: (This needs to be resource value type used while evaluating after_delta_day rule, must be passed along with evaluation_id) (This can only be one of leads, coupons, wallettransactions, reviews, orders, triggers) count: 1 amount: 0 params_for_email: randomkey_randomvalue_pair: (any randomkey and randomvalue pair to pass to the emailtemplate) (upto 20 key-value pairs are allowed as part of params_for_email object) merchant_create_offerrewards: title: merchant_create_offerrewards required: - offer_id type: object properties: offer_id: type: string description: (Required) (This needs to be offers _id value) lead_id: type: string description: (One of lead_id, customer_id is required) (This needs to be leads _id value) customer_id: type: string description: (One of lead_id, customer_id is required) (Minimum length is 8) (Maximum length is 128) (This needs to be leads customer_id value) example: offer_id: (Required) (This needs to be offers _id value) lead_id: (One of lead_id, customer_id is required) (This needs to be leads _id value) customer_id: (One of lead_id, customer_id is required) (Minimum length is 8) (Maximum length is 128) (This needs to be leads customer_id value) merchant_create_offerredeems: title: merchant_create_offerredeems required: - offer_id type: object properties: offer_id: type: string description: (Required) (This needs to be offers _id value) lead_id: type: string description: (One of lead_id, customer_id is required) (This needs to be leads _id value) customer_id: type: string description: (One of lead_id, customer_id is required) (Minimum length is 8) (Maximum length is 128) (This needs to be leads customer_id value) example: offer_id: (Required) (This needs to be offers _id value) lead_id: (One of lead_id, customer_id is required) (This needs to be leads _id value) customer_id: (One of lead_id, customer_id is required) (Minimum length is 8) (Maximum length is 128) (This needs to be leads customer_id value) merchant_create_publicofferredeems: title: merchant_create_publicofferredeems required: - publicoffer_id type: object properties: publicoffer_id: type: string description: (Required) (This needs to be offers _id value) lead_id: type: string description: (One of lead_id, customer_id is required) (This needs to be leads _id value) customer_id: type: string description: (One of lead_id, customer_id is required) (Minimum length is 8) (Maximum length is 128) (This needs to be leads customer_id value) example: publicoffer_id: (Required) (This needs to be publicoffers _id value) lead_id: (One of lead_id, customer_id is required) (This needs to be leads _id value) customer_id: (One of lead_id, customer_id is required) (Minimum length is 8) (Maximum length is 128) (This needs to be leads customer_id value) merchant_create_publicofferrewards: title: merchant_create_publicofferrewards required: - publicoffer_id type: object properties: publicoffer_id: type: string description: (Required) (This needs to be offers _id value) lead_id: type: string description: (One of lead_id, customer_id is required) (This needs to be leads _id value) customer_id: type: string description: (One of lead_id, customer_id is required) (Minimum length is 8) (Maximum length is 128) (This needs to be leads customer_id value) example: publicoffer_id: (Required) (This needs to be publicoffers _id value) lead_id: (One of lead_id, customer_id is required) (This needs to be leads _id value) customer_id: (One of lead_id, customer_id is required) (Minimum length is 8) (Maximum length is 128) (This needs to be leads customer_id value) merchant_create_leads: title: merchant_create_leads type: object properties: customer_id: type: string description: (Required) (Make sure this is not predictable value. ex any uuid value) (Minimum length is 8) (Maximum length is 128) (This is the mapping id between your system and nector, this value can be used to pull the details of the customer) name: type: string description: (Required) (This is full name of the user ex. John Wick) (Maximum length is 200) metadetail: properties: email: type: string description: (One of mobile or email is required) (This needs to be valid email) mobile: type: string description: (Minimum length is 4) (Maximum length is 15) (One of mobile or email is required) country: type: string description: (This needs to one of the allowed countries and must be passed when the mobile is passed) (Should be 3 character long and lowercase ex. usa) dob: type: string description: (This needs to be ISO format date only) example: customer_id: (Required) (Make sure this is not predictable value. ex any uuid value) (Minimum length is 1) (Maximum length is 128) (This is the mapping id between your system and nector, this value can be used to pull the details of the customer) name: (Required) (This is full name of the user ex. John Wick) (Maximum length is 200) metadetail: email: (One of mobile or email is required) (One of mobile or email is required) (This needs to be valid email) mobile: (Minimum length is 4) (Maximum length is 15) (One of mobile or email is required) country: (This needs to one of the allowed countries and must be passed when the mobile is passed) (Should be 3 character long and lowercase ex. usa) dob: (This needs to be ISO format date only) merchant_update_leads: title: merchant_update_leads type: object properties: metadetail: properties: dob: type: string description: (This needs to be ISO format date only) example: metadetail: dob: (This needs to be ISO format date only) merchant_create_wallettransactions: title: merchant_create_wallettransactions required: - title - description - amount - operation type: object properties: lead_id: type: string description: (One of lead_id, customer_id is required) (This needs to be leads _id value) customer_id: type: string description: (One of lead_id, customer_id is required) (Minimum length is 8) (Maximum length is 128) (This needs to be leads customer_id value) title: type: string description: (Required) (This needs to be wallettransaction title) description: type: string description: (This needs to be wallettransaction description) amount: type: number description: (Required) (This needs to be the coin amount) hash: type: string description: (Maximum length is 64) (This can be any hash value that you want to pass for mapping between your system and nector) operation: type: string description: (Required) (This needs to be wallettransaction operation value) (This can only be one of cr,dr) example: lead_id: (One of lead_id, customer_id is required) (This needs to be leads _id value) customer_id: (One of lead_id, customer_id is required) (Minimum length is 8) (Maximum length is 128) (This needs to be leads customer_id value) title: (Required) (Required) (This needs to be wallet transaction title) description: (This needs to be wallet transaction description) amount: 12 hash: (Maximum length is 64) (This can be any hash value that you want to pass for mapping between your system and nector) operation: (Required) (This needs to be wallettransaction operation value) (This can only be one of cr,dr) merchant_create_creditwallettransactions: title: merchant_create_creditwallettransactions required: - title - description - amount - operation type: object properties: lead_id: type: string description: (One of lead_id, customer_id is required) (This needs to be leads _id value) customer_id: type: string description: (One of lead_id, customer_id is required) (Minimum length is 8) (Maximum length is 128) (This needs to be leads customer_id value) title: type: string description: (Required) (This needs to be creditwallettransaction title) description: type: string description: (This needs to be creditwallettransaction description) amount: type: number description: (Required) (This needs to be the credit amount, 1 credit = $1) hash: type: string description: (Maximum length is 64) (This can be any hash value that you want to pass for mapping between your system and nector) operation: type: string description: (Required) (This needs to be creditwallettransaction operation value) (This can only be one of cr,dr) example: lead_id: (One of lead_id, customer_id is required) (This needs to be leads _id value) customer_id: (One of lead_id, customer_id is required) (Minimum length is 8) (Maximum length is 128) (This needs to be leads customer_id value) title: (Required) (Required) (This needs to be wallet transaction title) description: (This needs to be wallet transaction description) amount: 12 hash: (Maximum length is 64) (This can be any hash value that you want to pass for mapping between your system and nector) operation: (Required) (This needs to be creditwallettransaction operation value) (This can only be one of cr,dr) merchant_create_reviews: title: merchant_create_reviews required: - reference_product_source - reference_product_id - name - rating - description type: object properties: metadetail: properties: email: type: string description: (One of mobile or email is required) (This needs to be valid email) mobile: type: string description: (Minimum length is 4) (Maximum length is 15) (One of mobile or email is required) country: type: string description: (This needs to one of the allowed countries and must be passed when the mobile is passed) (Should be 3 character long and lowercase ex. usa) order_id: type: string description: (This needs to be orders _id value) (If this is passed then the review will be attched against an order and the review will be marked as verified) reference_product_source: type: string description: (Required) (This needs to be products reference_product_source value) (This can only be one of custom_website,shopify,woocommerce) reference_product_id: type: string description: (Required) (This needs to be products reference_product_id value) name: type: string description: (Required) (Maximum length is 200) (This needs to be the name of the user who is writing the review) rating: type: number description: (Required) (Minimum is 1) (Maximum is 5) (This needs to be rating of the review) description: type: string description: (Required) (This needs to be description of the review) image_links: type: array description: (Optional) (Array of image URLs, maximum 5) maxItems: 5 items: type: string format: uri example: metadetail: email: (One of mobile or email is required) (One of mobile or email is required) (This needs to be valid email) mobile: (Minimum length is 4) (Maximum length is 15) (One of mobile or email is required) country: (This needs to one of the allowed countries and must be passed when the mobile is passed) (Should be 3 character long and lowercase ex. usa) order_id: (This needs to be orders _id value) (If this is passed then the review will be attched against an order and the review will be marked as verified) reference_product_source: (Required) (This needs to be products reference_product_source value) (This can only be one of custom_website,shopify,woocommerce) reference_product_id: (Required) (This needs to be products reference_product_id value) name: (Required) (Maximum length is 200) (This needs to be the name of the user who is writing the review) rating: 4 description: (Required) (This needs to be description of the review) image_links: - https://example.com/image1.jpg - https://example.com/image2.jpg merchant_create_qnas: title: merchant_create_qnas required: - reference_product_source - reference_product_id - name - question type: object properties: metadetail: properties: email: type: string description: (One of mobile or email is required) (This needs to be valid email) mobile: type: string description: (Minimum length is 4) (Maximum length is 15) (One of mobile or email is required) country: type: string description: (This needs to one of the allowed countries and must be passed when the mobile is passed) (Should be 3 character long and lowercase ex. usa) reference_product_source: type: string description: (Required) (This needs to be products reference_product_source value) (This can only be one of custom_website,shopify,woocommerce) reference_product_id: type: string description: (Required) (This needs to be products reference_product_id value) name: type: string description: (Required) (Maximum length is 200) (This needs to be the name of the user who is writing the qna) question: type: string description: (Required) (This needs to be the question of the user) example: metadetail: email: (One of mobile or email is required) (One of mobile or email is required) (This needs to be valid email) mobile: (Minimum length is 4) (Maximum length is 15) (One of mobile or email is required) country: (This needs to one of the allowed countries and must be passed when the mobile is passed) (Should be 3 character long and lowercase ex. usa) reference_product_source: (Required) (This needs to be products reference_product_source value) (This can only be one of custom_website,shopify,woocommerce) reference_product_id: (Required) (This needs to be products reference_product_id value) name: (Required) (Maximum length is 200) (This needs to be the name of the user who is writing the qna) question: (Required) (This needs to be the question of the user) merchant_create_uploads: title: merchant_create_uploads required: - parent_id - parent_type type: object properties: parent_id: type: string description: (Required) (This needs to be reviews or qnas _id value) parent_type: type: string description: (Required) (This can only be one of reviews,qnas) position: type: number description: (Minimum is 1) (This needs to position of the upload) example: parent_id: (Required) (This needs to be reviews or qnas _id value) parent_type: (Required) (This can only be one of reviews,qnas) position: 1 merchant_create_referralviaemailleads: title: merchant_create_referralviaemailleads required: - referred_by_referral_code - name type: object properties: referred_by_referral_code: type: string description: (Required) (This needs to leads referral_code value of the customer who is referring) name: type: string description: (Required) (Maximum length is 200) (This needs to be the name of the user who is getting referred) metadetail: properties: email: type: string description: (Required) (This needs to be valid email) example: referred_by_referral_code: (Required) (This needs to leads referral_code value of the customer who is referring) name: (Required) (Maximum length is 200) (This needs to be the name of the user who is getting referred) metadetail: email: (Required) (This needs to be valid email) merchant_create_referralviamobileleads: title: merchant_create_referralviamobileleads required: - referred_by_referral_code - name type: object properties: referred_by_referral_code: type: string description: (Required) (This needs to leads referral_code value of the customer who is referring) name: type: string description: (Required) (Maximum length is 200) (This needs to be the name of the user who is getting referred) metadetail: properties: mobile: type: string description: (Required) (Minimum length is 4) (Maximum length is 15) country: type: string description: (Required) (This needs to one of the allowed countries and must be passed when the mobile is passed) (Should be 3 character long and lowercase ex. usa) example: referred_by_referral_code: (Required) (This needs to leads referral_code value of the customer who is referring) name: (Required) (Maximum length is 200) (This needs to be the name of the user who is getting referred) metadetail: mobile: (Required) (Minimum length is 4) (Maximum length is 15) country: (Required) (This needs to one of the allowed countries and must be passed when the mobile is passed) (Should be 3 character long and lowercase ex. usa) merchant_create_inviteviaemailleads: title: merchant_create_inviteviaemailleads required: - referred_by_referral_code - name type: object properties: referred_by_referral_code: type: string description: (Required) (This needs to leads referral_code value of the customer who is referring) name: type: string description: (Required) (Maximum length is 200) (This needs to be the name of the user who is getting referred) metadetail: properties: email: type: string description: (Required) (This needs to be valid email) example: referred_by_referral_code: (Required) (This needs to leads referral_code value of the customer who is referring) name: (Required) (Maximum length is 200) (This needs to be the name of the user who is getting referred) metadetail: email: (Required) (This needs to be valid email) merchant_create_inviteviamobileleads: title: merchant_create_inviteviamobileleads required: - referred_by_referral_code - name type: object properties: referred_by_referral_code: type: string description: (Required) (This needs to leads referral_code value of the customer who is referring) name: type: string description: (Required) (Maximum length is 200) (This needs to be the name of the user who is getting referred) metadetail: properties: mobile: type: string description: (Required) (Minimum length is 4) (Maximum length is 15) country: type: string description: (Required) (This needs to one of the allowed countries and must be passed when the mobile is passed) (Should be 3 character long and lowercase ex. usa) example: referred_by_referral_code: (Required) (This needs to leads referral_code value of the customer who is referring) name: (Required) (Maximum length is 200) (This needs to be the name of the user who is getting referred) metadetail: mobile: (Required) (Minimum length is 4) (Maximum length is 15) country: (Required) (This needs to one of the allowed countries and must be passed when the mobile is passed) (Should be 3 character long and lowercase ex. usa) subschema_trace: title: subschema_trace type: object properties: via_api_for_wallet: $ref: "#/components/schemas/subschema_trace_wallet_reward" via_api_for_offer: $ref: "#/components/schemas/subschema_trace_offer_reward" via_api_for_email: $ref: "#/components/schemas/subschema_trace_email_reward" via_api_for_event: $ref: "#/components/schemas/subschema_trace_event_reward" via_api_for_webhook: $ref: "#/components/schemas/subschema_trace_webhook_reward" params_for_activityrule: type: object properties: evaluation_id: type: string description: (This needs to be resource value used while evaluating after_delta_day rule, must be passed along with evaluation_type) evaluation_type: type: string description: (This needs to be resource value type used while evaluating after_delta_day rule, must be passed along with evaluation_id) (This can only be one of leads, coupons, wallettransactions, reviews, orders, triggers) count: type: number description: (Minimum value is 1) (This needs to be valid integer value use while evaluating on_activity_count_reached, on_timeline_count_reached rules) amount: type: number description: (Minimum value is 0) (This needs to be valid number value use while evaluating on_order_amount_matched, on_activity_amount_reached, on_timeline_amount_reached rules) params_for_email: type: object properties: randomkey_randomvalue_pair: type: string description: (any randomvalue to pass to the emailtemplate) (upto 20 key-value pairs are allowed as part of params_for_email object) params_for_event: type: object properties: randomkey_randomvalue_pair: type: string description: (any randomvalue to pass to the event) (upto 20 key-value pairs are allowed as part of params_for_event object) params_for_webhook: type: object properties: randomkey_randomvalue_pair: type: string description: (any randomvalue to pass to the webhook) (upto 20 key-value pairs are allowed as part of params_for_webhook object) subschema_trace_wallet_reward: title: subschema_trace_wallet_reward type: object properties: title: type: string description: (Any string that needs to be passed as a title) (This will be ignored if the trigger is not of type wallet reward or value override is not allowed) description: type: string description: (Any string that needs to be passed as a description) (This will be ignored if the trigger is not of type wallet reward or value override is not allowed) operation: type: string description: (This can only be one of cr,dr) (This will be ignored if the trigger is not of type wallet reward or value override is not allowed) coin_range: type: object description: (This is the range between which the wallet point will be rewarded) (This will be ignored if the rule is not of type wallet reward or it does not allow value override) subschema_trace_offer_reward: title: subschema_trace_offer_reward type: object properties: offer_id: type: string description: (This needs to be offers _id value) (This will be ignored if the rule is not of type offer reward or it does not allow value override) subschema_trace_email_reward: title: subschema_trace_email_reward type: object properties: subject: type: string description: (Any string that needs to be passed as a subject) (This will be ignored if the trigger is not of type emailtool reward or value override is not allowed) emailtemplate_id: type: string description: (This needs to be emailtemplates _id value) (This will be ignored if the trigger is not of type emailtool reward or value override is not allowed) subschema_trace_event_reward: title: subschema_trace_event_reward type: object properties: event_topic: type: string description: (Any string that needs to be passed as a topic) (This will be ignored if the trigger is not of type event reward or value override is not allowed) integration_id: type: string description: (This needs to be integrations _id value) (This will be ignored if the trigger is not of type event reward or value override is not allowed) subschema_trace_webhook_reward: title: subschema_trace_webhook_reward type: object properties: webhook_topic: type: string description: (Any string that needs to be passed as a topic) (This will be ignored if the trigger is not of type webhook reward or value override is not allowed) webhook_uri: type: string description: (This needs to be uri to which the webhook will be called) (This will be ignored if the trigger is not of type webhook reward or value override is not allowed) webhook_secret: type: string description: (This needs to be valid secret, based on this the business can verify the webhook) (This will be ignored if the trigger is not of type webhook reward or value override is not allowed) securitySchemes: basicAuth: type: http scheme: basic tags: - name: Trigger APIs (Easiest way to start rewarding with nector) - name: User APIs - name: Wallet Reward APIs - name: Credit Wallet Reward APIs - name: Offer Reward APIs - name: Cross Selling Offer Reward APIs - name: Review APIs - name: QnA APIs - name: Referral APIs - name: Misc APIs - name: Various Listing APIs paths: /activities: post: tags: - Trigger APIs (Easiest way to start rewarding with nector) summary: Reward Using Trigger description: This API is used to reward users based on the trigger. The trigger can be any of the following wallet reward, offer reward, email, event, or webhook. The trigger can be set up in the Nector dashboard. parameters: - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/merchant_create_activities" required: true responses: "200": description: "200" security: [] /leads-referral-via-email: post: tags: - Referral APIs summary: Claim Referral Code via Email description: This API is intended for situations where the referee has their friend's referral code. For example, an existing customer shares their referral code with friends, enabling them to sign up. This process also creates an account for the referee on the host platform (e.g., Shopify or WooCommerce). parameters: - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/merchant_create_referralviaemailleads" required: true responses: "200": description: "200" security: [] /leads-referral-via-mobile: post: tags: - Referral APIs summary: Claim Referral Code via Mobile Number description: This API is designed for scenarios where the referee has a friend's referral code, such as when an existing customer shares their code with friends. Using the code will create an account on the host platform (e.g., Shopify). This functionality is available exclusively for Shopify brands. parameters: - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/merchant_create_referralviamobileleads" required: true responses: "200": description: "200" security: [] /leads-invite-via-email: post: tags: - Referral APIs summary: Invite Friends via Email description: This API is tailored for situations where the referrer knows their friend's email address and wants to send them an invitation. For instance, an existing customer can enter their friend's email to invite them. This action will also create an account for the friend on the host platform (e.g., Shopify or WooCommerce). parameters: - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/merchant_create_inviteviaemailleads" required: true responses: "200": description: "200" security: [] /leads-invite-via-mobile: post: tags: - Referral APIs summary: Invite Friends via Mobile Number description: This API is designed for scenarios where the referrer knows their friend's mobile number and wants to send them an invitation. For example, an existing customer can enter their friend's mobile number to invite them. This action will also create an account for the friend on the host platform (e.g., Shopify). This functionality is available exclusively for Shopify brands. parameters: - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/merchant_create_inviteviamobileleads" required: true responses: "200": description: "200" security: [] /referrals/{id}: get: tags: - Referral APIs summary: Get Referral description: Get details of the referral parameters: - name: id in: path description: (Required) (This can be any valid uuidv4 value or referral _id value) required: true schema: type: string - name: referred_by_lead_id in: query description: (This needs to be leads _id value) (one of referred_to_lead_id or referred_by_lead_id is required) schema: type: string - name: referred_to_lead_id in: query description: (This needs to be leads _id value) (one of referred_to_lead_id or referred_by_lead_id is required) schema: type: string - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string responses: "200": description: "200" security: [] /referrals: get: tags: - Referral APIs summary: Fetch Referrals description: Fetch referrals based on various filters parameters: - name: referred_by_lead_id in: query description: (This needs to be leads _id value) (one of referred_to_lead_id or referred_by_lead_id is required) schema: type: string - name: referred_to_lead_id in: query description: (This needs to be leads _id value) (one of referred_to_lead_id or referred_by_lead_id is required) schema: type: string - name: id in: query description: (This needs to be coupons _id value) schema: type: string - name: page in: query description: (Minimum is 1) schema: type: number - name: limit in: query description: (Minimum is 1) (Maximum is 100) schema: type: number - name: sort in: query description: (This can only be one of created_at,updated_at) schema: type: string - name: sort_op in: query description: (This can only be one of ASC,DESC) schema: type: string - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string responses: "200": description: "200" security: [] /offerrewards: post: tags: - Offer Reward APIs summary: Reward Offer description: Reward an offer without using wallet points. This API can be called only with full access api key, make sure to call this API only from your backend using full access api key. DO NOT EXPOSE FULL ACCESS API KEY parameters: - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/merchant_create_offerrewards" required: true responses: "200": description: "200" security: [] /offerredeems: post: tags: - Offer Reward APIs summary: Redeem Offer description: Redeem a offer using wallet points. parameters: - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/merchant_create_offerredeems" required: true responses: "200": description: "200" security: [] /coupons/{id}: get: tags: - Offer Reward APIs summary: Get Coupon description: Get details of the coupon parameters: - name: id in: path description: (Required) (This can be any valid uuidv4 value or coupons _id value) required: true schema: type: string - name: lead_id in: query description: (Required) (This needs to be leads _id value) required: true schema: type: string - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string responses: "200": description: "200" security: [] /coupons: get: tags: - Offer Reward APIs summary: Fetch Coupons description: Fetch coupons based on various filters parameters: - name: lead_id in: query description: (Required) (This needs to be leads _id value) required: true schema: type: string - name: offer_id in: query description: (This needs to be coupons offer_id value) schema: type: string - name: id in: query description: (This needs to be coupons _id value) schema: type: string - name: page in: query description: (Minimum is 1) schema: type: number - name: limit in: query description: (Minimum is 1) (Maximum is 100) schema: type: number - name: sort in: query description: (This can only be one of created_at,updated_at) schema: type: string - name: sort_op in: query description: (This can only be one of ASC,DESC) schema: type: string - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string responses: "200": description: "200" security: [] /publicofferrewards: post: tags: - Cross Selling Offer Reward APIs summary: Reward Cross Selling Offer description: Reward a cross selling offer without using wallet points. This API can be called only with full access api key, make sure to call this API only from your backend using full access api key. DO NOT EXPOSE FULL ACCESS API KEY parameters: - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/merchant_create_publicofferrewards" required: true responses: "200": description: "200" security: [] /publicofferredeems: post: tags: - Cross Selling Offer Reward APIs summary: Redeem Cross Selling Offer description: Redeem a cross selling offer using wallet points. parameters: - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/merchant_create_publicofferredeems" required: true responses: "200": description: "200" security: [] /publiccoupons/{id}: get: tags: - Cross Selling Offer Reward APIs summary: Get Cross Selling Coupon description: Get details of the cross selling coupon parameters: - name: id in: path description: (Required) (This can be any valid uuidv4 value or publiccoupons _id value) required: true schema: type: string - name: lead_id in: query description: (Required) (This needs to be leads _id value) required: true schema: type: string - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string responses: "200": description: "200" security: [] /publiccoupons: get: tags: - Cross Selling Offer Reward APIs summary: Fetch Cross Selling Coupons description: Fetch cross selling coupons based on various filters parameters: - name: lead_id in: query description: (Required) (This needs to be leads _id value) required: true schema: type: string - name: publicoffer_id in: query description: (This needs to be publiccoupons offer_id value) schema: type: string - name: id in: query description: (This needs to be publiccoupons _id value) schema: type: string - name: page in: query description: (Minimum is 1) schema: type: number - name: limit in: query description: (Minimum is 1) (Maximum is 100) schema: type: number - name: sort in: query description: (This can only be one of created_at,updated_at) schema: type: string - name: sort_op in: query description: (This can only be one of ASC,DESC) schema: type: string - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string responses: "200": description: "200" security: [] /triggers: get: tags: - Various Listing APIs summary: Fetch Triggers (Content) description: Fetch triggers (content) based on various filters parameters: - name: id in: query description: (This needs to be triggers _id value) schema: type: string - name: page in: query description: (Minimum is 1) schema: type: number - name: limit in: query description: (Minimum is 1) (Maximum is 100) schema: type: number - name: sort in: query description: (This can only be one of created_at,updated_at) schema: type: string - name: sort_op in: query description: (This can only be one of ASC,DESC) schema: type: string - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string responses: "200": description: "200" security: [] /aggreegateddetails: get: tags: - Various Listing APIs summary: Fetch Aggreegated Details description: Fetch the aggreegateddetails of various configs based on tier parameters: - name: tier in: query description: (This needs to be lead's tier value or null) schema: type: string - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string responses: "200": description: "200" security: [] /aggreegatedoffers: get: tags: - Various Listing APIs summary: Fetch Aggreegated Offers description: Fetches the aggreegatedoffers based on tier parameters: - name: tier in: query description: (This needs to be lead's tier value or null) schema: type: string - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string responses: "200": description: "200" security: [] /leads: post: tags: - User APIs summary: Create User description: Creates a new customer on nector aginst your business workspace. This API can be called only with full access api key, make sure to call this API only from your backend using full access api key. DO NOT EXPOSE FULL ACCESS API KEY parameters: - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/merchant_create_leads" required: true responses: "200": description: "200" security: [] /leads/{id}: put: tags: - User APIs summary: Update User description: Update details of the user, it will update properties of the user, if the properties already exists it will not be updated parameters: - name: customer_id in: query description: (Minimum length is 8) (Maximum length is 128) (This needs to be leads customer_id value) (If this value is passed, it will be given first preference while updating user) schema: type: string - name: id in: path description: (Required) (This needs to be leads _id value) (If need to update user via customer id pass any random uuid v4 value for id) required: true schema: type: string - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/merchant_update_leads" required: true responses: "200": description: "200" security: [] get: tags: - User APIs summary: Get User description: Get details of the user parameters: - name: customer_id in: query description: (Minimum length is 8) (Maximum length is 128) (This needs to be leads customer_id value) (If this value is passed, it will be given first preference while searching user) schema: type: string - name: referral_code in: query description: (This needs to be leads referral_code value) (If this value is passed, it will be given second preference while searching user) schema: type: string - name: email in: query description: (This needs to be leads email value) (If this value is passed, it will be given third preference while searching user) schema: type: string - name: mobile in: query description: (This needs to be leads mobile value) (If this value is passed, it will be given fourth preference while searching user) schema: type: string - name: id in: path description: (Required) (This needs to be leads _id value) (If need to get user via customer id pass any random uuid v4 value for id) required: true schema: type: string - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string responses: "200": description: "200" security: [] /wallettransactions: post: tags: - Wallet Reward APIs summary: Create Wallet Transaction description: Create a wallet transaction on behalf of the user. This API can be called only with full access api key, make sure to call this API only from your backend using full access api key. DO NOT EXPOSE FULL ACCESS API KEY parameters: - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/merchant_create_wallettransactions" required: true responses: "200": description: "200" security: [] get: tags: - Wallet Reward APIs summary: Fetch Wallet Transactions description: Fetch wallet transactions based on various filters parameters: - name: lead_id in: query description: (Required) (This needs to be leads _id value) required: true schema: type: string - name: hash in: query description: (Maximum length is 64) (This needs to be wallettransaction hash value) schema: type: string - name: operation in: query description: (This needs to be wallettransaction operation value) (This can only be one of cr,dr) schema: type: string - name: id in: query description: (This needs to be wallettransaction _id value) schema: type: string - name: page in: query description: (Minimum is 1) schema: type: number - name: limit in: query description: (Minimum is 1) (Maximum is 100) schema: type: number - name: sort in: query description: (This can only be one of created_at,updated_at) schema: type: string - name: sort_op in: query description: (This can only be one of ASC,DESC) schema: type: string - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string responses: "200": description: "200" security: [] /wallettransactions/{id}: get: tags: - Wallet Reward APIs summary: Get Wallet Transaction description: Get details of the wallet transaction parameters: - name: id in: path description: (Required) (This needs to be wallettransaction _id value) required: true schema: type: string - name: lead_id in: query description: (Required) (This needs to be leads _id value) required: true schema: type: string - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string responses: "200": description: "200" security: [] /creditwallettransactions: post: tags: - Credit Wallet Reward APIs summary: Create Credit Wallet Transaction (Limited Access) description: Create credit wallet transaction on behalf of the user. This is secondary wallet which should be used for giftcards, return etc. The default mapping is 1 credit = $1. This API can be called only with full access api key, make sure to call this API only from your backend using full access api key. DO NOT EXPOSE FULL ACCESS API KEY parameters: - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/merchant_create_creditwallettransactions" required: true responses: "200": description: "200" security: [] get: tags: - Credit Wallet Reward APIs summary: Fetch Credit Wallet Transaction (Limited Access) description: Fetch credit wallet transactions based on various filters parameters: - name: lead_id in: query description: (Required) (This needs to be leads _id value) required: true schema: type: string - name: hash in: query description: (Maximum length is 64) (This needs to be creditwallettransaction hash value) schema: type: string - name: operation in: query description: (This needs to be creditwallettransaction operation value) (This can only be one of cr,dr) schema: type: string - name: id in: query description: (This needs to be creditwallettransaction _id value) schema: type: string - name: page in: query description: (Minimum is 1) schema: type: number - name: limit in: query description: (Minimum is 1) (Maximum is 100) schema: type: number - name: sort in: query description: (This can only be one of created_at,updated_at) schema: type: string - name: sort_op in: query description: (This can only be one of ASC,DESC) schema: type: string - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string responses: "200": description: "200" security: [] /creditwallettransactions/{id}: get: tags: - Credit Wallet Reward APIs summary: Get Credit Wallet Transaction (Limited Access) description: Get details of the credit wallet transaction parameters: - name: id in: path description: (Required) (This needs to be creditwallettransaction _id value) required: true schema: type: string - name: lead_id in: query description: (Required) (This needs to be leads _id value) required: true schema: type: string - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string responses: "200": description: "200" security: [] /reviews: post: tags: - Review APIs summary: Create Review description: Create review on behalf of the user. parameters: - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/merchant_create_reviews" required: true responses: "200": description: "200" security: [] get: tags: - Review APIs summary: Fetch Reviews description: Fetch reviews based on various filters parameters: - name: reference_product_source in: query description: (This needs to be products reference_product_source value) (This can only be one of custom_website,shopify,woocommerce) schema: type: string - name: reference_product_id in: query description: (This needs to be products reference_product_id value) schema: type: string - name: is_featured in: query description: (This needs to be reviews is_featured value) schema: type: string - name: is_verified in: query description: (This needs to be reviews is_verified value) schema: type: string - name: id in: query description: (This needs to be reviews _id value) schema: type: string - name: page in: query description: (Minimum is 1) schema: type: number - name: limit in: query description: (Minimum is 1) (Maximum is 100) schema: type: number - name: sort in: query description: (This can only be one of created_at,updated_at) schema: type: string - name: sort_op in: query description: (This can only be one of ASC,DESC) schema: type: string - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string responses: "200": description: "200" security: [] /reviews/{id}: get: tags: - Review APIs summary: Get Review description: Get details of the review parameters: - name: id in: path description: (Required) (This needs to be reveiews _id value) required: true schema: type: string - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string responses: "200": description: "200" security: [] /reviews-count: get: tags: - Review APIs summary: Get Review Count description: Get review count for the passed filters parameters: - name: reference_product_source in: query description: (This needs to be products reference_product_source value) (This can only be one of custom_website,shopify,woocommerce) schema: type: string - name: reference_product_id in: query description: (This needs to be products reference_product_id value) schema: type: string - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string responses: "200": description: "200" security: [] /qnas: post: tags: - QnA APIs summary: Create QnA description: Create qna on behalf of the user. parameters: - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/merchant_create_qnas" required: true responses: "200": description: "200" security: [] get: tags: - QnA APIs summary: Fetch QnAs description: Fetch qnas based on various filters parameters: - name: reference_product_source in: query description: (This needs to be products reference_product_source value) (This can only be one of custom_website,shopify,woocommerce) schema: type: string - name: reference_product_id in: query description: (This needs to be products reference_product_id value) schema: type: string - name: id in: query description: (This needs to be qnas _id value) schema: type: string - name: page in: query description: (Minimum is 1) schema: type: number - name: limit in: query description: (Minimum is 1) (Maximum is 100) schema: type: number - name: sort in: query description: (This can only be one of created_at,updated_at) schema: type: string - name: sort_op in: query description: (This can only be one of ASC,DESC) schema: type: string - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string responses: "200": description: "200" security: [] /qnas/{id}: get: tags: - QnA APIs summary: Get QnA description: Get details of the qna parameters: - name: id in: path description: (Required) (This needs to be reveiews _id value) required: true schema: type: string - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string responses: "200": description: "200" security: [] /qnas-count: get: tags: - QnA APIs summary: Get QnA Count description: Get qna count for the passed filters parameters: - name: reference_product_source in: query description: (This needs to be products reference_product_source value) (This can only be one of custom_website,shopify,woocommerce) schema: type: string - name: reference_product_id in: query description: (This needs to be products reference_product_id value) schema: type: string - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string responses: "200": description: "200" security: [] /uploads: post: tags: - Misc APIs summary: Create Upload description: Upload a file against reviews or qnas on behalf of the user. parameters: - name: x-source in: header description: (Required) (This can only be one of mobile,unix,web) required: true schema: type: string - name: x-apikey in: header description: (Required) (This needs to be your apikey) required: true schema: type: string - name: x-workspaceid in: header description: (Required) (This needs to be your workspaceid) required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/merchant_create_uploads" required: true responses: "200": description: "200" security: []