RICS (Royal Institution of Chartered Surveyors) Regulation API

The Regulation API from RICS (Royal Institution of Chartered Surveyors) — 3 operation(s) for regulation.

Operations 3

GET /api/Regulation/{schemeNumber}
GET /api/Regulation/Subscriptions
GET /api/Regulation/PaymentInformation

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/rics-regulation-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

rics-regulation-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: DigitalCommunity Regulation API
  description: To use this API, you need to have been first been issued a username and password by RICS. These need to be sent in a JSON User object in the body of a POST request to the /token endpoint in order to receive back a secure bearer token. This token must then be sent with every subsequent request to an information endpoint (in the request's authorization header). Bearer tokens have a limited lifetime and will need to be refreshed by your client periodically. The mechanism by which this refresh occurs is a matter for your client software to address.
  version: v1
security:
- Bearer: []
tags:
- name: Regulation
paths:
  /api/Regulation/{schemeNumber}:
    get:
      tags:
      - Regulation
      parameters:
      - name: schemeNumber
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RegulationScheme'
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
  /api/Regulation/Subscriptions:
    get:
      tags:
      - Regulation
      parameters:
      - name: regulationSchemeId
        in: query
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RegulationSubscriptions'
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
  /api/Regulation/PaymentInformation:
    get:
      tags:
      - Regulation
      parameters:
      - name: regulationSchemeId
        in: query
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaymentInformation'
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
components:
  schemas:
    PiiInsurer:
      type: object
      properties:
        piiUnderwriterName:
          type:
          - string
          - 'null'
        piiUnderwriterId:
          type: string
          format: uuid
        policyNumber:
          type:
          - string
          - 'null'
        piiInsuranceId:
          type: string
          format: uuid
        regulatedSchemeId:
          type: string
          format: uuid
        schemeName:
          type:
          - string
          - 'null'
      additionalProperties: false
    QuoteStatus:
      enum:
      - 0
      - 1
      - 2
      - 3
      - 4
      - 5
      - 6
      - 7
      - 200000000
      - 647390000
      type: integer
      format: int32
    RegulatoryType:
      enum:
      - 0
      - 200000000
      - 200000001
      type: integer
      format: int32
    MemberPiiAndAdrRoute:
      enum:
      - 0
      - 1
      - 2
      - 3
      - 4
      - 5
      - 6
      - 7
      - 8
      type: integer
      format: int32
    SchemeLicenceStatus:
      enum:
      - 0
      - 1
      - 2
      - 200000000
      - 200000001
      - 200000002
      - 200000003
      - 200000004
      - 200000005
      - 200000006
      - 200000007
      - 200000008
      - 200000009
      - 200000010
      - 200000011
      - 200000012
      - 200000013
      - 200000014
      - 200000015
      type: integer
      format: int32
    ProblemDetails:
      type: object
      properties:
        type:
          type:
          - string
          - 'null'
        title:
          type:
          - string
          - 'null'
        status:
          type:
          - integer
          - 'null'
          format: int32
        detail:
          type:
          - string
          - 'null'
        instance:
          type:
          - string
          - 'null'
      additionalProperties: {}
    RegulationQuote:
      type: object
      properties:
        quoteId:
          type: string
          format: uuid
        quoteRef:
          type:
          - string
          - 'null'
        name:
          type:
          - string
          - 'null'
        description:
          type:
          - string
          - 'null'
        revisionNumber:
          type: integer
          format: int32
        transactionCurrencyId:
          type: string
          format: uuid
        isoCurrencyCode:
          type:
          - string
          - 'null'
        currencyName:
          type:
          - string
          - 'null'
        currencySymbol:
          type:
          - string
          - 'null'
        totalAmount:
          type: number
          format: double
        taxAmount:
          type: number
          format: double
        discountAmount:
          type: number
          format: double
        priceListId:
          type:
          - string
          - 'null'
          format: uuid
        paymentReceived:
          type: boolean
        status:
          $ref: '#/components/schemas/QuoteStatus'
        quoteLines:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/RegulationQuoteLine'
        dateCreated:
          type: string
          format: date-time
        purchaseType:
          $ref: '#/components/schemas/PurchaseType'
      additionalProperties: false
    RedressProvider:
      type: object
      properties:
        id:
          type: string
          format: uuid
        regulatedSchemeId:
          type: string
          format: uuid
        regulatedSchemeName:
          type:
          - string
          - 'null'
        redressSchemeId:
          type: string
          format: uuid
        redressSchemeName:
          type:
          - string
          - 'null'
        countryId:
          type: string
          format: uuid
        countryName:
          type:
          - string
          - 'null'
        countryCode:
          type:
          - string
          - 'null'
      additionalProperties: false
    RegulationScheme:
      type: object
      properties:
        regulatedSchemeId:
          type: string
          format: uuid
        regulatedSchemeNumber:
          type:
          - string
          - 'null'
        parentRegulatedSchemeId:
          type:
          - string
          - 'null'
          format: uuid
        parentRegulatedSchemeName:
          type:
          - string
          - 'null'
        licencedContactId:
          type:
          - string
          - 'null'
          format: uuid
        licencedContactName:
          type:
          - string
          - 'null'
        licencedContactNumber:
          type:
          - string
          - 'null'
        submittedByContactId:
          type:
          - string
          - 'null'
          format: uuid
        submittedByContactNumber:
          type:
          - string
          - 'null'
        submittedByContact:
          type:
          - string
          - 'null'
        name:
          type:
          - string
          - 'null'
        regulatedEntityName:
          type:
          - string
          - 'null'
        regulatedSchemeTypeId:
          type: string
          format: uuid
        regulatedSchemeTypeName:
          type:
          - string
          - 'null'
        regulatedSchemeTypeCode:
          type:
          - string
          - 'null'
        schemeLicenceType:
          $ref: '#/components/schemas/SchemeLicenceType'
        schemeLicenceTypeName:
          type:
          - string
          - 'null'
        masterAccount:
          type:
          - string
          - 'null'
          format: uuid
        masterAccountName:
          type:
          - string
          - 'null'
        officeNumber:
          type:
          - string
          - 'null'
        firmNumber:
          type:
          - string
          - 'null'
        contactOfficer:
          type:
          - string
          - 'null'
          format: uuid
        personalAddressOkay:
          type: boolean
        preferredAddressOkay:
          type: boolean
        localGroupOkay:
          type: boolean
        isSellable:
          type: boolean
        contactOfficerName:
          type:
          - string
          - 'null'
        contactOfficerNumber:
          type:
          - string
          - 'null'
        schemeLicenceStatus:
          $ref: '#/components/schemas/SchemeLicenceStatus'
        schemeLicenceStatusName:
          type:
          - string
          - 'null'
        schemeLicenceStatusReason:
          $ref: '#/components/schemas/SchemeLicenceStatusReason'
        schemeLicenceStatusReasonName:
          type:
          - string
          - 'null'
        approvalConditions:
          type:
          - string
          - 'null'
        submissionDate:
          type:
          - string
          - 'null'
          format: date-time
        approvalDate:
          type:
          - string
          - 'null'
          format: date-time
        licenceEndDate:
          type:
          - string
          - 'null'
          format: date-time
        licenceEndReason:
          $ref: '#/components/schemas/LicenceEndReason'
        licenceEndReasonName:
          type:
          - string
          - 'null'
        inclusionReason:
          $ref: '#/components/schemas/InclusionReason'
        inclusionReasonName:
          type:
          - string
          - 'null'
        numDirectorPrincipals:
          type:
          - integer
          - 'null'
          format: int32
        numMemberDirectorPrincipals:
          type:
          - integer
          - 'null'
          format: int32
        regulatedOrganisationType:
          $ref: '#/components/schemas/RegulatedOrganisationType'
        regulatedOrganisationTypeName:
          type:
          - string
          - 'null'
        isSelfDeclaredAsVrsEligible:
          type: boolean
        vrsSponsorshipCode:
          type:
          - string
          - 'null'
        isMemberSignoffRequired:
          type: boolean
        signOffContactId:
          type:
          - string
          - 'null'
          format: uuid
        signOffContactName:
          type:
          - string
          - 'null'
        signOffContactNumber:
          type:
          - string
          - 'null'
        dateSignedOff:
          type:
          - string
          - 'null'
          format: date-time
        alternatePiiUnderwriters:
          type:
          - string
          - 'null'
        clientMoneyType:
          type: integer
          format: int32
        clientMoneyTypeName:
          type:
          - string
          - 'null'
        gimaStatus:
          $ref: '#/components/schemas/Gima'
        gimaStatusName:
          type:
          - string
          - 'null'
        hasPii:
          type:
          - boolean
          - 'null'
        sponsorship:
          type: boolean
        statusChangeDate:
          type:
          - string
          - 'null'
          format: date-time
        startDate:
          type:
          - string
          - 'null'
          format: date-time
        renewalsDate:
          type:
          - string
          - 'null'
          format: date-time
        responsiblePrincipalId:
          type:
          - string
          - 'null'
          format: uuid
        responsiblePrincipalName:
          type:
          - string
          - 'null'
        responsiblePrincipalNumber:
          type:
          - string
          - 'null'
        isResponsiblePrincipalValid:
          type: boolean
        memberPiiAndAdrRoute:
          $ref: '#/components/schemas/MemberPiiAndAdrRoute'
        memberPiiAndAdrRouteName:
          type:
          - string
          - 'null'
        firmPiiAndAdrRoute:
          $ref: '#/components/schemas/FirmRegsRoute'
        firmPiiAndAdrRouteName:
          type:
          - string
          - 'null'
        regulationReturns:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/RegulationReturn'
        childSchemes:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/RegulationScheme'
        surveyingServices:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/SurveyingService'
        piiInsurers:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/PiiInsurer'
        noPiiExplanation:
          type:
          - string
          - 'null'
        redressProviders:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/RedressProvider'
        offices:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Office'
        memberDirectorPrincipals:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/MemberDirectorPrincipal'
        createdOn:
          type: string
          format: date-time
        modifiedOn:
          type:
          - string
          - 'null'
          format: date-time
        countOfReturns:
          type: integer
          format: int32
        countOfMemberDirectorPrincipals:
          type: integer
          format: int32
        countOfSubscriptions:
          type: integer
          format: int32
      additionalProperties: false
    SubscriptionOwnerStatus:
      enum:
      - 0
      - 1
      - 2
      - 200000000
      - 200000002
      - 200000003
      - 200000004
      - 200000005
      - 200000006
      - 200000007
      type: integer
      format: int32
    RegulationQuoteLine:
      type: object
      properties:
        quoteLineId:
          type: string
          format: uuid
        catalogProductId:
          type: string
          format: uuid
        quantity:
          type: number
          format: double
        unitPrice:
          type: number
          format: double
        baseAmount:
          type: number
          format: double
        extendedAmount:
          type: number
          format: double
        discountAmount:
          type: number
          format: double
        productTypeCode:
          type: integer
          format: int32
        productName:
          type:
          - string
          - 'null'
        productNumber:
          type:
          - string
          - 'null'
        sequenceNo:
          type: integer
          format: int32
        isPriceOverridden:
          type:
          - boolean
          - 'null'
        subscriptionId:
          type:
          - string
          - 'null'
          format: uuid
        startDate:
          type:
          - string
          - 'null'
          format: date-time
        endDate:
          type:
          - string
          - 'null'
          format: date-time
      additionalProperties: false
    SubscriptionUser:
      type: object
      properties:
        subscriptionUserId:
          type: string
          format: uuid
        contactId:
          type: string
          format: uuid
        contactNo:
          type:
          - string
          - 'null'
        contactName:
          type:
          - string
          - 'null'
        preferredEmailAddress:
          type:
          - string
          - 'null'
        sponsorshipCodeId:
          type:
          - string
          - 'null'
          format: uuid
        subscriptionProductId:
          type: string
          format: uuid
        subscriptionId:
          type: string
          format: uuid
        status:
          $ref: '#/components/schemas/SubscriptionUserStatus'
        approvalStatus:
          $ref: '#/components/schemas/SubscriptionUserApprovalStatus'
        licenceKey:
          type:
          - string
          - 'null'
        endDate:
          type:
          - string
          - 'null'
          format: date-time
        vrsSponsorshipApplicationId:
          type:
          - string
          - 'null'
          format: uuid
      additionalProperties: false
    Address:
      type: object
      properties:
        ownerId:
          type: string
          format: uuid
        subsOnlineUpdate:
          type: boolean
        addressType:
          $ref: '#/components/schemas/AddressType'
        organisation:
          type:
          - string
          - 'null'
        line1:
          type:
          - string
          - 'null'
        line2:
          type:
          - string
          - 'null'
        line3:
          type:
          - string
          - 'null'
        city:
          type:
          - string
          - 'null'
        county:
          type:
          - string
          - 'null'
        state:
          type:
          - string
          - 'null'
        postcode:
          type:
          - string
          - 'null'
        isoCountryCode:
          type:
          - string
          - 'null'
        countryName:
          type:
          - string
          - 'null'
        countryId:
          type: string
          format: uuid
        longitude:
          type: number
          format: double
        latitude:
          type: number
          format: double
        telephone:
          type:
          - string
          - 'null'
        website:
          type:
          - string
          - 'null'
        emailAddress:
          type:
          - string
          - 'null'
        basedInChannelIslands:
          type: boolean
      additionalProperties: false
    SubscriptionPaymentMethod:
      enum:
      - 0
      - 200000000
      - 200000002
      - 200000003
      - 200000004
      - 200000006
      type: integer
      format: int32
    PurchaseType:
      enum:
      - 0
      - 200000000
      - 200000001
      type: integer
      format: int32
    SuspensionReason:
      enum:
      - 0
      - 200000000
      - 200000001
      - 200000002
      type: integer
      format: int32
    Office:
      type: object
      properties:
        accountId:
          type: string
          format: uuid
        firmNumber:
          type:
          - string
          - 'null'
        officeNumber:
          type:
          - string
          - 'null'
        publicationName:
          type:
          - string
          - 'null'
        registeredName:
          type:
          - string
          - 'null'
        tradingName:
          type:
          - string
          - 'null'
        primaryContact:
          type:
          - string
          - 'null'
          format: uuid
        primaryContactName:
          type:
          - string
          - 'null'
        address:
          $ref: '#/components/schemas/Address'
        isoCountryCode:
          type:
          - string
          - 'null'
        vatRegNumber:
          type:
          - string
          - 'null'
        isHeadOffice:
          type: boolean
        isRegulated:
          type: boolean
        hasActiveRegistration:
          type: boolean
      additionalProperties: false
    SubscriptionUserStatus:
      enum:
      - 0
      - 1
      - 2
      type: integer
      format: int32
    MemberDirectorPrincipal:
      type: object
      properties:
        contactId:
          type:
          - string
          - 'null'
          format: uuid
        connectionId:
          type:
          - string
          - 'null'
          format: uuid
        emailAddress:
          type:
          - string
          - 'null'
        emailAddress2:
          type:
          - string
          - 'null'
        emailAddress3:
          type:
          - string
          - 'null'
        contactNo:
          type:
          - string
          - 'null'
        fullName:
          type:
          - string
          - 'null'
        hasPreviousBadSchemeStatus:
          type: boolean
        notFoundInCrm:
          type: boolean
        isResponsiblePrincipal:
          type: boolean
      additionalProperties: false
    SchemeLicenceStatusReason:
      enum:
      - 0
      - 200000000
      - 200000001
      - 200000002
      - 200000003
      - 200000004
      - 200000005
      - 200000006
      - 200000007
      - 200000008
      - 200000009
      - 200000010
      - 200000011
      - 200000012
      - 200000013
      - 200000014
      - 200000015
      - 200000016
      type: integer
      format: int32
    Subscription:
      type: object
      properties:
        subscriptionId:
          type: string
          format: uuid
        startDate:
          type:
          - string
          - 'null'
          format: date-time
        endDate:
          type:
          - string
          - 'null'
          format: date-time
        numberOfLicences:
          type: integer
          format: int32
        poNumber:
          type:
          - string
          - 'null'
        createdDate:
          type:
          - string
          - 'null'
          format: date-time
        salesOrders:
          type:
          - array
          - 'null'
          items:
            type: string
            format: uuid
        quotes:
          type:
          - array
          - 'null'
          items:
            type: string
            format: uuid
      additionalProperties: false
    PaymentInformation:
      type: object
      properties:
        quotes:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/RegulationQuote'
        salesOrders:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/RegulationSalesOrder'
        countOfQuotes:
          type: integer
          format: int32
        countOfSalesOrders:
          type: integer
          format: int32
        countOfSchemeAnnualReturns:
          type: integer
          format: int32
      additionalProperties: false
    InclusionReason:
      enum:
      - 0
      - 200000000
      - 200000001
      type: integer
      format: int32
    RegulationSalesOrder:
      type: object
      properties:
        orderId:
          type: string
          format: uuid
        orderRef:
          type:
          - string
          - 'null'
        status:
          $ref: '#/components/schemas/SalesOrderStatus'
        totalAmount:
          type: number
          format: double
        dateCreated:
          type: string
          format: date-time
        isoCurrencyCode:
          type:
          - string
          - 'null'
        currencySymbol:
          type:
          - string
          - 'null'
        quoteNumber:
          type:
          - string
          - 'null'
      additionalProperties: false
    ScoreResult:
      enum:
      - 0
      - 1
      - 2
      type: integer
      format: int32
    AddressType:
      enum:
      - 0
      - 1
      - 2
      type: integer
      format: int32
    EndDateChangeReason:
      enum:
      - 0
      - 200000000
      - 200000001
      - 200000002
      - 200000003
      - 200000004
      type: integer
      format: int32
    SubscriptionUserApprovalStatus:
      enum:
      - 0
      - 200000000
      - 200000001
      type: integer
      format: int32
    CancellationReason:
      enum:
      - 0
      - 200000000
      - 200000001
      - 200000002
      - 200000003
      - 200000004
      - 200000005
      type: integer
      format: int32
    SponsorshipCode:
      type: object
      properties:
        sponsorshipCodeId:
          type: string
          format: uuid
        code:
          type:
          - string
          - 'null'
        status:
          $ref: '#/components/schemas/SponsorshipCodeStatus'
        startDate:
          type: string
          format: date-time
        endDate:
          type: string
          format: date-time
        totalAllowance:
          type: integer
          format: int32
        quantityAvailable:
          type: integer
          format: int32
        quantityUsed:
          type: integer
          format: int32
        createdOn:
          type: string
          format: date-time
        modifiedOn:
          type: string
          format: date-time
      additionalProperties: false
    SalesOrderStatus:
      enum:
      - 0
      - 1
      - 2
      - 3
      - 4
      - 100001
      - 100002
      - 100003
      - 200000
      - 200001
      type: integer
      format: int32
    SurveyingService:
      type: object
      properties:
        serviceId:
          type: string
          format: uuid
        code:
          type:
          - string
          - 'null'
        service:
          type:
          - string
          - 'null'
        isValuationService:
          type: boolean
        countryId:
          type: string
          format: uuid
        countryName:
          type:
          - string
          - 'null'
        countryCode:
          type:
          - string
          - 'null'
      additionalProperties: false
    RegulationSubscriptions:
      type: object
      properties:
        subscriptions:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/RegulationSubscription'
        countOfSubscriptions:
          type: integer
          format: int32
      additionalProperties: false
    RegulationReturn:
      type: object
      properties:
        regulatoryReturnId:
          type: string
          format: uuid
        returnTypeId:
          type: string
          format: uuid
        returnTypeName:
          type:
          - string
          - 'null'
        name:
          type:
          - string
          - 'null'
        regulatoryType:
          $ref: '#/components/schemas/RegulatoryType'
        regulatoryTypeName:
          type:
          - string
          - 'null'
        regulatoryTypeCode:
          type:
          - string
          - 'null'
        regulatedMember:
          type:
          - string
          - 'null'
          format: uuid
        regulatedMemberName:
          type:
          - string
          - 'null'
        regulatedFirm:
          type:
          - string
          - 'null'
          format: uuid
        regulatedFirmName:
          type:
          - string
          - 'null'
        contactOfficer:
          type:
          - string
          - 'null'
          format: uuid
        contactOfficerName:
          type:
          - string
          - 'null'
        statusCode:
          $ref: '#/components/schemas/ReturnStatusCode'
        status:
          type:
          - string
          - 'null'
        submitterId:
          type:
          - string
          - 'null'
          format: uuid
        submitterName:
          type:
          - string
          - 'null'
        dateOfSubmission:
          type:
          - string
          - 'null'
          format: date-time
        returnDueDate:
          type:
          - string
          - 'null'
          format: date-time
        regulationCaseId:
          type:
          - string
          - 'null'
          format: uuid
        regulationCaseName:
          type:
          - string
          - 'null'
        surveyResponseId:
          type:
          - string
          - 'null'
          format: uuid
        surveyResponseName:
          type:
          - string
          - 'null'
        totalAnswersRequired:
          type: integer
          format: int32
        totalAnswersProvided:
          type: integer
          format: int32
        regulatedSchemeId:
          type:
          - string
          - 'null'
          format: uuid
        regulatedSchemeName:
          type:
          - string
          - 'null'
        responsiblePrincipal:
          type: string
          format: uuid
        responsiblePrincipalName:
          type:
          - string
          - 'null'
        result:
          $ref: '#/components/schemas/ScoreResult'
        score:
          type: integer
          format: int32
        createdOn:
          type: string
          format: date-time
        modifiedOn:
          type:
          - string
          - 'null'
          format: date-time
      additionalProperties: false
    Gima:
      enum:
      - 0
      - 200000000
      - 200000001
      - 200000002
      - 200000003
      type: integer
      format: int32
    SchemeLicenceType:
      enum:
      - 0
      - 200000000
      - 200000001
      type: integer
      format: int32
    ReturnStatusCode:
      enum:
      - 0
      - 200000000
      - 200000001
      - 200000002
      - 200000003
      - 200000004
      - 200000005
      - 200000006
      - 200000007
      - 200000008
      - 200000009
      - 200000010
      - 200000011
      - 200000012
      - 200000013
      type: integer
      format: int32
    LicenceEndReason:
      enum:
      - 0
      - 200000000
      - 200000001
      - 200000002
      - 200000003
      - 200000004
      - 200000005
      - 200000006
      - 200000007
      - 200000008
      - 200000009
      - 200000010
      - 200000011
      - 200000012
      - 200000013
      - 200000014
      - 200000015
      - 200000016
      type: integer
      format: int32
    RegulatedOrganisationType:
      enum:
      - 0
      - 200000000
      - 200000001
      - 200000002
      - 200000003
      - 200000004
      - 200000005
      type: integer
      format: int32
    FirmRegsRoute:
      enum:
      - 0
      - 1
      - 2
      - 3
      - 4
      - 5
      - 6
      - 7
      - 8
      - 9
      - 10
      type: integer
      format: int32
    SponsorshipCodeStatus:
      enum:
      - 0
      - 1
      - 2
      - 200000000
      - 200000001
      type: integer
      format: int32
    RegulationSubscription:
      type: object
      properties:
        ownerId:
          type: string
          format: uuid
        ownerName:
          type:
          - string
          - 'null'
        subscriptionNumber:
          type:
          - string
          - 'null'
        subscriptionProductId:
          type: string
          format: uuid
        subscriptionProductName:
          type:
          - string
          - 'null'
        contactId:
          type: string
          format: uuid
        contactName:
          type:
          - string
          - 'null'
        preferredEmailAddress:
          type:
          - string
          - 'null'
        name:
          type:
          - string
          - 'null'
        numberOfLicences:
          type: integer
          format: int32
        startDate:
          type:
          - string
          - 'null'
          format: date-time
        endDate:
          type:
          - string
          - 'null'
          format: date-time
        isOnBehalfOfAnAccount:
          type: boolean
        reasonForEndDateChange:
          $ref: '#/components/schemas/EndDateChangeReason'
        reasonForEndDateChangeName:
          type:
          - string
          - 'null'
        reasonForSuspension:
          $ref: '#/components/schemas/SuspensionReason'
        reasonForSuspensionName:
          type:
          - string
          - 'null'
        reasonForCancellation:
          $ref: '#/components/schemas/CancellationReason'
        reasonForCancellationName:
          type:
          - string
          - 'null'
        status:
          $ref: '#/components/schemas/SubscriptionOwnerStatus'
        subscriptions:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Subscription'
        subscriptionUsers:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/SubscriptionUser'
        sponsorshipCode:
          $ref: '#/components/schemas/SponsorshipCode'
        paymentMethod:
          $ref: '#/components/schemas/SubscriptionPaymentMethod'
        paymentMethodName:
          type:
          - string
          - 'null'
        renewalGuid:
          type: string
          format: uuid
        regulatedScheme:
          typ

# --- truncated at 32 KB (32 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/rics/refs/heads/main/openapi/rics-regulation-api-openapi.yml