{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/targetwise-ai/json-schema/targetwise-ai-account-status-schema.json",
  "title": "AccountStatus",
  "x-generated": "2026-10-31",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/targetwise-ai-openapi.json#/components/schemas/AccountStatus",
  "type": "object",
  "additionalProperties": false,
  "required": [
    "object",
    "request_id",
    "key_valid",
    "plan",
    "subscription_status",
    "billing_period",
    "free_allowance",
    "paid_balance",
    "evaluation_remaining_credits",
    "usage_budget",
    "data_access",
    "lookup_readiness",
    "operations",
    "rates",
    "billing_url",
    "message"
  ],
  "properties": {
    "object": {
      "type": "string",
      "const": "account_status"
    },
    "request_id": {
      "type": "string"
    },
    "key_valid": {
      "type": "boolean",
      "const": true
    },
    "plan": {
      "type": "string"
    },
    "subscription_status": {
      "type": "string"
    },
    "billing_period": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "starts_at",
        "ends_at"
      ],
      "properties": {
        "starts_at": {
          "type": "string",
          "format": "date-time"
        },
        "ends_at": {
          "type": "string",
          "format": "date-time"
        }
      }
    },
    "free_allowance": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "emails",
        "business_phones"
      ],
      "properties": {
        "emails": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "limit",
            "used",
            "remaining"
          ],
          "properties": {
            "limit": {
              "type": "integer",
              "minimum": 0
            },
            "used": {
              "type": "integer",
              "minimum": 0
            },
            "remaining": {
              "type": "integer",
              "minimum": 0
            }
          }
        },
        "business_phones": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "limit",
            "used",
            "remaining"
          ],
          "properties": {
            "limit": {
              "type": "integer",
              "minimum": 0
            },
            "used": {
              "type": "integer",
              "minimum": 0
            },
            "remaining": {
              "type": "integer",
              "minimum": 0
            }
          }
        }
      }
    },
    "paid_balance": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "currency",
        "unit",
        "available_cents",
        "included_remaining_cents",
        "prepaid_remaining_cents",
        "reserved_cents"
      ],
      "properties": {
        "currency": {
          "type": "string",
          "const": "USD"
        },
        "unit": {
          "type": "string",
          "const": "usd_cents"
        },
        "available_cents": {
          "type": "integer",
          "minimum": 0
        },
        "included_remaining_cents": {
          "type": "integer",
          "minimum": 0
        },
        "prepaid_remaining_cents": {
          "type": "integer",
          "minimum": 0
        },
        "reserved_cents": {
          "type": "integer",
          "minimum": 0
        }
      }
    },
    "evaluation_remaining_credits": {
      "type": "integer",
      "minimum": 0
    },
    "usage_budget": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "monthly_cap_cents",
        "used_cents",
        "reserved_cents",
        "remaining_cents",
        "resets_at"
      ],
      "properties": {
        "monthly_cap_cents": {
          "anyOf": [
            {
              "type": "integer",
              "minimum": 0
            },
            {
              "type": "null"
            }
          ]
        },
        "used_cents": {
          "type": "integer",
          "minimum": 0
        },
        "reserved_cents": {
          "type": "integer",
          "minimum": 0
        },
        "remaining_cents": {
          "anyOf": [
            {
              "type": "integer",
              "minimum": 0
            },
            {
              "type": "null"
            }
          ]
        },
        "resets_at": {
          "type": "string",
          "format": "date-time"
        }
      }
    },
    "data_access": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "active",
        "reason"
      ],
      "properties": {
        "active": {
          "type": "boolean"
        },
        "reason": {
          "type": "string"
        }
      }
    },
    "lookup_readiness": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "work_email",
        "business_phone",
        "email_and_phone"
      ],
      "properties": {
        "work_email": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "can_call",
            "reason",
            "maximum_paid_charge_cents"
          ],
          "properties": {
            "can_call": {
              "type": "boolean"
            },
            "reason": {
              "type": "string"
            },
            "maximum_paid_charge_cents": {
              "type": "integer",
              "minimum": 0
            }
          }
        },
        "business_phone": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "can_call",
            "reason",
            "maximum_paid_charge_cents"
          ],
          "properties": {
            "can_call": {
              "type": "boolean"
            },
            "reason": {
              "type": "string"
            },
            "maximum_paid_charge_cents": {
              "type": "integer",
              "minimum": 0
            }
          }
        },
        "email_and_phone": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "can_call",
            "reason",
            "maximum_paid_charge_cents"
          ],
          "properties": {
            "can_call": {
              "type": "boolean"
            },
            "reason": {
              "type": "string"
            },
            "maximum_paid_charge_cents": {
              "type": "integer",
              "minimum": 0
            }
          }
        }
      }
    },
    "operations": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "operation",
          "available_on_plan",
          "input_condition"
        ],
        "properties": {
          "operation": {
            "type": "string",
            "enum": [
              "company_prospecting",
              "contact_prospecting",
              "company_enrichment",
              "contact_enrichment",
              "work_email_lookup",
              "phone_lookup",
              "reverse_email_lookup",
              "company_search",
              "employee_prospecting",
              "employee_details",
              "company_autocomplete"
            ]
          },
          "available_on_plan": {
            "type": "boolean"
          },
          "input_condition": {
            "anyOf": [
              {
                "type": "object",
                "additionalProperties": true
              },
              {
                "type": "null"
              }
            ]
          }
        }
      }
    },
    "rates": {
      "anyOf": [
        {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "currency",
            "email_cents",
            "business_phone_cents"
          ],
          "properties": {
            "currency": {
              "type": "string",
              "const": "USD"
            },
            "email_cents": {
              "type": "integer",
              "minimum": 0
            },
            "business_phone_cents": {
              "type": "integer",
              "minimum": 0
            }
          }
        },
        {
          "type": "null"
        }
      ]
    },
    "billing_url": {
      "type": "string",
      "format": "uri"
    },
    "message": {
      "type": "string"
    }
  }
}