IPFS Config API

The Config API from IPFS — 4 operation(s) for config.

OpenAPI Specification

ipfs-config-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: IPFS RPC Add Config API
  version: v0
  description: 'When a Kubo IPFS node is running as a daemon, it exposes an HTTP RPC API that allows you to control the node and run the same commands you can from the command line.


    In many cases, using this RPC API is preferable to embedding IPFS directly in your program — it allows you to maintain peer connections that are longer lived than your app and you can keep a single IPFS node running instead of several if your app can be launched multiple times. In fact, the `ipfs` CLI commands use this RPC API when operating in online mode.'
  x-providerName: IPFS
  x-logo:
    url: https://raw.githubusercontent.com/ipfs/ipfs-docs/55fe8bc6a53ba3b9023951fb4b432efbbc81fba5/docs/.vuepress/public/images/ipfs-logo.svg
servers:
- description: Local IPFS node
  url: http://localhost:5001
- description: Local IPFS node
  url: http://127.0.0.1:5001
- description: Infura hosted IPFS node
  url: https://ipfs.infura.io:5001
tags:
- name: Config
paths:
  /api/v0/config:
    post:
      operationId: config
      description: Get and set IPFS config values.
      externalDocs:
        url: https://docs.ipfs.tech/reference/kubo/rpc/#api-v0-config
      parameters:
      - name: arg
        in: query
        description: 'arg0: The key of the config entry (e.g. "Addresses.API").


          arg1: The value to set the config entry to.'
        required: true
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: bool
        in: query
        description: Set a boolean value.
        schema:
          type: boolean
      - name: json
        in: query
        description: Parse stringified JSON.
        schema:
          type: boolean
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              example:
                Key: <string>
                Value: <object>
      tags:
      - Config
  /api/v0/config/profile/apply:
    post:
      operationId: config/profile/apply
      description: Apply profile to config.
      externalDocs:
        url: https://docs.ipfs.tech/reference/kubo/rpc/#api-v0-config-profile-apply
      parameters:
      - name: arg
        in: query
        description: The profile to apply to the config.
        required: true
        schema:
          type: string
      - name: dry-run
        in: query
        description: print difference between the current config and the config that would be generated.
        schema:
          type: boolean
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              example:
                NewCfg:
                  <string>: <object>
                OldCfg:
                  <string>: <object>
      tags:
      - Config
  /api/v0/config/replace:
    post:
      operationId: config/replace
      description: Replace the config with &lt;file&gt;.
      externalDocs:
        url: https://docs.ipfs.tech/reference/kubo/rpc/#api-v0-config-replace
      parameters: []
      requestBody:
        description: Argument `file` is of file type. This endpoint expects one or several files (depending on the command) in the body of the request as 'multipart/form-data'.
        content: {}
      responses:
        '200':
          description: Successful response
      tags:
      - Config
  /api/v0/config/show:
    post:
      operationId: config/show
      description: Output config file contents.
      externalDocs:
        url: https://docs.ipfs.tech/reference/kubo/rpc/#api-v0-config-show
      parameters: []
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              example:
                <string>: <object>
      tags:
      - Config
externalDocs:
  url: https://docs.ipfs.tech/reference/kubo/rpc/