3GPP TS 29.571 Common Data API

Common Data Types for Service Based Interfaces. An OpenAPI 3.0.0 data-model-only document (no paths; it defines the schemas/Network Resource Model consumed by the Provisioning and Performance management services), API version 1.6.0, published verbatim by 3GPP in 3GPP TS 29.571 as part of the 5G Common Data Types suite and mirrored in the public 3GPP Forge GitLab repository.

OpenAPI Specification

3gpp-ts29571-commondata.yml Raw ↑
openapi: 3.0.0
info:
  version: 1.6.0
  title: Common Data Types
  description: "Common Data Types for Service Based Interfaces.  \n© 2025, 3GPP Organizational Partners\
    \ (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).  \nAll rights reserved.\n"
externalDocs:
  description: 3GPP TS 29.571 Common Data Types for Service Based Interfaces, version 19.5.0
  url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.571/
paths: {}
components:
  schemas:
    Binary:
      format: binary
      type: string
      description: string with format 'binary' as defined in OpenAPI.
    BinaryRm:
      format: binary
      type: string
      nullable: true
      description: '"string with format ''binary'' as defined in OpenAPI OpenAPI with ''nullable: true''
        property."

        '
    Bytes:
      format: byte
      type: string
      description: string with format 'bytes' as defined in OpenAPI
    BytesRm:
      format: byte
      type: string
      nullable: true
      description: 'string with format ''bytes'' as defined in OpenAPI OpenAPI with ''nullable: true''
        property.

        '
    Date:
      format: date
      type: string
      description: string with format 'date' as defined in OpenAPI.
    DateRm:
      format: date
      type: string
      nullable: true
      description: 'string with format ''date'' as defined in OpenAPI OpenAPI with ''nullable: true''
        property.

        '
    DateTime:
      format: date-time
      type: string
      description: string with format 'date-time' as defined in OpenAPI.
    DateTimeRm:
      format: date-time
      type: string
      nullable: true
      description: "string with format 'date-time' as defined in OpenAPI with 'nullable:true' property.\
        \ \n"
    DiameterIdentity:
      $ref: '#/components/schemas/Fqdn'
    DiameterIdentityRm:
      $ref: '#/components/schemas/FqdnRm'
    Double:
      format: double
      type: number
      description: string with format 'double' as defined in OpenAPI
    DoubleRm:
      format: double
      type: number
      nullable: true
      description: 'string with format ''double'' as defined in OpenAPI with ''nullable: true'' property.

        '
    DurationSec:
      type: integer
      description: indicating a time in seconds.
    DurationSecRm:
      type: integer
      nullable: true
      description: 'indicating a time in seconds with OpenAPI defined ''nullable: true'' property.'
    Float:
      format: float
      type: number
      description: string with format 'float' as defined in OpenAPI.
    FloatRm:
      format: float
      type: number
      nullable: true
      description: 'string with format ''float'' as defined in OpenAPI with the OpenAPI defined ''nullable:
        true'' property.

        '
    Int32:
      format: int32
      type: integer
      description: string with format 'int32' as defined in OpenAPI.
    Int32Rm:
      format: int32
      type: integer
      nullable: true
      description: 'string with format ''int32'' as defined in OpenAPI with the OpenAPI defined ''nullable:
        true'' property.

        '
    Int64:
      type: integer
      format: int64
      description: string with format 'int64' as defined in OpenAPI.
    Int64Rm:
      format: int64
      type: integer
      nullable: true
      description: 'string with format ''int64'' as defined in OpenAPI with the OpenAPI defined ''nullable:
        true'' property.

        '
    Ipv4Addr:
      type: string
      pattern: ^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$
      example: 198.51.100.1
      description: 'String identifying a IPv4 address formatted in the ''dotted decimal'' notation as
        defined in RFC 1166.

        '
    Ipv4AddrRm:
      type: string
      pattern: ^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$
      example: 198.51.100.1
      nullable: true
      description: 'String identifying a IPv4 address formatted in the ''dotted decimal'' notation as
        defined in RFC 1166 with the OpenAPI defined ''nullable: true'' property.

        '
    Ipv4AddrMask:
      type: string
      pattern: ^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))$
      example: 198.51.0.0/16
      description: '"String identifying a IPv4 address mask formatted in the ''dotted decimal'' notation
        as defined in RFC 1166."

        '
    Ipv4AddrMaskRm:
      type: string
      pattern: ^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))$
      example: 198.51.0.0/16
      nullable: true
      description: 'String identifying a IPv4 address mask formatted in the ''dotted decimal'' notation
        as defined in RFC 1166 with the OpenAPI defined ''nullable: true'' property.

        '
    Ipv6Addr:
      type: string
      allOf:
      - pattern: ^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))$
      - pattern: ^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))$
      example: 2001:db8:85a3::8a2e:370:7334
      description: 'String identifying an IPv6 address formatted according to clause 4 of RFC5952. The
        mixed IPv4 IPv6 notation according to clause 5 of RFC5952 shall not be used.

        '
    Ipv6AddrRm:
      type: string
      allOf:
      - pattern: ^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))$
      - pattern: ^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))$
      example: 2001:db8:85a3::8a2e:370:7334
      nullable: true
      description: 'String identifying an IPv6 address formatted according to clause 4 of RFC5952 with
        the OpenAPI ''nullable: true'' property. The mixed IPv4 IPv6 notation according to clause 5 of
        RFC5952 shall not be used.

        '
    Ipv6Prefix:
      type: string
      allOf:
      - pattern: ^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))(\/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))$
      - pattern: ^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))(\/.+)$
      example: 2001:db8:abcd:12::0/64
      description: 'String identifying an IPv6 address prefix formatted according to clause 4 of RFC 5952.
        IPv6Prefix data type may contain an individual /128 IPv6 address.

        '
    Ipv6PrefixRm:
      type: string
      allOf:
      - pattern: ^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))(\/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))$
      - pattern: ^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))(\/.+)$
      nullable: true
      description: 'String identifying an IPv6 address prefix formatted according to clause 4 of RFC 5952
        with the OpenAPI ''nullable: true'' property. IPv6Prefix data type may contain an individual /128
        IPv6 address.

        '
    MacAddr48:
      type: string
      pattern: ^([0-9a-fA-F]{2})((-[0-9a-fA-F]{2}){5})$
      description: 'String identifying a MAC address formatted in the hexadecimal notation according to
        clause 1.1 and clause 2.1 of RFC 7042.

        '
    MacAddr48Rm:
      type: string
      pattern: ^([0-9a-fA-F]{2})((-[0-9a-fA-F]{2}){5})$
      nullable: true
      description: '"String identifying a MAC address formatted in the hexadecimal notation according
        to clause 1.1 and clause 2.1 of RFC 7042 with the OpenAPI ''nullable: true'' property."

        '
    SupportedFeatures:
      type: string
      pattern: ^[A-Fa-f0-9]*$
      description: 'A string used to indicate the features supported by an API that is used as defined
        in clause  6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features
        in  hexadecimal representation Each character in the string shall take a value of "0" to "9",  "a"
        to "f" or "A" to "F" and shall represent the support of 4 features as described in  table 5.2.2-3.
        The most significant character representing the highest-numbered features shall  appear first
        in the string, and the character representing features 1 to 4 shall appear last  in the string.
        The list of features and their numbering (starting with 1) are defined  separately for each API.
        If the string contains a lower number of characters than there are  defined features for an API,
        all features that would be represented by characters that are not  present in the string are not
        supported.

        '
    Uinteger:
      type: integer
      minimum: 0
      description: Unsigned Integer, i.e. only value 0 and integers above 0 are permissible.
    UintegerRm:
      type: integer
      minimum: 0
      description: 'Unsigned Integer, i.e. only value 0 and integers above 0 are permissible with the
        OpenAPI ''nullable: true'' property.

        '
      nullable: true
    Uint16:
      type: integer
      minimum: 0
      maximum: 65535
      description: 'Integer where the allowed values correspond to the value range of an unsigned 16-bit
        integer.

        '
    Uint16Rm:
      type: integer
      minimum: 0
      maximum: 65535
      nullable: true
      description: 'Integer where the allowed values correspond to the value range of an unsigned  16-bit
        integer with the OpenAPI ''nullable: true'' property.

        '
    Uint32:
      type: integer
      minimum: 0
      maximum: 4294967295
      description: 'Integer where the allowed values correspond to the value range of an unsigned 32-bit
        integer.

        '
    Uint32Rm:
      format: int32
      type: integer
      minimum: 0
      maximum: 4294967295
      nullable: true
      description: 'Integer where the allowed values correspond to the value range of an unsigned 32-bit
        integer with the OpenAPI ''nullable: true'' property.

        '
    Uint64:
      type: integer
      minimum: 0
      maximum: 18446744073709551615
      description: 'Integer where the allowed values correspond to the value range of an unsigned 64-bit
        integer.

        '
    Uint64Rm:
      type: integer
      minimum: 0
      maximum: 18446744073709551615
      nullable: true
      description: 'Integer where the allowed values correspond to the value range of an unsigned 16-bit
        integer with the OpenAPI ''nullable: true'' property.

        '
    Uri:
      type: string
      description: String providing an URI formatted according to RFC 3986.
    UriRm:
      type: string
      nullable: true
      description: 'String providing an URI formatted according to RFC 3986 with the OpenAPI ''nullable:
        true'' property.

        '
    VarUeId:
      type: string
      pattern: ^(imsi-[0-9]{5,15}|nai-.+|msisdn-[0-9]{5,15}|extid-[^@]+@[^@]+|gci-.+|gli-.+|.+)$
      description: String represents the SUPI or GPSI
    VarUeIdRm:
      type: string
      pattern: ^(imsi-[0-9]{5,15}|nai-.+|msisdn-[0-9]{5,15}|extid-[^@]+@[^@]+|gci-.+|gli-.+|.+)$
      nullable: true
      description: 'String represents the SUPI or GPSI with the OpenAPI ''nullable: true'' property.'
    TimeZone:
      type: string
      example: -08:00+1
      description: "String with format \"time-numoffset\" optionally appended by \"daylightSavingTime\"\
        , where \n- \"time-numoffset\" shall represent the time zone adjusted for daylight saving time\
        \ and be\n   encoded as time-numoffset as defined in clause 5.6 of IETF RFC 3339; \n- \"daylightSavingTime\"\
        \ shall represent the adjustment that has been made and shall be\n   encoded as \"+1\" or \"+2\"\
        \ for a +1 or +2 hours adjustment. \n\nThe example is for 8 hours behind UTC, +1 hour adjustment\
        \ for Daylight Saving Time.\n"
    TimeZoneRm:
      type: string
      nullable: true
      description: "\"String with format 'time-numoffset' optionally appended by '<daylightSavingTime>',\
        \ where\n  - 'time-numoffset' shall represent the time zone adjusted for daylight saving time\
        \ and be\n    encoded as time-numoffset as defined in clause 5.6 of IETF RFC 3339;\n  - 'daylightSavingTime'\
        \ shall represent the adjustment that has been made and shall be\n    encoded as '+1' or '+2'\
        \ for a +1 or +2 hours adjustment.\n\n  But with the OpenAPI 'nullable: true' property.\"\n"
    StnSr:
      type: string
      description: String representing the STN-SR as defined in clause 18.6 of 3GPP TS 23.003.
    StnSrRm:
      type: string
      nullable: true
      description: "String representing the STN-SR as defined in clause 18.6 of 3GPP TS 23.003 with the\
        \ OpenAPI 'nullable: true' property. \n"
    CMsisdn:
      type: string
      pattern: ^[0-9]{5,15}$
      description: String representing the C-MSISDN as defined in clause 18.7 of 3GPP TS 23.003.
    CMsisdnRm:
      type: string
      pattern: ^[0-9]{5,15}$
      nullable: true
      description: "String representing the C-MSISDN as defined in clause 18.7 of 3GPP TS 23.003 with\
        \ the OpenAPI 'nullable: true' property. \n"
    MonthOfYear:
      type: integer
      minimum: 1
      maximum: 12
      description: 'integer between and including 1 and 12 denoting a month. 1 shall indicate January,
        and the subsequent months shall be indicated with the next higher numbers. 12 shall indicate December.

        '
    DayOfWeek:
      type: integer
      minimum: 1
      maximum: 7
      description: 'integer between and including 1 and 7 denoting a weekday. 1 shall indicate Monday,
        and the subsequent weekdays shall be indicated with the next higher numbers. 7 shall indicate
        Sunday.

        '
    TimeOfDay:
      type: string
      description: "String with format partial-time or full-time as defined in clause 5.6 of IETF RFC\
        \ 3339. Examples, 20:15:00, 20:15:00-08:00 (for 8 hours behind UTC). \n"
    EmptyObject:
      description: Empty JSON object { }, it is defined with the keyword additionalProperties false
      type: object
      additionalProperties: false
    Fqdn:
      description: Fully Qualified Domain Name
      type: string
      pattern: ^([0-9A-Za-z]([-0-9A-Za-z]{0,61}[0-9A-Za-z])?\.)+[A-Za-z]{2,63}\.?$
      minLength: 4
      maxLength: 253
    FqdnRm:
      description: Fully Qualified Domain Name, but it also allows the null value
      anyOf:
      - $ref: '#/components/schemas/Fqdn'
      - $ref: '#/components/schemas/NullValue'
    PatchOperation:
      anyOf:
      - type: string
        enum:
        - add
        - copy
        - move
        - remove
        - replace
        - test
      - type: string
      description: Operations as defined in IETF RFC 6902.
    UriScheme:
      anyOf:
      - type: string
        enum:
        - http
        - https
      - type: string
      description: HTTP and HTTPS URI scheme.
    ChangeType:
      anyOf:
      - type: string
        enum:
        - ADD
        - MOVE
        - REMOVE
        - REPLACE
      - type: string
      description: Indicates the type of change to be performed.
    HttpMethod:
      anyOf:
      - type: string
        enum:
        - GET
        - POST
        - PUT
        - DELETE
        - PATCH
        - OPTIONS
        - HEAD
        - CONNECT
        - TRACE
      - type: string
      description: HTTP methodes.
    NullValue:
      enum:
      - null
      description: JSON's null value.
    MatchingOperator:
      anyOf:
      - type: string
        enum:
        - FULL_MATCH
        - MATCH_ALL
        - STARTS_WITH
        - NOT_START_WITH
        - ENDS_WITH
        - NOT_END_WITH
        - CONTAINS
        - NOT_CONTAIN
      - type: string
      description: the matching operation.
    UpfPacketInspectionFunctionality:
      description: Indicates a packet inspection functionality of the UPF.
      anyOf:
      - type: string
        enum:
        - DEEP_PACKET_INSPECTION
        - MAC_FILTER_BASED_PACKET_DETECTION
        - IP_FILTER_BASED_PACKET_DETECTION
      - type: string
        description: 'This string provides forward-compatibility with future extensions to the enumeration.

          '
    ProblemDetails:
      description: Provides additional information in an error response.
      type: object
      properties:
        type:
          $ref: '#/components/schemas/Uri'
        title:
          type: string
        status:
          type: integer
        detail:
          type: string
          description: A human-readable explanation specific to this occurrence of the problem.
        instance:
          $ref: '#/components/schemas/Uri'
        cause:
          type: string
          description: 'A machine-readable application error cause specific to this occurrence of the
            problem.  This IE should be present and provide application-related error information, if
            available.

            '
        invalidParams:
          type: array
          items:
            $ref: '#/components/schemas/InvalidParam'
          minItems: 1
        supportedFeatures:
          $ref: '#/components/schemas/SupportedFeatures'
        nrfId:
          $ref: '#/components/schemas/Fqdn'
        supportedApiVersions:
          type: array
          items:
            type: string
          minItems: 1
    Link:
      type: object
      properties:
        href:
          $ref: '#/components/schemas/Uri'
      description: It contains the URI of the linked resource.
    LinkRm:
      type: object
      properties:
        href:
          $ref: '#/components/schemas/Uri'
      nullable: true
      description: 'It contains the URI of the linked resource with the OpenAPI ''nullable: true'' property.

        '
    PatchItem:
      type: object
      properties:
        op:
          $ref: '#/components/schemas/PatchOperation'
        path:
          type: string
          description: 'contains a JSON pointer value (as defined in IETF RFC 6901) that references a
            location of a resource on which the patch operation shall be performed.

            '
        from:
          type: string
          description: 'indicates the path of the source JSON element (according to JSON Pointer syntax)
            being moved or copied to the location indicated by the "path" attribute.

            '
        value: {}
      required:
      - op
      - path
      description: it contains information on data to be changed.
    LinksValueSchema:
      oneOf:
      - type: array
        items:
          $ref: '#/components/schemas/Link'
        minItems: 1
      - $ref: '#/components/schemas/Link'
      description: A list of mutually exclusive alternatives of 1 or more links.
    SelfLink:
      type: object
      properties:
        self:
          $ref: '#/components/schemas/Link'
      required:
      - self
      description: It contains the URI of the linked resource.
    InvalidParam:
      type: object
      properties:
        param:
          type: string
          description: 'If the invalid parameter is an attribute in a JSON body, this IE shall contain
            the  attribute''s name and shall be encoded as a JSON Pointer. If the invalid parameter is  an
            HTTP header, this IE shall be formatted as the concatenation of the string "header "  plus
            the name of such header. If the invalid parameter is a query parameter, this IE  shall be
            formatted as the concatenation of the string "query " plus the name of such  query parameter.
            If the invalid parameter is a variable part in the path of a resource  URI, this IE shall
            contain the name of the variable, including the symbols "{" and "}"  used in OpenAPI specification
            as the notation to represent variable path segments.

            '
        reason:
          type: string
          description: 'A human-readable reason, e.g. "must be a positive integer". In cases involving
            failed  operations in a PATCH request, the reason string should identify the operation that  failed
            using the operation''s array index to assist in correlation of the invalid  parameter with
            the failed operation, e.g." Replacement value invalid for attribute  (failed operation index=
            4)"

            '
      required:
      - param
      description: It contains an invalid parameter and a related description.
    ChangeItem:
      type: object
      properties:
        op:
          $ref: '#/components/schemas/ChangeType'
        path:
          type: string
          description: 'contains a JSON pointer value (as defined in IETF RFC 6901) that references a
            target  location within the resource on which the change has been applied.

            '
        from:
          type: string
          description: 'indicates the path of the source JSON element (according to JSON Pointer syntax)  being
            moved or copied to the location indicated by the "path" attribute. It shall  be present if
            the "op" attribute is of value "MOVE".

            '
        origValue: {}
        newValue: {}
      required:
      - op
      - path
      description: It contains data which need to be changed.
    NotifyItem:
      type: object
      required:
      - resourceId
      - changes
      properties:
        resourceId:
          $ref: '#/components/schemas/Uri'
        changes:
          type: array
          items:
            $ref: '#/components/schemas/ChangeItem'
          minItems: 1
      description: Indicates changes on a resource.
    ComplexQuery:
      oneOf:
      - $ref: '#/components/schemas/Cnf'
      - $ref: '#/components/schemas/Dnf'
      description: 'The ComplexQuery data type is either a conjunctive normal form or a disjunctive normal
        form.  The attribute names "cnfUnits" and "dnfUnits" (see clause 5.2.4.11 and clause 5.2.4.12)  serve
        as discriminator.

        '
    Cnf:
      type: object
      required:
      - cnfUnits
      properties:
        cnfUnits:
          type: array
          items:
            $ref: '#/components/schemas/CnfUnit'
          minItems: 1
      description: A conjunctive normal form
    Dnf:
      type: object
      required:
      - dnfUnits
      properties:
        dnfUnits:
          type: array
          items:
            $ref: '#/components/schemas/DnfUnit'
          minItems: 1
      description: A disjunctive normal form.
    CnfUnit:
      type: object
      required:
      - cnfUnit
      properties:
        cnfUnit:
          type: array
          items:
            $ref: '#/components/schemas/Atom'
          minItems: 1
      description: 'During the processing of cnfUnits attribute, all the members in the array shall be  interpreted
        as logically concatenated with logical "AND".

        '
    DnfUnit:
      type: object
      required:
      - dnfUnit
      properties:
        dnfUnit:
          type: array
          items:
            $ref: '#/components/schemas/Atom'
          minItems: 1
      description: 'During the processing of dnfUnits attribute, all the members in the array shall be  interpreted
        as logically concatenated with logical "OR".

        '
    Atom:
      description: contains a search parameter and its positive or negative content.
      type: object
      required:
      - attr
      - value
      properties:
        attr:
          type: string
          description: contains the name of a defined query parameter.
        value: {}
        negative:
          type: boolean
          description: indicates whether the negative condition applies for the query condition.
    PatchResult:
      description: The execution report result on failed modification.
      type: object
      required:
      - report
      properties:
        report:
          type: array
          items:
            $ref: '#/components/schemas/ReportItem'
          minItems: 1
          description: 'The execution report contains an array of report items. Each report item indicates
            one  failed modification.

            '
    ReportItem:
      type: object
      required:
      - path
      properties:
        path:
          type: string
          description: 'Contains a JSON pointer value (as defined in IETF RFC 6901) that references a  location
            of a resource to which the modification is subject.

            '
        reason:
          type: string
          description: 'A human-readable reason providing details on the reported modification failure.  The
            reason string should identify the operation that failed using the operation''s  array index
            to assist in correlation of the invalid parameter with the failed  operation, e.g. "Replacement
            value invalid for attribute (failed operation index= 4)".

            '
      description: indicates performed modivications.
    HalTemplate:
      description: 'Hypertext Application Language (HAL) template contains the extended 3GPP hypermedia
        format.

        '
      type: object
      required:
      - method
      properties:
        title:
          type: string
          description: A human-readable string that can be used to identify this template
        method:
          $ref: '#/components/schemas/HttpMethod'
        contentType:
          type: string
          description: 'The media type that should be used for the corresponding request. If the attribute
            is missing, or contains an unrecognized value, the client should act as if the  contentType
            is set to "application/json".

            '
        properties:
          type: array
          items:
            $ref: '#/components/schemas/Property'
          minItems: 1
          description: 'The properties that should be included in the body of the corresponding request.  If
            the contentType attribute is set to "application/json", then this attribute  describes the
            attributes of the JSON object of the body.

            '
    Property:
      description: 'If the contentType attribute is set to "application/json", then this attribute describes  the
        attributes of the JSON object of the body.

        '
      type: object
      required:
      - name
      properties:
        name:
          type: string
          description: The name of the property
        required:
          type: boolean
          description: 'Indicates whether the property is required – true= required –  false(default)=
            not required.

            '
        regex:
          type: string
          description: A regular expression string to be applied to the value of the property.
        value:
          type: string
          description: The property value. When present, it shall be a valid JSON string.
    RedirectResponse:
      description: 'The response shall include a Location header field containing a different URI  (pointing
        to a different URI of an other service instance), or the same URI if a request  is redirected
        to the same target resource via a different SCP.

        '
      type: object
      properties:
        cause:
          type: string
        targetScp:
          $ref: '#/components/schemas/Uri'
        targetSepp:
          $ref: '#/components/schemas/Uri'
    TunnelAddress:
      description: Tunnel address
      type: object
      properties:
        ipv4Addr:
          $ref: '#/components/schemas/Ipv4Addr'
        ipv6Addr:
          $ref: '#/components/schemas/Ipv6Addr'
        portNumber:
          $ref: '#/components/schemas/Uinteger'
      required:
      - portNumber
      anyOf:
      - required:
        - ipv4Addr
      - required:
        - ipv6Addr
    FqdnPatternMatchingRule:
      description: a matching rule for a FQDN pattern
      type: object
      oneOf:
      - required:
        - regex
      - required:
        - stringMatchingRule
      properties:
        regex:
          type: string
        stringMatchingRule:
          $ref: '#/components/schemas/StringMatchingRule'
    StringMatchingRule:
      description: A list of conditions for string matching
      type: object
      properties:
        stringMatchingConditions:
          type: array
          items:
            $ref: '#/components/schemas/StringMatchingCondition'
          minItems: 1
      required:
      - stringMatchingConditions
    StringMatchingCondition:
      description: A String with Matching Operator
      type: object
      properties:
        matchingString:
          type: string
        matchingOperator:
          $ref: '#/components/schemas/MatchingOperator'
      required:
      - matchingOperator
    Ipv4AddressRange:
      description: Range of IPv4 addresses
      type: object
      properties:
        start:
          $ref: '#/components/schemas/Ipv4Addr'
        end:
          $ref: '#/components/schemas/Ipv4Addr'
      required:
      - start
      - end
    Ipv6AddressRange:
      description: Range of IPv6 addresses
      type: object
      properties:
        start:
          $ref: '#/components/schemas/Ipv6Addr'
        end:
          $ref: '#/components/schemas/Ipv6Addr'
      required:
      - start
      - end
    Ipv6PrefixRange:
      description: Range of IPv6 prefixes
      type: object
      properties:
        start:
          $ref: '#/components/schemas/Ipv6Prefix'
        end:
          $ref: '#/components/schemas/Ipv6Prefix'
      required:
      - start
      - end
    NfSignallingInfo:
      description: NF Signalling Information
      type: object
      properties:
        nfInstanceId:
          $ref: '#/components/schemas/NfInstanceId'
        nfSigInfoPerWndw:
          type: array
          items:
            $ref: '#/components/schemas/NfSignallingInfoPerTimeWindow'
          minItems: 1
        nfHeartbeatInfo:
          $ref: '#/components/schemas/NfHeartbeatInfo'
        unexpStatusInd:
          type: boolean
          default: false
      required:
      - nfInstanceId
    NfSignallingInfoPerTimeWindow:
      description: NF Signalling Information Per time window
      type: object
      properties:
        nfSigInfoPerService:
          type: array
          items:
            $ref: '#/components/schemas/NfSignallingInfoPerService'
          minItems: 1
      required:
      - tw
      - nfSigInfoPerService
    NfSignallingInfoPerService:
      description: NF signalling information per service.
      type: object
      properties:
        nfServiceInstanceId:
          type: string
        avgProcTime:
          $ref: '#/components/schemas/Float'
        numOfReq:
          $ref: '#/components/schemas/Uinteger'
        numOfReqUnresp:
          $ref: '#/components/schemas/Uinteger'
        numOfReqReject:
          $ref: '#/components/schemas/Uinteger'
        numOfRedMessages:
          $ref: '#/components/schemas/Uinteger'
        numOfPosteriorReq:
          $ref: '#/components/schemas/Uinteger'
      required:
      - nfServiceInstanceId
      - serviceName
    NfHeartbeatInfo:
      description: NF heart beat information.
      type: object
      properties:
        numOfRetrans:
          $ref: '#/components/schemas/Uinteger'
        hbIntvl:
          $ref: '#/components/schemas/Uinteger'
    Dnn:
      type: string
      description: 'String representing a Data Network as defined in clause 9A of 3GPP TS 23.003;  it
        shall contain either a DNN Network Identifier, or a full DNN with both the Network  Identifier
        and Operator Identifier, as specified in 3GPP TS 23.003 clause 9.1.1 and 9.1.2. It shall be coded
        as string in which the labels are separated by dots  (e.g. "Label1.Label2.Label3").

        '
    DnnRm:
      type: string
      nullable: true
      description: 'String representing a Data Network as defined in clause 9A of 3GPP TS 23.003;  it
        shall contain either a DNN Network Identifier, or a full DNN with both the  Network Identifier
        and Operator Identifier, as specified in 3GPP TS 23.003 clause 9.1.1  and 9.1.2. It shall be coded
        as string in which the labels are separated by dots  (e.g. ''Label1.Label2.Label3'') with the
        OpenAPI ''nullable: true'' property.

        '
    WildcardDnn:
      type: string
      pattern: ^[*]$
      description: String representing the Wildcard DNN. It shall contain the string "*".
    WildcardDnnRm:
      type: string
      pattern: ^[*]$
      nullable: true
      description: 'String representing the Wildc

# --- truncated at 32 KB (233 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/3gpp/refs/heads/main/openapi/3gpp-ts29571-commondata.yml