File

Contract 모듈 기능 중 File은 계약서를 체인에 기록하거나 조회를 할 수 있습니다.

Contents

Name
Description

진행이 완료된 계약서를 체인에 Hash로

기록할 수 있습니다.

체인에 기록되어 있는 계약 정보를 Hash로 조회합니다.

체인에 기록되어 있는 모든 계약 정보를 조회합니다.

createContractFile 트랜잭션 실행 시 필요 가스

비용을 예상합니다.

API 호출을 위한 파라미터들의 정보입니다.

1. createContractFile

계약서를 체인에 기록하는 함수(트랜잭션 생성)입니다. * 체인에 기록되면 더이상 수정이 되지 않기에, 계약 진행이 완료된 계약서만 올리는 것이 좋습니다.

Parameters

Name
Type
Example

wallet

Object (FirmaWalletService)

You can check the usage through the "Github example sourcearrow-up-right".

fileHash

String

"da39330a6dfd90a91563603950f742240fa222580beecf36e141fe6410184e8b1669119707"

timeStamp

Number

1669182016039

ownerList

Array (String)

["firma1epg9kx7nqz32dykj23p6jreqfh5x0wdy5a43qc"]

metaDataJsonString

String (JSON)

'{"storage":"ipfs","encryptIpfsHash":["U2FsdGVkX19UsL3m7Cq2bOtTCQArqZTuLgz7mfdRtXM2MnIgm67GM26GtPELsVL8s4+IN2Vj9FbFzpFj3rwfaw=="]}'

txMisc (Not required)

Object (TxMisc)

{fee:200000,gas:163821,memo:"custom message"}

Return value

2. getContractFile​

체인에 기록되어 있는 계약서를 fileHash 값으로 조회할 수 있습니다. * 체인에 기록된 계약서는 모두 해시로 저장되어 있습니다.

Parameter

Name
Type
Example

fileHash

String

"da39330a6dfd90a91563603950f742240fa222580beecf36e141fe6410184e8b1669119707"

Return value

3. getContractFileAll

체인에 기록되어 있는 모든 계약서를 조회합니다.

Parameter

Name
Type
Example

paginationKey

(Not required)

String | Undefined

"ZGEzOTMzMGE2ZGZkOTBhOTE1NjM2MDM5NTBmNzQyMjQwZmEyMjI1ODBiZWVjZjM2ZTE0MWZlNjQxMDE4NGU4YjE2NjkxMDY3MTE="

Return value

4. getGasEstimationCreateContractFile

createContractFile 트랜잭션 실행 시 필요한 가스를 계산합니다.

Parameters

Name
Type
Example

wallet

Object (FirmaWalletService)

You can check the usage through the "Github example sourcearrow-up-right".

fileHash

String

"da39330a6dfd90a91563603950f742240fa222580beecf36e141fe6410184e8b1669119707"

timeStamp

Number

1669182016039

ownerList

Array (String)

["firma1epg9kx7nqz32dykj23p6jreqfh5x0wdy5a43qc"]

metaDataJsonString

String (JSON)

'{"storage":"ipfs","encryptIpfsHash":["U2FsdGVkX19UsL3m7Cq2bOtTCQArqZTuLgz7mfdRtXM2MnIgm67GM26GtPELsVL8s4+IN2Vj9FbFzpFj3rwfaw=="]}'

Return value

5. Params

Name
Description

wallet

사용자의 Mnemonic으로 생성한 고유 지갑 변수입니다. FirmaSDK 모듈 중 Wallet.fromMnemonic 함수를 통해 선언할 수 있습니다.

fileHash

파일 또는 텍스트 정보를 고정된 길이로 매핑한 정보입니다. 체인에서 Contract 추적을 위한 정보로 활용이 가능하며, 하나의 Contract Hash에 여러 개의 Log를 추가할 수 있습니다. 고유 값 사용을 권장하며, FirmaUtil을 통해 파일 및 텍스트의 해시 값을 가져올 수 있습니다.

timeStamp

해당 이벤트 또는 행동, 결과에 대한 로그가 발생한 시점을 의미합니다. "Unix time stamp" 형식이며, 숫자 타입으로 작성해주세요.

ownerList

계약과 연관있는 사용자의 지갑 주소 배열입니다. ownerAddress와 동일한 목적으로 추가할 수 있습니다.

metaDataJsonString

계약과 관련된 추가 정보를 기록할 수 있습니다. 예를 들어 공개키(암호화), 계약서 저장 공간 또는 다운로드 링크, 계약 진행자의 이메일 주소 등이 될 수 있습니다. JSON 형식의 문자열 타입으로 작성해주세요. * 정해진 규격은 없으며 커스텀 하여 사용하시면 됩니다.

txMisc

트랜잭션 호출 시 사용될 수수료 비용을 담고 있는 오브젝트입니다.

* 가스 계산 없이 사용할 경우 기본 가스 비용은 0.02fct입니다.

paginationKey

getContractFileAll 조회 시 모든 log를 가져옵니다. 100개가 초과한 경우 101번째 이후 데이터를 조회하기 위한 값으로 사용됩니다.

Last updated