> ## Documentation Index
> Fetch the complete documentation index at: https://holder.docs.fiskil.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Customer Detail

> Obtain detailed information on the authorised customer within the current session.



## OpenAPI

````yaml /openapi/cdr.yml get /v1/common/customer/{customerId}/detail
openapi: 3.0.3
info:
  description: Fiskil Data Holder as a Service (DHaaS) endpoints for the Energy sector
  title: Fiskil Data APIs
  version: 1.5.0
servers:
  - url: https://api.provider.fiskil.com
security:
  - bearerAuth: []
paths:
  /v1/common/customer/{customerId}/detail:
    get:
      tags:
        - Common
      summary: Get Customer Detail
      description: >-
        Obtain detailed information on the authorised customer within the
        current session.
      operationId: getCustomerDetail
      parameters:
        - $ref: '#/components/parameters/customerId'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseCommonCustomerDetailV2'
          description: Details of the customer with the ID given in the URL path
        '404':
          $ref: '#/components/responses/responseErrorCustomerIdNotFound'
components:
  parameters:
    customerId:
      description: >-
        Unique ID of a customer. This ID must not change for the lifecycle of
        the customer
      explode: false
      in: path
      name: customerId
      required: true
      schema:
        type: string
      style: simple
  schemas:
    ResponseCommonCustomerDetailV2:
      example:
        data:
          customerUType: person
          person:
            lastUpdateTime: '2025-02-03T00:00:00.000Z'
            firstName: Peter
            lastName: Sherman
            middleNames:
              - Mary
            prefix: Dr
            occupationCodeVersion: ANZSCO_1220.0_2006_V1.0
            phoneNumbers:
              - isPreferred: true
                purpose: MOBILE
                countryCode: 61
                number: 4123456789
                fullNumber: 614123456789
            emailAddresses:
              - isPreferred: true
                purpose: HOME
                address: psherman@example.com
            physicalAddresses:
              - addressUType: simple
                simple:
                  mailingName: P Sherman
                  addressLine1: 42 Wallaby Way
                  postcode: '2000'
                  city: Sydney
                  state: NSW
                  country: AUS
                purpose: MAIL
      properties:
        data:
          $ref: '#/components/schemas/ResponseCommonCustomerDetailV2_data'
      required:
        - data
      type: object
    ResponseCommonCustomerDetailV2_data:
      properties:
        customerUType:
          description: The type of customer object that is present
          enum:
            - organisation
            - person
          type: string
        person:
          $ref: '#/components/schemas/CommonPersonDetailV2'
        organisation:
          $ref: '#/components/schemas/CommonOrganisationDetailV2'
      required:
        - customerUType
      type: object
      x-conditional:
        - person
        - organisation
    GenericError:
      example:
        error: An error message
      type: object
      properties:
        error:
          type: string
          description: A message describing what caused the error
      required:
        - error
    CommonPersonDetailV2:
      allOf:
        - $ref: '#/components/schemas/CommonPerson'
        - $ref: '#/components/schemas/CommonPersonDetailV2_allOf'
    CommonOrganisationDetailV2:
      allOf:
        - $ref: '#/components/schemas/CommonOrganisation'
        - $ref: '#/components/schemas/CommonOrganisationDetailV2_allOf'
    CommonPerson:
      example:
        lastUpdateTime: '2025-02-03T00:00:00.000Z'
        firstName: Peter
        lastName: Sherman
        middleNames:
          - Mary
        prefix: Dr
        occupationCodeVersion: ANZSCO_1220.0_2006_V1.0
        phoneNumbers:
          - isPreferred: true
            purpose: MOBILE
            countryCode: 61
            number: 4123456789
            fullNumber: 614123456789
        emailAddresses:
          - isPreferred: true
            purpose: HOME
            address: psherman@example.com
        physicalAddresses:
          - addressUType: simple
            simple:
              mailingName: P Sherman
              addressLine1: 42 Wallaby Way
              postcode: '2000'
              city: Sydney
              state: NSW
              country: AUS
            purpose: MAIL
      properties:
        lastUpdateTime:
          description: >-
            The date and time that this record was last updated by the
            customer.  If no update has occurred then this date should reflect
            the initial creation date for the data
          type: string
          x-cds-type: DateTimeString
        firstName:
          description: >-
            For people with single names this field need not be present. The
            single name should be in the lastName field. Where a data holder
            cannot determine first and middle names from a collection of given
            names, a single string representing all given names MAY be provided.
          type: string
        lastName:
          description: For people with single names the single name should be in this field
          type: string
        middleNames:
          description: Field is mandatory but array may be empty
          items:
            type: string
          type: array
        prefix:
          description: >-
            Also known as title or salutation.  The prefix to the name (e.g. Mr,
            Mrs, Ms, Miss, Sir, etc)
          type: string
        suffix:
          description: Used for a trailing suffix to the name (e.g. Jr)
          type: string
        occupationCode:
          description: >-
            Value is a valid **[[ANZSCO]](#iref-ANZSCO)** Standard Occupation
            classification code. If the occupation code held by the data holder
            is not one of the supported **[[ANZSCO]](#iref-ANZSCO)** versions,
            then it must not be supplied.
          type: string
          x-cds-type: ExternalRef
        occupationCodeVersion:
          default: ANZSCO_1220.0_2013_V1.2
          description: >-
            The applicable **[[ANZSCO]](#iref-ANZSCO)** release version of the
            occupation code provided. Mandatory if an ``occupationCode`` is
            supplied. If ``occupationCode`` is supplied but
            ``occupationCodeVersion`` is absent, default is
            ``ANZSCO_1220.0_2013_V1.2``
          enum:
            - ANZSCO_1220.0_2006_V1.0
            - ANZSCO_1220.0_2006_V1.1
            - ANZSCO_1220.0_2013_V1.2
            - ANZSCO_1220.0_2013_V1.3
          type: string
      required:
        - lastName
        - middleNames
      type: object
      x-conditional:
        - occupationCodeVersion
    CommonPersonDetailV2_allOf:
      properties:
        phoneNumbers:
          description: Array is mandatory but may be empty if no phone numbers are held
          items:
            $ref: '#/components/schemas/CommonPhoneNumber'
          type: array
        emailAddresses:
          description: May be empty
          items:
            $ref: '#/components/schemas/CommonEmailAddress'
          type: array
        physicalAddresses:
          description: >-
            Array is mandatory but may be empty if no valid addresses are held.
            One and only one address may have the purpose of REGISTERED. Zero or
            one, and no more than one, record may have the purpose of MAIL. If
            zero then the REGISTERED address is to be used for mail
          items:
            $ref: '#/components/schemas/CommonPhysicalAddressWithPurpose'
          type: array
      required:
        - emailAddresses
        - phoneNumbers
        - physicalAddresses
      type: object
    CommonOrganisation:
      example:
        agentRole: Administrator
        agentFirstName: Clark
        agentLastName: Smith
        industryCodeVersion: ANZSIC_1292.0_2006_V2.0
        establishmentDate: '2025-01-03T23:00:00.000Z'
        businessName: ACME Corp.
        registeredCountry: AUS
        abn: '12345678'
        acn: '112345678'
        organisationType: COMPANY
        legalName: Acme Corporation
        isACNCRegistered: true
        lastUpdateTime: '2025-01-03T23:00:00.000Z'
      properties:
        lastUpdateTime:
          description: >-
            The date and time that this record was last updated by the customer.
            If no update has occurred then this date should reflect the initial
            creation date for the data
          type: string
          x-cds-type: DateTimeString
        agentFirstName:
          description: >-
            The first name of the individual providing access on behalf of the
            organisation. For people with single names this field need not be
            present.  The single name should be in the lastName field
          type: string
        agentLastName:
          description: >-
            The last name of the individual providing access on behalf of the
            organisation. For people with single names the single name should be
            in this field
          type: string
        agentRole:
          description: >-
            The role of the individual identified as the agent who is providing
            authorisation.  Expected to be used for display. Default to
            Unspecified if the role is not known
          type: string
        businessName:
          description: Name of the organisation
          type: string
        legalName:
          description: Legal name, if different to the business name
          type: string
        shortName:
          description: Short name used for communication, if different to the business name
          type: string
        abn:
          description: Australian Business Number for the organisation
          type: string
        acn:
          description: >-
            Australian Company Number for the organisation. Required only if an
            ACN is applicable for the organisation type
          type: string
        isACNCRegistered:
          description: >-
            True if registered with the ACNC.  False if not. Absent or null if
            not confirmed.
          type: boolean
          x-cds-type: Boolean
        industryCode:
          description: >-
            A valid [ANZSIC](http://www.abs.gov.au/ANZSIC) code for the
            organisation. If the industry code held by the data holder is not
            one of the supported [ANZSIC](http://www.abs.gov.au/ANZSIC)
            versions, then it must not be supplied.
          type: string
          x-cds-type: ExternalRef
        industryCodeVersion:
          default: ANZSIC_1292.0_2006_V2.0
          description: >-
            The applicable [ANZSIC](http://www.abs.gov.au/ANZSIC) release
            version of the industry code provided. Should only be supplied if
            ``industryCode`` is also supplied. If ``industryCode`` is supplied
            but ``industryCodeVersion`` is absent, default is
            ``ANZSIC_1292.0_2006_V2.0``
          enum:
            - ANZSIC_1292.0_2006_V1.0
            - ANZSIC_1292.0_2006_V2.0
          type: string
        organisationType:
          description: Legal organisation type
          enum:
            - COMPANY
            - GOVERNMENT_ENTITY
            - OTHER
            - PARTNERSHIP
            - SOLE_TRADER
            - TRUST
          type: string
        registeredCountry:
          description: >-
            Enumeration with values from [ISO 3166
            Alpha-3](https://www.iso.org/iso-3166-country-codes.html) country
            codes.  Assumed to be AUS if absent
          type: string
          x-cds-type: ExternalRef
        establishmentDate:
          description: The date the organisation described was established
          type: string
          x-cds-type: DateString
      required:
        - agentLastName
        - agentRole
        - businessName
        - organisationType
      type: object
      x-conditional:
        - industryCodeVersion
    CommonOrganisationDetailV2_allOf:
      properties:
        physicalAddresses:
          description: >-
            Array is mandatory but may be empty if no valid addresses are held.
            One and only one address may have the purpose of REGISTERED. Zero or
            one, and no more than one, record may have the purpose of MAIL. If
            zero then the REGISTERED address is to be used for mail
          items:
            $ref: '#/components/schemas/CommonPhysicalAddressWithPurpose'
          type: array
      required:
        - physicalAddresses
      type: object
    CommonPhoneNumber:
      properties:
        isPreferred:
          description: >-
            May be true for one and only one entry to indicate the preferred
            phone number. Assumed to be 'false' if not present
          type: boolean
          x-cds-type: Boolean
        purpose:
          description: The purpose of the number as specified by the customer
          enum:
            - HOME
            - INTERNATIONAL
            - MOBILE
            - OTHER
            - UNSPECIFIED
            - WORK
          type: string
        countryCode:
          description: If absent, assumed to be Australia (+61). The + should be included
          type: string
        areaCode:
          description: >-
            Required for non Mobile Phones, if field is present and refers to
            Australian code - the leading 0 should be omitted.
          type: string
        number:
          description: The actual phone number, with leading zeros as appropriate
          type: string
        extension:
          description: An extension number (if applicable)
          type: string
        fullNumber:
          description: >-
            Fully formatted phone number with country code, area code, number
            and extension incorporated. Formatted according to section 5.1.4. of
            **[[RFC3966]](#iref-RFC3966)**
          type: string
          x-cds-type: ExternalRef
      required:
        - fullNumber
        - number
        - purpose
      type: object
      x-conditional:
        - areaCode
    CommonEmailAddress:
      properties:
        isPreferred:
          description: >-
            May be true for one and only one email record in the collection.
            Denotes the default email address
          type: boolean
          x-cds-type: Boolean
        purpose:
          description: >-
            The purpose for the email, as specified by the customer
            (Enumeration)
          enum:
            - HOME
            - OTHER
            - UNSPECIFIED
            - WORK
          type: string
        address:
          description: >-
            A correctly formatted email address, as defined by the addr-spec
            format in **[[RFC5322]](#nref-RFC5322)**
          type: string
          x-cds-type: ExternalRef
      required:
        - address
        - purpose
      type: object
    CommonPhysicalAddressWithPurpose:
      allOf:
        - $ref: '#/components/schemas/CommonPhysicalAddress'
        - $ref: '#/components/schemas/CommonPhysicalAddressWithPurpose_allOf'
    CommonPhysicalAddress:
      properties:
        addressUType:
          description: The type of address object present
          enum:
            - paf
            - simple
          type: string
        simple:
          $ref: '#/components/schemas/CommonSimpleAddress'
        paf:
          $ref: '#/components/schemas/CommonPAFAddress'
      required:
        - addressUType
      type: object
      x-conditional:
        - simple
        - paf
    CommonPhysicalAddressWithPurpose_allOf:
      properties:
        purpose:
          description: Enumeration of values indicating the purpose of the physical address
          enum:
            - MAIL
            - OTHER
            - PHYSICAL
            - REGISTERED
            - WORK
          type: string
      required:
        - purpose
      type: object
    CommonSimpleAddress:
      properties:
        mailingName:
          description: >-
            Name of the individual or business formatted for inclusion in an
            address used for physical mail
          type: string
        addressLine1:
          description: First line of the standard address object
          type: string
        addressLine2:
          description: Second line of the standard address object
          type: string
        addressLine3:
          description: Third line of the standard address object
          type: string
        postcode:
          description: Mandatory for Australian addresses
          type: string
        city:
          description: Name of the city or locality
          type: string
        state:
          description: >-
            Free text if the country is not Australia. If country is Australia
            then must be one of the values defined by the [State Type
            Abbreviation](https://auspost.com.au/content/dam/auspost_corp/media/documents/australia-post-data-guide.pdf)
            in the PAF file format. NSW, QLD, VIC, NT, WA, SA, TAS, ACT, AAT
          type: string
        country:
          default: AUS
          description: >-
            A valid [ISO 3166
            Alpha-3](https://www.iso.org/iso-3166-country-codes.html) country
            code. Australia (AUS) is assumed if country is not present.
          type: string
          x-cds-type: ExternalRef
      required:
        - addressLine1
        - city
        - state
      type: object
      x-conditional:
        - postcode
    CommonPAFAddress:
      description: >-
        Australian address formatted according to the file format defined by the
        [PAF file
        format](https://auspost.com.au/content/dam/auspost_corp/media/documents/australia-post-data-guide.pdf)
      properties:
        dpid:
          description: >-
            Unique identifier for an address as defined by Australia Post.  Also
            known as Delivery Point Identifier
          type: string
        thoroughfareNumber1:
          description: >-
            Thoroughfare number for a property (first number in a property
            ranged address)
          type: integer
          x-cds-type: PositiveInteger
        thoroughfareNumber1Suffix:
          description: >-
            Suffix for the thoroughfare number. Only relevant is
            thoroughfareNumber1 is populated
          type: string
        thoroughfareNumber2:
          description: >-
            Second thoroughfare number (only used if the property has a ranged
            address eg 23-25)
          type: integer
          x-cds-type: PositiveInteger
        thoroughfareNumber2Suffix:
          description: >-
            Suffix for the second thoroughfare number. Only relevant is
            thoroughfareNumber2 is populated
          type: string
        flatUnitType:
          description: Type of flat or unit for the address
          type: string
        flatUnitNumber:
          description: Unit number (including suffix, if applicable)
          type: string
        floorLevelType:
          description: Type of floor or level for the address
          type: string
        floorLevelNumber:
          description: Floor or level number (including alpha characters)
          type: string
        lotNumber:
          description: Allotment number for the address
          type: string
        buildingName1:
          description: Building/Property name 1
          type: string
        buildingName2:
          description: Building/Property name 2
          type: string
        streetName:
          description: The name of the street
          type: string
        streetType:
          description: >-
            The street type. Valid enumeration defined by Australia Post PAF
            code file
          type: string
        streetSuffix:
          description: >-
            The street type suffix. Valid enumeration defined by Australia Post
            PAF code file
          type: string
        postalDeliveryType:
          description: >-
            Postal delivery type. (eg. PO BOX). Valid enumeration defined by
            Australia Post PAF code file
          type: string
        postalDeliveryNumber:
          description: Postal delivery number if the address is a postal delivery type
          type: integer
          x-cds-type: PositiveInteger
        postalDeliveryNumberPrefix:
          description: Postal delivery number prefix related to the postal delivery number
          type: string
        postalDeliveryNumberSuffix:
          description: Postal delivery number suffix related to the postal delivery number
          type: string
        localityName:
          description: Full name of locality
          type: string
        postcode:
          description: Postcode for the locality
          type: string
        state:
          description: >-
            State in which the address belongs. Valid enumeration defined by
            Australia Post PAF code file [State Type
            Abbreviation](https://auspost.com.au/content/dam/auspost_corp/media/documents/australia-post-data-guide.pdf).
            NSW, QLD, VIC, NT, WA, SA, TAS, ACT, AAT
          type: string
      required:
        - localityName
        - postcode
        - state
      type: object
  responses:
    responseErrorCustomerIdNotFound:
      description: The customer ID in the URL path is invalid or not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/GenericError'
            example:
              error: Customer not found
  securitySchemes:
    bearerAuth:
      description: >
        The Fiskil Data Provider will include a self-signed JWT as a Bearer
        token in the `Authorization` header.

        You should verify this JWT using the JWKS URL you can find for your Data
        Provider instance in the Fiskil

        Console. To verify the JWT you **must**:
          * Verify the signature
          * Ensure the token has not expired by checking the `exp` claim
          * The `sub` and `iss` claims are your data provider subdomain
          * The `aud` claim is the URI of the resource being requested (excluding any query parameters)
          * The `jti` value is unique
        For further detail on security and authentication refer to our
        [Authentication](/docs/get-started/authentication) documentation
      type: http
      scheme: bearer
      bearerFormat: JWT

````