State Development Application Management API.
State DA - Agency to ePlanning API (v1)
https://api.apps1.nsw.gov.au/planning/OnlineStateDA/v1/
This is to track the agency's acceptance or rejection of an application. 1.Application was lodged 2.Application was returned
This is to track the date the application was returned to the applicant. Mandatory if lodgementOutcome is'Application was returned'.
This is to track the reason the agency returned the application. Mandatory if lodgementOutcome is 'Application was returned'.
- https://api.apps1.nsw.gov.au/planning/OnlineStateDA/v1/AcceptReturn/{CaseID} 
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X PUT \
  'https://api.apps1.nsw.gov.au/planning/OnlineStateDA/v1/AcceptReturn/{CaseID}' \
  -H 'Content-Type: application/json' \
  -H 'IdempotencyID: string' \
  -H 'OrganisationID: string' \
  -d '{
    "lodgementOutcome": "Refer to description for values.",
    "returnDate": "2019-08-24",
    "returnReason": "string",
    "Documents": [
      {
        "documentName": "test.docx",
        "documentType": "string",
        "uploadedDateTime": "2019-08-24T14:15:22Z",
        "documentURL": "http://example.com"
      }
    ],
    "updatedByEmail": "john.smith@gmail.com"
  }'This is to track the estimated cost of the proposed development. This will be applicable to track the UI Field 'What was the Estimated cost of the proposed development' for development application and the UI field 'What was the estimated cost of the DA the modification application'.
This is to track the estimated cost of staged DA component(if any). Applicable when application type is selected as'Development Application'.
This is to track if the application is a designated development. Applicable when application type is selected as 'Development Application'.
This is to track if the application proposes subdivision. Applicable when application type is selected as 'Development Application'.
This is to track the number of new non-strata lots proposed. Applicable when isSubdivisionSelected is 'true' and application type is 'Development Application'.
This is to track number of new strata lots proposed. Applicable when isSubdivisionSelected is 'true' and application type is 'Development Application'.
This is to track if the application involves the opening of a new road. Applicable when application type is selected as'Development Application'.
This is to track if the applicant opts for an advertisement (e.g. signage). Applicable when application type is selected as 'Development Application'.
This is to track the number of additional advertisements proposed. Applicable when IsDAAdvertisement is 'true' and application type is 'Development Application'.
This is to track the confirmation that development does not involve erection of any building, carrying out of a work, subdivision of land or demolition of a building or work. Applicable when application type is selected as 'Development Application'.
This is to track if the application is to be exhibited. Applicable when application type is selected as 'Development Application'.
This is to track the number of integrated approval agencies to advice on the state DA. Applicable when application type is selected as 'Development Application'.
This is to track the number of concurrence authorities referred for advice. Applicable when application type is selected as 'Development Application'.
This is to track the fee for the original state DA application. Applicable when application type is selected as 'Modification Application'.
This is to track the relation with the original DA. Applicable when applicationType is selected as 'Modification Application' and 'modification application type' selected as 'Section 4.55(2) of the Act' or 'Section 4.56 of the Act' with the 'originalDAFee' amounting greater than or equal to $100 1. the original development application does not involve the erection of a building, the carrying out of a work or the demolition of a work or building 2. the original development application involves the erection of a dwellinghouse with an estimated cost of construction of $100,000 or less 3. the original development application involves the erection of a building (including a dwellinghouse with an estimated cost of construction of $100,001 or more), the carrying out of a work or the demolition of a work or building
This is to track if the application to be referred to a SEPP65 design review panel. This will be applicable to track the UI Field name 'The S4.55 modification is to be referred to a SEPP65 design review panel' of the modification application and the UI field'The DA is to be referred to a SEPP65 design review panel application' of the development application.
This is to track if S4.55 modification is to be exhibited for the application. Applicable when application type is selected as'Modification Application'.
- https://api.apps1.nsw.gov.au/planning/OnlineStateDA/v1/FeeCalculation/{CaseID} 
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X PUT \
  'https://api.apps1.nsw.gov.au/planning/OnlineStateDA/v1/FeeCalculation/{CaseID}' \
  -H 'Content-Type: application/json' \
  -H 'IdempotencyID: string' \
  -H 'OrganisationID: string' \
  -d '{
    "investmentValue": 250.1,
    "estimatedCostOfStagedDA": 1250.9,
    "isDADesignatedDevelopment": true,
    "isSubdivisionSelected": true,
    "nonStrataLots": 0,
    "strataLots": 0,
    "isNewRoadProposed": true,
    "isDAAdvertisement": true,
    "numberOfAddnlAdvertisements": 0,
    "isOtherDevelopment": true,
    "isDAExhibited": true,
    "numberOfIntegratedAgencies": 0,
    "numberOfConcurrenceAuthorities": 0,
    "originalDAFee": 0,
    "relationWithOriginalDA": "Refer to description for values.",
    "isSEPP65Review": true,
    "isS455Exhibited": true,
    "updatedByEmail": "john.smith@gmail.com"
  }'This is to track the lodgement date. This gives the ability to mark a modification State DA as lodged on the day the application was submitted if no fee is payable under Part 13, so that the applicant is notified about correct lodgement date and process.
This is to track the total amount paid. Mandatory when isFeesPaid is 'true'.
This is to track the invoice number. Applicable when isFeesPaid is 'true'.
This is to track the internal application ID generated in the agency's IT system.
This is to track the date application was accepted in the agency's IT system. This field will be read only if paymentDate contains any valid value.
- https://api.apps1.nsw.gov.au/planning/OnlineStateDA/v1/FeePaidandLodged/{CaseID} 
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X PUT \
  'https://api.apps1.nsw.gov.au/planning/OnlineStateDA/v1/FeePaidandLodged/{CaseID}' \
  -H 'Content-Type: application/json' \
  -H 'IdempotencyID: string' \
  -H 'OrganisationID: string' \
  -d '{
    "isFeesPaid": true,
    "isFeePayableunderPart13": true,
    "totalFeesPaid": 1250.9,
    "invoiceNumber": "string",
    "paymentDate": "2019-08-24",
    "consentAuthorityID": "string",
    "acceptDate": "2019-08-24",
    "Documents": [
      {
        "documentName": "test.docx",
        "documentType": "string",
        "uploadedDateTime": "2019-08-24T14:15:22Z",
        "documentURL": "http://example.com"
      }
    ],
    "updatedByEmail": "john.smith@gmail.com"
  }'This is to track the anticipated determining or consent authority for this case. 1. Minister for Planning and Public Spaces / Independent Planning Commission 2.Independent Planning Commission 3.Lord Howe Island Board 4.Sydney Olympic Park Authority 5.Minister for Transport and Roads/Minister for Regional Transport and Roads
This is to track if application required concurrence or agency referral(s) for the state DA case. If yes, CNR case will be created upon submission of state DA case. If "isConcurrenceReq" is Yes, system will create a CNR which can be accessed using the 'Related Cases' tab.
This is to track if the application case will be notified or exhibited. If the agency selects isApplicationExhibited as Yes, new exhibition case will be created.
This is to track the State DA exhibition's end date. Only required if State DA has been exhibited.
This is to track if the application needs to be exhibited on the NSW planning portal. Conditional mandatory for the question "Would you like to exhibit this application on the NSW Planning Portal" when isApplicationExhibited is true.
This is to track if the site is subject to special infrastructure contributions (SIC).
This is to track if the applicant proposes to enter into a planning agreement.
This is to track if proposal for planning agreement from applicant is accepted. conditonal mandatory when isApplicantProposing is true
This is to track if the development is located within an urban release area and it triggers the need for a Voluntary Planning Agreement (VPA).
This is to track which nominated urban release area the state DA belongs to if the site is located in an urban area. Mandatory when isVPAReq is Yes. Following are examples for the nominated urban release areas that comes under BLACKTOWN LGA and other urban release areas may vary in accordance with LGA. 1.Bungarribee 2.Colebee 3.Former Ashlar Golf Course 4.The Ponds & Kellyville Ridge
This is to track if the application triggered the need for consideration of satisfactory arrangements for public infrastructure. Mandatory when isVPAReq is Yes.
This is to track if application requires council referral(s) for the application. If yes, referral case(s) will be created upon submission of state DA case. If "isConsultationRequired" is Yes, system will create a referral(s) which can be assessed using the 'Related Cases' tab.
This is to track the list of councils to be consulted for the application. Applicable only when isConsultationRequired is true.
This is to track if the application is a designated development.
This is to track if the applicant asked for their contact information to be restricted or withheld.
This is to track if the consent authority engages private consultants to assess the development. application.
This is the track the reason why the consent authority has to engaged private consultants for assessment if consent authority had engaged private consultants. Conditional mandatory when "isAssesedByPvtConsultant" is true.
This is to track the type of consutant if consent authority engaged private consultants for assessment. Applicable only when isAssesedByPvtConsultant is true.
- https://api.apps1.nsw.gov.au/planning/OnlineStateDA/v1/PreliminaryAssessment/{CaseID} 
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X PUT \
  'https://api.apps1.nsw.gov.au/planning/OnlineStateDA/v1/PreliminaryAssessment/{CaseID}' \
  -H 'Content-Type: application/json' \
  -H 'IdempotencyID: string' \
  -H 'OrganisationID: string' \
  -d '{
    "determiningAuthority": "Refer to description for values.",
    "isConcurrenceReq": true,
    "isApplicationExhibited": true,
    "exhibitStartDate": "2019-08-24",
    "exhibitEndDate": "2019-08-24",
    "doesPublicExhibitionRequired": true,
    "isSICReq": true,
    "isApplicantProposing": true,
    "letterOfOffer": true,
    "isVPAReq": true,
    "nominatedUrbanReleaseArea": "Refer to description for values.",
    "isPublicInfrastructure": true,
    "isConsultationRequired": true,
    "councilsToConsult": [
      {
        "LGAName": "string",
        "dueDate": "2019-08-24",
        "ReasonForRefferal": "string"
      }
    ],
    "isDesignatedDevelopment": true,
    "restrictApplicantContact": true,
    "isAssesedByPvtConsultant": true,
    "reasonForEngagingPvtConsultant": "Resourcing",
    "typeOfCounsultant": [
      "Refer to description for values."
    ],
    "updatedByEmail": "john.smith@gmail.com"
  }'This is to track if the applicant has paid the DA fees before final assessment and not beore lodgement. Mandatory and applicable if fees not paid during lodgement.
This is to track total fee paid by the applicant during final assessment. Applicable only if fees have been paid during assessment.
This is to track invoice number if fee was paid during final assessment. Applicable when isFeesPaidDuringAssessment is 'true'
This is to track fee payment date if fee was paid during final assessment. Applicable if isFeesPaidDuringAssessment is 'true'.
This is to track the inspection completed date on the application.
This is to track the declaration by applicant on declaration regarding payment."I confirm that a condition has been imposed requiring the payment of relevant development contributions in accordance with any relevant local or state contributions plan or Voluntary Planning Agreement."
This is to track the declaration by applicant regarding SIC. "I confirm that the SIC condition has been included in the proposed conditions.". Mandatory when isSICReq is Yes.
This is to track the declaration by applicant redarding SAC. "I confirm that a SAC has been issued in relation to this development.". Mandatory when isVPAReq is Yes.
- https://api.apps1.nsw.gov.au/planning/OnlineStateDA/v1/FinalAssessment/{CaseID} 
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X PUT \
  'https://api.apps1.nsw.gov.au/planning/OnlineStateDA/v1/FinalAssessment/{CaseID}' \
  -H 'Content-Type: application/json' \
  -H 'IdempotencyID: string' \
  -H 'OrganisationID: string' \
  -d '{
    "isFeesPaidDuringAssessment": true,
    "totalFeesPaid": 1250.9,
    "invoiceNumber": "string",
    "paymentDate": "2019-08-24",
    "inspectionDate": "2019-08-24",
    "ExhibitionDetails": [
      {
        "exhCaseID": "string",
        "numberOfSubmissions": 0,
        "numberOfObjections": 0
      }
    ],
    "isPaymentDeclared": true,
    "isSICDeclared": true,
    "isSACDeclared": true,
    "Documents": [
      {
        "documentName": "test.docx",
        "documentType": "string",
        "uploadedDateTime": "2019-08-24T14:15:22Z",
        "documentURL": "http://example.com"
      }
    ],
    "updatedByEmail": "john.smith@gmail.com"
  }'This is to track the determination outcome provided by agency on the application final assessment. 1. Approved 2. Refused 3. Deferred commencement consent
This is to track if the written evidence of the consent of the owner(s) has been provided or not. This is applicable when 'developmentSiteOwner' is other than 'I am the sole owner of the development site' and 'I am located in an Alpine Resort'. Example values are as below. 1. Yes 2. No 3. Owners consent not required. Please refer to the reference data API for the latest values.
This is to track deferred commencement details if agency had deferred commencement during determination. Mandatory only when DeterminationOutcome is Deferred.
This is to track the development description entered by the applicant/consent authority. This will be published on the NSW Planning Portal to meet the requirements of Section 97 of the Environmental Planning and Assessment Regulation 2021. Consent authority needs to provide the development description. When the consent authority does not provide the description, description provided by the applicant will be updated in the Planning portal. No validations around providing value for this field, will be given as long as the applicant’s entered development description is available.
This is to track the period within which the applicant must produce sufficient evidence to the consent authority to enable it to be satisfied about the relevant matters in a accordance with Section 76(3) of the Environmental Planning and Assessment Regulation 2021.
This is to track the consent authority that has made the determination for the application. Land and environment court is applicable only when case is in Proceed to determination stage. 1. Minister for Planning and Public Spaces 2. Independent Planning Commission 3. Lord Howe Island Board 4. Sydney Olympic Park Authority 5. Minister for Transport and Roads/Minister for Regional Transport and Roads
This is to track if variation to development standards was approved.
This is to track the date on which this application is determined by the agency.
This is to track if any dwellings have been approved for affordable rental housing under this consent.
This is to track the number of dwellings approved for affordable rental housing if dwellings were approved for affordable rental housing. Mandatory when haveDwellingsApproved is Yes.
This is to track if the requirements for the Sustainable Buildings SEPP were met. This is applicable for the cases that are created after 1stOctober2023. Values for this attribute are "Yes","No","NA".
This is to track the room types as part of development statistics. Applicable when determinationOutcome is 'Approved' or 'Deferred commencement consent' and development type is "Boarding house" OR "Co-living" OR "Hostel" OR "Medium Density Housing" OR "Attached dwelling" OR "Dual occupancy" OR "Manor house" OR "Multi-dwelling housing" OR "Multi-dwelling housing (terraces)" OR "Semi-detached dwelling". Please refer to reference data API for the latest conditions.
Applicable when determinationOutcome is 'Approved' or 'Deferred commencement consent'.
Applicable when determinationOutcome is 'Approved' or 'Deferred commencement consent'.
This is to track the number of one bedroom dwellings in the proposed state DA development. This attribute will become obsolete in the upcoming versions, as it's replaced by the object and their attributes. 'numOfBedrooms'
This is to track the number of two bedroom dwellings in the proposed state DA development. This attribute will become obsolete in the upcoming versions, as it's replaced by the object and their attributes.
This is to track the number of three bedroom dwellings in the proposed state DA development. This attribute will become obsolete in the upcoming versions, as it's replaced by the object and their attributes.
This is to track the number of 4 or more bedroom dwellings in the proposed state DA development. This attribute will become obsolete in the upcoming versions, as it's replaced by the object and their attributes.
This is to track the approved gross floor area (m2) of the development (if relevant).This attribute will be replaced by the categoryofDevelopment object and will become obsolete in the upcoming versions.
This is to track if a pre DA meeting was held with agency before lodgement of the state DA application.
This is to track the number of trees impacted if tree works are involved. Visible only when IsTreeWorksReq is slected as true
This is to track the land area impacts if tree works are involved. Visible only when IsTreeWorksReq is slected as true
This is to track the impacted land units if tree works are involved. Visible only when IsTreeWorksReq is slected as true 1. Square metres 2. Hectares
This is to track the area of canopy impacted if tree works are involved. Visible only when IsTreeWorksReq is slected as true
This is to track number of units of area of canopy imapcted if tree works are involved. Visible only when IsTreeWorksReq is slected as true 1.Square metres 2.Hectares
This is to track the details of the replacement trees/ land/ canopy. 1.No replacement trees 2.Number of trees 3.Area of trees in square metres 4.Area of trees in hectares
This is to track the number of trees that are going to be replaced. This field is visible only when 'treeReplacementDetails' is selected as 'Number of trees' where minimum one is accepated number.
This is to track the predicted area of canopy which is greater than zero by maturity time.
- https://api.apps1.nsw.gov.au/planning/OnlineStateDA/v1/Determine/{CaseID} 
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X PUT \
  'https://api.apps1.nsw.gov.au/planning/OnlineStateDA/v1/Determine/{CaseID}' \
  -H 'Content-Type: application/json' \
  -H 'IdempotencyID: string' \
  -H 'OrganisationID: string' \
  -d '{
    "determinationOutcome": "Refer to description for values.",
    "ownersConsentProvided": "string",
    "deferredCommencConsentDts": "string",
    "developmentDescription": "string",
    "dueDateForEvidenceAboutRelevantMatters": "2019-08-24",
    "determinationAuthority": "Refer to description for values.",
    "isDevStandardVariationApproved": true,
    "developmentVariationDetails": [
      {
        "developmentStandardVaried": "Refer to description for values.",
        "clauseNumber": "string",
        "devStandardNumberVaried": "string",
        "devNumberAgainstStandard": "string",
        "devStdPercentagePropVariation": 0,
        "approvedVarValue": 0,
        "briefVariationJustification": "string",
        "approvedVariationAuthority": "Refer to description for values."
      }
    ],
    "determinationDate": "2019-08-24",
    "haveDwellingsApproved": true,
    "numOfApprovedDwellings": 0,
    "sustainableBuildingsRequirementsMet": "string",
    "proposedDevComponentList": [
      {
        "proposedDevComponent": "Refer to description for values."
      }
    ],
    "roomType": [
      {
        "roomType": "Refer to description for values.",
        "selfContainedPrivateRooms": 0,
        "nonSelfContainedPrivateRooms": 0
      }
    ],
    "numOfBedrooms": [
      {
        "noOfBedrooms": "Refer to description for values.",
        "noOfDwellingsDemolished": 0,
        "noOfDwellingsErected": 0,
        "noOfAffordableHousesErected": 0
      }
    ],
    "categoryOfDevelopment": [
      {
        "categoryOfDevelopment": "Refer to description for values.",
        "areaDemolished": 0,
        "proposedArea": 0
      }
    ],
    "numOneBedroomDwellings": 0,
    "numTwoBedroomDwellings": 0,
    "numThreeBedroomDwellings": 0,
    "numFourOrMoreBedroomDwellings": 0,
    "lotSize": 0,
    "floorArea": 0,
    "isPreDAMeetingHeld": true,
    "noOfTreesImpacted": 0,
    "landImpacted": 0,
    "impactedLandUnits": "Refer to description for values.",
    "areaOfCanopy": 0,
    "canopyUnits": "Refer to description for values.",
    "treeReplacementDetails": "Refer to description for values.",
    "replacementTreeCount": 0,
    "canopyAreaAtMaturity": 0,
    "ExhibitionDetails": [
      {
        "exhCaseID": "string",
        "numberOfSubmissions": 0,
        "numberOfObjections": 0
      }
    ],
    "Documents": [
      {
        "documentName": "test.docx",
        "documentType": "string",
        "uploadedDateTime": "2019-08-24T14:15:22Z",
        "documentURL": "http://example.com"
      }
    ],
    "updatedByEmail": "john.smith@gmail.com"
  }'This is to capture 'Has satisfactory evidence been provided that the conditions have been addressed'. Applicable when the applicant submits the request operational consent.
This is to track the comments from agency while issuing operational consent. Required when operativeConsentIssued is selected as No.
- https://api.apps1.nsw.gov.au/planning/OnlineStateDA/v1/ReviewRequestConsent/{CaseID} 
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X PUT \
  'https://api.apps1.nsw.gov.au/planning/OnlineStateDA/v1/ReviewRequestConsent/{CaseID}' \
  -H 'Content-Type: application/json' \
  -H 'IdempotencyID: string' \
  -H 'OrganisationID: string' \
  -d '{
    "operativeConsentIssued": true,
    "consentComments": "string",
    "Documents": [
      {
        "documentName": "test.docx",
        "documentType": "string",
        "uploadedDateTime": "2019-08-24T14:15:22Z",
        "documentURL": "http://example.com"
      }
    ],
    "updatedByEmail": "john.smith@gmail.com"
  }'This refers to 'Is this application pending a decision from the Land and Environment Court ?'. If selected, determination will not available yet for agencies.
This is to track the date when applicant filed an appeal with the land and environment court.
- https://api.apps1.nsw.gov.au/planning/OnlineStateDA/v1/PendingLECDecision/{CaseID} 
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X PUT \
  'https://api.apps1.nsw.gov.au/planning/OnlineStateDA/v1/PendingLECDecision/{CaseID}' \
  -H 'Content-Type: application/json' \
  -H 'IdempotencyID: string' \
  -H 'OrganisationID: string' \
  -d '{
    "isSubjectOfLandECourtMatterQuestion": true,
    "referredDateLandECourt": "string",
    "updatedByEmail": "john.smith@gmail.com"
  }'