ACMA Antennas API

The ACMA antenna register.

Operations 2

GET /AntennaSearchXML/{searchText} Search the antenna register (XML) #
GET /AntennaSearchJSON/{searchText} Search the antenna register (JSON) #

Documentation

Specifications

Other Resources

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/acma-antennas-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 email required.

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

OpenAPI Specification

acma-antennas-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: ACMA Spectrum Licensing Antennas API
  version: '1.0'
  summary: Public, anonymous read access to the Australian Communications and Media Authority's Register of Radiocommunications Licences.
  description: 'The ACMA Spectrum Licensing API is an application programming interface which allows members of the public to query the ACMA''s spectrum licensing data. This data can be queried programmatically so that it can be used by external application developers to produce mobile or web applications.


    The service exposes both a REST endpoint (browser-consumable, XML or JSON per operation suffix) and a SOAP endpoint over the same operations. Every operation is a read; there are no writes, no authentication, no API key and no registration. A single query returns at most 2,000 records, deliberately, to discourage bulk extraction through the API - the full dataset is published as a daily zip download instead.


    PROVENANCE: this OpenAPI is an API Evangelist reconstruction of an API that ACMA documents but does not describe in OpenAPI. Paths, parameters, enumerated values and operation semantics are taken verbatim from ACMA''s published guide ''Spectrum Licensing API'' v1.0 (17/06/2016) and from the live WSDL at OuterService.svc?wsdl; response schemas are derived from live responses captured on 2026-07-25. Every operation carries an x-evidence block naming the documentation source and the live URL that was probed.'
  contact:
    name: ACMA
    email: info@acma.gov.au
    url: https://www.acma.gov.au/contact-us
  license:
    name: Licence to use the Register of Radiocommunications Licences
    url: https://www.acma.gov.au/radiocomms-licence-data#terms-and-conditions
  termsOfService: https://www.acma.gov.au/radiocomms-licence-data#terms-and-conditions
  x-source: https://www.acma.gov.au/sites/default/files/2019-11/Spectrum%20licensing%20API.docx
  x-wsdl: https://api.acma.gov.au/SpectrumLicensingAPIOuterService/OuterService.svc?wsdl
  x-generated-by: API Evangelist enrichment pipeline
  x-generated-on: '2026-07-25'
servers:
- url: https://api.acma.gov.au/SpectrumLicensingAPIOuterService/OuterService.svc
  description: Production REST endpoint (HTTPS). The guide publishes the same path over HTTP; HTTPS is live and verified.
security: []
tags:
- name: Antennas
  description: The ACMA antenna register.
paths:
  /AntennaSearchXML/{searchText}:
    get:
      operationId: antennaSearchXML
      summary: Search the antenna register (XML)
      description: 'Returns an XElement containing all antennas for the specified search terms.


        A single query returns at most 2,000 records; page with the offset parameter to retrieve more. For the whole dataset, ACMA publishes a same-day full RRL extract as a zip download rather than serving it through this API.'
      tags:
      - Antennas
      parameters:
      - name: searchText
        in: path
        required: true
        description: The text to search for.
        schema:
          type: string
      - name: searchField
        in: query
        required: false
        description: The field to search; any detail can be used to search all fields.
        schema:
          type: string
          enum:
          - Antenna ID
          - Model
          - Manufacturer
          - Type
      - $ref: '#/components/parameters/searchOption'
      - name: sortBy
        in: query
        required: false
        description: The field to sort the results by.
        schema:
          type: string
          enum:
          - antenna_id
          - model
          - manufacturer
          - type
          - rownum
      - $ref: '#/components/parameters/offset'
      - $ref: '#/components/parameters/resultsLimit'
      responses:
        '200':
          description: Matching records. The service returns HTTP 200 with an empty result array when nothing matches.
          content:
            application/xml:
              schema:
                type: string
                description: An XElement document. The element structure mirrors the JSON envelope of the matching *JSON operation; the XML Schema for the SOAP projection of this service is published at https://api.acma.gov.au/SpectrumLicensingAPIOuterService/OuterService.svc?xsd=xsd0 and harvested to wsdl/acma-spectrum-licensing-xsd0.xsd.
        '400':
          description: Malformed request - an unparseable URI template, or a parameter value the WCF service cannot bind (for example a non-numeric offset).
          content:
            text/html:
              schema:
                type: string
        '404':
          description: Unknown web method - the leading path segment does not match a published operation name.
          content:
            text/html:
              schema:
                type: string
        '500':
          description: Service fault. The WCF endpoint returns an HTML fault page rather than a structured error body; there is no RFC 9457 problem+json envelope.
          content:
            text/html:
              schema:
                type: string
      x-evidence:
        documented_in: https://www.acma.gov.au/sites/default/files/2019-11/Spectrum%20licensing%20API.docx
        verified_live: https://api.acma.gov.au/SpectrumLicensingAPIOuterService/OuterService.svc/AntennaSearchXML/Yagi?resultsLimit=1
        verified_on: '2026-07-25'
        verified_status: 200
  /AntennaSearchJSON/{searchText}:
    get:
      operationId: antennaSearchJSON
      summary: Search the antenna register (JSON)
      description: 'Returns a JSON stream containing all antennas for the specified search terms.


        A single query returns at most 2,000 records; page with the offset parameter to retrieve more. For the whole dataset, ACMA publishes a same-day full RRL extract as a zip download rather than serving it through this API.'
      tags:
      - Antennas
      parameters:
      - name: searchText
        in: path
        required: true
        description: The text to search for.
        schema:
          type: string
      - name: searchField
        in: query
        required: false
        description: The field to search; any detail can be used to search all fields.
        schema:
          type: string
          enum:
          - Antenna ID
          - Model
          - Manufacturer
          - Type
      - $ref: '#/components/parameters/searchOption'
      - name: sortBy
        in: query
        required: false
        description: The field to sort the results by.
        schema:
          type: string
          enum:
          - antenna_id
          - model
          - manufacturer
          - type
          - rownum
      - $ref: '#/components/parameters/offset'
      - $ref: '#/components/parameters/resultsLimit'
      - $ref: '#/components/parameters/isJSONP'
      - $ref: '#/components/parameters/jsonpCallback'
      responses:
        '200':
          description: Matching records. The service returns HTTP 200 with an empty result array when nothing matches.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AntennaSearchResponse'
              examples:
                live:
                  summary: Live response captured 2026-07-25 from https://api.acma.gov.au/SpectrumLicensingAPIOuterService/OuterService.svc/AntennaSearchJSON/Yagi?resultsLimit=1
                  value:
                    Antenna:
                    - TOTAL_RESULT: 573.0
                      RESULTS_INDEX: 1.0
                      EAN_ID: 1367
                      ANTENNA_ID: '861'
                      SORT_ANTENNA_ID: 00000000000000000861
                      GAIN: 13.2
                      FRONT_TO_BACK: 20.0
                      BAND_MIN_FREQ: null
                      BAND_MIN_FREQ_UNIT: MHz
                      BAND_MAX_FREQ: null
                      BAND_MAX_FREQ_UNIT: MHz
                      ANTENNA_SIZE: null
                      ANTENNA_TYPE: Yagi (Vertical Polarisation)-Y
                      MODEL: PD390D
                      MANUFACTURER: CELWAVE
        '400':
          description: Malformed request - an unparseable URI template, or a parameter value the WCF service cannot bind (for example a non-numeric offset).
          content:
            text/html:
              schema:
                type: string
        '404':
          description: Unknown web method - the leading path segment does not match a published operation name.
          content:
            text/html:
              schema:
                type: string
        '500':
          description: Service fault. The WCF endpoint returns an HTML fault page rather than a structured error body; there is no RFC 9457 problem+json envelope.
          content:
            text/html:
              schema:
                type: string
      x-evidence:
        documented_in: https://www.acma.gov.au/sites/default/files/2019-11/Spectrum%20licensing%20API.docx
        verified_live: https://api.acma.gov.au/SpectrumLicensingAPIOuterService/OuterService.svc/AntennaSearchJSON/Yagi?resultsLimit=1
        verified_on: '2026-07-25'
        verified_status: 200
components:
  parameters:
    searchOption:
      name: searchOption
      in: query
      required: false
      description: 'How searchText is matched: matches, begins with, or sounds like.'
      schema:
        type: string
        enum:
        - matches
        - begins with
        - sounds like
    isJSONP:
      name: isJSONP
      in: query
      required: false
      description: true or false, depending on whether JSONP is used.
      schema:
        type: boolean
    resultsLimit:
      name: resultsLimit
      in: query
      required: false
      description: The number of records to return after the offset. The service caps any single query at 2,000 records.
      schema:
        type: integer
        minimum: 1
        maximum: 2000
    jsonpCallback:
      name: jsonpCallback
      in: query
      required: false
      description: The callback function name to wrap the response in for JSONP.
      schema:
        type: string
    offset:
      name: offset
      in: query
      required: false
      description: The number of records to skip over. Used with resultsLimit to page beyond the 2,000-record cap (0, 2000, 4000, ...).
      schema:
        type: integer
        minimum: 0
  schemas:
    AntennaSearchResponse:
      type: object
      title: AntennaSearchResponse
      description: Antenna search results.
      properties:
        Antenna:
          type: array
          items:
            $ref: '#/components/schemas/Antenna'
    Antenna:
      type: object
      title: Antenna
      description: An antenna record from the ACMA antenna register.
      properties:
        TOTAL_RESULT:
          type:
          - number
          - 'null'
        RESULTS_INDEX:
          type:
          - number
          - 'null'
        EAN_ID:
          type:
          - integer
          - 'null'
        ANTENNA_ID:
          type:
          - string
          - 'null'
        SORT_ANTENNA_ID:
          type:
          - string
          - 'null'
        GAIN:
          type:
          - number
          - 'null'
        FRONT_TO_BACK:
          type:
          - number
          - 'null'
        BAND_MIN_FREQ:
          type:
          - string
          - 'null'
        BAND_MIN_FREQ_UNIT:
          type:
          - string
          - 'null'
        BAND_MAX_FREQ:
          type:
          - string
          - 'null'
        BAND_MAX_FREQ_UNIT:
          type:
          - string
          - 'null'
        ANTENNA_SIZE:
          type:
          - string
          - 'null'
        ANTENNA_TYPE:
          type:
          - string
          - 'null'
        MODEL:
          type:
          - string
          - 'null'
        MANUFACTURER:
          type:
          - string
          - 'null'
externalDocs:
  description: ACMA Spectrum Licensing API guide (DOCX, v1.0, 17/06/2016)
  url: https://www.acma.gov.au/sites/default/files/2019-11/Spectrum%20licensing%20API.docx