openapi: 3.0.0 info: title: batches locations API description: Batches help you track inventory items by batch numbers, manufacturing dates, and expiration dates. contact: {} version: 1.0.0 servers: - url: https://www.zohoapis.com/inventory/v1 description: API Endpoint tags: - name: locations description: Locations Module paths: /settings/locations/enable: x-mcp-group: - Locations parameters: - $ref: '#/components/parameters/organization_id' post: tags: - locations operationId: enable_locations summary: Enable Locations description: Enable Locations for an organisation. responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/enable-location-response' deprecated: false security: - Zoho_Auth: - ZohoInventory.settings.CREATE /locations: x-mcp-group: - Locations parameters: - $ref: '#/components/parameters/organization_id' post: tags: - locations operationId: create_location summary: Create a location description: Create a location. requestBody: content: application/json: schema: $ref: '#/components/schemas/create-a-location-request' responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/create-a-location-response' deprecated: false security: - Zoho_Auth: - ZohoInventory.settings.CREATE get: tags: - locations operationId: list_locations summary: List all locations description: List all the available locations in your zoho inventory. parameters: - name: is_hierarchical_response in: query description: When set to true, returns the locations in a parent-child hierarchical structure instead of a flat list. required: false schema: type: boolean example: false - name: location_type in: query description: 'Filter locations by type. Allowed Values: general and line_item_only.' required: false schema: type: string enum: - general - line_item_only example: general responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/list-all-location-response' deprecated: false security: - Zoho_Auth: - ZohoInventory.settings.READ /locations/{location_id}: x-mcp-group: - Locations parameters: - name: location_id in: path required: true description: Unique identifier of the location. schema: type: string example: 130426000000664020 - $ref: '#/components/parameters/organization_id' get: tags: - locations operationId: get_location summary: Get a location description: Get the details of a location. responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/get-a-location-response' deprecated: false security: - Zoho_Auth: - ZohoInventory.settings.READ put: tags: - locations operationId: update_location summary: Update location description: Update location requestBody: content: application/json: schema: $ref: '#/components/schemas/update-location-request' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/update-location-response' deprecated: false security: - Zoho_Auth: - ZohoInventory.settings.UPDATE delete: tags: - locations operationId: delete_location summary: Delete a location description: Delete a location. responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/delete-a-location-response' deprecated: false security: - Zoho_Auth: - ZohoInventory.settings.DELETE /locations/{location_id}/active: x-mcp-group: - Locations parameters: - name: location_id in: path required: true description: Unique identifier of the location. schema: type: string example: 130426000000664020 - $ref: '#/components/parameters/organization_id' post: tags: - locations operationId: mark_location_as_active summary: Mark as Active description: Mark location as Active. responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/mark-as-active-response' deprecated: false security: - Zoho_Auth: - ZohoInventory.settings.CREATE /locations/{location_id}/inactive: x-mcp-group: - Locations parameters: - name: location_id in: path required: true description: Unique identifier of the location. schema: type: string example: 130426000000664020 - $ref: '#/components/parameters/organization_id' post: tags: - locations operationId: mark_location_as_inactive summary: Mark as Inactive description: Mark location as Inactive. responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/mark-as-inactive-response' deprecated: false security: - Zoho_Auth: - ZohoInventory.settings.CREATE /locations/{location_id}/markasprimary: x-mcp-group: - Locations parameters: - name: location_id in: path required: true description: Unique identifier of the location. schema: type: string example: 130426000000664020 - $ref: '#/components/parameters/organization_id' post: tags: - locations operationId: mark_location_as_primary summary: Mark as Primary description: Mark location as primary. responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/mark-as-primary-response' deprecated: false security: - Zoho_Auth: - ZohoInventory.settings.CREATE /locations/{location_id}/users: x-mcp-group: - Locations parameters: - name: location_id in: path required: true description: Unique identifier of the location. schema: type: string example: 130426000000664020 - $ref: '#/components/parameters/organization_id' - name: page in: query required: false description: Page number for paginated results. schema: type: integer example: 1 - name: per_page in: query required: false description: Number of records to return per page. schema: type: integer example: 50 get: tags: - locations operationId: list_users_of_a_location summary: List users of a location description: List the users associated with a location. responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/list-users-of-a-location-response' deprecated: false security: - Zoho_Auth: - ZohoInventory.settings.READ components: schemas: country: description: Country Name of the location. type: string example: U.S.A status: description: 'Status of the locations. Allowed Values: active, inactive' example: active page-context: type: object properties: page: description: Current page number. type: integer example: 1 per_page: description: Number of records returned per page. type: integer example: 50 has_more_page: description: Whether more pages of results are available. type: boolean example: false report_name: description: Name of the report. type: string example: Users sort_column: description: Column used to sort the results. type: string example: name sort_order: description: 'Order in which the results are sorted. Allowed Values: A (ascending), D (descending).' type: string example: A address: type: object properties: city: $ref: '#/components/schemas/city' state: $ref: '#/components/schemas/state' country: $ref: '#/components/schemas/country' attention: $ref: '#/components/schemas/attention' state_code: $ref: '#/components/schemas/state_code' street_address1: $ref: '#/components/schemas/street_address1' street_address2: $ref: '#/components/schemas/street_address2' phone: description: Mobile number for location type: string example: +1-925-921-9201 create-a-location-response: type: object properties: code: type: integer example: 0 readOnly: true message: type: string example: Location has been created. readOnly: true locations: $ref: '#/components/schemas/locations' location_name: description: Name of the location type: string example: Head Office attention: description: Attention of the location. type: string street_address2: description: Street Name of the location. type: string example: McMillan Avenue mark-as-active-response: type: object properties: code: type: integer example: 0 readOnly: true message: type: string example: The location has been marked as active. readOnly: true user_name: description: User Name type: string example: John Doe is_all_users_selected: description: Whether all users are selected or not type: boolean example: false delete-a-location-response: type: object properties: code: type: integer example: 0 readOnly: true message: type: string example: The location has been deleted.. readOnly: true user_ids: description: Comma separated user ids. type: string example: 460000000036868,460000000036869 associated_series_ids: type: array description: List of associated series IDs items: type: string example: - '982000000870911' - '982000000870915' city: description: City Name of the location. type: string example: New York City email: description: Email id for the location type: string example: willsmith@bowmanfurniture.com mark-as-primary-response: type: object properties: code: type: integer example: 0 readOnly: true message: type: string example: The location has been marked as primary. readOnly: true location-details: type: object properties: location_id: $ref: '#/components/schemas/location_id' location_name: $ref: '#/components/schemas/location_name' type: $ref: '#/components/schemas/type' parent_location_id: $ref: '#/components/schemas/parent_location_id' address: $ref: '#/components/schemas/address' phone: $ref: '#/components/schemas/phone' fax: description: Fax number for the location. type: string example: +1-925-921-9202 email: $ref: '#/components/schemas/email' website: description: Website of the location. type: string example: www.bowmanfurniture.com tax_settings_id: $ref: '#/components/schemas/tax_settings_id' tax_reg_no: description: Tax registration number of the location. type: string example: 29AAAAA0000A1Z5 is_primary_location: $ref: '#/components/schemas/is_primary' is_location_active: description: Whether the location is currently active. type: boolean example: true autonumbergenerationgroup_id: $ref: '#/components/schemas/autonumbergenerationgroup_id' autonumbergenerationgroup_name: description: Name of the auto number generation group associated with the location. type: string example: Default Series associated_series_ids: $ref: '#/components/schemas/associated_series_ids' customer_id: description: Unique identifier of the customer associated with the location. type: string example: '460000000038090' customer_name: description: Name of the customer associated with the location. type: string example: Bowman Furniture vendor_id: description: Unique identifier of the vendor associated with the location. type: string example: '460000000038092' vendor_name: description: Name of the vendor associated with the location. type: string example: Bowman Furniture is_all_users_selected: $ref: '#/components/schemas/is_all_users_selected' associated_users: type: array items: type: object properties: user_id: $ref: '#/components/schemas/user_id' user_name: $ref: '#/components/schemas/user_name' location_identification_number: description: Unique identification number assigned to the location. type: string example: BR-001 location_identification_label: description: Label used to identify the location. type: string example: BR enable-location-response: type: object properties: code: type: integer example: 0 readOnly: true message: type: string example: We're enabling locations for your organization. readOnly: true get-a-location-response: type: object properties: code: type: integer example: 0 readOnly: true message: type: string example: success readOnly: true location: $ref: '#/components/schemas/location-details' create-a-location-request: required: - location_name - tax_settings_id type: object properties: type: $ref: '#/components/schemas/type' email: $ref: '#/components/schemas/email' phone: $ref: '#/components/schemas/phone' address: $ref: '#/components/schemas/address' location_name: $ref: '#/components/schemas/location_name' tax_settings_id: $ref: '#/components/schemas/tax_settings_id' parent_location_id: $ref: '#/components/schemas/parent_location_id' associated_series_ids: $ref: '#/components/schemas/associated_series_ids' auto_number_generation_id: $ref: '#/components/schemas/autonumbergenerationgroup_id' is_all_users_selected: $ref: '#/components/schemas/is_all_users_selected' user_ids: $ref: '#/components/schemas/user_ids' is_primary: description: Whether it is primary location or not type: boolean example: true parent_location_id: description: Parent Location ID type: string example: '460000000041010' update-location-request: required: - location_name - tax_settings_id type: object properties: type: $ref: '#/components/schemas/type' email: $ref: '#/components/schemas/email' phone: $ref: '#/components/schemas/phone' address: $ref: '#/components/schemas/address' location_name: $ref: '#/components/schemas/location_name' tax_settings_id: $ref: '#/components/schemas/tax_settings_id' parent_location_id: $ref: '#/components/schemas/parent_location_id' associated_series_ids: $ref: '#/components/schemas/associated_series_ids' auto_number_generation_id: $ref: '#/components/schemas/autonumbergenerationgroup_id' is_all_users_selected: $ref: '#/components/schemas/is_all_users_selected' user_ids: $ref: '#/components/schemas/user_ids' autonumbergenerationgroup_id: description: Autonumber generation group ID type: string example: '982000000870911' locations: type: object properties: address: $ref: '#/components/schemas/address' email: $ref: '#/components/schemas/email' is_primary: $ref: '#/components/schemas/is_primary' phone: $ref: '#/components/schemas/phone' status: $ref: '#/components/schemas/status' location_id: $ref: '#/components/schemas/location_id' location_name: $ref: '#/components/schemas/location_name' type: $ref: '#/components/schemas/type' parent_location_id: $ref: '#/components/schemas/parent_location_id' associated_series_ids: $ref: '#/components/schemas/associated_series_ids' auto_number_generation_id: $ref: '#/components/schemas/autonumbergenerationgroup_id' associated_users: type: array items: type: object properties: user_id: $ref: '#/components/schemas/user_id' user_name: $ref: '#/components/schemas/user_name' tax_settings_id: $ref: '#/components/schemas/tax_settings_id' location_id: description: Location ID type: string example: '460000000038080' type: description: Type of the location type: string example: general / line_item_only list-users-of-a-location-response: type: object properties: code: type: integer example: 0 readOnly: true message: type: string example: success readOnly: true users: type: array items: $ref: '#/components/schemas/location-user' page_context: $ref: '#/components/schemas/page-context' list-all-location-response: type: object properties: code: type: integer example: 0 readOnly: true message: type: string example: success readOnly: true locations: type: array items: type: object properties: type: $ref: '#/components/schemas/type' email: $ref: '#/components/schemas/email' phone: $ref: '#/components/schemas/phone' address: $ref: '#/components/schemas/address' location_id: $ref: '#/components/schemas/location_id' location_name: $ref: '#/components/schemas/location_name' tax_settings_id: $ref: '#/components/schemas/tax_settings_id' parent_location_id: $ref: '#/components/schemas/parent_location_id' associated_series_ids: $ref: '#/components/schemas/associated_series_ids' auto_number_generation_id: $ref: '#/components/schemas/autonumbergenerationgroup_id' is_all_users_selected: $ref: '#/components/schemas/is_all_users_selected' associated_users: type: array items: type: object properties: user_id: $ref: '#/components/schemas/user_id' user_name: $ref: '#/components/schemas/user_name' state: description: State Name of the location. type: string example: New York update-location-response: type: object properties: code: type: integer example: 0 readOnly: true message: type: string example: Location has been updated. readOnly: true locations: $ref: '#/components/schemas/locations' location-user: type: object properties: user_id: $ref: '#/components/schemas/user_id' name: description: Name of the user. type: string example: John Doe email: description: Email address of the user. type: string example: john.doe@bowmanfurniture.com mobile: description: Mobile number of the user. type: string example: +1-925-921-9201 user_role: description: Role assigned to the user. type: string example: admin status: description: 'Status of the user. Allowed Values: active, inactive, invited.' type: string example: active photo_url: description: URL of the user's photo. type: string example: https://contacts.zoho.com/file?ID=12345 state_code: description: State code of the location. type: string example: NY tax_settings_id: description: Tax Settings ID type: string example: '460000000038080' x-node_available_in: - in x-node_unavailable_in: [] mark-as-inactive-response: type: object properties: code: type: integer example: 0 readOnly: true message: type: string example: The location has been marked as inactive. readOnly: true user_id: description: User ID type: string example: '460000000036868' street_address1: description: Street Name of the location. type: string example: No:234,90 Church Street parameters: organization_id: name: organization_id description: ID of the organization in: query required: true schema: type: string example: '10234695' securitySchemes: Zoho_Auth: type: oauth2 flows: implicit: authorizationUrl: https://accounts.zoho.com/oauth/v2/auth scopes: ZohoInventory.items.CREATE: Create Items ZohoInventory.items.READ: Read Items ZohoInventory.items.UPDATE: Update Items ZohoInventory.items.DELETE: Delete Items