IEEE Xplore Metadata Search API

Query and retrieve metadata records and abstracts for IEEE documents

OpenAPI Specification

ieee-metadata-search-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: IEEE Xplore Metadata Search API
  description: The IEEE Xplore API suite provides programmatic access to over 6 million documents spanning engineering, computer science, electronics, and technology. The Metadata Search API supports free-text and fielded searches with Boolean operators, returning JSON or XML. The DOI API resolves up to 25 DOIs per request. The Open Access API retrieves full text for openly licensed IEEE articles. The Full-Text Access API serves institutional subscribers. All endpoints require an API key registered at the IEEE Developer Portal.
  version: 1.0.0
  termsOfService: https://developer.ieee.org/terms_of_use
  contact:
    name: IEEE Xplore API Support
    email: onlinesupport@ieee.org
    url: https://developer.ieee.org/
  license:
    name: IEEE Terms of Use
    url: https://developer.ieee.org/terms_of_use
servers:
- url: https://ieeexploreapi.ieee.org/api/v1
  description: IEEE Xplore API production server
security:
- ApiKeyQuery: []
tags:
- name: Metadata Search
  description: Query and retrieve metadata records and abstracts for IEEE documents
paths:
  /search/articles:
    get:
      operationId: searchArticles
      summary: Search IEEE Xplore article metadata
      description: Query and retrieve metadata records and abstracts for more than 6 million documents in IEEE Xplore including journals, conference proceedings, standards, books, and courses. Supports free-text, Boolean, and fielded searches. Returns up to 200 records per request with JSON (default) or XML output. The apikey query parameter is required on every request.
      tags:
      - Metadata Search
      parameters:
      - $ref: '#/components/parameters/ApiKey'
      - name: querytext
        in: query
        description: Free-text search across all configured metadata fields and abstract text. Use for general keyword searches.
        required: false
        schema:
          type: string
        example: deep learning neural network
      - name: abstract
        in: query
        description: Search text within the abstract field only.
        required: false
        schema:
          type: string
      - name: affiliation
        in: query
        description: Search by author institutional affiliation text.
        required: false
        schema:
          type: string
      - name: article_number
        in: query
        description: IEEE unique identifier for a specific article. Use to retrieve a single known document.
        required: false
        schema:
          type: string
        example: '9147599'
      - name: article_title
        in: query
        description: Search within the article title field.
        required: false
        schema:
          type: string
      - name: author
        in: query
        description: Search by author name.
        required: false
        schema:
          type: string
      - name: booleantext
        in: query
        description: Boolean query against all configured metadata fields, abstract, and document text. Supports AND, OR, NOT operators.
        required: false
        schema:
          type: string
        example: (machine learning) AND (robotics OR automation)
      - name: content_type
        in: query
        description: Filter results by content type.
        required: false
        schema:
          type: string
          enum:
          - Journals
          - Conference Publications
          - Standards
          - Books
          - Courses
          - Magazines
      - name: d_au
        in: query
        description: Faceted author search using Open Author Facet data field.
        required: false
        schema:
          type: string
      - name: d_pubtype
        in: query
        description: Faceted content-type filter using Open Content Type Facet data field.
        required: false
        schema:
          type: string
      - name: d_year
        in: query
        description: Faceted publication year filter.
        required: false
        schema:
          type: integer
          example: 2024
      - name: doi
        in: query
        description: Search or retrieve a document by its Digital Object Identifier.
        required: false
        schema:
          type: string
        example: 10.1109/TNET.2020.3001245
      - name: end_date
        in: query
        description: 'Upper bound for publication date filter. Format: YYYYMMDD or YYYY.'
        required: false
        schema:
          type: string
        example: '20241231'
      - name: index_terms
        in: query
        description: Search within author keywords, IEEE Terms, and MeSH Terms.
        required: false
        schema:
          type: string
      - name: isbn
        in: query
        description: Search by International Standard Book Number.
        required: false
        schema:
          type: string
      - name: issn
        in: query
        description: Search by International Standard Serial Number.
        required: false
        schema:
          type: string
      - name: is_number
        in: query
        description: IEEE internal journal issue identifier.
        required: false
        schema:
          type: string
      - name: max_records
        in: query
        description: Maximum number of records to return per request. Default is 25; maximum is 200.
        required: false
        schema:
          type: integer
          minimum: 1
          maximum: 200
          default: 25
      - name: publication_number
        in: query
        description: IEEE unique publication record number (journal or conference).
        required: false
        schema:
          type: string
      - name: publication_title
        in: query
        description: Search within the publication title (journal, conference, or book name).
        required: false
        schema:
          type: string
      - name: publication_year
        in: query
        description: Filter results by publication year.
        required: false
        schema:
          type: integer
          example: 2023
      - name: sort_field
        in: query
        description: Field to sort results by.
        required: false
        schema:
          type: string
          enum:
          - article_number
          - article_title
          - publication_title
      - name: sort_order
        in: query
        description: Sort direction.
        required: false
        schema:
          type: string
          enum:
          - asc
          - desc
          default: asc
      - name: start_date
        in: query
        description: 'Lower bound for publication date filter. Format: YYYYMMDD or YYYY.'
        required: false
        schema:
          type: string
        example: '20200101'
      - name: start_record
        in: query
        description: Sequence number of the first record to return. Used for pagination. Default is 1.
        required: false
        schema:
          type: integer
          minimum: 1
          default: 1
      - name: format
        in: query
        description: Response format. Default is json.
        required: false
        schema:
          type: string
          enum:
          - json
          - xml
          default: json
      responses:
        '200':
          description: Successful search response containing matching article records.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchResponse'
              example:
                total_records: 1
                total_searched: 6000000
                articles:
                - article_number: '9147599'
                  title: Deep Learning for Natural Language Processing
                  abstract: This paper presents a comprehensive survey of deep learning techniques applied to NLP tasks.
                  doi: 10.1109/ACCESS.2020.3012345
                  authors:
                    authors:
                    - full_name: Smith, J.
                      author_order: 1
                      affiliation: MIT
                  publication_title: IEEE Access
                  publication_year: 2020
                  content_type: Journals
                  is_open_access: true
                  pdf_url: https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=9147599
                  html_url: https://ieeexplore.ieee.org/document/9147599
                  abstract_url: https://ieeexplore.ieee.org/document/9147599
        '400':
          description: Bad request. Invalid query parameters or missing required fields.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized. Invalid or missing API key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden. API key lacks permission for this resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Rate limit exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  parameters:
    ApiKey:
      name: apikey
      in: query
      required: true
      description: API key issued by the IEEE Developer Portal. Required on every request.
      schema:
        type: string
      example: YOUR_API_KEY_HERE
  schemas:
    Article:
      type: object
      description: Metadata record for a single IEEE document.
      properties:
        abstract:
          type: string
          description: Brief summary of the document contents. Available for journals, conference papers, standards, books, and courses.
        abstract_url:
          type: string
          format: uri
          description: IEEE Xplore URL linking to the abstract page.
        access_type:
          type: string
          description: Content availability category. One of Open Access, Ephemera, Locked, or Plagiarized.
          enum:
          - Open Access
          - Ephemera
          - Locked
          - Plagiarized
        article_number:
          type: string
          description: IEEE unique identifier for this specific article.
          example: '9147599'
        author_terms:
          type: array
          description: Keywords provided by the authors describing document topics.
          items:
            type: string
        authors:
          type: object
          description: Author information including names, order, and affiliations.
          properties:
            authors:
              type: array
              items:
                $ref: '#/components/schemas/Author'
        citing_paper_count:
          type: integer
          description: Number of papers that cite this article.
        citing_patent_count:
          type: integer
          description: Number of patents that cite this article.
        conference_dates:
          type: string
          description: Event dates for conference publications. Format varies by publication.
        conference_location:
          type: string
          description: City, state, or country where the conference was held.
        content_type:
          type: string
          description: Publication category.
          enum:
          - Journals
          - Conference Publications
          - Standards
          - Books
          - Courses
          - Magazines
        doi:
          type: string
          description: Digital Object Identifier from CrossRef.
          example: 10.1109/TNET.2020.3001245
        end_page:
          type: string
          description: Final page number in the print version.
        html_url:
          type: string
          format: uri
          description: IEEE Xplore URL for the full-text HTML version.
        ieee_terms:
          type: array
          description: Keywords assigned from IEEE's controlled vocabulary for journal articles and conference papers.
          items:
            type: string
        index_terms:
          type: object
          description: Combined index terms from author keywords and IEEE terms.
        insert_date:
          type: string
          description: Date of last update in YYYYMMDD format.
          example: '20230815'
        is_number:
          type: string
          description: IEEE internal journal issue identifier.
        isbn:
          type: string
          description: International Standard Book Number.
        issn:
          type: string
          description: International Standard Serial Number.
        issue:
          type: string
          description: Journal issue number.
        is_open_access:
          type: boolean
          description: Whether the article is available as open access.
        pdf_url:
          type: string
          format: uri
          description: IEEE Xplore URL for the full-text PDF.
        publication_date:
          type: string
          description: Article publication date. Format varies.
        publication_number:
          type: string
          description: IEEE unique publication record number for the parent journal or conference.
        publication_title:
          type: string
          description: Name of the journal, conference, or book.
          example: IEEE Transactions on Neural Networks and Learning Systems
        publication_year:
          type: integer
          description: Year of publication.
          example: 2023
        publisher:
          type: string
          description: Publishing organization name.
          example: IEEE
        rank:
          type: integer
          description: Relevance ranking position based on IEEE's algorithm.
        standard_number:
          type: string
          description: Standard designation number (e.g., IEEE 802.11u-2011).
        standard_status:
          type: string
          description: Current status of the standard.
          enum:
          - Active
          - Draft
          - Inactive
          - Superseded
        start_page:
          type: string
          description: Initial page number in the print version.
        title:
          type: string
          description: Title of the individual document.
        volume:
          type: string
          description: Volume detail for journal and conference publications.
    SearchResponse:
      type: object
      description: Response envelope for article search results.
      properties:
        total_records:
          type: integer
          description: Total number of matching documents found.
          example: 1482
        total_searched:
          type: integer
          description: Total number of documents searched in the index.
          example: 6000000
        articles:
          type: array
          description: Array of article metadata records.
          items:
            $ref: '#/components/schemas/Article'
    ErrorResponse:
      type: object
      description: Error response returned for failed API requests.
      properties:
        error:
          type: string
          description: Error type or code.
        message:
          type: string
          description: Human-readable description of the error.
    Author:
      type: object
      description: Author metadata for a document contributor.
      properties:
        full_name:
          type: string
          description: Full name of the author.
          example: Smith, John A.
        author_order:
          type: integer
          description: Numerical position of this author in the author list.
          example: 1
        affiliation:
          type: string
          description: Institutional affiliation of the author.
          example: Massachusetts Institute of Technology
        author_url:
          type: string
          format: uri
          description: IEEE Xplore URL providing additional author details.
  securitySchemes:
    ApiKeyQuery:
      type: apiKey
      in: query
      name: apikey
      description: API key obtained by registering at https://developer.ieee.org/member/register. Must be appended to every request as the apikey query parameter.
externalDocs:
  description: IEEE Xplore Developer Portal
  url: https://developer.ieee.org/docs