> ## Documentation Index
> Fetch the complete documentation index at: https://developer.eka.care/llms.txt
> Use this file to discover all available pages before exploring further.

# List Pharmacies

> 
### Overview

This API lists the **pharmacies** your workspace can order medicines from, across all pharmacy providers set up for it: eVital pharmacies (when eVital is set up) and the in-house pharmacy (`id: dawakhana`, when Dawakhana is enabled).

Use a pharmacy's `id` as `pharmacyId` when placing an order. Check `managesInventory` before ordering: when `true` (eVital), check stock with [Get Inventory Status](/api-reference/doc-tool/ipd-api/pharmacies/get-inventory-status) and send each item's `quantity` in the pharmacy's `orderMode` unit; when `false` (in-house pharmacy), stock and prices are not tracked and the order is priced at dispatch.

If one provider cannot be reached, its pharmacies are left out and the rest are still returned.



## OpenAPI

````yaml get /ipd/v1/service/pharmacies
openapi: 3.0.0
info:
  title: Ekacare API & Webhook Documentation
  contact: {}
  version: '1.0'
servers:
  - description: Production
    url: https://api.eka.care
  - description: Stage/Sandbox
    url: https://api.dev.eka.care
security: []
paths:
  /ipd/v1/service/pharmacies:
    get:
      tags:
        - IPD API
      summary: List Pharmacies
      description: >-

        ### Overview


        This API lists the **pharmacies** your workspace can order medicines
        from, across all pharmacy providers set up for it: eVital pharmacies
        (when eVital is set up) and the in-house pharmacy (`id: dawakhana`, when
        Dawakhana is enabled).


        Use a pharmacy's `id` as `pharmacyId` when placing an order. Check
        `managesInventory` before ordering: when `true` (eVital), check stock
        with [Get Inventory
        Status](/api-reference/doc-tool/ipd-api/pharmacies/get-inventory-status)
        and send each item's `quantity` in the pharmacy's `orderMode` unit; when
        `false` (in-house pharmacy), stock and prices are not tracked and the
        order is priced at dispatch.


        If one provider cannot be reached, its pharmacies are left out and the
        rest are still returned.
      operationId: ListIpdPharmacies
      parameters:
        - name: auth
          in: header
          required: true
          schema:
            type: string
          example: >-
            eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJiX2lkIjoiMTIzNDU2IiwiY2xpZW50X2lkIjoiNzg5MCIsImV4dHJhX2ZpZWxkIjoiZXh0cmFfZmllbGRfZGF0YSJ9.q9KzBI6f4l3OyM_EkB5Quq0l9EEMFh5JS-fx3F_PHUM
      responses:
        '200':
          description: OK — the available pharmacies.
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/IpdPharmacy'
              example:
                success: true
                data:
                  - id: dawakhana
                    name: In-house Pharmacy
                    provider: dawakhana
                    managesInventory: false
                  - id: Q2hlbWlzdC0xMjM0
                    name: City Medicals
                    provider: evital
                    managesInventory: true
                    orderMode: strip
        '400':
          description: Bad Request — the pharmacies could not be loaded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IpdServiceFailure'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IpdServiceError'
      deprecated: false
components:
  schemas:
    IpdPharmacy:
      title: IpdPharmacy
      type: object
      properties:
        id:
          type: string
          description: Pharmacy id. Use it as `pharmacyId` when placing an order.
        name:
          type: string
          description: Display name of the pharmacy.
        provider:
          type: string
          enum:
            - evital
            - dawakhana
          description: Provider of the pharmacy.
        managesInventory:
          type: boolean
          description: >-
            `true` when the pharmacy tracks stock and price at order time
            (eVital); `false` for the in-house pharmacy.
        orderMode:
          type: string
          enum:
            - loose
            - strip
          description: >-
            Unit the pharmacy takes orders in. Send order quantities in this
            unit. Absent when not set.
        meta:
          type: object
          additionalProperties: true
          description: Provider-specific extra details.
    IpdServiceFailure:
      title: IpdServiceFailure
      type: object
      properties:
        success:
          type: boolean
          description: Always `false`.
        error:
          type: string
          description: Human-readable error message.
    IpdServiceError:
      title: IpdServiceError
      type: object
      properties:
        message:
          type: string
          description: Human-readable error message.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.