{ "swagger": "2.0", "info": { "description": "This is the API for the Estuary application.", "title": "Estuary API", "termsOfService": "http://estuary.tech", "contact": { "name": "API Support", "url": "https://docs.estuary.tech/feedback" }, "license": { "name": "Apache 2.0 Apache-2.0 OR MIT", "url": "https://github.com/application-research/estuary/blob/master/LICENSE.md" }, "version": "0.0.0" }, "host": "api.estuary.tech", "basePath": "/", "paths": { "/admin/autoretrieve/init": { "post": { "description": "This endpoint registers a new autoretrieve server", "produces": [ "application/json" ], "tags": [ "autoretrieve" ], "summary": "Register autoretrieve server", "parameters": [ { "type": "string", "description": "Autoretrieve's comma-separated list of addresses", "name": "addresses", "in": "formData", "required": true }, { "type": "string", "description": "Autoretrieve's public key", "name": "pubKey", "in": "formData", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/admin/autoretrieve/list": { "get": { "description": "This endpoint lists all registered autoretrieve servers", "produces": [ "application/json" ], "tags": [ "autoretrieve" ], "summary": "List autoretrieve servers", "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/admin/invites": { "get": { "description": "This endpoint is used to list all estuary invites.", "produces": [ "application/json" ], "tags": [ "content" ], "summary": "Get Estuary invites", "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/admin/invites/{code}": { "post": { "description": "This endpoint is used to create an estuary invite.", "produces": [ "application/json" ], "tags": [ "content" ], "summary": "Create an Estuary invite", "parameters": [ { "type": "string", "description": "Invite code to be created", "name": "code", "in": "path" } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/admin/peering/peers": { "get": { "description": "This endpoint can be used to list all peers on Peering Service", "produces": [ "application/json" ], "tags": [ "admin" ], "summary": "List all Peering peers", "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } }, "post": { "description": "This endpoint can be used to add a Peer from the Peering Service", "produces": [ "application/json" ], "tags": [ "admin" ], "summary": "Add peers on Peering Service", "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } }, "delete": { "description": "This endpoint can be used to remove a Peer from the Peering Service", "produces": [ "application/json" ], "tags": [ "admin" ], "summary": "Remove peers on Peering Service", "parameters": [ { "description": "Peer ids", "name": "peerIds", "in": "body", "required": true, "schema": { "type": "array", "items": { "type": "boolean" } } } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/admin/peering/start": { "post": { "description": "This endpoint can be used to start the Peering Service", "produces": [ "application/json" ], "tags": [ "admin" ], "summary": "Start Peering", "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/admin/peering/status": { "get": { "description": "This endpoint can be used to check the Peering status", "produces": [ "application/json" ], "tags": [ "admin" ], "summary": "Check Peering Status", "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/admin/peering/stop": { "post": { "description": "This endpoint can be used to stop the Peering Service", "produces": [ "application/json" ], "tags": [ "admin" ], "summary": "Stop Peering", "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/admin/system/config": { "get": { "description": "This endpoint is used to get system configs.", "produces": [ "application/json" ], "tags": [ "admin" ], "summary": "Get systems(estuary/shuttle) config", "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/admin/users": { "get": { "description": "This endpoint is used to get all users.", "produces": [ "application/json" ], "tags": [ "admin" ], "summary": "Get all users", "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/autoretrieve/heartbeat": { "post": { "description": "This endpoint updates the lastConnection field for autoretrieve", "produces": [ "application/json" ], "tags": [ "autoretrieve" ], "summary": "Marks autoretrieve server as up", "parameters": [ { "type": "string", "description": "Autoretrieve's auth token", "name": "token", "in": "header", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/collections/": { "get": { "description": "This endpoint is used to list all collections. Whenever a user logs on estuary, it will list all collections that the user has access to. This endpoint provides a way to list all collections to the user.", "produces": [ "application/json" ], "tags": [ "collections" ], "summary": "List all collections", "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/collections.Collection" } } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } }, "post": { "description": "This endpoint is used to create a new collection. A collection is a representaion of a group of objects added on the estuary. This endpoint can be used to create a new collection.", "produces": [ "application/json" ], "tags": [ "collections" ], "summary": "Create a new collection", "parameters": [ { "description": "Collection name and description", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/api.createCollectionBody" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/collections.Collection" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/collections/fs/add": { "post": { "description": "This endpoint adds a file to a collection", "produces": [ "application/json" ], "tags": [ "collections" ], "summary": "Add a file to a collection", "parameters": [ { "type": "string", "description": "Collection ID", "name": "coluuid", "in": "query", "required": true }, { "type": "string", "description": "Content", "name": "content", "in": "query", "required": true }, { "type": "string", "description": "Path to file", "name": "path", "in": "query", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/collections/{coluuid}": { "get": { "description": "This endpoint is used to get contents in a collection. If no colpath query param is passed", "produces": [ "application/json" ], "tags": [ "collections" ], "summary": "Get contents in a collection", "parameters": [ { "type": "string", "description": "coluuid", "name": "coluuid", "in": "path", "required": true }, { "type": "string", "description": "Directory", "name": "dir", "in": "query" } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/collections.CollectionListResponse" } } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } }, "post": { "description": "This endpoint adds already-pinned contents (that have ContentIDs) to a collection.", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "collections" ], "summary": "Add contents to a collection", "parameters": [ { "type": "string", "description": "Collection UUID", "name": "coluuid", "in": "path", "required": true }, { "description": "Content IDs to add to collection", "name": "contentIDs", "in": "body", "required": true, "schema": { "type": "array", "items": { "type": "integer" } } }, { "type": "string", "description": "Directory", "name": "dir", "in": "query" } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } }, "delete": { "description": "This endpoint is used to delete an existing collection.", "tags": [ "collections" ], "summary": "Deletes a collection", "parameters": [ { "type": "string", "description": "Collection ID", "name": "coluuid", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/collections/{coluuid}/commit": { "post": { "description": "This endpoint is used to save the contents in a collection, producing a top-level CID that references all the current CIDs in the collection.", "produces": [ "application/json" ], "tags": [ "collections" ], "summary": "Produce a CID of the collection contents", "parameters": [ { "type": "string", "description": "coluuid", "name": "coluuid", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/collections/{coluuid}/contents": { "delete": { "description": "This endpoint is used to delete an existing content from an existing collection. If two or more files with the same contentid exist in the collection, delete the one in the specified path", "produces": [ "application/json" ], "tags": [ "collections" ], "summary": "Deletes a content from a collection", "parameters": [ { "type": "string", "description": "Collection ID", "name": "coluuid", "in": "path", "required": true }, { "description": "Variable to use when filtering for files (must be either 'path' or 'content_id')", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/api.deleteContentFromCollectionBody" } } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/content/add": { "post": { "description": "This endpoint uploads a file.", "produces": [ "application/json" ], "tags": [ "content" ], "summary": "Upload a file", "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/content/add-car": { "post": { "description": "This endpoint uploads content via a car file", "produces": [ "application/json" ], "tags": [ "content" ], "summary": "Upload content via a car file", "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/content/add-ipfs": { "post": { "description": "This endpoint is used to add an IPFS object to the network. The object can be a file or a directory.", "produces": [ "application/json" ], "tags": [ "content" ], "summary": "Add IPFS object", "parameters": [ { "description": "IPFS Body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/types.IpfsPin" } }, { "type": "string", "description": "Ignore Dupes", "name": "ignore-dupes", "in": "query" } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/content/aggregated/{content}": { "get": { "description": "This endpoint returns aggregated content stats", "produces": [ "application/json" ], "tags": [ "content" ], "summary": "Get aggregated content stats", "parameters": [ { "type": "string", "description": "Content ID", "name": "content", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/content/all-deals": { "get": { "description": "This endpoint is used to get all deals for a user", "produces": [ "application/json" ], "tags": [ "content" ], "summary": "Get all deals for a user", "parameters": [ { "type": "string", "description": "Begin", "name": "begin", "in": "query", "required": true }, { "type": "string", "description": "Duration", "name": "duration", "in": "query", "required": true }, { "type": "string", "description": "All", "name": "all", "in": "query", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/content/bw-usage/{content}": { "get": { "description": "This endpoint returns content bandwidth", "produces": [ "application/json" ], "tags": [ "content" ], "summary": "Get content bandwidth", "parameters": [ { "type": "string", "description": "Content ID", "name": "content", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/content/contents": { "get": { "description": "This endpoint is used to get user contents", "produces": [ "application/json" ], "tags": [ "content" ], "summary": "Get user contents", "parameters": [ { "type": "string", "description": "limit", "name": "limit", "in": "query", "required": true }, { "type": "string", "description": "offset", "name": "offset", "in": "query", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/content/create": { "post": { "description": "This endpoint adds a new content", "produces": [ "application/json" ], "tags": [ "content" ], "summary": "Add a new content", "parameters": [ { "description": "Content", "name": "req", "in": "body", "required": true, "schema": { "$ref": "#/definitions/util.ContentCreateBody" } }, { "type": "string", "description": "Ignore Dupes", "name": "ignore-dupes", "in": "query" } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/content/deals": { "get": { "description": "This endpoint lists all content with deals", "produces": [ "application/json" ], "tags": [ "content" ], "summary": "Content with deals", "parameters": [ { "type": "integer", "description": "Limit", "name": "limit", "in": "query" }, { "type": "integer", "description": "Offset", "name": "offset", "in": "query" } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/content/ensure-replication/{datacid}": { "get": { "description": "This endpoint ensures that the content is replicated to the specified number of providers", "produces": [ "application/json" ], "tags": [ "content" ], "summary": "Ensure Replication", "parameters": [ { "type": "string", "description": "Data CID", "name": "datacid", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/content/failures/{content}": { "get": { "description": "This endpoint returns all failures for a content", "produces": [ "application/json" ], "tags": [ "content" ], "summary": "List all failures for a content", "parameters": [ { "type": "string", "description": "Content ID", "name": "content", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/content/importdeal": { "post": { "description": "This endpoint imports a deal into the shuttle.", "produces": [ "application/json" ], "tags": [ "content" ], "summary": "Import a deal", "parameters": [ { "description": "Import a deal", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/main.importDealBody" } } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/content/list": { "get": { "description": "This endpoint lists all content", "produces": [ "application/json" ], "tags": [ "content" ], "summary": "List all pinned content", "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/content/read/{cont}": { "get": { "description": "This endpoint reads content from the blockstore", "produces": [ "application/json" ], "tags": [ "content" ], "summary": "Read content", "parameters": [ { "type": "string", "description": "CID", "name": "cont", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/content/staging-zones": { "get": { "description": "This endpoint is used to get staging zone for user, excluding its contents.", "produces": [ "application/json" ], "tags": [ "content" ], "summary": "Get staging zone for user, excluding its contents", "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/content/staging-zones/{staging_zone}": { "get": { "description": "This endpoint is used to get a staging zone, excluding its contents.", "produces": [ "application/json" ], "tags": [ "content" ], "summary": "Get staging zone without its contents field populated", "parameters": [ { "type": "integer", "description": "Staging Zone Content ID", "name": "staging_zone", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/content/staging-zones/{staging_zone}/contents": { "get": { "description": "This endpoint is used to get the contents for a staging zone", "produces": [ "application/json" ], "tags": [ "content" ], "summary": "Get contents for a staging zone", "parameters": [ { "type": "integer", "description": "Staging Zone Content ID", "name": "staging_zone", "in": "path", "required": true }, { "type": "string", "description": "limit", "name": "limit", "in": "query", "required": true }, { "type": "string", "description": "offset", "name": "offset", "in": "query", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/content/stats": { "get": { "description": "This endpoint is used to get content statistics. Every content stored in the network (estuary) is tracked by a unique ID which can be used to get information about the content. This endpoint will allow the consumer to get the collected stats of a content", "produces": [ "application/json" ], "tags": [ "content" ], "summary": "Get content statistics", "parameters": [ { "type": "string", "description": "limit", "name": "limit", "in": "query", "required": true }, { "type": "string", "description": "offset", "name": "offset", "in": "query", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/content/status/{id}": { "get": { "description": "This endpoint returns the status of a content", "produces": [ "application/json" ], "tags": [ "content" ], "summary": "Content Status", "parameters": [ { "type": "integer", "description": "Content ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/content/{id}": { "get": { "description": "This endpoint returns a content by its ID", "produces": [ "application/json" ], "tags": [ "content" ], "summary": "Content", "parameters": [ { "type": "integer", "description": "Content ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/deal/estimate": { "post": { "description": "This endpoint estimates the cost of a deal", "produces": [ "application/json" ], "tags": [ "deals" ], "summary": "Estimate the cost of a deal", "parameters": [ { "description": "The size of the deal in bytes, the replication factor, and the duration of the deal in blocks", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/api.estimateDealBody" } } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/deal/info/{dealid}": { "get": { "description": "This endpoint returns the deal info for a deal", "produces": [ "application/json" ], "tags": [ "deals" ], "summary": "Get Deal Info", "parameters": [ { "type": "integer", "description": "Deal ID", "name": "dealid", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/deal/proposal/{propcid}": { "get": { "description": "This endpoint returns the proposal for a deal", "produces": [ "application/json" ], "tags": [ "deals" ], "summary": "Get Proposal", "parameters": [ { "type": "string", "description": "Proposal CID", "name": "propcid", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/deal/query/{miner}": { "get": { "description": "This endpoint returns the ask for a given CID", "produces": [ "application/json" ], "tags": [ "deals" ], "summary": "Query Ask", "parameters": [ { "type": "string", "description": "CID", "name": "miner", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/deal/status-by-proposal/{propcid}": { "get": { "description": "Get Deal Status by PropCid", "produces": [ "application/json" ], "tags": [ "deals" ], "summary": "Get Deal Status by PropCid", "parameters": [ { "type": "string", "description": "PropCid", "name": "propcid", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/deal/status/{miner}/{propcid}": { "get": { "description": "This endpoint returns the status of a deal", "produces": [ "application/json" ], "tags": [ "deals" ], "summary": "Deal Status", "parameters": [ { "type": "string", "description": "Miner", "name": "miner", "in": "path", "required": true }, { "type": "string", "description": "Proposal CID", "name": "propcid", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/deal/transfer/in-progress": { "get": { "description": "This endpoint returns the in-progress transfers", "produces": [ "application/json" ], "tags": [ "deals" ], "summary": "Transfer In Progress", "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/deal/transfer/status": { "post": { "description": "This endpoint returns the status of a transfer", "produces": [ "application/json" ], "tags": [ "deals" ], "summary": "Transfer Status", "parameters": [ { "description": "Channel ID", "name": "chanid", "in": "body", "required": true, "schema": { "$ref": "#/definitions/api.ChannelIDParam" } } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/deals/failures": { "get": { "description": "This endpoint returns a list of storage failures for user", "produces": [ "application/json" ], "tags": [ "deals" ], "summary": "Get storage failures for user", "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/deals/make/{miner}": { "post": { "description": "This endpoint makes a deal for a given content and miner", "produces": [ "application/json" ], "tags": [ "deals" ], "summary": "Make Deal", "parameters": [ { "type": "string", "description": "Miner", "name": "miner", "in": "path", "required": true }, { "description": "Deal Request", "name": "dealRequest", "in": "body", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/deals/status/{deal}": { "get": { "description": "This endpoint returns the status of a deal", "produces": [ "application/json" ], "tags": [ "deals" ], "summary": "Get Deal Status", "parameters": [ { "type": "integer", "description": "Deal ID", "name": "deal", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/get/{cid}": { "get": { "description": "This endpoint returns the content associated with a CID", "produces": [ "application/json" ], "tags": [ "public" ], "summary": "Get Full Content by Cid", "parameters": [ { "type": "string", "description": "Cid", "name": "cid", "in": "path", "required": true } ], "responses": { "307": { "description": "Temporary Redirect", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/miner/claim": { "post": { "description": "This endpoint lets a user claim a miner", "produces": [ "application/json" ], "tags": [ "miner" ], "summary": "Claim Miner", "parameters": [ { "description": "Claim Miner Body", "name": "req", "in": "body", "required": true, "schema": { "$ref": "#/definitions/miner.ClaimMinerBody" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/api.claimResponse" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/miner/claim/{miner}": { "get": { "description": "This endpoint lets a user get the message in order to claim a miner", "produces": [ "application/json" ], "tags": [ "miner" ], "summary": "Get Claim Miner Message", "parameters": [ { "type": "string", "description": "Miner claim message", "name": "miner", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/api.claimMsgResponse" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/miner/set-info/{miner}": { "put": { "description": "This endpoint lets a user set miner info.", "produces": [ "application/json" ], "tags": [ "miner" ], "summary": "Set Miner Info", "parameters": [ { "description": "Miner set info params", "name": "params", "in": "body", "required": true, "schema": { "$ref": "#/definitions/miner.MinerSetInfoParams" } }, { "type": "string", "description": "Miner to set info for", "name": "miner", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/api.emptyResp" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/miner/suspend/{miner}": { "post": { "description": "This endpoint lets a user suspend a miner.", "produces": [ "application/json" ], "tags": [ "miner" ], "summary": "Suspend Miner", "parameters": [ { "description": "Suspend Miner Body", "name": "req", "in": "body", "required": true, "schema": { "$ref": "#/definitions/miner.SuspendMinerBody" } }, { "type": "string", "description": "Miner to suspend", "name": "miner", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/api.emptyResp" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/miner/unsuspend/{miner}": { "put": { "description": "This endpoint lets a user unsuspend a miner.", "produces": [ "application/json" ], "tags": [ "miner" ], "summary": "Unuspend Miner", "parameters": [ { "type": "string", "description": "Miner to unsuspend", "name": "miner", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/api.emptyResp" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/net/addrs": { "get": { "description": "This endpoint is used to get net addrs", "produces": [ "application/json" ], "tags": [ "net" ], "summary": "Net Addrs", "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/pinning/pins": { "get": { "description": "This endpoint lists all pin status objects", "produces": [ "application/json" ], "tags": [ "pinning" ], "summary": "List all pin status objects", "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/types.IpfsListPinStatusResponse" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } }, "post": { "description": "This endpoint adds a pin to the IPFS daemon.", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "pinning" ], "summary": "Add and pin object", "parameters": [ { "description": "Pin Body {cid:cid, name:name}", "name": "pin", "in": "body", "required": true, "schema": { "$ref": "#/definitions/types.IpfsPin" } } ], "responses": { "202": { "description": "Accepted", "schema": { "$ref": "#/definitions/types.IpfsPinStatusResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/pinning/pins/{pinid}": { "get": { "description": "This endpoint returns a pin status object.", "produces": [ "application/json" ], "tags": [ "pinning" ], "summary": "Get a pin status object", "parameters": [ { "type": "string", "description": "cid", "name": "pinid", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/types.IpfsPinStatusResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } }, "post": { "description": "This endpoint replaces a pinned object.", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "pinning" ], "summary": "Replace a pinned object", "parameters": [ { "type": "string", "description": "Pin ID to be replaced", "name": "pinid", "in": "path", "required": true }, { "description": "New pin", "name": "pin", "in": "body", "required": true, "schema": { "$ref": "#/definitions/types.IpfsPin" } } ], "responses": { "202": { "description": "Accepted", "schema": { "$ref": "#/definitions/types.IpfsPinStatusResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } }, "delete": { "description": "This endpoint deletes a pinned object.", "produces": [ "application/json" ], "tags": [ "pinning" ], "summary": "Delete a pinned object", "parameters": [ { "type": "string", "description": "Pin ID", "name": "pinid", "in": "path", "required": true } ], "responses": { "202": { "description": "Accepted" }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/public/by-cid/{cid}": { "get": { "description": "This endpoint returns the content record associated with a CID", "produces": [ "application/json" ], "tags": [ "public" ], "summary": "Get Content by Cid", "parameters": [ { "type": "string", "description": "Cid", "name": "cid", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/public/deals/failures": { "get": { "description": "This endpoint returns a list of storage failures", "produces": [ "application/json" ], "tags": [ "deals" ], "summary": "Get storage failures", "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/public/info": { "get": { "description": "This endpoint returns information about the node", "produces": [ "application/json" ], "tags": [ "public" ], "summary": "Get public node info", "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/api.publicNodeInfo" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/public/metrics/deals-on-chain": { "get": { "description": "This endpoint is used to get deal metrics", "produces": [ "application/json" ], "tags": [ "public", "metrics" ], "summary": "Get deal metrics", "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/public/miners": { "get": { "description": "This endpoint returns all miners", "produces": [ "application/json" ], "tags": [ "public", "net" ], "summary": "Get all miners", "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/public/miners/deals/{miner}": { "get": { "description": "This endpoint returns all miners deals", "produces": [ "application/json" ], "tags": [ "public", "miner" ], "summary": "Get all miners deals", "parameters": [ { "type": "string", "description": "Filter by miner", "name": "miner", "in": "path", "required": true }, { "type": "string", "description": "Ignore Failed", "name": "ignore-failed", "in": "query" } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/public/miners/failures/{miner}": { "get": { "description": "This endpoint returns all miners", "produces": [ "application/json" ], "tags": [ "public", "net" ], "summary": "Get all miners", "parameters": [ { "type": "string", "description": "Filter by miner", "name": "miner", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/public/miners/stats/{miner}": { "get": { "description": "This endpoint returns miner stats", "produces": [ "application/json" ], "tags": [ "public", "miner" ], "summary": "Get miner stats", "parameters": [ { "type": "string", "description": "Filter by miner", "name": "miner", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/public/miners/storage/query/{miner}": { "get": { "description": "This endpoint returns the ask for a given CID", "produces": [ "application/json" ], "tags": [ "deals" ], "summary": "Query Ask", "parameters": [ { "type": "string", "description": "CID", "name": "miner", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/public/net/addrs": { "get": { "description": "This endpoint is used to get net addrs", "produces": [ "application/json" ], "tags": [ "public", "net" ], "summary": "Net Addrs", "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "type": "string" } } } } } }, "/public/net/peers": { "get": { "description": "This endpoint is used to get net peers", "produces": [ "application/json" ], "tags": [ "public", "net" ], "summary": "Net Peers", "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "type": "string" } } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/public/stats": { "get": { "description": "This endpoint is used to get public stats.", "produces": [ "application/json" ], "tags": [ "public" ], "summary": "Public stats", "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/user/api-keys": { "get": { "description": "This endpoint is used to get API keys for a user. In estuary, each user can be given multiple API keys (tokens). This endpoint can be used to retrieve all available API keys for a given user.", "produces": [ "application/json" ], "tags": [ "User" ], "summary": "Get API keys for a user", "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/api.getApiKeysResp" } } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } }, "post": { "description": "This endpoint is used to create API keys for a user. In estuary, each user is given an API key to access all features.", "produces": [ "application/json" ], "tags": [ "User" ], "summary": "Create API keys for a user", "parameters": [ { "type": "string", "description": "Expiration - Expiration - Valid time units are ns, us (or µs), ms, s, m, h. for example 300h", "name": "expiry", "in": "query" }, { "type": "string", "description": "Permissions -- currently unused", "name": "perms", "in": "query" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/api.getApiKeysResp" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/user/api-keys/{key_or_hash}": { "delete": { "description": "This endpoint is used to revoke a user API key. In estuary, every user is assigned with an API key, this API key is generated and issued for each user and is primarily used to access all estuary features. This endpoint can be used to revoke the API key that's assigned to the user. Revoked API keys are completely deleted and are not recoverable.", "produces": [ "application/json" ], "tags": [ "User" ], "summary": "Revoke a User API Key.", "parameters": [ { "type": "string", "description": "Key or Hash", "name": "key_or_hash", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/user/export": { "get": { "description": "This endpoint is used to get API keys for a user.", "produces": [ "application/json" ], "tags": [ "User" ], "summary": "Export user data", "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/user/stats": { "get": { "description": "This endpoint is used to get stats for the current user.", "produces": [ "application/json" ], "tags": [ "User" ], "summary": "Get stats for the current user", "responses": { "200": { "description": "OK", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } }, "/viewer": { "get": { "description": "This endpoint fetches viewer details such as username, permissions, address, owned miners, user settings etc.", "produces": [ "application/json" ], "summary": "Fetch viewer details", "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/util.ViewerResponse" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/util.HttpError" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/util.HttpError" } } } } } }, "definitions": { "address.Address": { "type": "object" }, "api.ChannelIDParam": { "type": "object", "properties": { "id": { "type": "integer" }, "initiator": { "type": "string" }, "responder": { "type": "string" } } }, "api.claimMsgResponse": { "type": "object", "properties": { "hexmsg": { "type": "string" } } }, "api.claimResponse": { "type": "object", "properties": { "success": { "type": "boolean" } } }, "api.createCollectionBody": { "type": "object", "properties": { "description": { "type": "string" }, "name": { "type": "string" } } }, "api.deleteContentFromCollectionBody": { "type": "object", "properties": { "by": { "type": "string" }, "value": { "type": "string" } } }, "api.emptyResp": { "type": "object" }, "api.estimateDealBody": { "type": "object", "properties": { "durationBlks": { "type": "integer" }, "replication": { "type": "integer" }, "size": { "type": "integer" }, "verified": { "type": "boolean" } } }, "api.getApiKeysResp": { "type": "object", "properties": { "expiry": { "type": "string" }, "label": { "type": "string" }, "token": { "type": "string" }, "tokenHash": { "type": "string" } } }, "api.publicNodeInfo": { "type": "object", "properties": { "primaryAddress": { "$ref": "#/definitions/address.Address" } } }, "cid.Cid": { "type": "object" }, "collections.CidType": { "type": "string", "enum": [ "directory", "file" ], "x-enum-varnames": [ "CidTypeDir", "CidTypeFile" ] }, "collections.Collection": { "type": "object", "properties": { "cid": { "type": "string" }, "createdAt": { "type": "string" }, "description": { "type": "string" }, "name": { "type": "string" }, "userId": { "type": "integer" }, "uuid": { "type": "string" } } }, "collections.CollectionListResponse": { "type": "object", "properties": { "cid": { "$ref": "#/definitions/util.DbCID" }, "coluuid": { "type": "string" }, "contId": { "type": "integer" }, "dir": { "type": "string" }, "name": { "type": "string" }, "size": { "type": "integer" }, "type": { "$ref": "#/definitions/collections.CidType" }, "updatedAt": { "type": "string" } } }, "main.importDealBody": { "type": "object", "properties": { "coluuid": { "type": "string" }, "dealIDs": { "type": "array", "items": { "type": "integer" } }, "dir": { "type": "string" }, "name": { "type": "string" } } }, "miner.ClaimMinerBody": { "type": "object", "properties": { "claim": { "type": "string" }, "miner": { "$ref": "#/definitions/address.Address" }, "name": { "type": "string" } } }, "miner.MinerSetInfoParams": { "type": "object", "properties": { "name": { "type": "string" } } }, "miner.SuspendMinerBody": { "type": "object", "properties": { "reason": { "type": "string" } } }, "types.IpfsListPinStatusResponse": { "type": "object", "properties": { "count": { "type": "integer" }, "results": { "type": "array", "items": { "$ref": "#/definitions/types.IpfsPinStatusResponse" } } } }, "types.IpfsPin": { "type": "object", "properties": { "cid": { "type": "string" }, "meta": { "type": "object", "additionalProperties": true }, "name": { "type": "string" }, "origins": { "type": "array", "items": { "type": "string" } } } }, "types.IpfsPinStatusResponse": { "type": "object", "properties": { "created": { "type": "string" }, "delegates": { "type": "array", "items": { "type": "string" } }, "info": { "type": "object", "additionalProperties": true }, "pin": { "$ref": "#/definitions/types.IpfsPin" }, "requestid": { "type": "string" }, "status": { "$ref": "#/definitions/types.PinningStatus" } } }, "types.PinningStatus": { "type": "string", "enum": [ "pinning", "pinned", "failed", "queued", "offloaded" ], "x-enum-varnames": [ "PinningStatusPinning", "PinningStatusPinned", "PinningStatusFailed", "PinningStatusQueued", "PinningStatusOffloaded" ] }, "util.ContentAddResponse": { "type": "object", "properties": { "cid": { "type": "string" }, "estuaryId": { "type": "integer" }, "estuary_retrieval_url": { "type": "string" }, "providers": { "type": "array", "items": { "type": "string" } }, "retrieval_url": { "type": "string" } } }, "util.ContentCreateBody": { "type": "object", "properties": { "coluuid": { "type": "string" }, "dir": { "type": "string" }, "location": { "type": "string" }, "name": { "type": "string" }, "root": { "type": "string" }, "type": { "$ref": "#/definitions/util.ContentType" } } }, "util.ContentType": { "type": "integer", "enum": [ 0, 1, 2 ], "x-enum-varnames": [ "Unknown", "File", "Directory" ] }, "util.DbCID": { "type": "object", "properties": { "cid": { "$ref": "#/definitions/cid.Cid" } } }, "util.HttpError": { "type": "object", "properties": { "code": { "type": "integer" }, "details": { "type": "string" }, "reason": { "type": "string" } } }, "util.UserSettings": { "type": "object", "properties": { "contentAddingDisabled": { "type": "boolean" }, "dealDuration": { "type": "integer" }, "dealMakingDisabled": { "type": "boolean" }, "fileStagingThreshold": { "type": "integer" }, "flags": { "type": "integer" }, "replication": { "type": "integer" }, "uploadEndpoints": { "type": "array", "items": { "type": "string" } }, "verified": { "type": "boolean" } } }, "util.ViewerResponse": { "type": "object", "properties": { "address": { "type": "string" }, "auth_expiry": { "type": "string" }, "id": { "type": "integer" }, "miners": { "type": "array", "items": { "type": "string" } }, "perms": { "type": "integer" }, "settings": { "$ref": "#/definitions/util.UserSettings" }, "username": { "type": "string" } } } }, "securityDefinitions": { "bearerAuth": { "type": "apiKey", "name": "Authorization", "in": "header" } }, "security": [ { "bearerAuth": [] } ] }