{
  "openapi": "3.1.0",
  "info": {
    "title": "IPFS API",
    "description": "Quicknode IPFS API reference",
    "version": "1.0.0"
  },
  "paths": {
    "/v1/account/usage": {
      "get": {
        "operationId": "get_v1_account_usage",
        "summary": "Fetch account usage across bandwidth and storage",
        "tags": [
          "account"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ipfs/Account/account-usage"
        },
        "parameters": [
          {
            "name": "startDate",
            "in": "query",
            "schema": {
              "type": "string",
              "description": "Represents the start date of the time interval for which usage data is requested"
            },
            "required": true,
            "description": "Represents the start date of the time interval for which usage data is requested"
          },
          {
            "name": "endDate",
            "in": "query",
            "schema": {
              "type": "string",
              "description": "Represents the end date of the time interval for which usage data is requested"
            },
            "required": true,
            "description": "Represents the end date of the time interval for which usage data is requested"
          },
          {
            "name": "interval",
            "in": "query",
            "schema": {
              "type": "string",
              "description": "Specifies the interval between data points in the usage data. It can be day, month or year"
            },
            "required": true,
            "description": "Specifies the interval between data points in the usage data. It can be day, month or year"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "interval": {
                      "type": "string",
                      "description": "Indicates the time interval for which the usage data is provided. It can be day, month or year"
                    },
                    "startTime": {
                      "type": "string",
                      "description": "Specifies the start time of the usage interval"
                    },
                    "endTime": {
                      "type": "string",
                      "description": "Specifies the end time of the usage interval. In the given response"
                    },
                    "storageBytes": {
                      "type": "string",
                      "description": "Represents the amount of storage used by the account within the specified time interval"
                    },
                    "bandwidthBytes": {
                      "type": "string",
                      "description": "Indicates the amount of bandwidth used by the account within the specified time interval"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/v1/account/daily-usage": {
      "get": {
        "operationId": "get_v1_account_daily_usage",
        "summary": "Fetch account's daily usage.",
        "tags": [
          "account"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ipfs/Account/daily-usage"
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "date": {
                      "type": "string",
                      "description": "Indicates the date for which the usage data is provided"
                    },
                    "requestCount": {
                      "type": "integer",
                      "description": "The number of request sent on that particular day"
                    },
                    "storageBytes": {
                      "type": "integer",
                      "description": "Represents the amount of storage used by the account"
                    },
                    "bandwidthBytes": {
                      "type": "integer",
                      "description": "Indicates the amount of bandwidth used by the account"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/v1/gateway": {
      "post": {
        "operationId": "post_v1_gateway",
        "summary": "Creates a new dedicated gateway.",
        "tags": [
          "gateway"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ipfs/Gateway/create-gateway"
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string",
                    "description": "The name of the gateway"
                  },
                  "isPrivate": {
                    "type": "boolean",
                    "description": "A boolean value that indicates whether the new dedicated gateway is private or not. If set to true, the gateway is private and not publicly accessible. If set to false, the gateway is public and can be accessed by authorized users"
                  },
                  "isEnabled": {
                    "type": "boolean",
                    "description": "A boolean value that indicates whether the new dedicated gateway is enabled or not. If set to true, it means the gateway is currently enabled and operational. If set to false, it means the gateway is disabled and not functioning"
                  }
                },
                "required": [
                  "name"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "integer",
                      "description": "An integer that represents the unique identifier of a specified gateway"
                    },
                    "uuid": {
                      "type": "string",
                      "description": "A string that represents the universally unique identifier (UUID) of the new dedicated gateway. UUIDs are used to identify resources uniquely"
                    },
                    "createdAt": {
                      "type": "string",
                      "description": "The date and time when the specified gateway was created"
                    },
                    "updatedAt": {
                      "type": "string",
                      "description": "The date and time when the specified gateway was last updated"
                    },
                    "name": {
                      "type": "string",
                      "description": "A string that specifies the name of the specified gateway. It is a human-readable identifier for the gateway"
                    },
                    "domain": {
                      "type": "string",
                      "description": "The domain associated with the gateway"
                    },
                    "status": {
                      "type": "string",
                      "description": "The status of the gateway"
                    },
                    "isPrivate": {
                      "type": "boolean",
                      "description": "A boolean value that indicates whether the specified gateway is private or not. If set to true, the gateway is private and not publicly accessible. If set to false, the gateway is public and can be accessed by authorized users"
                    },
                    "isEnabled": {
                      "type": "boolean",
                      "description": "A boolean value that indicates whether the specified gateway is enabled or not. If set to true, it means the gateway is currently enabled and operational. If set to false, it means the gateway is disabled and not functioning"
                    }
                  }
                }
              }
            }
          }
        }
      },
      "get": {
        "operationId": "get_v1_gateway",
        "summary": "Returns a list of all dedicated gateways.",
        "tags": [
          "gateway"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ipfs/Gateway/get-all-gateways"
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "result": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "integer",
                          "description": "An integer that represents the unique identifier of a dedicated gateway"
                        },
                        "uuid": {
                          "type": "string",
                          "description": "A string that represents the universally unique identifier (UUID) of the dedicated gateway. UUIDs are used to identify resources uniquely"
                        },
                        "createdAt": {
                          "type": "string",
                          "description": "The date and time when the dedicated gateway was created"
                        },
                        "updatedAt": {
                          "type": "string",
                          "description": "The date and time when the dedicated gateway was last updated"
                        },
                        "qnAccountId": {
                          "type": "string",
                          "description": "The Quicknode account id"
                        },
                        "name": {
                          "type": "string",
                          "description": "A string that specifies the name of the dedicated gateway. It is a human-readable identifier for the gateway"
                        },
                        "domain": {
                          "type": "string",
                          "description": "The domain associated with the gateway"
                        },
                        "status": {
                          "type": "string",
                          "description": "The status of the gateway"
                        },
                        "isPrivate": {
                          "type": "boolean",
                          "description": "A boolean value that indicates whether the dedicated gateway is private or not. If set to true, it means the gateway is private and not publicly accessible. If set to false, it means the gateway is public and can be accessed by authorized users"
                        },
                        "isEnabled": {
                          "type": "boolean",
                          "description": "A boolean value that indicates whether the dedicated gateway is enabled or not. If set to true, it means the gateway is currently enabled and operational. If set to false, it means the gateway is disabled and not functioning"
                        },
                        "cnameRecordId": {
                          "type": "string",
                          "description": "The canonical name record id"
                        }
                      },
                      "description": "An array that returns a list of all dedicated gateways"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/v1/gateway/{gatewayName}": {
      "delete": {
        "operationId": "delete_v1_gateway_by_gatewayName",
        "summary": "Deletes a Gateway",
        "tags": [
          "gateway"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ipfs/Gateway/delete-gateway"
        },
        "parameters": [
          {
            "name": "gatewayName",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "The name of the Gateway to be deleted"
            },
            "required": true,
            "description": "The name of the Gateway to be deleted"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "result": {
                      "type": "boolean",
                      "description": "A boolean value indicating the result of the deletion operation. If the value is true, it means the deletion was successful. If the value is false, it means the deletion failed or the specified gateway does not exist"
                    }
                  }
                }
              }
            }
          }
        }
      },
      "get": {
        "operationId": "get_v1_gateway_by_gatewayName",
        "summary": "Returns details about the specified gateway (e.",
        "tags": [
          "gateway"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ipfs/Gateway/get-gateway-by-name"
        },
        "description": "Returns details about the specified gateway (e.g. name, public vs private, enabled vs disabled).",
        "parameters": [
          {
            "name": "gatewayName",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "The name of the gateway"
            },
            "required": true,
            "description": "The name of the gateway"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "integer",
                      "description": "An integer that represents the unique identifier of a specified gateway"
                    },
                    "uuid": {
                      "type": "string",
                      "description": "A string that represents the universally unique identifier (UUID) of the specified gateway. UUIDs are used to identify resources uniquely"
                    },
                    "createdAt": {
                      "type": "string",
                      "description": "The date and time when the specified gateway was created"
                    },
                    "updatedAt": {
                      "type": "string",
                      "description": "The date and time when the specified gateway was last updated"
                    },
                    "name": {
                      "type": "string",
                      "description": "A string that specifies the name of the specified gateway. It is a human-readable identifier for the gateway"
                    },
                    "domain": {
                      "type": "string",
                      "description": "The domain associated with the gateway"
                    },
                    "status": {
                      "type": "string",
                      "description": "The status of the gateway"
                    },
                    "isPrivate": {
                      "type": "boolean",
                      "description": "A boolean value that indicates whether the specified gateway is private or not. If set to true, it means the gateway is private and not publicly accessible. If set to false, it means the gateway is public and can be accessed by authorized users"
                    },
                    "isEnabled": {
                      "type": "boolean",
                      "description": "A boolean value that indicates whether the specified gateway is enabled or not. If set to true, it means the gateway is currently enabled and operational. If set to false, it means the gateway is disabled and not functioning"
                    }
                  }
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "patch_v1_gateway_by_gatewayName",
        "summary": "Updates the Gateway settings.",
        "tags": [
          "gateway"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ipfs/Gateway/update-gateway"
        },
        "parameters": [
          {
            "name": "gatewayName",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "the name of the gateway to be updated"
            },
            "required": true,
            "description": "the name of the gateway to be updated"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "isEnabled": {
                    "type": "boolean",
                    "description": "A boolean value indicating whether the gateway should be enabled or disabled"
                  },
                  "isPrivate": {
                    "type": "boolean",
                    "description": "A boolean value indicating whether the gateway should be set as private or public"
                  }
                },
                "required": [
                  "isEnabled",
                  "isPrivate"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string",
                      "description": "The name of the gateway"
                    },
                    "isPrivate": {
                      "type": "boolean",
                      "description": "A boolean value indicating whether the gateway is private or not. If true, it means the gateway is private and not publicly accessible. If false, it means the gateway is public and can be accessed by authorized users"
                    },
                    "isEnabled": {
                      "type": "boolean",
                      "description": "A boolean value indicating whether the gateway is enabled or disabled. If true, it means the gateway is currently enabled and operational. If false, it means the gateway is disabled and not functioning"
                    },
                    "id": {
                      "type": "integer",
                      "description": "The unique identifier of the gateway"
                    },
                    "domain": {
                      "type": "string",
                      "description": "The domain associated with the gateway"
                    },
                    "status": {
                      "type": "string",
                      "description": "The status of the gateway"
                    },
                    "uuid": {
                      "type": "string",
                      "description": "The universally unique identifier (UUID) of the gateway. UUIDs are used to identify resources uniquely"
                    },
                    "createdAt": {
                      "type": "string",
                      "description": "The date and time when the gateway was created"
                    },
                    "updatedAt": {
                      "type": "string",
                      "description": "The date and time when the gateway was last updated"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/v1/pinning": {
      "post": {
        "operationId": "post_v1_pinning",
        "summary": "Ability to pin an existing CID",
        "tags": [
          "pinning"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ipfs/Pinning/create-pinnedObject-by-CID"
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "cid": {
                    "type": "string",
                    "description": "Represents the CID (Content Identifier) that identifies the content to be pinned"
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name associated with the pinned object. The length should be less than or equal to 255 characters"
                  },
                  "origins": {
                    "type": "array",
                    "items": {},
                    "description": "A list of multi-addresses representing the origins of the pinned object"
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "test": {
                        "type": "string",
                        "description": "Represents a test-related detail about the pinned object"
                      },
                      "morevalue": {
                        "type": "object",
                        "properties": {
                          "location": {
                            "type": "string",
                            "description": "Describes the location associated with the pinned object"
                          }
                        },
                        "description": "Contains additional details about the pinned object"
                      }
                    },
                    "description": "Contains details about the meta information of the pinned object"
                  }
                },
                "required": [
                  "cid",
                  "name"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "requestId": {
                      "type": "string",
                      "description": "Represents the ID of the request"
                    },
                    "status": {
                      "type": "string",
                      "description": "Describes the status of the pinned object"
                    },
                    "cid": {
                      "type": "string",
                      "description": "Represents the CID associated with the pinned object"
                    },
                    "name": {
                      "type": "string",
                      "description": "Specifies the name associated with the pinned object"
                    },
                    "origins": {
                      "type": "string",
                      "description": "A list of string values representing the origins of the pinned object"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "test": {
                          "type": "string",
                          "description": "Represents a test-related detail about the pinned object"
                        },
                        "morevalue": {
                          "type": "object",
                          "properties": {
                            "location": {
                              "type": "string",
                              "description": "Describes the location associated with the pinned object"
                            }
                          },
                          "description": "Contains additional details about the pinned object"
                        }
                      },
                      "description": "Contains details about the meta information of the pinned object"
                    },
                    "uuid": {
                      "type": "string",
                      "description": "Represents the UUID (Universally Unique Identifier) of the pinned object"
                    },
                    "createdAt": {
                      "type": "string",
                      "description": "Specifies the date and time when the pinned object was created"
                    },
                    "updatedAt": {
                      "type": "string",
                      "description": "Indicates the date and time when the pinned object was last updated"
                    },
                    "contentType": {
                      "type": "null",
                      "description": "Represents the content type of the pinned object"
                    },
                    "size": {
                      "type": "null",
                      "description": "Represents the size of the pinned object"
                    }
                  }
                }
              }
            }
          }
        }
      },
      "get": {
        "operationId": "get_v1_pinning",
        "summary": "Get All PinnedObjects.",
        "tags": [
          "pinning"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ipfs/Pinning/get-all-pinnedObjects"
        },
        "parameters": [
          {
            "name": "pageNumber",
            "in": "query",
            "schema": {
              "type": "number",
              "description": "The page number of results that were returned with this response"
            },
            "description": "The page number of results that were returned with this response"
          },
          {
            "name": "perPage",
            "in": "query",
            "schema": {
              "type": "number",
              "description": "The maximum amount of objects to return on each page"
            },
            "description": "The maximum amount of objects to return on each page"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "id": {
                            "type": "integer",
                            "description": "Represents the ID of the pinned object"
                          },
                          "uuid": {
                            "type": "string",
                            "description": "Represents the Universally Unique Identifier (UUID) of the pinned object"
                          },
                          "createdAt": {
                            "type": "string",
                            "description": "Specifies the date and time when the pinned object was created"
                          },
                          "updatedAt": {
                            "type": "string",
                            "description": "Indicates the date and time when the pinned object was last updated"
                          },
                          "requestId": {
                            "type": "string",
                            "description": "Represents the ID of the request associated with the pinned object"
                          },
                          "cid": {
                            "type": "string",
                            "description": "Represents the Content Identifier (CID) associated with the pinned object"
                          },
                          "name": {
                            "type": "string",
                            "description": "Specifies the name associated with the pinned object"
                          },
                          "contentType": {
                            "type": "string",
                            "description": "Represents the content type of the pinned object"
                          },
                          "size": {
                            "type": "string",
                            "description": "Represents the size of the pinned object"
                          },
                          "origins": {
                            "type": "array",
                            "items": {},
                            "description": "Represents the origins of the pinned object"
                          },
                          "status": {
                            "type": "string",
                            "description": "Describes the status of the pinned object"
                          },
                          "meta": {
                            "type": "object",
                            "description": "Contains details about the metadata of the pinned object"
                          },
                          "source": {
                            "type": "string",
                            "description": "The source of the object"
                          },
                          "parentId": {
                            "type": "string",
                            "description": "The parent id"
                          },
                          "type": {
                            "type": "string",
                            "description": "The type of the object"
                          },
                          "path": {
                            "type": "string",
                            "description": "The path of the object"
                          }
                        }
                      },
                      "description": "A list of data containing information about each pinned object"
                    },
                    "totalItems": {
                      "type": "integer",
                      "description": "Represents the total number of items in the response"
                    },
                    "totalPages": {
                      "type": "integer",
                      "description": "Represents the total number of pages in the response"
                    },
                    "pageNumber": {
                      "type": "integer",
                      "description": "The page number of results that were returned with this response"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/v1/pinning/{requestId}": {
      "delete": {
        "operationId": "delete_v1_pinning_by_requestId",
        "summary": "Deletes a pinned object",
        "tags": [
          "pinning"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ipfs/Pinning/delete-pinnedObject"
        },
        "parameters": [
          {
            "name": "requestId",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "Represents the ID of the pinned object, which can be obtained from querying all pinned object by using 'Get All PinnedObjects' method"
            },
            "required": true,
            "description": "Represents the ID of the pinned object, which can be obtained from querying all pinned object by using 'Get All PinnedObjects' method"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "description": "It returns true if the pinned object is deleted successfully. Otherwise, returns false"
                    }
                  }
                }
              }
            }
          }
        }
      },
      "get": {
        "operationId": "get_v1_pinning_by_requestId",
        "summary": "Get a pinned object's information and status.",
        "tags": [
          "pinning"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ipfs/Pinning/get-pinnedObject"
        },
        "parameters": [
          {
            "name": "requestId",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "Represents the ID of the request associated with the pinned object, which can be obtained from querying all pinned object by using 'Get All PinnedObjects' method"
            },
            "required": true,
            "description": "Represents the ID of the request associated with the pinned object, which can be obtained from querying all pinned object by using 'Get All PinnedObjects' method"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "integer",
                      "description": "Represents the ID of the pinned object"
                    },
                    "uuid": {
                      "type": "string",
                      "description": "Represents the Universally Unique Identifier (UUID) of the pinned object"
                    },
                    "createdAt": {
                      "type": "string",
                      "description": "Specifies the date and time when the pinned object was created"
                    },
                    "updatedAt": {
                      "type": "string",
                      "description": "Indicates the date and time when the pinned object was last updated"
                    },
                    "requestId": {
                      "type": "string",
                      "description": "Represents the ID of the request associated with the pinned object"
                    },
                    "cid": {
                      "type": "string",
                      "description": "Represents the Content Identifier (CID) associated with the pinned object"
                    },
                    "name": {
                      "type": "string",
                      "description": "Specifies the name associated with the pinned object"
                    },
                    "contentType": {
                      "type": "string",
                      "description": "Represents the content type of the pinned object"
                    },
                    "size": {
                      "type": "string",
                      "description": "Represents the size of the pinned object"
                    },
                    "origins": {
                      "type": "array",
                      "items": {},
                      "description": "Represents the origins of the pinned object"
                    },
                    "status": {
                      "type": "string",
                      "description": "Describes the status of the pinned object"
                    },
                    "meta": {
                      "type": "object",
                      "description": "Contains details about the metadata of the pinned object"
                    }
                  }
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "patch_v1_pinning_by_requestId",
        "summary": "Updates the metadata of a pinned object",
        "tags": [
          "pinning"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ipfs/Pinning/update-pinnedObject"
        },
        "parameters": [
          {
            "name": "requestId",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "Represents the ID of the request associated with the pinned object that needs to be updated, which can be obtained from querying all pinned object by using 'Get All PinnedObjects' method"
            },
            "required": true,
            "description": "Represents the ID of the request associated with the pinned object that needs to be updated, which can be obtained from querying all pinned object by using 'Get All PinnedObjects' method"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "cid": {
                    "type": "string",
                    "description": "Represents the Content Identifier (CID) that identifies the pinned object"
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the new name associated with the pinned object. The length of the name should be less than or equal to 255 characters"
                  },
                  "origins": {
                    "type": "array",
                    "items": {},
                    "description": "A list of multi-addresses representing the origins of the pinned object"
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "test": {
                        "type": "string",
                        "description": "Represents a test-related detail about the pinned object"
                      },
                      "morevalue": {
                        "type": "object",
                        "properties": {
                          "location": {
                            "type": "string",
                            "description": "Describes the updated location associated with the pinned object"
                          }
                        },
                        "description": "Contains additional details about the pinned object"
                      }
                    },
                    "description": "Contains details about the updated metadata of the pinned object"
                  }
                },
                "required": [
                  "cid",
                  "name"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "requestId": {
                      "type": "string",
                      "description": "Represents the ID of the request"
                    },
                    "status": {
                      "type": "string",
                      "description": "Describes the status of the pinned object after the update"
                    },
                    "cid": {
                      "type": "string",
                      "description": "Represents the CID associated with the pinned object"
                    },
                    "name": {
                      "type": "string",
                      "description": "Specifies the updated name associated with the pinned object"
                    },
                    "origins": {
                      "type": "string",
                      "description": "A list of string values representing the origins of the pinned object"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "test": {
                          "type": "string",
                          "description": "Represents a test-related detail about the pinned object"
                        },
                        "morevalue": {
                          "type": "object",
                          "properties": {
                            "location": {
                              "type": "string",
                              "description": "Describes the updated location associated with the pinned object"
                            }
                          },
                          "description": "Contains additional details about the pinned object"
                        }
                      },
                      "description": "Contains details about the updated metadata of the pinned object"
                    },
                    "uuid": {
                      "type": "string",
                      "description": "Represents the UUID (Universally Unique Identifier) of the pinned object"
                    },
                    "createdAt": {
                      "type": "string",
                      "description": "Specifies the date and time when the pinned object was created"
                    },
                    "updatedAt": {
                      "type": "string",
                      "description": "Indicates the date and time when the pinned object was last updated"
                    },
                    "contentType": {
                      "type": "null",
                      "description": "Represents the content type of the pinned object"
                    },
                    "size": {
                      "type": "null",
                      "description": "Represents the size of the pinned object"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/v1/s3/get-object/{requestId}": {
      "get": {
        "operationId": "get_v1_s3_get_object_by_requestId",
        "summary": "Ability to download an object from IPFS",
        "tags": [
          "s3"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ipfs/Pinning/get-object"
        },
        "parameters": [
          {
            "name": "requestId",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "Represents the ID of the request, which can be obtained from querying all pinned object by using 'Get All PinnedObjects' method"
            },
            "required": true,
            "description": "Represents the ID of the request, which can be obtained from querying all pinned object by using 'Get All PinnedObjects' method"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/octet-stream": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              }
            }
          }
        }
      }
    },
    "/v1/s3/put-object": {
      "post": {
        "operationId": "post_v1_s3_put_object",
        "summary": "Upload a new object to IPFS and pins it for permanent storage on the network.",
        "tags": [
          "s3"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ipfs/Pinning/upload-object"
        },
        "requestBody": {
          "required": true,
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "Body": {
                    "type": "string",
                    "format": "binary",
                    "description": "Indicates that the content of the file is being sent as the request body"
                  },
                  "Key": {
                    "type": "string",
                    "description": "The key or name under which the object will be stored"
                  },
                  "ContentType": {
                    "type": "string",
                    "description": "Indicates the content type of the object being uploaded. Possible values include application/pdf, audio/mpeg, image/jpeg, image/png, or text/plain"
                  }
                },
                "required": [
                  "Body",
                  "Key",
                  "ContentType"
                ]
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "requestid": {
                      "type": "string",
                      "description": "Represents the ID of the request"
                    },
                    "status": {
                      "type": "string",
                      "description": "Describes the status of the uploaded object"
                    },
                    "created": {
                      "type": "string",
                      "description": "Specifies the date and time when the uploaded object was created"
                    },
                    "pin": {
                      "type": "object",
                      "properties": {
                        "cid": {
                          "type": "string",
                          "description": "Represents the CID associated with the uploaded object"
                        },
                        "name": {
                          "type": "string",
                          "description": "Specifies the name associated with the uploaded object"
                        },
                        "origins": {
                          "type": "array",
                          "items": {},
                          "description": "A list of string values representing the origins of the uploaded object"
                        },
                        "meta": {
                          "type": "object",
                          "description": "Contains details about the meta information of the uploaded object"
                        }
                      },
                      "description": "The details of the uploaded object"
                    },
                    "info": {
                      "type": "object",
                      "properties": {
                        "size": {
                          "type": "string",
                          "description": "Represents the size of the uploaded object"
                        }
                      },
                      "description": "The additional information about the uploaded object"
                    },
                    "delegates": {
                      "type": "string",
                      "description": "An array having information about delegates or additional parties involved in the upload process"
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "servers": [
    {
      "url": "https://api.quicknode.com/ipfs/rest",
      "description": "Quicknode IPFS"
    }
  ],
  "components": {
    "securitySchemes": {
      "apiKeyAuth": {
        "type": "apiKey",
        "in": "header",
        "name": "x-api-key"
      }
    }
  },
  "security": [
    {
      "apiKeyAuth": []
    }
  ]
}