STRING Utility API

Utility endpoints (version, links, API key)

OpenAPI Specification

string-db-utility-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: STRING REST Utility API
  description: 'STRING is a protein-protein interaction network database providing scored associations between proteins across thousands of organisms. The REST API enables programmatic access to interaction scores, network visualizations, functional enrichment analysis, homology data, and protein annotations. STRING integrates data from genomic context, co-expression, text mining, biochemical and genetic experiments, and curated databases.

    '
  version: '12.0'
  contact:
    name: STRING Consortium
    url: https://string-db.org
  license:
    name: Creative Commons Attribution
    url: https://string-db.org/cgi/access?footer_active_subpage=licensing
  termsOfService: https://string-db.org/cgi/info?footer_active_subpage=cookies
servers:
- url: https://string-db.org
  description: STRING Production Server
security: []
tags:
- name: utility
  description: Utility endpoints (version, links, API key)
paths:
  /api/{format}/version:
    get:
      operationId: getVersion
      summary: Version
      description: Return the current STRING database version number and stable address URL.
      tags:
      - utility
      parameters:
      - $ref: '#/components/parameters/formatVersion'
      - $ref: '#/components/parameters/caller_identity'
      responses:
        '200':
          description: Current STRING database version
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/TsvResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/VersionInfo'
  /api/json/get_api_key:
    post:
      operationId: getApiKey
      summary: Get API Key
      description: 'Obtain an API key required for the Values/Ranks Enrichment endpoints. The key is tied to the caller_identity you provide.

        '
      tags:
      - utility
      requestBody:
        required: true
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              required:
              - caller_identity
              properties:
                caller_identity:
                  type: string
                  description: Unique identifier for your application or organization
                  example: my_lab_pipeline
      responses:
        '200':
          description: API key for Values/Ranks enrichment
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiKey'
        '400':
          $ref: '#/components/responses/BadRequest'
components:
  responses:
    BadRequest:
      description: Bad request (invalid parameters)
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
        text/plain:
          schema:
            type: string
  parameters:
    caller_identity:
      name: caller_identity
      in: query
      required: false
      description: 'A string identifying your application or organization. Strongly recommended; helps STRING admins contact you if there are issues.

        '
      schema:
        type: string
        example: my_bioinformatics_pipeline
    formatVersion:
      name: format
      in: path
      required: true
      description: Output format
      schema:
        type: string
        enum:
        - tsv
        - json
        - xml
        example: json
  schemas:
    TsvResponse:
      type: string
      description: Tab-separated values response with header row
    VersionInfo:
      type: object
      description: Current STRING database version
      properties:
        string_version:
          type: string
          description: STRING database version number
          example: '12.0'
        stable_address:
          type: string
          format: uri
          description: Stable URL for this version of STRING
          example: https://version-12-0.string-db.org
    ApiKey:
      type: object
      description: API key for Values/Ranks enrichment endpoints
      properties:
        api_key:
          type: string
          description: The API key to use in subsequent Values/Ranks requests
    Error:
      type: object
      properties:
        status:
          type: integer
        error:
          type: string
        message:
          type: string
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: query
      name: api_key
      description: 'API key required only for Values/Ranks Enrichment endpoints. Obtain via POST /api/json/get_api_key. All other endpoints are publicly accessible without authentication.

        '
externalDocs:
  description: STRING API Documentation
  url: https://string-db.org/help/api/