3GPP Scout Meetings API

The meetings API from 3GPP Scout — 4 operation(s) for meetings.

Operations 4

GET /meetings List Meetings #
GET /meetings/{meeting_id} Get Meeting #
GET /meetings/{meeting_id}/decisions List Meeting Decisions #
GET /simulation-results Find Simulation Results #

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/3gppscout-com:3gppscout-com-meetings-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

3gppscout-com-meetings-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: 3gppscout Com Meetings API
  version: 0.2.0
  description: 'Operations tagged meetings across 2 of this provider''s published API definitions: 3gppscout-com-openapi.json, api.json. Each path carries the servers of the definition it was published in.'
tags:
- name: Meetings
paths:
  /meetings:
    get:
      tags:
      - Meetings
      summary: List Meetings
      description: 'List 3GPP working group meetings in the TDoc catalog (RAN1, RAN2, RAN3, RAN4, SA2 pilot scope).


        Each meeting has dates, location, TDoc number range, TDoc counts, and `coverage`: `full_register`

        when the whole meeting register is in the catalog, `partial` when only revision-linked or on-demand

        TDocs are. Meetings are newest first, or oldest first from `since` when it is set (`order` says which).

        `since` and `until` filter on the start date; when no meeting starts in the window, `nearest_outside_window`

        lists each group''s last meeting before it and next meeting after it.'
      operationId: list_meetings
      parameters:
      - name: group
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Comma-separated groups, e.g. 'R1', 'RAN2', 'S2'.
          title: Group
        description: Comma-separated groups, e.g. 'R1', 'RAN2', 'S2'.
      - name: since
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Meetings starting on or after this date (YYYY-MM-DD). With since, the meetings nearest to it come first.
          title: Since
        description: Meetings starting on or after this date (YYYY-MM-DD). With since, the meetings nearest to it come first.
      - name: until
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Meetings starting on or before this date (YYYY-MM-DD).
          title: Until
        description: Meetings starting on or before this date (YYYY-MM-DD).
      - name: state
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: planned, live, or completed.
          title: State
        description: planned, live, or completed.
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /meetings/{meeting_id}:
    get:
      tags:
      - Meetings
      summary: Get Meeting
      description: 'Get one 3GPP meeting, for example R1-126 (also accepts RAN1#126): dates, location, TDoc counts,

        agenda items with TDoc counts, and the key documents (chair notes, meeting reports, feature-lead

        summaries, way forwards).


        `decisions.counts` counts the extracted decisions by type; list_meeting_decisions returns them with

        quotes. The documents listed in `decision_sources` and the register status of each TDoc are the

        decision sources. Do not infer agreements from proposals.


        Key documents are listed chair notes and reports first, up to `documents_limit`; `documents_total` and

        `documents_by_kind` count all of them. The response stays under about 60,000 characters: when it

        would not, the document list and then the agenda list are shortened and `documents_note` or

        `agenda_note` says so.'
      operationId: get_meeting
      parameters:
      - name: meeting_id
        in: path
        required: true
        schema:
          type: string
          title: Meeting Id
      - name: include
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: 'Comma-separated sections: ''agenda'' (agenda items with TDoc counts), ''documents'' (chair notes, reports, summaries, way forwards, agendas).'
          default: agenda,documents
          title: Include
        description: 'Comma-separated sections: ''agenda'' (agenda items with TDoc counts), ''documents'' (chair notes, reports, summaries, way forwards, agendas).'
      - name: documents_limit
        in: query
        required: false
        schema:
          type: integer
          maximum: 150
          minimum: 0
          description: Most key documents to list; chair notes and reports come first.
          default: 40
          title: Documents Limit
        description: Most key documents to list; chair notes and reports come first.
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /meetings/{meeting_id}/decisions:
    get:
      tags:
      - Meetings
      summary: List Meeting Decisions
      description: 'Decisions recorded at one 3GPP meeting (for example R1-126): agreements, working assumptions,

        conclusions, FFS items, and CR, LS, and way-forward outcomes, each with a verbatim quote and its source.

        CR outcomes have decision_type approved_cr; way-forward and LS outcomes are agreement or endorsed. A

        decision_type that is not one of these is mapped to its nearest type or ignored, and `warnings` says which.


        Decisions come only from decision sources: chair notes, meeting and session reports, feature-lead

        summaries, and the register status. They are never inferred from proposals. A summary record counts only

        when the meeting''s chair notes or reports record the same text; the rest are left out unless

        source_kind=summary is passed, and then carry `confirmed_by_meeting_record: false`. Each decision names the

        source TDoc and anchor, the TDoc it was recorded under (usually a feature-lead summary), the TDocs it

        references, and the proposals it adopts. The same outcome recorded in several sources is returned once,

        from chair notes first, with the others in `also_recorded_in`. `coverage` lists the meeting''s decision

        sources and whether each has been processed, so an empty list is a real "nothing found".


        With `q`, decisions are matched to the topic by meaning (embedding similarity and a reranker, so

        "timing advance" finds "UL time/frequency pre-compensation") and by exact identifiers, and returned

        most relevant first, each with `topic_relevance`. Only relevant decisions are returned, unless

        `agenda_item` is also given: then every decision under the item is returned, ranked by the topic.

        When nothing is relevant, `decisions` is empty and `message` says so. A page stops early rather than

        exceed about 60,000 characters; follow `next_cursor`.'
      operationId: list_meeting_decisions
      parameters:
      - name: meeting_id
        in: path
        required: true
        schema:
          type: string
          title: Meeting Id
      - name: agenda_item
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Comma-separated agenda items; '10.7' also matches 10.7.1.
          title: Agenda Item
        description: Comma-separated agenda items; '10.7' also matches 10.7.1.
      - name: decision_type
        in: query
        required: false
        schema:
          anyOf:
          - type: array
            items:
              type: string
              enum:
              - agreement
              - working_assumption
              - conclusion
              - observation
              - ffs
              - noted
              - not_pursued
              - approved_cr
              - endorsed
          - type: 'null'
          description: 'Decision types to return. CR outcomes are approved_cr; way-forward and LS outcomes are agreement or endorsed. Default: every type except noted.'
          title: Decision Type
        description: 'Decision types to return. CR outcomes are approved_cr; way-forward and LS outcomes are agreement or endorsed. Default: every type except noted.'
      - name: q
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Topic, matched by meaning and by exact identifiers, e.g. 'NTN timing advance' or 'ta-CommonDrift'.
          title: Q
        description: Topic, matched by meaning and by exact identifiers, e.g. 'NTN timing advance' or 'ta-CommonDrift'.
      - name: source_kind
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: 'Comma-separated: chair_notes, report, summary, register.'
          title: Source Kind
        description: 'Comma-separated: chair_notes, report, summary, register.'
      - name: limit
        in: query
        required: false
        schema:
          type: integer
          maximum: 200
          minimum: 1
          default: 50
          title: Limit
      - name: cursor
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: next_cursor from a previous response.
          title: Cursor
        description: next_cursor from a previous response.
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /simulation-results:
    get:
      tags:
      - Meetings
      summary: Find Simulation Results
      description: Simulation results companies reported in RAN1 contributions, grouped by company (private preview).
      operationId: find_simulation_results
      parameters:
      - name: agenda_item
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: RAN1 agenda items, comma-separated; '10.5' also matches 10.5.x.
          title: Agenda Item
        description: RAN1 agenda items, comma-separated; '10.5' also matches 10.5.x.
      - name: topic
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            maxLength: 300
          - type: 'null'
          description: Words to match, e.g. 'LDPC base graph' or 'near-field OR spherical'.
          title: Topic
        description: Words to match, e.g. 'LDPC base graph' or 'near-field OR spherical'.
      - name: meeting
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Meeting IDs, comma-separated, e.g. 'R1-126,R1-126-bis'.
          title: Meeting
        description: Meeting IDs, comma-separated, e.g. 'R1-126,R1-126-bis'.
      - name: company
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            maxLength: 80
          - type: 'null'
          description: Only results reported by this company.
          title: Company
        description: Only results reported by this company.
      - name: metric
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            maxLength: 120
          - type: 'null'
          description: Words the metric must contain, e.g. 'SNR gain' or 'throughput'.
          title: Metric
        description: Words the metric must contain, e.g. 'SNR gain' or 'throughput'.
      - name: baseline
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            maxLength: 120
          - type: 'null'
          description: Words the baseline must contain, e.g. 'BG1' or 'Type I'.
          title: Baseline
        description: Words the baseline must contain, e.g. 'BG1' or 'Type I'.
      - name: source
        in: query
        required: false
        schema:
          type: string
          pattern: ^(all|text|figures)$
          description: '''text'' (text and tables), ''figures'', or ''all''.'
          default: all
          title: Source
        description: '''text'' (text and tables), ''figures'', or ''all''.'
      - name: comparisons_only
        in: query
        required: false
        schema:
          type: boolean
          description: Only gains or losses against a baseline.
          default: false
          title: Comparisons Only
        description: Only gains or losses against a baseline.
      - name: per_company
        in: query
        required: false
        schema:
          type: integer
          maximum: 10
          minimum: 1
          default: 3
          title: Per Company
      - name: max_companies
        in: query
        required: false
        schema:
          type: integer
          maximum: 40
          minimum: 1
          default: 15
          title: Max Companies
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
x-refined-from:
- 3gppscout-com-openapi.json
- api.json