Maxio Sites API

The Site object represents a single billing account and holds site-wide configuration, such as default currency, tax settings, net terms, and which billing features are enabled. For more information, see [Understand Advanced Billing Sites](https://docs.maxio.com/configuration/advanced-billing/sites/sites-overview).

GitHub OpenAPI

Operations 3

GET /site.json readSite #
POST /sites/clear_data.json clearSite #
GET /chargify_js_keys.json listChargifyJsPublicKeys #

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/maxio:maxio-sites-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

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

maxio-sites-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Maxio Sites API
  version: '1.0'
  contact:
    email: support@maxio.com
  description: 'Operations tagged Sites across 2 of this provider''s published API definitions: maxio-advanced-billing-openapi31json.json, maxio-advanced-billing-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://{site}.chargify.com
  description: Default Advanced Billing environment hosted in US. Valid for the majority of our customers.
  variables:
    site:
      default: subdomain
      description: The subdomain for your Advanced Billing site.
- url: https://events.chargify.com/{site}
  description: Default Advanced Billing environment hosted in US. Valid for the majority of our customers.
  variables:
    site:
      default: subdomain
      description: The subdomain for your Advanced Billing site.
- url: https://{site}.ebilling.maxio.com
  description: Advanced Billing environment hosted in EU. Use only when you requested EU hosting for your AB account.
  variables:
    site:
      default: subdomain
      description: The subdomain for your Advanced Billing site.
security:
- BasicAuth: []
tags:
- name: Sites
  description: The Site object represents a single billing account and holds site-wide configuration, such as default currency, tax settings, net terms, and which billing features are enabled. For more information, see Understand Advanced Billing Sites.
paths:
  /site.json:
    parameters: []
    get:
      tags:
      - Sites
      summary: readSite
      description: 'Retrieves site data.


        For more information, see Sites in the product documentation. Specifically, the Clearing Site Data section is relevant to this endpoint.


        #### Relationship invoicing enabled

        If the site has Relationship invoicing enabled, additional properties are returned in the response:


        ```

        "customer_hierarchy_enabled": true,

        "whopays_enabled": true,

        "whopays_default_payer": "self"

        ```


        For more information, see Who Pays & Customer Hierarchy.'
      operationId: readSite
      parameters: []
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/SiteResponse'
                - examples:
                  - site:
                      id: 0
                      name: string
                      subdomain: string
                      currency: string
                      seller_id: 0
                      non_primary_currencies:
                      - string
                      relationship_invoicing_enabled: true
                      schedule_subscription_cancellation_enabled: true
                      customer_hierarchy_enabled: true
                      whopays_enabled: true
                      whopays_default_payer: string
                      default_payment_collection_method: string
                      organization_address:
                        street: null
                        line2: null
                        city: null
                        state: null
                        zip: null
                        country: null
                        name: string
                        phone: string
                      tax_configuration:
                        kind: custom
                        fully_configured: true
                        destination_address: shipping_then_billing
                      net_terms:
                        default_net_terms: 0
                        automatic_net_terms: 0
                        remittance_net_terms: 0
                        net_terms_on_remittance_signups_enabled: false
                        custom_net_terms_enabled: false
                      test: true
                      allocation_settings:
                        upgrade_charge: prorated
                        downgrade_credit: none
                        accrue_charge: 'true'
                contentMediaType: application/json
              examples:
                Example:
                  value:
                    site:
                      id: 0
                      name: string
                      subdomain: string
                      currency: string
                      seller_id: 0
                      non_primary_currencies:
                      - string
                      relationship_invoicing_enabled: true
                      schedule_subscription_cancellation_enabled: true
                      customer_hierarchy_enabled: true
                      whopays_enabled: true
                      whopays_default_payer: string
                      default_payment_collection_method: string
                      organization_address:
                        street: null
                        line2: null
                        city: null
                        state: null
                        zip: null
                        country: null
                        name: string
                        phone: string
                      tax_configuration:
                        kind: custom
                        fully_configured: true
                        destination_address: shipping_then_billing
                      net_terms:
                        default_net_terms: 0
                        automatic_net_terms: 0
                        remittance_net_terms: 0
                        net_terms_on_remittance_signups_enabled: false
                        custom_net_terms_enabled: false
                      test: true
                      allocation_settings:
                        upgrade_charge: prorated
                        downgrade_credit: none
                        accrue_charge: 'true'
      deprecated: false
    servers:
    - url: https://{site}.chargify.com
      description: Default Advanced Billing environment hosted in US. Valid for the majority of our customers.
      variables:
        site:
          default: subdomain
          description: The subdomain for your Advanced Billing site.
    - url: https://events.chargify.com/{site}
      description: Default Advanced Billing environment hosted in US. Valid for the majority of our customers.
      variables:
        site:
          default: subdomain
          description: The subdomain for your Advanced Billing site.
    - url: https://{site}.ebilling.maxio.com
      description: Advanced Billing environment hosted in EU. Use only when you requested EU hosting for your AB account.
      variables:
        site:
          default: subdomain
          description: The subdomain for your Advanced Billing site.
    - url: https://events.chargify.com/{site}
      description: Advanced Billing environment hosted in EU. Use only when you requested EU hosting for your AB account.
      variables:
        site:
          default: subdomain
          description: The subdomain for your Advanced Billing site.
  /sites/clear_data.json:
    parameters: []
    post:
      tags:
      - Sites
      summary: clearSite
      description: 'Clears all data from a test site asynchronously. This call is asynchronous and there may be a delay before the site data is fully deleted. If you are clearing site data for an automated test, you will need to build in a delay and/or check that there are no products, etc., in the site before proceeding.


        **This functionality will only work on sites in TEST mode. Attempts to perform this on sites in “live” mode will result in a response of 403 FORBIDDEN.**'
      operationId: clearSite
      parameters:
      - name: cleanup_scope
        in: query
        description: "`all`: Will clear all products, customers, and related subscriptions from the site. \n`customers`: Will clear only customers and related subscriptions (leaving the products untouched) for the site. \nRevenue will also be reset to 0.\nUse in query `cleanup_scope=all`."
        style: form
        explode: true
        schema:
          allOf:
          - $ref: '#/components/schemas/Cleanupscope'
          - description: "`all`: Will clear all products, customers, and related subscriptions from the site. \n`customers`: Will clear only customers and related subscriptions (leaving the products untouched) for the site. \nRevenue will also be reset to 0.\nUse in query `cleanup_scope=all`."
      responses:
        '200':
          description: OK
          headers: {}
          content: {}
      deprecated: false
    servers:
    - url: https://{site}.chargify.com
      description: Default Advanced Billing environment hosted in US. Valid for the majority of our customers.
      variables:
        site:
          default: subdomain
          description: The subdomain for your Advanced Billing site.
    - url: https://events.chargify.com/{site}
      description: Default Advanced Billing environment hosted in US. Valid for the majority of our customers.
      variables:
        site:
          default: subdomain
          description: The subdomain for your Advanced Billing site.
    - url: https://{site}.ebilling.maxio.com
      description: Advanced Billing environment hosted in EU. Use only when you requested EU hosting for your AB account.
      variables:
        site:
          default: subdomain
          description: The subdomain for your Advanced Billing site.
    - url: https://events.chargify.com/{site}
      description: Advanced Billing environment hosted in EU. Use only when you requested EU hosting for your AB account.
      variables:
        site:
          default: subdomain
          description: The subdomain for your Advanced Billing site.
  /chargify_js_keys.json:
    parameters: []
    get:
      tags:
      - Sites
      summary: listChargifyJsPublicKeys
      description: Lists public keys used for Maxio.js (formerly Chargify.js).
      operationId: listChargifyJsPublicKeys
      parameters:
      - name: page
        in: query
        description: 'Result records are organized in pages. By default, the first page of results is displayed. The page parameter specifies a page number of results to fetch. You can start navigating through the pages to consume the results. You do this by passing in a page parameter. Retrieve the next page by adding ?page=2 to the query string. If there are no results to return, then an empty result set will be returned.

          Use in query `page=1`.'
        style: form
        explode: true
        schema:
          minimum: 1.0
          type: integer
          contentEncoding: int32
          default: 1
          examples:
          - 1
      - name: per_page
        in: query
        description: 'This parameter indicates how many records to fetch in each request. Default value is 20. The maximum allowed values is 200; any per_page value over 200 will be changed to 200.

          Use in query `per_page=200`.'
        style: form
        explode: true
        schema:
          maximum: 200.0
          type: integer
          contentEncoding: int32
          default: 20
          examples:
          - 50
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/ListPublicKeysResponse'
                - examples:
                  - chargify_js_keys:
                    - public_key: chjs_ftrxt7c4fv6f74wchjs_5zyn7gnwv
                      requires_security_token: false
                      created_at: '2021-01-01T05:00:00-04:00'
                    meta:
                      total_count: 1
                      current_page: 1
                      total_pages: 1
                      per_page: 10
                contentMediaType: application/json
              examples:
                Example:
                  value:
                    chargify_js_keys:
                    - public_key: chjs_ftrxt7c4fv6f74wchjs_5zyn7gnwv
                      requires_security_token: false
                      created_at: '2021-01-01T05:00:00-04:00'
                    meta:
                      total_count: 1
                      current_page: 1
                      total_pages: 1
                      per_page: 10
      deprecated: false
    servers:
    - url: https://{site}.chargify.com
      description: Default Advanced Billing environment hosted in US. Valid for the majority of our customers.
      variables:
        site:
          default: subdomain
          description: The subdomain for your Advanced Billing site.
    - url: https://events.chargify.com/{site}
      description: Default Advanced Billing environment hosted in US. Valid for the majority of our customers.
      variables:
        site:
          default: subdomain
          description: The subdomain for your Advanced Billing site.
    - url: https://{site}.ebilling.maxio.com
      description: Advanced Billing environment hosted in EU. Use only when you requested EU hosting for your AB account.
      variables:
        site:
          default: subdomain
          description: The subdomain for your Advanced Billing site.
    - url: https://events.chargify.com/{site}
      description: Advanced Billing environment hosted in EU. Use only when you requested EU hosting for your AB account.
      variables:
        site:
          default: subdomain
          description: The subdomain for your Advanced Billing site.
components:
  schemas:
    Site:
      title: Site
      type: object
      properties:
        id:
          type: integer
          contentEncoding: int32
        name:
          type: string
        subdomain:
          type: string
        currency:
          type: string
        seller_id:
          type: integer
          contentEncoding: int32
        non_primary_currencies:
          type: array
          items:
            type: string
          description: ''
        relationship_invoicing_enabled:
          type: boolean
        schedule_subscription_cancellation_enabled:
          type: boolean
        customer_hierarchy_enabled:
          type: boolean
        whopays_enabled:
          type: boolean
        whopays_default_payer:
          type: string
        allocation_settings:
          $ref: '#/components/schemas/AllocationSettings'
        default_payment_collection_method:
          type: string
        organization_address:
          $ref: '#/components/schemas/OrganizationAddress'
        tax_configuration:
          $ref: '#/components/schemas/TaxConfiguration'
        net_terms:
          $ref: '#/components/schemas/NetTerms'
        multi_frequency_enabled:
          type: boolean
          description: Whether the site has the multi-frequency billing feature enabled. Only present when relationship invoicing is active.
        auto_renewals_enabled:
          type: boolean
          description: Whether the auto-renewals feature is enabled for this site.
        portal_enabled:
          type: boolean
          description: Whether the Billing Portal is enabled for this site.
        test:
          type: boolean
    TaxConfiguration:
      title: TaxConfiguration
      type: object
      properties:
        kind:
          $ref: '#/components/schemas/TaxConfigurationKind'
        destination_address:
          $ref: '#/components/schemas/TaxDestinationAddress'
        fully_configured:
          type: boolean
          description: 'Returns `true` when Chargify has been properly configured to charge tax using the specified tax system. More details about taxes: https://docs.maxio.com/billing/taxes/overview/understand-tax-options'
          default: false
    CreditType:
      title: CreditType
      enum:
      - full
      - prorated
      - none
      type: string
      description: The type of credit to be created when upgrading/downgrading. Defaults to the component and then site setting if one is not provided.
    NetTerms:
      title: NetTerms
      type: object
      properties:
        default_net_terms:
          type: integer
          contentEncoding: int32
          default: 0
        automatic_net_terms:
          type: integer
          contentEncoding: int32
          default: 0
        remittance_net_terms:
          type: integer
          contentEncoding: int32
          default: 0
        net_terms_on_remittance_signups_enabled:
          type: boolean
          default: false
        custom_net_terms_enabled:
          type: boolean
          default: false
    ListPublicKeysMeta:
      title: ListPublicKeysMeta
      type: object
      properties:
        total_count:
          type: integer
          contentEncoding: int32
        current_page:
          type: integer
          contentEncoding: int32
        total_pages:
          type: integer
          contentEncoding: int32
        per_page:
          type: integer
          contentEncoding: int32
    Cleanupscope:
      title: Cleanupscope
      enum:
      - all
      - customers
      type: string
      description: 'all: Will clear all products, customers, and related subscriptions from the site. customers: Will clear only customers and related subscriptions (leaving the products untouched) for the site. Revenue will also be reset to 0.'
    ListPublicKeysResponse:
      title: ListPublicKeysResponse
      type: object
      properties:
        chargify_js_keys:
          type: array
          items:
            $ref: '#/components/schemas/PublicKey'
          description: ''
        meta:
          $ref: '#/components/schemas/ListPublicKeysMeta'
    OrganizationAddress:
      title: OrganizationAddress
      type: object
      properties:
        street:
          type:
          - string
          - 'null'
        line2:
          type:
          - string
          - 'null'
        city:
          type:
          - string
          - 'null'
        state:
          type:
          - string
          - 'null'
        zip:
          type:
          - string
          - 'null'
        country:
          type:
          - string
          - 'null'
        name:
          type:
          - string
          - 'null'
        phone:
          type:
          - string
          - 'null'
    SiteResponse:
      title: SiteResponse
      required:
      - site
      type: object
      properties:
        site:
          $ref: '#/components/schemas/Site'
    PublicKey:
      title: PublicKey
      type: object
      properties:
        public_key:
          type: string
        requires_security_token:
          type: boolean
        created_at:
          type: string
          contentEncoding: date-time
    AllocationSettings:
      title: AllocationSettings
      type: object
      properties:
        upgrade_charge:
          allOf:
          - oneOf:
            - {}
            - $ref: '#/components/schemas/CreditType'
          - description: The type of credit to be created when upgrading/downgrading. Defaults to the component and then site setting if one is not provided.
        downgrade_credit:
          allOf:
          - oneOf:
            - {}
            - $ref: '#/components/schemas/CreditType'
          - description: The type of credit to be created when upgrading/downgrading. Defaults to the component and then site setting if one is not provided.
        accrue_charge:
          type: string
          description: Either "true" or "false".
    TaxConfigurationKind:
      title: TaxConfigurationKind
      enum:
      - custom
      - managed avalara
      - linked avalara
      - digital river
      - anrok
      - taxjar
      - numeral
      - sphere
      - taxwire
      type: string
    TaxDestinationAddress:
      title: TaxDestinationAddress
      enum:
      - shipping_then_billing
      - billing_then_shipping
      - shipping_only
      - billing_only
      type: string
  securitySchemes:
    BasicAuth:
      type: http
      description: The `username` is a Maxio Chargify API key. The `password` is `x`.
      scheme: basic
x-refined-from:
- maxio-advanced-billing-openapi31json.json
- maxio-advanced-billing-openapi.yml
x-provenance:
  method: harvested
  publisher: Maxio
  source: https://developers.maxio.com/static/exports/maxio-advanced-billing-openapi31json.json
  note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
    stamped by stamp-openapi-provenance.py (roadmap#793)