openapi: 3.2.0 info: version: 1.8.0 title: Route Mobile WhatsApp Business Catalog Management API description: 'The Route Mobile WhatsApp Business API enables enterprises to programmatically send and receive WhatsApp messages at scale. Use these APIs to integrate WhatsApp messaging into your applications for notifications, customer engagement, commerce, and support. ## Getting Started 1. **Authenticate** — Call the [Login API](#tag/Authentication/operation/loginApi) to obtain a JWT token. 2. **Send Messages** — Use the [Send Messages API](#tag/Messaging/operation/sendMessages) to deliver template or session messages. 3. **Receive Callbacks** — Configure your webhook URL to receive [delivery reports and incoming messages](#tag/Webhooks). ## Key Concepts - **Template Messages** — Pre-approved message templates for outbound notifications (marketing, utility, authentication). - **Session Messages** — Free-form messages within a 24-hour customer service window. - **Bulk Campaigns** — Send messages to thousands of recipients via file upload. - **Catalog & Commerce** — Product catalogs, payments, and order management via WhatsApp. ## Authentication All API endpoints (except Login) require a JWT bearer token in the `Authorization` header. Tokens are valid for **one hour** by default. ``` Authorization: ``` ## Rate Limits API rate limits are governed by your account tier. Contact your account manager for details. ## Support For API support, visit the [Route Mobile Developer Hub](https://developers.routemobile.com/) or reach out to [product-desk@routemobile.com](mailto:product-desk@routemobile.com).' contact: name: Route Mobile Developer Support url: https://developers.routemobile.com/ email: product-desk@routemobile.com termsOfService: https://www.routemobile.com/terms-of-service/ license: name: Proprietary url: https://www.routemobile.com/terms-of-service/ x-logo: url: https://www.routemobile.com/wp-content/uploads/2023/04/route-mobile-logo.svg altText: Route Mobile servers: - url: https://apis.rmlconnect.net security: - BearerAuth: [] tags: - name: Catalog Management description: Create, update, delete, and fetch product feeds and catalog details for WhatsApp Commerce. paths: /wba/catalog/manager/v1/upload: post: tags: - Catalog Management summary: Upload File description: Upload the product feed file. operationId: uploadFile requestBody: description: Upload a product catalog file (CSV) with item details. content: multipart/form-data: schema: $ref: '#/components/schemas/CatalogUploadRequest' examples: Example 1: value: action: Update file: string file_name: file_name responses: '200': description: Success content: application/json: schema: type: object properties: status: type: string description: The status of the upload file. file_url: type: string description: The URL for uploading a file. count: type: integer description: The number of products added in the catalog file. examples: Example: value: status: success file_url: AWS S3 url count: 20 '400': description: Bad Request content: application/json: schema: type: object properties: error: type: array description: The error received during file upload. items: type: string examples: Example: value: error: - Provide file_name '401': description: Authentication Failure content: application/json: schema: $ref: '#/components/schemas/CatalogUnauthorizedError' examples: JWT Token Expired: value: message: unable to process campaign request reason: jwt token expired status: failure '404': description: Page Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundError' examples: Incorrect API URL: value: message: The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again. '500': description: Internal Server Error content: application/json: schema: type: object properties: status: type: string description: The status of the message delivery. message: type: string description: The message response. reason: type: string description: The reason for not processing the file upload request. examples: Example: value: status: failed message: unable to process request reason: reason security: - BearerAuth: [] /wba/catalog/manager/v1/create_product_feed: post: tags: - Catalog Management summary: Create Product Feed description: Create a feed of products for a WhatsApp Business account. operationId: createProductFeed requestBody: description: Create a new product feed with a file URL and optional schedule. content: multipart/form-data: schema: $ref: '#/components/schemas/CreateProductFeedRequest' examples: Example 1: value: file_url: file_url name: product_feed_name schedule: '"interval":"HOURLY","scheduled_time":"2022-09-06 11:38:00"' responses: '200': description: SUCCESS content: application/json: schema: type: object properties: status: type: string description: The status of the create product feed. examples: Example: value: status: processing '400': description: Bad Request content: application/json: schema: type: object properties: name: type: array description: The required fields name. items: type: string examples: Example: value: name: - Missing data for required field. application/xml: schema: type: object multipart/form-data: schema: type: object '401': description: Authentication Failure content: application/json: schema: $ref: '#/components/schemas/JwtExpiredError' examples: Incorrect authorization token: value: message: Unable to process request status: Failed reason: Please check the integrity or validity of the token sent. '404': description: Page Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundError' examples: Incorrect API URL: value: message: The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again. '500': description: Internal Server Error content: application/json: schema: type: object properties: status: type: string description: The status of the message delivery. message: type: string description: The message response. reason: type: string description: The reason for not processing the product feed request. examples: Example: value: status: failed message: unable to process request reason: reason security: - BearerAuth: [] /wba/catalog/manager/v1/update_product_feed: post: tags: - Catalog Management summary: Update Product Feed description: Update an existing feed of products for a WhatsApp Business account. operationId: updateProductFeed requestBody: description: Update an existing product feed with new file content or schedule. content: multipart/form-data: schema: $ref: '#/components/schemas/UpdateProductFeedRequest' examples: Example 1: value: file_url: string product_feed_id: string schedule: '"interval":"HOURLY","scheduled_time":"2022-09-06 11:38:00"' responses: '200': description: Success content: application/json: schema: type: object properties: status: type: string description: The status of the product feed. examples: Example: value: status: processing '400': description: Bad Request content: application/json: schema: type: object properties: product_feed_id: type: array description: The unique identifier of the product feed. items: type: string examples: Example: value: product_feed_id: - Missing data for required field. '401': description: Authentication Failure content: application/json: schema: $ref: '#/components/schemas/JwtExpiredError' examples: Example: value: message: Unable to process request status: Failed reason: Please check the integrity or validity of the token sent. '404': description: Page Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundError' examples: Incorrect API URL: value: message: The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again. '500': description: Internal Server Error content: application/json: schema: type: object properties: status: type: string description: The status of product feed updates. message: type: string description: The message response. reason: type: string description: The reason for not updating the product feed. examples: Example: value: status: failed message: unable to process request reason: reason security: - BearerAuth: [] /wba/catalog/manager/v1/delete_product_feed: post: tags: - Catalog Management summary: Delete product Feed description: Delete an existing feed of products for a WhatsApp Business account. operationId: deleteProductFeed requestBody: description: Delete a product feed by its unique identifier. content: application/json: schema: $ref: '#/components/schemas/DeleteProductFeedRequest' application/xml: schema: $ref: '#/components/schemas/DeleteProductFeedRequestAlt' examples: Example 1: value: product_feed_id: '{product_feed_id}' responses: '200': description: Success content: application/json: schema: type: object properties: status: type: string description: The status of the product feed. examples: Example 1: value: status: processing '400': description: Bad Request content: application/json: schema: type: object properties: product_feed_id: type: array description: The unique identifier of the product feed. items: type: string examples: Example 1: value: product_feed_id: - Missing data for required field. '401': description: Authentication Failure content: application/json: schema: $ref: '#/components/schemas/CatalogAuthError' examples: Example 1: value: message: Unable to process request status: Failed reason: Please check the integrity or validity of the token sent. '404': description: Page Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundError' examples: Incorrect API URL: value: message: The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again. '500': description: Internal Server Error content: application/json: schema: type: object properties: status: type: string description: The status for the product feed. message: type: string description: The response message. reason: type: string description: The reason for not deleting the product feed request. examples: Example 1: value: status: failed message: unable to process request reason: reason security: - BearerAuth: [] /wba/catalog/manager/v1/fetch_product_feed: get: tags: - Catalog Management summary: Fetch Product Feed Details description: 'Fetch product feed details, which is used to retrieve details about a specific product feed. The product feed includes a comma-separated list of field names: - retailer_id: The ID of the retailer associated with the product. - name: The name of the product. - price: The price of the product. - availability: The availability status of the product. - id: The ID of the product. - description: The description of the product. - color: The color of the product. - size: The size of the product. - condition: The condition of the product. - product_type: The type of product. - quantity_to_sell_on_facebook: The quantity of the product to be sold on Facebook. - url: The URL of the product. - gender: The gender for which the product is intended. - age_group: The age group for which the product is intended. - sale_price: The sale price of the product. - mpn: The manufacturer part number of the product. - sale_price_effective_date: The effective date range of the sale price. - brand: The brand of the product. - custom_label_0: A custom label for the product.' operationId: fetchProductFeedDetails parameters: - name: product_feed_id in: query description: The unique ID of the product feed for which details should be fetched. required: true schema: type: string - name: fields in: query description: The fields that should be included in the response. The value should be a comma-separated list of field names, such as "retailer_id, name, price, id". required: true schema: type: string - name: limit in: query description: The maximum number of products to return in the response. The value should be an integer. required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: object properties: data: type: array description: The product feed details. items: type: object examples: Example 1: value: data: - name: Dairy Milk Silk id: xxxxxxxxxxxxxxxxx price: ₹125.00 description: Dairy Products retailer_id: xxxxx - name: Maggie Pasta id: xxxxxxxxxxxxxxxxx price: ₹25.00 description: Instant Food retailer_id: xxxxx - name: Pulses 1kg id: xxxxxxxxxxxxxxxxx price: ₹200.00 description: Pulses are very good for health retailer_id: xxxxx - name: Cow Ghee id: xxxxxxxxxxxxxxxxx price: ₹499.00 description: Healty Cow Ghee retailer_id: xxxxx - name: BESAN 250 Gm id: xxxxxxxxxxxxxxxxx price: ₹32.00 description: Besan or Gram flour is made from Chana Dal. Besan atta is used too make Bhaji, Vada , Sev, Chaklis, and many more items. It has various beauty benefits. retailer_id: xxxxx - name: Pastry id: xxxxxxxxxxxxxxxxx price: ₹50.00 description: Dairy Products retailer_id: xxxxx - name: Tea 2 kg id: xxxxxxxxxxxxxxxxx price: ₹800.00 description: Tea & Coffee retailer_id: xxxxx - name: Olive Oil 1L id: xxxxxxxxxxxxxxxxx price: ₹400.00 description: Olive Oil retailer_id: xxxxx - name: Olive Oil 2L id: xxxxxxxxxxxxxxxxx price: ₹799.00 description: Olive Oil retailer_id: xxxxx - name: Yippe Pasta id: xxxxxxxxxxxxxxxxx price: ₹25.00 description: Instant Food retailer_id: xxxxx - name: Cotton Oil id: xxxxxxxxxxxxxxxxx price: ₹499.00 description: Cotton Oil retailer_id: xxxxx next_url: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/v1/fetch_product_feed?access_token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&limit=10&fields=name,id,price,description,retailer_id&product_feed_id=xxxxxxxxxxxxxxx&after=xxxxxxxxxxxxxxxxxxxxxxxx&before= prev_url: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/v1/fetch_product_feed?access_token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&limit=10&fields=name,id,price,description,retailer_id&product_feed_id=xxxxxxxxxxxxxx&after=&before=xxxxxxxxxxxxxxxxx '400': description: Bad Request content: application/json: schema: type: object properties: message: type: string description: The response message. examples: Invalid token: value: message: 'Error validating access token: The session has been invalidated because the user changed their password or Facebook has changed the session for security reasons.' '401': description: Authentication Failure content: application/json: schema: $ref: '#/components/schemas/JwtExpiredError' examples: Incorrect authorization token: value: status: failed message: unable to process request reason: reason '404': description: Page Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundError' examples: Incorrect API URL: value: message: The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again. '500': description: Internal Server Error content: application/json: schema: type: object properties: message: type: string description: The response message. status: type: string description: The status of the product feed. reason: type: string description: The reason for not fetching product feed details. examples: Example 1: value: status: failed message: unable to process request reason: reason security: - BearerAuth: [] /wba/catalog/manager/v1/fetch_product_details: get: tags: - Catalog Management summary: Fetch All Product Feed description: Fetch a list of all product feeds associated with a WhatsApp Business account. To use this endpoint, specify the necessary authorization token credentials. operationId: fetchAllProductFeed responses: '200': description: Success content: application/json: schema: type: object properties: catalog_id: type: string description: The unique ID of the catalog that contains the product. file_url: type: string description: The URL of the file. interval: type: - string - 'null' description: The time interval at which the product feed should be updated. product_feed_count: type: integer description: The total number of products to fetch. product_feed_id: type: string description: The unique ID of the product feed. product_feed_name: type: string description: The name of the product feed. scheduled: type: boolean description: Indicates whether this event is scheduled. scheduled_timestamp: type: - string - 'null' description: The scheduled time of the message. timestamp: type: string description: The timestamp of when the message was submitted to the API. upload_session_id: type: string description: The unique ID for the product feed upload session that you want to retrieve the errors for. examples: Example 1: value: catalog_id: 62305622836xxxxx file_url: https://www.example.com/demo_xxxx-xxxd-965a-0a58a9feac02.csv interval: string product_feed_count: 0 product_feed_id: 122543386xxxxxxx product_feed_name: testammy scheduled: false scheduled_timestamp: string timestamp: '2023-02-27 09:54:47.337571' upload_session_id: 1225433871xxxxxx '401': description: Authentication Failure content: application/json: schema: $ref: '#/components/schemas/JwtExpiredError' examples: Incorrect authorization token: value: message: Unable to process request status: Failed reason: Please check the integrity or validity of the token sent. '404': description: Page Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundError' examples: Incorrect API URL: value: message: The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again. '500': description: Internal Server Error content: application/json: schema: type: object properties: status: type: string description: The status of the product feed. message: type: string description: The message response. reason: type: string description: The reason for not fetching product feeds. examples: Example 1: value: status: failed message: unable to process request reason: reason security: - BearerAuth: [] /wba/catalog/manager/v1/fetch_catalog_details: get: tags: - Catalog Management summary: Fetch Catalog Details description: 'Fetch details about a specific product catalog associated with a WhatsApp Business account. The fields information includes a comma-separated list: - name: The name of the product catalog. - product_count: The total number of products in the product catalog. - schedule: The schedule for updating the product catalog. - latest_upload: The date and time of the most recent upload to the product catalog. - retailer_id: The ID of the retailer associated with the product catalog. - price: The price of the product. - availability: The availability status of the product. - id: The ID of the product. - description: The description of the product. - color: The color of the product. - size: The size of the product. - condition: The condition of the product. - product_type: The type of product. - quantity_to_sell_on_facebook: The quantity of the product to sell on Facebook. - url: The URL of the product. - gender: The gender of the product. - age_group: The age group of the product. - sale_price: The sale price of the product. - mpn: The manufacturer part number of the product. - sale_price_effective_date: The effective date of the sale price of the product. - brand: The brand of the product. - custom_label_0: The custom label of the product. - image_url: The URL of the product image.' operationId: fetchCatalogDetails parameters: - name: catalog_id in: query description: The ID of the catalog the product belongs to. required: true schema: type: string - name: fetch_details in: query description: Option to fetch the product catalog details. required: true schema: type: string - name: fields in: query description: The fields that should be included in the response. The value should be a comma-separated list of field names, such as "name, product_count". required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: object properties: data: type: array description: An array of objects representing the catalog details of a specific product. items: type: object properties: retailer_id: type: string description: The unique identifier for the retailer associated with the product. name: type: string description: The name of the product. price: type: string description: The price of the product. availability: type: string description: The availability status of the product. id: type: string description: The unique identifier for the product. description: type: string description: A brief description of the product. condition: type: string description: The condition of the product. quantity_to_sell_on_facebook: type: integer description: The quantity of the product available for sale on Facebook. url: type: string description: The URL of the product where the product can be viewed or purchased. gender: type: string description: The target gender for the product. age_group: type: string description: The target age group for the product. brand: type: string description: The brand name of the product. image_url: type: string description: The URL that points to the image representing the product. next_url: type: string description: The URL for the next page. prev_url: type: string description: The URL for the previous page. examples: Example 1: value: data: - retailer_id: 12641xxx name: Coca-Cola Zero 500ml 1 24 price: د.إ.85.00 availability: in stock id: 5856857177xxxxxx description: Coca-Cola Zero 500ml PET (Pack of 24) condition: new quantity_to_sell_on_facebook: 0 url: https://en.coca-colaarabia.com/brands/coca-cola-original-taste gender: '' age_group: '' brand: Coca-Cola image_url: https://800mycoke.ae/app/images/wa/Cokexxxl.jpg next_url: https://apis.rmlconnect.net/wba/catalog/manager/v1/fetch_catalog_details?access_token=EAAfkxRwYZCloBAPRyGP69xQcIf3MWYUZCwFcMyEHxTdnXCawZCVJy8AHX9ynmmYKNM0ZAgfSOCsdAkZBHPi6yauFIe682jfswkdWcotj5BMlHpjZCiuhWZCLYl52z4b6abEwsg1zxvOVLkBxxxxxxxxxxxxxxxxxxxxxZCBHEXZCK4UrnYL4ymHYHZB0&limit=10&fields=retailer_id,name,price,availability,id,description,color,size,condition,product_type,quantity_to_sell_on_facebook,url,gender,age_group,sale_price,mpn,sale_price_effective_date,brand,custom_label_0,image_url&catalog_id=965968734067732&fetch_details=true&after=QVFIUkFOVWJJX2d0a1BMbEw0Q0Jxxxxxxxxxxxxxxxxxxxx2Y2dDNQN0ZAMU0IzaGJtRlBKUXZACWHpuUEp6YUE5VWdmTWVyT0ZA5U1RBN0RaQ2owcDVPSkJNS3h3&before= prev_url: https://apis.rmlconnect.net/wba/catalog/manager/v1/fetch_catalog_details?access_token=EAAfkxRwYZCloBAPRyGP69xQcIf3MWYUZxxxxxxxxxxxxxxxxxxxxx8AHX9ynmmYKNM0ZAgfSOCsdAkZBHPi6yauFIe682jfswkdWcotj5BMlHpjZCiuhWZCLYl52z4b6abEwsg1zxvOVLkBxxxxxxxzVElEol1kLrZCcZCBHEXZCK4UrnYL4ymHYHZB0&limit=10&fields=retailer_id,name,price,availability,id,description,color,size,condition,product_type,quantity_to_sell_on_facebook,url,gender,age_group,sale_price,mpn,sale_price_effective_date,brand,custom_label_0,image_url&catalog_id=9659687xxxxxxxx&fetch_details=true&after=&before=QVFIUl84bDh3UDlaU0tPZAkhDUVJNN3p6c0ktNUZAodktJTXpkekVLMFdwSzllOW5GZAWxSOTQ1NHloUWpxxxxxxxxxxxxxxxxxxVFsVU1ZAaDUzR0tVZAzM3VXZAB '400': description: Bad Request content: application/json: schema: type: object properties: fields: type: array description: The list of allowed fields. items: type: string examples: Example 1: value: fields: - Allowed fields are retailer_id,name,price,availability,id,description,color,size,condition,product_type,quantity_to_sell_on_facebook,url,gender,age_group,sale_price,mpn,sale_price_effective_date,brand,custom_label_0,image_url '401': description: Authentication Failure content: application/json: schema: $ref: '#/components/schemas/JwtExpiredError' examples: Incorrect authorization token: value: message: Unable to process request status: Failed reason: Please check the integrity or validity of the token sent. '404': description: Page Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundError' examples: Incorrect API URL: value: message: The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again. '500': description: Internal Server Error content: application/json: schema: type: object properties: status: type: string description: The status of the catalog. message: type: string description: The response message. reason: type: string description: The reason for not fetching catalog details. examples: Example 1: value: status: failed message: unable to process request reason: reason security: - BearerAuth: [] /wba/catalog/manager/v1/schedule_product_feed_details: get: tags: - Catalog Management summary: Fetch Schedule Product Feed Details description: Fetch scheduled product feeds associated with a WhatsApp Business account. operationId: fetchScheduleProductFeedDetails parameters: - name: product_feed_id in: query description: The unique ID of the product feed fetches from your system and then schedules the product feed. required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: object properties: schedule: type: object description: The scheduled job for processing a product feed. properties: hour: type: integer description: The hour at which the schedule is set to run. id: type: string description: The unique identifier for the schedule. interval: type: string description: The interval type for the schedule. interval_count: type: integer description: The number of intervals for the schedule. minute: type: integer description: The minute at which the schedule is set to run. timezone: type: string description: The timezone in which the schedule is configured. url: type: string description: The URL pointing to the location of the product feed file to be processed. uploads: type: object description: The information about previous uploads of the product feed. properties: data: type: array description: An array of objects representing the details of previous uploads. items: type: object properties: id: type: string description: The unique identifier for the latest upload. start_time: type: string description: The start time of the latest upload. end_time: type: string description: The end time of the latest upload. latest_upload: type: object description: The details of the most recent upload of the product feed. properties: id: type: string description: The unique identifier for the latest upload. start_time: type: string description: The start time of the latest upload. end_time: type: string description: The end time of the latest upload. name: type: string description: The name of the product feed schedule. id: type: string description: The unique identifier for the product feed schedule. examples: Example 1: value: schedule: hour: 11 id: 51143928431xxxx interval: HOURLY interval_count: 1 minute: 38 timezone: UTC url: http://wbm-nextgen.s3.ap-south-1.amazonaws.com/demo_af11-efe9f3bxxxxx.csv uploads: data: - id: 128427331883xxxx start_time: 2023-04-28T10:28:24+0000 end_time: 2023-04-28T10:38:17+0000 latest_upload: id: 128427331883xxxx start_time: 2023-04-28T10:28:24+0000 end_time: 2023-04-28T10:38:17+0000 name: schedule_product_feed id: 113616569031xxxx '400': description: Bad Request content: application/json: schema: type: object properties: message: type: string description: The response message. examples: Example 1: value: message: Unsupported get request. Object with ID '1136165690310xxxx' does not exist, cannot be loaded due to missing permissions, or does not support this operation. Please read the Graph API documentation at https://developers.facebook.com/docs/graph-api '401': description: Authentication Failure content: application/json: schema: $ref: '#/components/schemas/JwtExpiredError' examples: Incorrect authorization token: value: message: Unable to process request status: Failed reason: Please check the integrity or validity of the token sent. '404': description: Page Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundError' examples: Incorrect API URL: value: message: The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again. '500': description: Internal Server Error content: application/json: schema: type: object properties: status: type: string description: The status of the product feed. message: type: string description: The response message. reason: type: string description: The reason for not processing the request. examples: Example 1: value: status: failed message: unable to process request reason: reason security: - BearerAuth: [] /wba/catalog/manager/v1/fetch_errors: get: tags: - Catalog Management summary: Fetch Errors description: The Fetch Errors API calls all error outputs for the particular upload session ID. operationId: fetchErrors parameters: - name: upload_session_id in: query description: The unique ID for the product feed upload session that you want to retrieve the errors for. required: true style: form explode: true schema: type: string responses: '200': description: Success content: application/json: schema: type: object properties: error: type: array description: An array that describes the error description. items: type: object properties: summary: type: string description: The summary of the errors. description: type: string description: The description of the error. severity: type: string description: The severity of the error. examples: Example 1: value: error: - summary: '' description: '' severity: '' '400': description: Bad Request content: application/json: schema: type: object properties: message: type: string description: The response message. examples: Example 1: value: message: Unsupported get request. Object with ID '44029838816xxxx' does not exist, cannot be loaded due to missing permissions, or does not support this operation. Please read the Graph API documentation at https://developers.facebook.com/docs/graph-api '401': description: Authentication Failure content: application/json: schema: $ref: '#/components/schemas/JwtExpiredError' examples: Incorrect authorization token: value: message: Unable to process request status: Failed reason: Please check the integrity or validity of the token sent. '404': description: Page Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundError' examples: Incorrect API URL: value: message: The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again. '500': description: Internal Server Error content: application/json: schema: type: object properties: status: type: string description: The status for fetching errors. message: type: string description: The response message. reason: type: string description: The reason for not processing a request. examples: Example 1: value: status: failed message: unable to process request reason: reason security: - BearerAuth: [] components: schemas: CatalogAuthError: type: object properties: message: type: string description: The response message. status: type: string description: The status of the message. reason: type: string description: The reason for not processing the message. UpdateProductFeedRequest: type: object properties: file_url: type: string description: The URL of the file that contains the updated product feed, hosted publicly and starting with "https://" and ending with the file extension. product_feed_id: type: string description: The unique ID of the product feed that should be updated. schedule: type: string description: 'The schedule for recurrently updating the product feed. It contains a JSON object with two keys: a. interval: This key specifies the interval at which the product feed should be updated. In this case, it is set to "HOURLY", indicating that the feed should be updated hourly. b. scheduled_time: This key specifies the date and time at which the first update of the product feed should occur, in UTC format.' example: ' "\"interval\":\"HOURLY\",\"scheduled_time\":\"2022-09-06 11:38:00\""' required: - file_url - product_feed_id DeleteProductFeedRequestAlt: type: object properties: product_feed_id: type: string description: Specify the identification of the product feed to delete from WhatsApp business messaging APIs. DeleteProductFeedRequest: type: object properties: product_feed_id: type: string description: The unique ID of the product feed that should be deleted. required: - product_feed_id JwtExpiredError: type: object properties: message: type: string description: The response message. reason: type: string description: The reason for not processing the product feed update request. status: type: string description: The status of the product feed update. CatalogUnauthorizedError: type: object properties: response: type: string description: The response message. CreateProductFeedRequest: type: object properties: file_url: type: string description: The URL of the file that contains the product feed, hosted publicly and starting with "https://" and ending with the file extension. example: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= name: type: string description: The name of the product feed. example: product_feed_name schedule: type: string description: 'The schedule for updating the product feed. It contains a JSON object with two keys: a. interval: This key specifies the interval at which the product feed should be updated. In this case, it is set to "HOURLY", indicating that the feed should be updated hourly. b. scheduled_time: This key specifies the date and time at which the first update of the product feed should occur, in UTC format.' example: ' "\"interval\":\"HOURLY\",\"scheduled_time\":\"2022-09-06 11:38:00\""' required: - file_url - name NotFoundError: type: object properties: message: type: string description: The message response. CatalogUploadRequest: type: object properties: action: type: string description: The action to be taken on the catalog. example: Update file: type: string description: "The data of the product feed file that contains catalog details such as ID, name, and image URL. \nSee the sample [catalog file](https://github.com/routemobile/WhatsApp-Business-API/blob/master/Sample%20Catalog%20File.csv) for more information on catalog details and its format." example: ABC.csv file_name: type: string description: The name of the product feed file that contains the updated catalog. example: file_name required: - action - file - file_name securitySchemes: BearerAuth: type: http scheme: bearer bearerFormat: JWT description: JSON Web Token obtained from the Login API. Include the token in the `Authorization` header as `Bearer `. Tokens expire after one hour by default. x-readme: explorer-enabled: true proxy-enabled: true samples-enabled: true