openapi: 3.0.0 info: title: Appealable Issues Prescriptions API version: v0 contact: name: developer.va.gov description: "The Appealable Issues API lets you retrieve a list of a claimant’s appealable issues and any chains of preceding issues. Appealable issues are issues from claims about which VA has made a decision that may be eligible for appeal. Not all appealable issues are guaranteed to be eligible for appeal; for example, claimants may have another appeal in progress for an issue.\n\nTo check the status of all decision reviews and appeals for a specified individual, use the [Appeals Status API](https://developer.va.gov/explore/api/appeals-status/docs).\n\nTo file an appeal or decision review, use one of these APIs: \n* [Higher-Level Reviews API](https://developer.va.gov/explore/api/higher-level-reviews/docs)\n* [Notice of Disagreements API](https://developer.va.gov/explore/api/notice-of-disagreements/docs)\n* [Supplemental Claims API](https://developer.va.gov/explore/api/supplemental-claims/docs)\n\n## Technical overview\nThe Appealable Issues API pulls data from Caseflow, a case management system. It provides decision review and appeal data that can be used for submitting a Higher Level Review, Notice of Disagreement, or Supplemental Claim.\n\n### Authorization and Access\nThe authentication model for the Appealable Issues API uses OAuth 2.0/OpenID Connect. The following authorization models are supported:\n* [Authorization code flow](https://developer.va.gov/explore/api/appealable-issues/authorization-code)\n* [Client Credentials Grant (CCG)](https://developer.va.gov/explore/api/appealable-issues/client-credentials)\n\n**Important:** To get production access using client credentials grant, you must either work for VA or have specific VA agreements in place. If you have questions, [contact us](https://developer.va.gov/support/contact-us).\n\n### Test data\n\nOur sandbox environment is populated with [Veteran test data](https://github.com/department-of-veterans-affairs/vets-api-clients/blob/master/test_accounts/appealable_issues_test_accounts.md) that can be used to test various response scenarios. This sandbox data contains no PII or PHI, but mimics real Veteran account information.\n" servers: - url: https://sandbox-api.va.gov/services/appeals/appealable-issues/{version} description: VA.gov API sandbox environment variables: version: default: v0 - url: https://api.va.gov/services/appeals/appealable-issues/{version} description: VA.gov API production environment variables: version: default: v0 tags: - name: Prescriptions paths: /v1/prescriptions: get: description: List medications. operationId: get_prescriptions parameters: - description: One refill status to filter on in: query name: refill_status required: false schema: type: string - description: The page number to get based on your page size in: query name: page required: false schema: type: string - description: The size of the pagination you want in: query name: per_page required: false schema: type: string - description: The attribute to sort on, negated for descending in: query name: sort required: false schema: type: string - $ref: '#/components/parameters/InflectionHeader' responses: '200': content: application/json: schema: $ref: ./schemas/V1PrescriptionList.yml description: OK '401': content: application/json: schema: $ref: ./schemas/Errors.yml description: Unauthorized '403': content: application/json: schema: $ref: ./schemas/Errors.yml description: Not authorized for access to secure messages summary: /v1/prescriptions tags: - Prescriptions /v1/prescriptions/{id}: get: description: Get prescription. operationId: get_prescription parameters: - description: prescription id in: path name: id required: true schema: type: string - $ref: '#/components/parameters/InflectionHeader' responses: '200': content: application/json: schema: $ref: ./schemas/Prescription.yml description: OK '401': content: application/json: schema: $ref: ./schemas/Errors.yml description: Unauthorized '403': content: application/json: schema: $ref: ./schemas/Errors.yml description: Not authorized for access to secure messages summary: /v1/prescriptions/{id} tags: - Prescriptions /v1/prescriptions/{id}/refill: patch: description: Refill the prescription operationId: patch_refill_prescription parameters: - description: The id of the prescription in: path name: id required: true schema: type: string - $ref: '#/components/parameters/InflectionHeader' responses: '204': description: Success '401': content: application/json: schema: $ref: ./schemas/Errors.yml description: Unauthorized '403': content: application/json: schema: $ref: ./schemas/Errors.yml description: Not authorized for access to secure messages summary: /v1/prescriptions/{id}/refill tags: - Prescriptions /v1/prescriptions/list_refillable_prescriptions: get: description: List refillable medications. operationId: get_list_refillable_prescriptions parameters: - $ref: '#/components/parameters/InflectionHeader' responses: '200': content: application/json: schema: $ref: ./schemas/V1PrescriptionList.yml description: OK '401': content: application/json: schema: $ref: ./schemas/Errors.yml description: Unauthorized '403': content: application/json: schema: $ref: ./schemas/Errors.yml description: Not authorized for access to secure messages summary: /v1/prescriptions/list_refillable_prescriptions tags: - Prescriptions /v1/prescriptions/refill_prescriptions: patch: description: Refill the prescriptions operationId: patch_refill_prescription parameters: - description: Array of the prescription ids in: query name: ids required: true schema: type: array items: type: string - $ref: '#/components/parameters/InflectionHeader' responses: '204': description: Success '401': content: application/json: schema: $ref: ./schemas/Errors.yml description: Unauthorized '403': content: application/json: schema: $ref: ./schemas/Errors.yml description: Not authorized for access to secure messages summary: /v1/prescriptions/refill_prescriptions tags: - Prescriptions /v2/prescriptions: get: description: 'List medications for the current user. This endpoint uses the Unified Health Data (Oracle Health) backend and requires the `mhv_medications_cerner_pilot` feature flag to be enabled. Supports filtering, sorting, and pagination. Results can be filtered by prescription status and sorted by various attributes. Pending (PD) prescriptions are included based on the `mhv_medications_display_pending_meds` feature flag. ' operationId: get_v2_prescriptions parameters: - description: Filter prescriptions by disp_status (comma-separated for multiple values, e.g., "Active,Expired") in: query name: filter[disp_status][eq] required: false schema: type: string example: Active - description: The page number for pagination in: query name: page required: false schema: type: integer minimum: 1 example: 1 - description: The number of items per page in: query name: per_page required: false schema: type: integer minimum: 1 maximum: 100 example: 20 - description: 'The attribute to sort by. Prefix with "-" for descending order. Supported values: "alphabetical-rx-name", "last-fill-date", or field names like "disp_status", "prescription_name", "dispensed_date" ' in: query name: sort required: false schema: type: string example: alphabetical-rx-name - $ref: '#/components/parameters/InflectionHeader' responses: '200': content: application/json: schema: $ref: ./schemas/V2PrescriptionList.yml description: OK '401': content: application/json: schema: $ref: ./schemas/Errors.yml description: Unauthorized '403': content: application/json: schema: $ref: ./schemas/Errors.yml description: Forbidden - Feature not available or user not authorized '500': content: application/json: schema: $ref: ./schemas/Errors.yml description: Internal Server Error summary: /v2/prescriptions tags: - Prescriptions /v2/prescriptions/list_refillable_prescriptions: get: description: 'List refillable medications for the current user. This endpoint returns prescriptions that can be refilled, including those marked as refillable or renewable (Active/Expired within 120 days). Uses the Unified Health Data (Oracle Health) backend and requires the `mhv_medications_cerner_pilot` feature flag. ' operationId: get_v2_list_refillable_prescriptions parameters: - $ref: '#/components/parameters/InflectionHeader' responses: '200': content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: ./schemas/PrescriptionDetail.yml meta: type: object required: - recently_requested properties: recently_requested: type: array description: 'List of prescriptions with status "Active: Refill in Process" or "Active: Submitted" ' items: type: object description: OK '401': content: application/json: schema: $ref: ./schemas/Errors.yml description: Unauthorized '403': content: application/json: schema: $ref: ./schemas/Errors.yml description: Forbidden - Feature not available or user not authorized '500': content: application/json: schema: $ref: ./schemas/Errors.yml description: Internal Server Error summary: /v2/prescriptions/list_refillable_prescriptions tags: - Prescriptions /v2/prescriptions/refill: post: description: "Refill one or more prescriptions in a batch operation. This endpoint accepts an array of prescription orders,\neach containing a station number and prescription ID. Returns detailed results for each refill attempt,\nincluding successful refills and any errors encountered.\n\nUses the Unified Health Data (Oracle Health) backend and requires the `mhv_medications_cerner_pilot` feature flag.\n\nNOTES:\n