AlertCamp Platforms V4 API

The platforms-v4 API from AlertCamp — 2 operation(s) for platforms-v4.

Operations 2

GET /api/v4/platforms List Platforms #
GET /api/v4/platforms/{platform_id}/inject-script Get Inject Script #

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/alert-camp:alert-camp-platforms-v4-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

alert-camp-platforms-v4-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: AlertCamp Platforms V4 API
  description: Service d'alertes de disponibilité SEPAQ pour le camping au Québec
  version: 0.1.0
tags:
- name: platforms-v4
paths:
  /api/v4/platforms:
    get:
      tags:
      - platforms-v4
      summary: List Platforms
      description: List platforms (v4 — full surface incl. per-platform quota_bucket).
      operationId: list_platforms_api_v4_platforms_get
      parameters:
      - name: active_only
        in: query
        required: false
        schema:
          type: boolean
          description: Only return active platforms
          default: true
          title: Active Only
        description: Only return active platforms
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlatformListResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v4/platforms/{platform_id}/inject-script:
    get:
      tags:
      - platforms-v4
      summary: Get Inject Script
      description: 'The booking-page injection script for ONE platform.


        The list route carries this field too, but it is the wrong way to get it

        at booking time. ``webview_inject_script`` is ~25 KB and every

        GoingToCamp tenant stores the same copy, so the list payload is ~133 KB —

        seconds on a phone. The script lives server-side precisely so a DOM fix

        ships without an app release, which means the app must refetch before

        injecting; refetching the whole registry to do that made the booking

        button appear dead, and bounding that wait just meant quietly injecting

        the stale copy the fix was meant to replace.


        One platform, one field: small enough to fetch on the tap that needs it.'
      operationId: get_inject_script_api_v4_platforms__platform_id__inject_script_get
      parameters:
      - name: platform_id
        in: path
        required: true
        schema:
          type: string
          title: Platform Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: object
                additionalProperties:
                  anyOf:
                  - type: string
                  - type: 'null'
                title: Response Get Inject Script Api V4 Platforms  Platform Id  Inject Script Get
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    PlatformResponse:
      properties:
        id:
          type: string
          maxLength: 50
          title: Id
        name:
          type: string
          maxLength: 100
          title: Name
        scanner_name:
          type: string
          maxLength: 50
          title: Scanner Name
        quota_bucket:
          anyOf:
          - type: string
          - type: 'null'
          title: Quota Bucket
        country:
          type: string
          maxLength: 10
          title: Country
        base_booking_url:
          anyOf:
          - type: string
            maxLength: 255
          - type: 'null'
          title: Base Booking Url
        website_url:
          anyOf:
          - type: string
            maxLength: 255
          - type: 'null'
          title: Website Url
        is_active:
          type: boolean
          title: Is Active
          default: true
        show_quota_banner:
          type: boolean
          title: Show Quota Banner
          default: true
        immediate_poll_all:
          type: boolean
          title: Immediate Poll All
          default: false
        has_equipment_filter:
          type: boolean
          title: Has Equipment Filter
          default: false
        has_pets_filter:
          type: boolean
          title: Has Pets Filter
          default: false
        has_electricity_data:
          type: boolean
          title: Has Electricity Data
          default: false
        has_accessibility_data:
          type: boolean
          title: Has Accessibility Data
          default: false
        has_pull_through_data:
          type: boolean
          title: Has Pull Through Data
          default: false
        has_split_stay:
          type: boolean
          title: Has Split Stay
          default: false
        has_cross_listings:
          type: boolean
          title: Has Cross Listings
          default: false
        requires_paid_tier:
          type: boolean
          title: Requires Paid Tier
          default: false
        requires_url:
          type: boolean
          title: Requires Url
          default: true
        requires_resource_id:
          type: boolean
          title: Requires Resource Id
          default: false
        booking_roofed_tab_id:
          anyOf:
          - type: integer
          - type: 'null'
          title: Booking Roofed Tab Id
        booking_roofed_category_id:
          anyOf:
          - type: integer
          - type: 'null'
          title: Booking Roofed Category Id
        booking_camping_tab_id:
          anyOf:
          - type: integer
          - type: 'null'
          title: Booking Camping Tab Id
        booking_camping_category_id:
          anyOf:
          - type: integer
          - type: 'null'
          title: Booking Camping Category Id
        hides_party_size_for_camping:
          type: boolean
          title: Hides Party Size For Camping
          default: false
        has_van_equipment_category:
          type: boolean
          title: Has Van Equipment Category
          default: false
        icon_key:
          anyOf:
          - type: string
          - type: 'null'
          title: Icon Key
        expected_url_domain:
          anyOf:
          - type: string
          - type: 'null'
          title: Expected Url Domain
        reservation_url_template:
          anyOf:
          - type: string
          - type: 'null'
          title: Reservation Url Template
        has_site_map:
          type: boolean
          title: Has Site Map
          default: false
        has_geographic_site_picker:
          type: boolean
          title: Has Geographic Site Picker
          default: false
        has_geo_campground_photo_site_picker:
          type: boolean
          title: Has Geo Campground Photo Site Picker
          default: false
        has_canoe_camping:
          type: boolean
          title: Has Canoe Camping
          default: false
        has_backcountry:
          type: boolean
          title: Has Backcountry
          default: false
        has_day_use:
          type: boolean
          title: Has Day Use
          default: false
        has_backcountry_zone:
          type: boolean
          title: Has Backcountry Zone
          default: false
        has_entry_date_quota:
          type: boolean
          title: Has Entry Date Quota
          default: false
        has_release_schedule:
          type: boolean
          title: Has Release Schedule
          default: false
        fetch_is_month_bucketed:
          type: boolean
          title: Fetch Is Month Bucketed
          default: false
        has_sequence_constraint:
          type: boolean
          title: Has Sequence Constraint
          default: false
        supports_routes:
          type: boolean
          title: Supports Routes
          default: false
        zone_is_trip_unit:
          type: boolean
          title: Zone Is Trip Unit
          default: false
        party_size_gates_inventory:
          type: boolean
          title: Party Size Gates Inventory
          default: false
        webview_booking:
          type: boolean
          title: Webview Booking
          default: false
        webview_route_booking:
          type: boolean
          title: Webview Route Booking
          default: false
        webview_inject_script:
          anyOf:
          - type: string
          - type: 'null'
          title: Webview Inject Script
        webview_preseed_origin:
          anyOf:
          - type: string
          - type: 'null'
          title: Webview Preseed Origin
        webview_user_agent:
          anyOf:
          - type: string
          - type: 'null'
          title: Webview User Agent
        backcountry_has_equipment_filter:
          type: boolean
          title: Backcountry Has Equipment Filter
          default: false
        backcountry_equipment_category_id:
          anyOf:
          - type: integer
          - type: 'null'
          title: Backcountry Equipment Category Id
        canoe_camping_equipment_category_id:
          anyOf:
          - type: integer
          - type: 'null'
          title: Canoe Camping Equipment Category Id
        canoe_camping_has_equipment_filter:
          type: boolean
          title: Canoe Camping Has Equipment Filter
          default: false
        has_hot_spot:
          type: boolean
          title: Has Hot Spot
          default: true
        max_date_range_days:
          anyOf:
          - type: integer
          - type: 'null'
          title: Max Date Range Days
        max_stay_nights:
          anyOf:
          - type: integer
          - type: 'null'
          title: Max Stay Nights
        date_range_cap_enabled:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Date Range Cap Enabled
        max_advance_days:
          anyOf:
          - type: integer
          - type: 'null'
          title: Max Advance Days
        advance_days_cap_enabled:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Advance Days Cap Enabled
        monitoring_disabled:
          type: boolean
          title: Monitoring Disabled
          default: false
      type: object
      required:
      - id
      - name
      - scanner_name
      - country
      title: PlatformResponse
      description: Public-facing platform metadata returned by ``GET /platforms``.
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    PlatformListResponse:
      properties:
        platforms:
          items:
            $ref: '#/components/schemas/PlatformResponse'
          type: array
          title: Platforms
        total:
          type: integer
          title: Total
      type: object
      required:
      - platforms
      - total
      title: PlatformListResponse
      description: Wrapper response for ``GET /platforms``.