{"id":15152997,"url":"https://github.com/fission-codes/typescript-client","last_synced_at":"2025-09-30T01:32:13.472Z","repository":{"id":74436454,"uuid":"201146997","full_name":"fission-codes/typescript-client","owner":"fission-codes","description":"The Fission Web API TypeScript Client","archived":true,"fork":false,"pushed_at":"2020-10-15T00:38:10.000Z","size":1555,"stargazers_count":7,"open_issues_count":7,"forks_count":4,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-01-18T10:10:40.815Z","etag":null,"topics":["client-library","ipfs","ipfs-api"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fission-codes.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2019-08-08T00:20:56.000Z","updated_at":"2024-05-30T12:11:50.000Z","dependencies_parsed_at":"2023-02-26T00:01:27.912Z","dependency_job_id":null,"html_url":"https://github.com/fission-codes/typescript-client","commit_stats":null,"previous_names":["fission-suite/typescript-client"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fission-codes%2Ftypescript-client","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fission-codes%2Ftypescript-client/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fission-codes%2Ftypescript-client/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fission-codes%2Ftypescript-client/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fission-codes","download_url":"https://codeload.github.com/fission-codes/typescript-client/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":234595414,"owners_count":18857651,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["client-library","ipfs","ipfs-api"],"created_at":"2024-09-26T16:43:02.081Z","updated_at":"2025-09-30T01:32:08.191Z","avatar_url":"https://github.com/fission-codes.png","language":"TypeScript","readme":"\n**The [webnative SDK](https://github.com/fission-suite/webnative) replaces this platform / REST API**\n\n---\n\n[![NPM](https://img.shields.io/npm/v/@fission-suite/client)](https://www.npmjs.com/package/@fission-suite/client)\n[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://github.com/fission-suite/blob/master/LICENSE)\n[![Build Status](https://travis-ci.org/fission-suite/typescript-client.svg?branch=master)](https://travis-ci.org/fission-suite/typescript-client)\n[![Maintainability](https://api.codeclimate.com/v1/badges/2a271d744d14ad487a24/maintainability)](https://codeclimate.com/github/fission-suite/typescript-client/maintainability)\n[![Built by FISSION](https://img.shields.io/badge/⌘-Built_by_FISSION-purple.svg)](https://fission.codes)\n[![Discord](https://img.shields.io/discord/478735028319158273.svg)](https://discord.gg/zAQBDEq)\n\nA TypeScript client library for access accessing the [FISSION Web API](https://github.com/fission-suite/web-api/).\n\n## Installing\n```\n$ npm install --save @fission-suite/client\n```\n\n## API\n\n### Utility\n\n`getContentURL`\n\nReturns the url to access the given CID on our service.\n\nParams:\n- cid: CID (string) **required**\n- baseURL: string *defaults to fission web-api at `https://runfission.com`*\n\nExample:\n```js\nimport { getContentURL } from '@fission-suite/client'\nconst formattedURL = getContentURL(\"QmWATWQ7fVPP2EFGu71UkfnqhYXDYH566qy47CnJDgvs8u\")\n// \"https://runfission.com/ipfs/QmWATWQ7fVPP2EFGu71UkfnqhYXDYH566qy47CnJDgvs8u\"\n```\n\n### Unauthenticated\n\n`register`\n\nRegisters a user for the Fission service.\n\nParams:\n- username: string **required**\n- password: string **required**\n- email: string\n\nExample:\n```js\nimport { register } from '@fission-suite/client'\nawait register(\"username\", \"password\", \"email@email.com\")\n```\n\n`peers`\n\nGets the address for all IPFS nodes in the Fission Network.\n\nExample:\n```js\nimport { peers } from '@fission-suite/client'\nawait peers()\n// [\n//   '/ip4/3.215.160.238/tcp/4001/ipfs/QmVLEz2SxoNiFnuyLpbXsH6SvjPTrHNMU88vCQZyhgBzgw',\n//   '/ip4/184.68.124.102/tcp/64417/ipfs/QmQ2Jo91xQyVjhw1kmpk9eeHj6A4W1u5BYdh5xjfC5h11g'\n// ]\n```\n\n`content`\n\nReturns content at given CID.\n\nParams:\n- cid: CID (string) **required**\n- baseURL: string *defaults to fission web-api at `https://runfission.com`*\n\nExample:\n```js\nimport { content } from '@fission-suite/client'\nconst helloWorld = await content(\"QmWATWQ7fVPP2EFGu71UkfnqhYXDYH566qy47CnJDgvs8u\")\n// \"Hello World\"\n```\n\n### Authenticated\n*These methods require a username/password from the fission webserver. These can be provisioned through our [Fission CLI](https://github.com/fission-suite/cli).*\n\n`verify`\n\nVerifies the given credentialls.\n\nParams:\n- auth: Auth ({username: string, password: string}) **required**\n- baseURL: string *defaults to fission web-api at `https://runfission.com`*\n\nExample:\n```js\nimport { verify } from '@fission-suite/client'\nawait verify({ username: \"username\", password: \"password\" })\n// true\n```\n\n`resetPassword`\n\nVerifies the given credentialls.\n\nParams:\n- auth: Auth ({username: string, password: string}) **required**\n- baseURL: string *defaults to fission web-api at `https://runfission.com`*\n\nExample:\n```js\nimport { resetPassword } from '@fission-suite/client'\nawait resetPassword(\"newPassword\", { username: \"username\", password: \"password\" })\n// \"newPassword\"\n```\n\n`add`\n\nAdds content to IPFS and returns the CID of that content.\n\nParams:\n- content: Content (json, string, file-stream) **required**\n- auth: Auth ({username: string, password: string}) **required**\n- baseURL: string *defaults to fission web-api at `https://runfission.com`*\n- name: string *optional name for your file, defaults to `undefined`*\n\nExample:\n```js\nimport { add } from '@fission-suite/client'\nconst auth = { username: \"username\", password: \"password\" }\nconst content = {\n  key1: 123,\n  key2: 456\n}\nconst cid = await add(content, auth)\n// \"QmWATWQ7fVPP2EFGu71UkfnqhYXDYH566qy47CnJDgvs8u\"\n```\n\n`remove`\n\nUnpins content from Fission server and disassociates CID with user account.\n\nParams:\n- cid: CID (string) **required**\n- auth: Auth ({username: string, password: string}) **required**\n- baseURL: string *defaults to fission web-api at `https://runfission.com`*\n\nExample:\n```js\nimport { remove } from '@fission-suite/client'\nconst auth = { username: \"username\", password: \"password\" }\nawait remove(\"QmWATWQ7fVPP2EFGu71UkfnqhYXDYH566qy47CnJDgvs8u\", auth)\n// undefined\n```\n\n`pin`\n\nPins content to Fission server.\n\nParams:\n- cid: CID (string) **required**\n- auth: Auth ({username: string, password: string}) **required**\n- baseURL: string *defaults to fission web-api at `https://runfission.com`*\n\nExample:\n```js\nimport { pin } from '@fission-suite/client'\nconst auth = { username: \"username\", password: \"password\" }\nawait pin(\"QmWATWQ7fVPP2EFGu71UkfnqhYXDYH566qy47CnJDgvs8u\", auth)\n// undefined\n```\n\n`cids`\n\nGets all CIDs associated with the given user.\n\nParams:\n- auth: Auth ({username: string, password: string}) **required**\n- baseURL: string *defaults to fission web-api at `https://runfission.com`*\n\nExample:\n```js\nimport { cids } from '@fission-suite/client'\nconst auth = { username: \"username\", password: \"password\" }\nawait cids(auth)\n// [\n//   \"QmYwXpFw1QGAWxEnQWFwLuVpdbupaBcEz2DTTRRRsCt9WR\",\n//   \"QmYp9d8BC2HhDCUVH7JEUZAd6Hbxrc5wBRfUs8TqazJJP9\",\n// ]\n```\n\n`updateDNS`\n\nUpdates the users associated subdomain to point at the given CID\n\nParams:\n- cid: CID (string) **required**\n- auth: Auth ({username: string, password: string}) **required**\n- baseURL: string *defaults to fission web-api at `https://runfission.com`*\n\nExample:\n```js\nimport { updateDNS } from '@fission-suite/client'\nconst auth = { username: \"username\", password: \"password\" }\nawait updateDNS(\"QmYwXpFw1QGAWxEnQWFwLuVpdbupaBcEz2DTTRRRsCt9WR\", auth)\n// \"username.runfission.com\"\n```\n\n### Fission objects\n\nFor repeated calls, instantiate a fission object:\n```js\nimport Fission, { FissionUser } from '@fission-suite/client'\n\nconst fission = new Fission(\"https://someurl.com\")\nconst helloWorld = await fission.content(\"QmWATWQ7fVPP2EFGu71UkfnqhYXDYH566qy47CnJDgvs8u\")\n\nconst fissionUser = fission.login(\"username\", \"password\")\n// Alternately:\n// const fissionUser = new FissionUser(\"username\", \"password\", \"https://someurl.com\")\n\nconst cid =  await fissionUser.add(\"Check this out!\")\nawait fissionUser.pin(cid)\n\nconst cids = fissionUser.cids()\n```\n\n## Testing\n- Run `npm i`\n- Run tests with: `npm run test`\n- Or achieve developer zen with `npm run test:watch`\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffission-codes%2Ftypescript-client","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffission-codes%2Ftypescript-client","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffission-codes%2Ftypescript-client/lists"}