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

# Change a test monitor's business

> Test keys only: as if CAC's register now lists this status or name. Sends the same events a real change does.



## OpenAPI

````yaml /openapi.json post /test_helpers/businesses/monitors/{monitor_id}/changes
openapi: 3.1.0
info:
  title: FastCAC API
  description: Register Nigerian businesses with CAC from your own product.
  version: '2026-11-01'
servers:
  - url: https://api.fastcac.com/v1
security:
  - apiKey: []
tags:
  - name: Account
    description: Check your key and see your organization.
  - name: Names
    description: >-
      Check a business name against CAC's rules and registry, and the categories
      it takes, before registering it.
  - name: Registrations
    description: Register a Business Name with CAC, from draft to certificate.
  - name: Lookup
    description: >-
      Search CAC's register for free, and look up a business's full record with
      its officers.
  - name: Verification
    description: >-
      Check that a business your applicant names is real, active and run by the
      people they say.
  - name: Monitoring
    description: >-
      Watch businesses on CAC's register and get an event when one goes inactive
      or changes name.
  - name: Identities
    description: >-
      Look up a proprietor's NIN with NIMC, to prefill a registration and use
      their photo.
  - name: Balance
    description: >-
      Your prepaid wallet: what's available, its transactions and your funding
      account.
  - name: Test helpers
    description: >-
      Test keys only: move a registration on without waiting, or simulate a
      deposit.
  - name: Webhooks
    description: Endpoints that receive events, and the events sent to them.
  - name: Webhook events
    description: What FastCAC POSTs to your webhook endpoints.
paths:
  /test_helpers/businesses/monitors/{monitor_id}/changes:
    post:
      tags:
        - Test helpers
      summary: Change a test monitor's business
      description: >-
        Test keys only: as if CAC's register now lists this status or name.
        Sends the same events a real change does.
      operationId: >-
        change_test_monitor_test_helpers_businesses_monitors__monitor_id__changes_post
      parameters:
        - name: monitor_id
          in: path
          required: true
          schema:
            type: string
            title: Monitor Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MonitorChangeIn'
            example:
              status: INACTIVE
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V1BusinessMonitor'
              examples:
                Example:
                  value:
                    object: business_monitor
                    id: mon_5Rfxqm9UQ4xlFxXoJeFCaT
                    number: '7654321'
                    type: RC
                    type_label: Company
                    name: ADA FOODS LIMITED
                    status: INACTIVE
                    active: false
                    external_id: merchant-4471
                    state: active
                    paid_through: '2026-11-27T15:16:04Z'
                    last_checked_at: null
                    last_changed_at: '2026-10-28T15:16:05Z'
                    amount_charged: null
                    created_at: '2026-10-28T15:16:04Z'
        '400':
          description: The request is invalid; `param` names the field.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: The API key is missing, malformed, revoked or expired.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                Example:
                  value:
                    error:
                      type: authentication_error
                      code: api_key_missing
                      message: 'Send your API key as `Authorization: Bearer <key>`.'
                      param: null
                      request_id: req_8r9FEwNmLuxQORZX5Qhvkd0q
        '403':
          description: >-
            The key can't do this (for example, a test helper called with a live
            key).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                Example:
                  value:
                    error:
                      type: permission_error
                      code: test_mode_only
                      message: The test helper only works with a test key.
                      param: null
                      request_id: req_gX65JwIgM2XO4SGn00mDcVUk
        '404':
          description: No such object for this key's organization and mode.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                Example:
                  value:
                    error:
                      type: not_found_error
                      code: resource_missing
                      message: 'No such registration: reg_0000000000000000000000.'
                      param: id
                      request_id: req_PLJYvLLT2WjhIywrPjlhgIGv
        '409':
          description: >-
            The object's state doesn't allow this, or the Idempotency-Key was
            reused.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '429':
          description: Too many requests; wait for `Retry-After` seconds.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    MonitorChangeIn:
      properties:
        status:
          anyOf:
            - type: string
            - type: 'null'
          title: Status
          description: The status CAC now lists, such as INACTIVE.
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
          description: The name CAC now lists.
      type: object
      title: MonitorChangeIn
    V1BusinessMonitor:
      properties:
        object:
          type: string
          const: business_monitor
          title: Object
          default: business_monitor
        id:
          type: string
          title: Id
          description: mon_…
        number:
          type: string
          title: Number
        type:
          type: string
          enum:
            - BN
            - RC
            - IT
            - LP
            - LLP
          title: Type
        type_label:
          type: string
          title: Type Label
        name:
          type: string
          title: Name
          description: The registered name at the last check.
        status:
          type: string
          title: Status
          description: >-
            CAC's status at the last check: ACTIVE, INACTIVE, STRUCK OFF and so
            on.
        active:
          type: boolean
          title: Active
          description: True when `status` is ACTIVE.
        external_id:
          anyOf:
            - type: string
            - type: 'null'
          title: External Id
        state:
          type: string
          enum:
            - active
            - paused
            - deleted
          title: State
          description: >-
            paused: a 30-day renewal couldn't be charged; it resumes once your
            wallet can pay. deleted: you stopped it.
        paid_through:
          type: string
          title: Paid Through
          description: When the current 30 days end; it renews then.
        last_checked_at:
          anyOf:
            - type: string
            - type: 'null'
          title: Last Checked At
          description: The last time CAC's register was read for it.
        last_changed_at:
          anyOf:
            - type: string
            - type: 'null'
          title: Last Changed At
          description: The last time its name or status changed.
        amount_charged:
          anyOf:
            - type: string
            - type: 'null'
          title: Amount Charged
          description: 'On create only: what the first 30 days cost.'
        created_at:
          anyOf:
            - type: string
            - type: 'null'
          title: Created At
      type: object
      required:
        - id
        - number
        - type
        - type_label
        - name
        - status
        - active
        - external_id
        - state
        - paid_through
        - last_checked_at
        - last_changed_at
        - created_at
      title: V1BusinessMonitor
    Error:
      properties:
        error:
          $ref: '#/components/schemas/ErrorDetail'
      required:
        - error
      title: V1Error
      type: object
    ErrorDetail:
      properties:
        type:
          type: string
          enum:
            - invalid_request_error
            - authentication_error
            - payment_error
            - permission_error
            - not_found_error
            - idempotency_error
            - rate_limit_error
            - api_error
          title: Type
        code:
          type: string
          title: Code
          description: Stable and machine-readable, e.g. registration_incomplete.
        message:
          type: string
          title: Message
          description: For a developer to read; may change.
        param:
          anyOf:
            - type: string
            - type: 'null'
          title: Param
          description: The parameter at fault, as a path like proprietors[0].nin.
        request_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Request Id
          description: Also in the FastCAC-Request-Id header. Quote it to support.
        details:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Details
          description: >-
            Only on some errors. A 402 insufficient_balance carries amount_due,
            balance, currency and funding_account (number, bank, name; null
            until it's active).
      type: object
      required:
        - type
        - code
        - message
        - param
        - request_id
      title: ErrorDetail
  securitySchemes:
    apiKey:
      type: http
      scheme: bearer
      description: 'Your secret API key: fc_test_… in test mode, fc_live_… in live mode.'

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.