For clean Markdown of any page, append .md to the page URL. For a complete documentation index, see https://docs.rebateright.com.au/api-reference/dva/llms.txt. For full documentation content, see https://docs.rebateright.com.au/api-reference/dva/llms-full.txt.

# DVA Claim — General

POST https://api.rebateright.com.au/Medicare/dvaclaim/general/v1
Content-Type: application/json

> 🚧 **Coming Soon** — This endpoint is not yet available.
> RebateRight is completing DVA certification. Availability will be announced when certification is complete.

Submit a DVA general medical claim on behalf of a health professional. One claim per request, containing up to 80 medical events, each with up to 14 services.

Use this endpoint for general (non-specialist, non-pathology) DVA medical services. Set `serviceTypeCode` to `O`.

#### Accepted Disability

Every medical event must include an `acceptedDisability` block indicating the condition treated. Set `ind` to `Y` for White Card holders; `code` is free text describing the condition.

#### Patient Identification

DVA patients are identified by their DVA file number (`veteranNumber`) along with name, DOB, and sex. If DVA's records differ from what was submitted, the correct details are returned in the processing report.

#### Claim ID

On success, Services Australia returns a unique `claimId` in the format `A0001@` (alpha prefix + 4 numerics + `@` suffix). The prefix indicates out-of-hospital or non-pathology services.

#### Status Codes

| Code | Meaning |
|---|---|
| `9202` | Field-level validation failure — see `serviceMessage` for detail |
| `9006` | Provider not authorised for this function |
| `9777` | Duplicate transaction ID — resubmit with a unique transaction ID |
| `3004` | Daily claim limit of 2,500 reached for this payee provider and location |


Reference: https://docs.rebateright.com.au/api-reference/dva/dva-claim-general

## OpenAPI Specification

```yaml
openapi: 3.1.0
info:
  title: collection
  version: 1.0.0
paths:
  /Medicare/dvaclaim/general/v1:
    post:
      operationId: dva-claim-general
      summary: DVA Claim — General
      description: >
        > 🚧 **Coming Soon** — This endpoint is not yet available.

        > RebateRight is completing DVA certification. Availability will be
        announced when certification is complete.


        Submit a DVA general medical claim on behalf of a health professional.
        One claim per request, containing up to 80 medical events, each with up
        to 14 services.


        Use this endpoint for general (non-specialist, non-pathology) DVA
        medical services. Set `serviceTypeCode` to `O`.


        #### Accepted Disability


        Every medical event must include an `acceptedDisability` block
        indicating the condition treated. Set `ind` to `Y` for White Card
        holders; `code` is free text describing the condition.


        #### Patient Identification


        DVA patients are identified by their DVA file number (`veteranNumber`)
        along with name, DOB, and sex. If DVA's records differ from what was
        submitted, the correct details are returned in the processing report.


        #### Claim ID


        On success, Services Australia returns a unique `claimId` in the format
        `A0001@` (alpha prefix + 4 numerics + `@` suffix). The prefix indicates
        out-of-hospital or non-pathology services.


        #### Status Codes


        | Code | Meaning |

        |---|---|

        | `9202` | Field-level validation failure — see `serviceMessage` for
        detail |

        | `9006` | Provider not authorised for this function |

        | `9777` | Duplicate transaction ID — resubmit with a unique transaction
        ID |

        | `3004` | Daily claim limit of 2,500 reached for this payee provider
        and location |
      tags:
        - subpackage_dva
      parameters:
        - name: x-api-key
          in: header
          required: true
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DVA_DVA Claim — General_Response_200'
        '400':
          description: >-
            Validation or business-rule failure; body includes `serviceMessage`
            entries and `correlationId`.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/PostMedicareDvaclaimGeneralV1RequestBadRequestError
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                correlationId:
                  type: string
                  description: >-
                    Optional. Supply a unique transaction ID in the format
                    `urn:uuid:{MinorId}{16 hex chars}` (33 characters total,
                    e.g. `urn:uuid:MDE00000a1b2c3d4e5f6a7b8`). If the same
                    `correlationId` is submitted twice, the second request is
                    rejected with error `9777`. If omitted, RebateRight
                    generates one automatically.
                claim:
                  $ref: >-
                    #/components/schemas/MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaim
              required:
                - claim
servers:
  - url: https://api.rebateright.com.au
  - url: https://test-api.rebateright.com.au
components:
  schemas:
    MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimServiceTypeCode:
      type: string
      enum:
        - O
      description: >
        Use **O** for general (non-specialist, non-pathology) DVA medical
        claims.


        | Code | Meaning |

        |------|---------|

        | O | General (out-of-hospital) services |
      title: >-
        MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimServiceTypeCode
    MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimServiceProvider:
      type: object
      properties:
        providerNumber:
          type: string
          description: >-
            Provider number of the practitioner who rendered the service.
            6-digit stem + 1 location character + 1 check digit (e.g.
            `2447781L`).
      required:
        - providerNumber
      title: >-
        MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimServiceProvider
    MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimPayeeProvider:
      type: object
      properties:
        providerNumber:
          type: string
          description: 6-digit stem + 1 location character + 1 check digit.
      description: >-
        Optional. The provider to whom the benefit will be paid, if different
        from the servicing provider. Must have a different provider stem (first
        6 characters).
      title: >-
        MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimPayeeProvider
    MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsReferralOverrideCode:
      type: string
      enum:
        - E
        - H
        - L
        - 'N'
      description: >
        Optional. Use when a service that normally needs a referral was provided
        without a **referral**

        object. Do not set together with **referral**.


        | Code | Meaning |

        |------|---------|

        | E | Emergency |

        | H | Hospital — also requires **facilityId** and
        **treatmentLocationCode** **H** |

        | L | Lost referral |

        | N | Not required |
      title: >-
        MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsReferralOverrideCode
    MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsSubmissionAuthorityInd:
      type: string
      enum:
        - 'Y'
      description: >
        Must be **Y** — confirms the claim was authorised for submission by the
        provider.


        | Code | Meaning |

        |------|---------|

        | Y | Authorised for submission |
      title: >-
        MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsSubmissionAuthorityInd
    MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsTreatmentLocationCode:
      type: string
      enum:
        - V
        - H
        - R
      description: >
        Where the service was provided.


        | Code | Meaning |

        |------|---------|

        | V | Home visit (residential care, community health centre, or hostel)
        |

        | H | Hospital |

        | R | Rooms |
      title: >-
        MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsTreatmentLocationCode
    MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsAcceptedDisabilityInd:
      type: string
      enum:
        - 'Y'
      description: |
        Must be **Y** — service is for a condition covered by a **White Card**.

        | Code | Meaning |
        |------|---------|
        | Y | White Card condition |
      title: >-
        MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsAcceptedDisabilityInd
    MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsAcceptedDisability:
      type: object
      properties:
        ind:
          $ref: >-
            #/components/schemas/MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsAcceptedDisabilityInd
          description: >
            Must be **Y** — service is for a condition covered by a **White
            Card**.


            | Code | Meaning |

            |------|---------|

            | Y | White Card condition |
        code:
          type: string
          description: >-
            Description of the condition treated. Alphanumeric and special
            characters (`: ; , . -`) allowed. First character must be alpha or
            numeric. 1–100 characters.
      required:
        - ind
        - code
      title: >-
        MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsAcceptedDisability
    MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsPatientIdentitySex:
      type: string
      enum:
        - '1'
        - '2'
        - '3'
        - '9'
      description: |
        Patient sex (Services Australia coding).

        | Code | Meaning |
        |------|---------|
        | 1 | Male |
        | 2 | Female |
        | 3 | Other |
        | 9 | Not stated |
      title: >-
        MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsPatientIdentitySex
    MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsPatientIdentity:
      type: object
      properties:
        dateOfBirth:
          type: string
          format: date
          description: >-
            Must not be in the future, more than 130 years in the past, or after
            `medicalEventDate`.
        familyName:
          type: string
          description: >-
            1–40 characters. Alpha, numeric, spaces, apostrophes and hyphens
            only. If the patient has only one name, supply it here and use
            `*Onlyname*` in `givenName`.
        givenName:
          type: string
          description: >-
            1–40 characters. Alpha, numeric, spaces, apostrophes and hyphens
            only. Use `*Onlyname*` if the patient has only one name.
        sex:
          $ref: >-
            #/components/schemas/MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsPatientIdentitySex
          description: |
            Patient sex (Services Australia coding).

            | Code | Meaning |
            |------|---------|
            | 1 | Male |
            | 2 | Female |
            | 3 | Other |
            | 9 | Not stated |
      required:
        - dateOfBirth
        - familyName
        - givenName
        - sex
      title: >-
        MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsPatientIdentity
    MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsPatientResidentialAddress:
      type: object
      properties:
        locality:
          type: string
          description: >-
            Suburb or town. 1–40 characters. Do not include the state code as a
            separate value.
        postcode:
          type: string
          description: 4-digit postcode. Must not be `0000`.
      description: Optional. If provided, both `locality` and `postcode` are required.
      title: >-
        MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsPatientResidentialAddress
    MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsPatientVeteranMembership:
      type: object
      properties:
        veteranNumber:
          type: string
          description: >-
            DVA file number. State code + war code + numeric digits (e.g.
            `NX901667`). 3–9 characters total, no spaces within the file number.
      required:
        - veteranNumber
      title: >-
        MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsPatientVeteranMembership
    MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsPatient:
      type: object
      properties:
        identity:
          $ref: >-
            #/components/schemas/MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsPatientIdentity
        residentialAddress:
          $ref: >-
            #/components/schemas/MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsPatientResidentialAddress
          description: Optional. If provided, both `locality` and `postcode` are required.
        veteranMembership:
          $ref: >-
            #/components/schemas/MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsPatientVeteranMembership
      required:
        - identity
        - veteranMembership
      title: >-
        MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsPatient
    MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsServiceItemsAftercareOverrideInd:
      type: string
      enum:
        - 'Y'
      description: |
        Optional. Set **Y** if the service was not normal aftercare.

        | Code | Meaning |
        |------|---------|
        | Y | Not normal aftercare |
      title: >-
        MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsServiceItemsAftercareOverrideInd
    MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsServiceItemsDuplicateServiceOverrideInd:
      type: string
      enum:
        - 'Y'
      description: >
        Optional. Set **Y** if multiple same-day services by the same provider
        should be treated

        as separate. Requires **medicalEventTime** or **text**.


        | Code | Meaning |

        |------|---------|

        | Y | Treat as separate services |
      title: >-
        MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsServiceItemsDuplicateServiceOverrideInd
    MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsServiceItemsMultipleProcedureOverrideInd:
      type: string
      enum:
        - 'Y'
      description: >
        Optional. Set **Y** if the multiple services rule should not apply.
        Requires **text**

        explaining the reason.


        | Code | Meaning |

        |------|---------|

        | Y | Override multiple-services rule |
      title: >-
        MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsServiceItemsMultipleProcedureOverrideInd
    MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsServiceItemsRestrictiveOverrideCode:
      type: string
      enum:
        - SP
        - NR
        - NC
      description: >
        Optional. Explains why restrictive rules should not apply. Requires
        **text**.


        | Code | Meaning |

        |------|---------|

        | SP | Separate sites |

        | NR | Not related |

        | NC | Not for comparison (bilateral) |
      title: >-
        MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsServiceItemsRestrictiveOverrideCode
    MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsServiceItems:
      type: object
      properties:
        id:
          type: string
          description: >-
            4-character alphanumeric identifier, unique within the claim (e.g.
            `0001`, `AC68`).
        itemNumber:
          type: string
          description: >-
            MBS or DVA item number. 1–5 characters. DVA-specific items are
            prefixed with at least one alpha character.
        chargeAmount:
          type: string
          description: >-
            Charge in cents. Minimum `100` ($1.00). Required unless
            `distanceKilometres` is set.
        accountReferenceNumber:
          type: string
          description: >-
            Optional. Invoice or medical record reference. 1–8 alphanumeric
            characters, no spaces.
        aftercareOverrideInd:
          $ref: >-
            #/components/schemas/MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsServiceItemsAftercareOverrideInd
          description: |
            Optional. Set **Y** if the service was not normal aftercare.

            | Code | Meaning |
            |------|---------|
            | Y | Not normal aftercare |
        distanceKilometres:
          type: string
          description: >-
            Optional. Travelling distance for home, nursing home, or hospital
            visits. 11–999 km. If set, only `id` and `itemNumber` may also be
            set on this service; at least one other non-distance service must
            exist in the medical event.
        duplicateServiceOverrideInd:
          $ref: >-
            #/components/schemas/MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsServiceItemsDuplicateServiceOverrideInd
          description: >
            Optional. Set **Y** if multiple same-day services by the same
            provider should be treated

            as separate. Requires **medicalEventTime** or **text**.


            | Code | Meaning |

            |------|---------|

            | Y | Treat as separate services |
        fieldQuantity:
          type: string
          description: >-
            Optional. Number of fields irradiated or 15-minute time blocks.
            Numeric 1–99. Cannot be set alongside `numberOfPatientsSeen` or
            `timeDuration`.
        lspNumber:
          type: string
          description: >-
            Optional. Location Specific Practice Number for diagnostic imaging.
            Numeric 1–999999. All services in a medical event must share the
            same LSPN.
        multipleProcedureOverrideInd:
          $ref: >-
            #/components/schemas/MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsServiceItemsMultipleProcedureOverrideInd
          description: >
            Optional. Set **Y** if the multiple services rule should not apply.
            Requires **text**

            explaining the reason.


            | Code | Meaning |

            |------|---------|

            | Y | Override multiple-services rule |
        numberOfPatientsSeen:
          type: string
          description: >-
            Optional. Number of patients seen (1–99). Required for group
            attendance items. Cannot be set alongside `timeDuration` or
            `fieldQuantity`.
        restrictiveOverrideCode:
          $ref: >-
            #/components/schemas/MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsServiceItemsRestrictiveOverrideCode
          description: >
            Optional. Explains why restrictive rules should not apply. Requires
            **text**.


            | Code | Meaning |

            |------|---------|

            | SP | Separate sites |

            | NR | Not related |

            | NC | Not for comparison (bilateral) |
        text:
          type: string
          description: >-
            Optional. Free text providing additional information to support
            claim assessment. 1–100 characters.
        timeDuration:
          type: string
          description: >-
            Optional. Duration of service in minutes. Numeric 001–999. Cannot be
            set alongside `numberOfPatientsSeen` or `fieldQuantity`.
      required:
        - id
        - itemNumber
        - chargeAmount
      title: >-
        MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsServiceItems
    MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItems:
      type: object
      properties:
        id:
          type: string
          description: >-
            Sequential numeric identifier for this medical event within the
            claim. Must start at `01` and increment by 1 (e.g. `01`, `02`,
            `03`).
        authorisationDate:
          type: string
          format: date
          description: >-
            Date the claim was authorised. Must not be in the future or before
            `medicalEventDate`.
        createDateTime:
          type: string
          format: date-time
          description: >-
            Date and time the medical event record was created. Must not be in
            the future or before `medicalEventDate`. Must be a valid Australian
            timezone offset (e.g. `+10:00`).
        facilityId:
          type: string
          description: >-
            Optional. Commonwealth Hospital Facility Provider Number. Required
            when `referralOverrideCode` is `H`.
        medicalEventDate:
          type: string
          format: date
          description: >-
            Date the service was rendered. Must not be in the future or more
            than 2 years in the past.
        medicalEventTime:
          type: string
          description: >-
            Optional. Time the service was rendered. Must not be in the future.
            Must be a valid Australian timezone offset.
        referralOverrideCode:
          $ref: >-
            #/components/schemas/MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsReferralOverrideCode
          description: >
            Optional. Use when a service that normally needs a referral was
            provided without a **referral**

            object. Do not set together with **referral**.


            | Code | Meaning |

            |------|---------|

            | E | Emergency |

            | H | Hospital — also requires **facilityId** and
            **treatmentLocationCode** **H** |

            | L | Lost referral |

            | N | Not required |
        submissionAuthorityInd:
          $ref: >-
            #/components/schemas/MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsSubmissionAuthorityInd
          description: >
            Must be **Y** — confirms the claim was authorised for submission by
            the provider.


            | Code | Meaning |

            |------|---------|

            | Y | Authorised for submission |
        treatmentLocationCode:
          $ref: >-
            #/components/schemas/MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsTreatmentLocationCode
          description: >
            Where the service was provided.


            | Code | Meaning |

            |------|---------|

            | V | Home visit (residential care, community health centre, or
            hostel) |

            | H | Hospital |

            | R | Rooms |
        acceptedDisability:
          $ref: >-
            #/components/schemas/MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsAcceptedDisability
        patient:
          $ref: >-
            #/components/schemas/MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsPatient
        service:
          type: array
          items:
            $ref: >-
              #/components/schemas/MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItemsServiceItems
          description: >-
            One or more services within this medical event. Maximum 14 per
            medical event.
      required:
        - id
        - authorisationDate
        - createDateTime
        - medicalEventDate
        - submissionAuthorityInd
        - treatmentLocationCode
        - acceptedDisability
        - patient
        - service
      title: >-
        MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItems
    MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaim:
      type: object
      properties:
        serviceTypeCode:
          $ref: >-
            #/components/schemas/MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimServiceTypeCode
          description: >
            Use **O** for general (non-specialist, non-pathology) DVA medical
            claims.


            | Code | Meaning |

            |------|---------|

            | O | General (out-of-hospital) services |
        serviceProvider:
          $ref: >-
            #/components/schemas/MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimServiceProvider
        payeeProvider:
          $ref: >-
            #/components/schemas/MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimPayeeProvider
          description: >-
            Optional. The provider to whom the benefit will be paid, if
            different from the servicing provider. Must have a different
            provider stem (first 6 characters).
        medicalEvent:
          type: array
          items:
            $ref: >-
              #/components/schemas/MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaimMedicalEventItems
          description: One or more medical events. Maximum 80 per claim.
      required:
        - serviceTypeCode
        - serviceProvider
        - medicalEvent
      title: >-
        MedicareDvaclaimGeneralV1PostRequestBodyContentApplicationJsonSchemaClaim
    DVA_DVA Claim — General_Response_200:
      type: object
      properties:
        claimId:
          type: string
          description: >-
            Unique claim identifier assigned by Services Australia. Format is a
            letter prefix + 4 digits + `@` (e.g. `D0742@`).
        status:
          type: string
          description: Always `SUCCESS` on a successful submission.
        correlationId:
          type: string
      title: DVA_DVA Claim — General_Response_200
    MedicareDvaclaimGeneralV1PostResponsesContentApplicationJsonSchemaServiceMessageItems:
      type: object
      properties:
        code:
          type: string
        severity:
          type: string
        reason:
          type: string
      title: >-
        MedicareDvaclaimGeneralV1PostResponsesContentApplicationJsonSchemaServiceMessageItems
    PostMedicareDvaclaimGeneralV1RequestBadRequestError:
      type: object
      properties:
        highestSeverity:
          type: string
        serviceMessage:
          type: array
          items:
            $ref: >-
              #/components/schemas/MedicareDvaclaimGeneralV1PostResponsesContentApplicationJsonSchemaServiceMessageItems
        correlationId:
          type: string
      required:
        - highestSeverity
        - serviceMessage
        - correlationId
      title: PostMedicareDvaclaimGeneralV1RequestBadRequestError
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
    minorId:
      type: apiKey
      in: header
      name: x-minor-id

```

## SDK Code Examples

```python Rooms
import requests

url = "https://api.rebateright.com.au/Medicare/dvaclaim/general/v1"

payload = { "claim": {
        "serviceTypeCode": "O",
        "serviceProvider": { "providerNumber": "2447781L" },
        "medicalEvent": [
            {
                "id": "01",
                "authorisationDate": "2026-04-09",
                "createDateTime": "2026-04-09T10:00:00+10:00",
                "medicalEventDate": "2026-04-09",
                "submissionAuthorityInd": "Y",
                "treatmentLocationCode": "R",
                "acceptedDisability": {
                    "ind": "Y",
                    "code": "OSTEOARTHRITIS"
                },
                "patient": {
                    "identity": {
                        "dateOfBirth": "1958-09-27",
                        "familyName": "IAN",
                        "givenName": "JANET",
                        "sex": "2"
                    },
                    "veteranMembership": { "veteranNumber": "NX901667" }
                },
                "service": [
                    {
                        "id": "0001",
                        "itemNumber": "23",
                        "chargeAmount": "10000"
                    }
                ]
            }
        ]
    } }
headers = {
    "x-api-key": "<apiKey>",
    "Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.json())
```

```javascript Rooms
const url = 'https://api.rebateright.com.au/Medicare/dvaclaim/general/v1';
const options = {
  method: 'POST',
  headers: {'x-api-key': '<apiKey>', 'Content-Type': 'application/json'},
  body: '{"claim":{"serviceTypeCode":"O","serviceProvider":{"providerNumber":"2447781L"},"medicalEvent":[{"id":"01","authorisationDate":"2026-04-09","createDateTime":"2026-04-09T10:00:00+10:00","medicalEventDate":"2026-04-09","submissionAuthorityInd":"Y","treatmentLocationCode":"R","acceptedDisability":{"ind":"Y","code":"OSTEOARTHRITIS"},"patient":{"identity":{"dateOfBirth":"1958-09-27","familyName":"IAN","givenName":"JANET","sex":"2"},"veteranMembership":{"veteranNumber":"NX901667"}},"service":[{"id":"0001","itemNumber":"23","chargeAmount":"10000"}]}]}}'
};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go Rooms
package main

import (
	"fmt"
	"strings"
	"net/http"
	"io"
)

func main() {

	url := "https://api.rebateright.com.au/Medicare/dvaclaim/general/v1"

	payload := strings.NewReader("{\n  \"claim\": {\n    \"serviceTypeCode\": \"O\",\n    \"serviceProvider\": {\n      \"providerNumber\": \"2447781L\"\n    },\n    \"medicalEvent\": [\n      {\n        \"id\": \"01\",\n        \"authorisationDate\": \"2026-04-09\",\n        \"createDateTime\": \"2026-04-09T10:00:00+10:00\",\n        \"medicalEventDate\": \"2026-04-09\",\n        \"submissionAuthorityInd\": \"Y\",\n        \"treatmentLocationCode\": \"R\",\n        \"acceptedDisability\": {\n          \"ind\": \"Y\",\n          \"code\": \"OSTEOARTHRITIS\"\n        },\n        \"patient\": {\n          \"identity\": {\n            \"dateOfBirth\": \"1958-09-27\",\n            \"familyName\": \"IAN\",\n            \"givenName\": \"JANET\",\n            \"sex\": \"2\"\n          },\n          \"veteranMembership\": {\n            \"veteranNumber\": \"NX901667\"\n          }\n        },\n        \"service\": [\n          {\n            \"id\": \"0001\",\n            \"itemNumber\": \"23\",\n            \"chargeAmount\": \"10000\"\n          }\n        ]\n      }\n    ]\n  }\n}")

	req, _ := http.NewRequest("POST", url, payload)

	req.Header.Add("x-api-key", "<apiKey>")
	req.Header.Add("Content-Type", "application/json")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby Rooms
require 'uri'
require 'net/http'

url = URI("https://api.rebateright.com.au/Medicare/dvaclaim/general/v1")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<apiKey>'
request["Content-Type"] = 'application/json'
request.body = "{\n  \"claim\": {\n    \"serviceTypeCode\": \"O\",\n    \"serviceProvider\": {\n      \"providerNumber\": \"2447781L\"\n    },\n    \"medicalEvent\": [\n      {\n        \"id\": \"01\",\n        \"authorisationDate\": \"2026-04-09\",\n        \"createDateTime\": \"2026-04-09T10:00:00+10:00\",\n        \"medicalEventDate\": \"2026-04-09\",\n        \"submissionAuthorityInd\": \"Y\",\n        \"treatmentLocationCode\": \"R\",\n        \"acceptedDisability\": {\n          \"ind\": \"Y\",\n          \"code\": \"OSTEOARTHRITIS\"\n        },\n        \"patient\": {\n          \"identity\": {\n            \"dateOfBirth\": \"1958-09-27\",\n            \"familyName\": \"IAN\",\n            \"givenName\": \"JANET\",\n            \"sex\": \"2\"\n          },\n          \"veteranMembership\": {\n            \"veteranNumber\": \"NX901667\"\n          }\n        },\n        \"service\": [\n          {\n            \"id\": \"0001\",\n            \"itemNumber\": \"23\",\n            \"chargeAmount\": \"10000\"\n          }\n        ]\n      }\n    ]\n  }\n}"

response = http.request(request)
puts response.read_body
```

```java Rooms
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.post("https://api.rebateright.com.au/Medicare/dvaclaim/general/v1")
  .header("x-api-key", "<apiKey>")
  .header("Content-Type", "application/json")
  .body("{\n  \"claim\": {\n    \"serviceTypeCode\": \"O\",\n    \"serviceProvider\": {\n      \"providerNumber\": \"2447781L\"\n    },\n    \"medicalEvent\": [\n      {\n        \"id\": \"01\",\n        \"authorisationDate\": \"2026-04-09\",\n        \"createDateTime\": \"2026-04-09T10:00:00+10:00\",\n        \"medicalEventDate\": \"2026-04-09\",\n        \"submissionAuthorityInd\": \"Y\",\n        \"treatmentLocationCode\": \"R\",\n        \"acceptedDisability\": {\n          \"ind\": \"Y\",\n          \"code\": \"OSTEOARTHRITIS\"\n        },\n        \"patient\": {\n          \"identity\": {\n            \"dateOfBirth\": \"1958-09-27\",\n            \"familyName\": \"IAN\",\n            \"givenName\": \"JANET\",\n            \"sex\": \"2\"\n          },\n          \"veteranMembership\": {\n            \"veteranNumber\": \"NX901667\"\n          }\n        },\n        \"service\": [\n          {\n            \"id\": \"0001\",\n            \"itemNumber\": \"23\",\n            \"chargeAmount\": \"10000\"\n          }\n        ]\n      }\n    ]\n  }\n}")
  .asString();
```

```php Rooms
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('POST', 'https://api.rebateright.com.au/Medicare/dvaclaim/general/v1', [
  'body' => '{
  "claim": {
    "serviceTypeCode": "O",
    "serviceProvider": {
      "providerNumber": "2447781L"
    },
    "medicalEvent": [
      {
        "id": "01",
        "authorisationDate": "2026-04-09",
        "createDateTime": "2026-04-09T10:00:00+10:00",
        "medicalEventDate": "2026-04-09",
        "submissionAuthorityInd": "Y",
        "treatmentLocationCode": "R",
        "acceptedDisability": {
          "ind": "Y",
          "code": "OSTEOARTHRITIS"
        },
        "patient": {
          "identity": {
            "dateOfBirth": "1958-09-27",
            "familyName": "IAN",
            "givenName": "JANET",
            "sex": "2"
          },
          "veteranMembership": {
            "veteranNumber": "NX901667"
          }
        },
        "service": [
          {
            "id": "0001",
            "itemNumber": "23",
            "chargeAmount": "10000"
          }
        ]
      }
    ]
  }
}',
  'headers' => [
    'Content-Type' => 'application/json',
    'x-api-key' => '<apiKey>',
  ],
]);

echo $response->getBody();
```

```csharp Rooms
using RestSharp;

var client = new RestClient("https://api.rebateright.com.au/Medicare/dvaclaim/general/v1");
var request = new RestRequest(Method.POST);
request.AddHeader("x-api-key", "<apiKey>");
request.AddHeader("Content-Type", "application/json");
request.AddParameter("application/json", "{\n  \"claim\": {\n    \"serviceTypeCode\": \"O\",\n    \"serviceProvider\": {\n      \"providerNumber\": \"2447781L\"\n    },\n    \"medicalEvent\": [\n      {\n        \"id\": \"01\",\n        \"authorisationDate\": \"2026-04-09\",\n        \"createDateTime\": \"2026-04-09T10:00:00+10:00\",\n        \"medicalEventDate\": \"2026-04-09\",\n        \"submissionAuthorityInd\": \"Y\",\n        \"treatmentLocationCode\": \"R\",\n        \"acceptedDisability\": {\n          \"ind\": \"Y\",\n          \"code\": \"OSTEOARTHRITIS\"\n        },\n        \"patient\": {\n          \"identity\": {\n            \"dateOfBirth\": \"1958-09-27\",\n            \"familyName\": \"IAN\",\n            \"givenName\": \"JANET\",\n            \"sex\": \"2\"\n          },\n          \"veteranMembership\": {\n            \"veteranNumber\": \"NX901667\"\n          }\n        },\n        \"service\": [\n          {\n            \"id\": \"0001\",\n            \"itemNumber\": \"23\",\n            \"chargeAmount\": \"10000\"\n          }\n        ]\n      }\n    ]\n  }\n}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
```

```swift Rooms
import Foundation

let headers = [
  "x-api-key": "<apiKey>",
  "Content-Type": "application/json"
]
let parameters = ["claim": [
    "serviceTypeCode": "O",
    "serviceProvider": ["providerNumber": "2447781L"],
    "medicalEvent": [
      [
        "id": "01",
        "authorisationDate": "2026-04-09",
        "createDateTime": "2026-04-09T10:00:00+10:00",
        "medicalEventDate": "2026-04-09",
        "submissionAuthorityInd": "Y",
        "treatmentLocationCode": "R",
        "acceptedDisability": [
          "ind": "Y",
          "code": "OSTEOARTHRITIS"
        ],
        "patient": [
          "identity": [
            "dateOfBirth": "1958-09-27",
            "familyName": "IAN",
            "givenName": "JANET",
            "sex": "2"
          ],
          "veteranMembership": ["veteranNumber": "NX901667"]
        ],
        "service": [
          [
            "id": "0001",
            "itemNumber": "23",
            "chargeAmount": "10000"
          ]
        ]
      ]
    ]
  ]] as [String : Any]

let postData = JSONSerialization.data(withJSONObject: parameters, options: [])

let request = NSMutableURLRequest(url: NSURL(string: "https://api.rebateright.com.au/Medicare/dvaclaim/general/v1")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "POST"
request.allHTTPHeaderFields = headers
request.httpBody = postData as Data

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```

```python Home Visit
import requests

url = "https://api.rebateright.com.au/Medicare/dvaclaim/general/v1"

payload = { "claim": {
        "serviceTypeCode": "O",
        "serviceProvider": { "providerNumber": "2447781L" },
        "medicalEvent": [
            {
                "id": "01",
                "authorisationDate": "2026-04-09",
                "createDateTime": "2026-04-09T11:00:00+10:00",
                "medicalEventDate": "2026-04-09",
                "submissionAuthorityInd": "Y",
                "treatmentLocationCode": "V",
                "acceptedDisability": {
                    "ind": "Y",
                    "code": "HYPERTENSION"
                },
                "patient": {
                    "identity": {
                        "dateOfBirth": "1964-04-21",
                        "familyName": "VICKI",
                        "givenName": "BRUCE",
                        "sex": "1"
                    },
                    "veteranMembership": { "veteranNumber": "NX901668" }
                },
                "service": [
                    {
                        "id": "0001",
                        "itemNumber": "30",
                        "chargeAmount": "12000"
                    }
                ]
            }
        ]
    } }
headers = {
    "x-api-key": "<apiKey>",
    "Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.json())
```

```javascript Home Visit
const url = 'https://api.rebateright.com.au/Medicare/dvaclaim/general/v1';
const options = {
  method: 'POST',
  headers: {'x-api-key': '<apiKey>', 'Content-Type': 'application/json'},
  body: '{"claim":{"serviceTypeCode":"O","serviceProvider":{"providerNumber":"2447781L"},"medicalEvent":[{"id":"01","authorisationDate":"2026-04-09","createDateTime":"2026-04-09T11:00:00+10:00","medicalEventDate":"2026-04-09","submissionAuthorityInd":"Y","treatmentLocationCode":"V","acceptedDisability":{"ind":"Y","code":"HYPERTENSION"},"patient":{"identity":{"dateOfBirth":"1964-04-21","familyName":"VICKI","givenName":"BRUCE","sex":"1"},"veteranMembership":{"veteranNumber":"NX901668"}},"service":[{"id":"0001","itemNumber":"30","chargeAmount":"12000"}]}]}}'
};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go Home Visit
package main

import (
	"fmt"
	"strings"
	"net/http"
	"io"
)

func main() {

	url := "https://api.rebateright.com.au/Medicare/dvaclaim/general/v1"

	payload := strings.NewReader("{\n  \"claim\": {\n    \"serviceTypeCode\": \"O\",\n    \"serviceProvider\": {\n      \"providerNumber\": \"2447781L\"\n    },\n    \"medicalEvent\": [\n      {\n        \"id\": \"01\",\n        \"authorisationDate\": \"2026-04-09\",\n        \"createDateTime\": \"2026-04-09T11:00:00+10:00\",\n        \"medicalEventDate\": \"2026-04-09\",\n        \"submissionAuthorityInd\": \"Y\",\n        \"treatmentLocationCode\": \"V\",\n        \"acceptedDisability\": {\n          \"ind\": \"Y\",\n          \"code\": \"HYPERTENSION\"\n        },\n        \"patient\": {\n          \"identity\": {\n            \"dateOfBirth\": \"1964-04-21\",\n            \"familyName\": \"VICKI\",\n            \"givenName\": \"BRUCE\",\n            \"sex\": \"1\"\n          },\n          \"veteranMembership\": {\n            \"veteranNumber\": \"NX901668\"\n          }\n        },\n        \"service\": [\n          {\n            \"id\": \"0001\",\n            \"itemNumber\": \"30\",\n            \"chargeAmount\": \"12000\"\n          }\n        ]\n      }\n    ]\n  }\n}")

	req, _ := http.NewRequest("POST", url, payload)

	req.Header.Add("x-api-key", "<apiKey>")
	req.Header.Add("Content-Type", "application/json")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby Home Visit
require 'uri'
require 'net/http'

url = URI("https://api.rebateright.com.au/Medicare/dvaclaim/general/v1")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<apiKey>'
request["Content-Type"] = 'application/json'
request.body = "{\n  \"claim\": {\n    \"serviceTypeCode\": \"O\",\n    \"serviceProvider\": {\n      \"providerNumber\": \"2447781L\"\n    },\n    \"medicalEvent\": [\n      {\n        \"id\": \"01\",\n        \"authorisationDate\": \"2026-04-09\",\n        \"createDateTime\": \"2026-04-09T11:00:00+10:00\",\n        \"medicalEventDate\": \"2026-04-09\",\n        \"submissionAuthorityInd\": \"Y\",\n        \"treatmentLocationCode\": \"V\",\n        \"acceptedDisability\": {\n          \"ind\": \"Y\",\n          \"code\": \"HYPERTENSION\"\n        },\n        \"patient\": {\n          \"identity\": {\n            \"dateOfBirth\": \"1964-04-21\",\n            \"familyName\": \"VICKI\",\n            \"givenName\": \"BRUCE\",\n            \"sex\": \"1\"\n          },\n          \"veteranMembership\": {\n            \"veteranNumber\": \"NX901668\"\n          }\n        },\n        \"service\": [\n          {\n            \"id\": \"0001\",\n            \"itemNumber\": \"30\",\n            \"chargeAmount\": \"12000\"\n          }\n        ]\n      }\n    ]\n  }\n}"

response = http.request(request)
puts response.read_body
```

```java Home Visit
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.post("https://api.rebateright.com.au/Medicare/dvaclaim/general/v1")
  .header("x-api-key", "<apiKey>")
  .header("Content-Type", "application/json")
  .body("{\n  \"claim\": {\n    \"serviceTypeCode\": \"O\",\n    \"serviceProvider\": {\n      \"providerNumber\": \"2447781L\"\n    },\n    \"medicalEvent\": [\n      {\n        \"id\": \"01\",\n        \"authorisationDate\": \"2026-04-09\",\n        \"createDateTime\": \"2026-04-09T11:00:00+10:00\",\n        \"medicalEventDate\": \"2026-04-09\",\n        \"submissionAuthorityInd\": \"Y\",\n        \"treatmentLocationCode\": \"V\",\n        \"acceptedDisability\": {\n          \"ind\": \"Y\",\n          \"code\": \"HYPERTENSION\"\n        },\n        \"patient\": {\n          \"identity\": {\n            \"dateOfBirth\": \"1964-04-21\",\n            \"familyName\": \"VICKI\",\n            \"givenName\": \"BRUCE\",\n            \"sex\": \"1\"\n          },\n          \"veteranMembership\": {\n            \"veteranNumber\": \"NX901668\"\n          }\n        },\n        \"service\": [\n          {\n            \"id\": \"0001\",\n            \"itemNumber\": \"30\",\n            \"chargeAmount\": \"12000\"\n          }\n        ]\n      }\n    ]\n  }\n}")
  .asString();
```

```php Home Visit
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('POST', 'https://api.rebateright.com.au/Medicare/dvaclaim/general/v1', [
  'body' => '{
  "claim": {
    "serviceTypeCode": "O",
    "serviceProvider": {
      "providerNumber": "2447781L"
    },
    "medicalEvent": [
      {
        "id": "01",
        "authorisationDate": "2026-04-09",
        "createDateTime": "2026-04-09T11:00:00+10:00",
        "medicalEventDate": "2026-04-09",
        "submissionAuthorityInd": "Y",
        "treatmentLocationCode": "V",
        "acceptedDisability": {
          "ind": "Y",
          "code": "HYPERTENSION"
        },
        "patient": {
          "identity": {
            "dateOfBirth": "1964-04-21",
            "familyName": "VICKI",
            "givenName": "BRUCE",
            "sex": "1"
          },
          "veteranMembership": {
            "veteranNumber": "NX901668"
          }
        },
        "service": [
          {
            "id": "0001",
            "itemNumber": "30",
            "chargeAmount": "12000"
          }
        ]
      }
    ]
  }
}',
  'headers' => [
    'Content-Type' => 'application/json',
    'x-api-key' => '<apiKey>',
  ],
]);

echo $response->getBody();
```

```csharp Home Visit
using RestSharp;

var client = new RestClient("https://api.rebateright.com.au/Medicare/dvaclaim/general/v1");
var request = new RestRequest(Method.POST);
request.AddHeader("x-api-key", "<apiKey>");
request.AddHeader("Content-Type", "application/json");
request.AddParameter("application/json", "{\n  \"claim\": {\n    \"serviceTypeCode\": \"O\",\n    \"serviceProvider\": {\n      \"providerNumber\": \"2447781L\"\n    },\n    \"medicalEvent\": [\n      {\n        \"id\": \"01\",\n        \"authorisationDate\": \"2026-04-09\",\n        \"createDateTime\": \"2026-04-09T11:00:00+10:00\",\n        \"medicalEventDate\": \"2026-04-09\",\n        \"submissionAuthorityInd\": \"Y\",\n        \"treatmentLocationCode\": \"V\",\n        \"acceptedDisability\": {\n          \"ind\": \"Y\",\n          \"code\": \"HYPERTENSION\"\n        },\n        \"patient\": {\n          \"identity\": {\n            \"dateOfBirth\": \"1964-04-21\",\n            \"familyName\": \"VICKI\",\n            \"givenName\": \"BRUCE\",\n            \"sex\": \"1\"\n          },\n          \"veteranMembership\": {\n            \"veteranNumber\": \"NX901668\"\n          }\n        },\n        \"service\": [\n          {\n            \"id\": \"0001\",\n            \"itemNumber\": \"30\",\n            \"chargeAmount\": \"12000\"\n          }\n        ]\n      }\n    ]\n  }\n}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
```

```swift Home Visit
import Foundation

let headers = [
  "x-api-key": "<apiKey>",
  "Content-Type": "application/json"
]
let parameters = ["claim": [
    "serviceTypeCode": "O",
    "serviceProvider": ["providerNumber": "2447781L"],
    "medicalEvent": [
      [
        "id": "01",
        "authorisationDate": "2026-04-09",
        "createDateTime": "2026-04-09T11:00:00+10:00",
        "medicalEventDate": "2026-04-09",
        "submissionAuthorityInd": "Y",
        "treatmentLocationCode": "V",
        "acceptedDisability": [
          "ind": "Y",
          "code": "HYPERTENSION"
        ],
        "patient": [
          "identity": [
            "dateOfBirth": "1964-04-21",
            "familyName": "VICKI",
            "givenName": "BRUCE",
            "sex": "1"
          ],
          "veteranMembership": ["veteranNumber": "NX901668"]
        ],
        "service": [
          [
            "id": "0001",
            "itemNumber": "30",
            "chargeAmount": "12000"
          ]
        ]
      ]
    ]
  ]] as [String : Any]

let postData = JSONSerialization.data(withJSONObject: parameters, options: [])

let request = NSMutableURLRequest(url: NSURL(string: "https://api.rebateright.com.au/Medicare/dvaclaim/general/v1")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "POST"
request.allHTTPHeaderFields = headers
request.httpBody = postData as Data

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```