LicenseClient
메서드
- attachLicenseTerms
- mintLicenseTokens
- registerPILTerms
- registerPilTermsAndAttach
- registerNonComSocialRemixingPIL
- registerCommercialUsePIL
- registerCommercialRemixPIL
- registerCreativeCommonsAttributionPIL
- getLicenseTerms
- predictMintingLicenseFee
- setLicensingConfig
- getLicensingConfig
- setMaxLicenseTokens
attachLicenseTerms
IP에 라이선스 조건을 첨부합니다.| Method | Type |
|---|---|
attachLicenseTerms | (request: AttachLicenseTermsRequest) => AttachLicenseTermsResponse |
request.ipId: 라이선스 조건이 첨부될 IP의 주소.request.licenseTermsId: 라이선스 조건의 ID.request.licenseTemplate: [선택] 라이선스 템플릿의 주소.
mintLicenseTokens
License Terms를 기반으로 IP Asset을 사용할 수 있는 권한을 부여하는 License Tokens를 민팅합니다. 라이선스 토큰은receiver에게 민팅됩니다.
라이선스 토큰은 licenseTermsId가 이미 IP Asset에 첨부되어 있는 경우에만 민팅될 수 있어, 이를 공개적으로 사용 가능한 라이선스로 만든다는 점에 유의하세요. 그러나 IP 소유자는 IP Asset에 첨부되지 않은 licenseTermsId로 라이선스 토큰을 민팅함으로써 private license를 민팅할 수 있습니다.

| Method | Type |
|---|---|
mintLicenseTokens | (request: MintLicenseTokensRequest) => Promise<MintLicenseTokensResponse> |
request.licensorIpId: 라이선서 IP ID.request.licenseTermsId: 라이선스 템플릿 내 라이선스 조건의 ID.request.maxMintingFee: [선택] 라이선스 민팅 시 지불할 최대 민팅 수수료.request.maxRevenueShare: [선택] 라이선스 민팅 시 지불할 최대 수익 지분.request.amount: [선택] 민팅할 라이선스 토큰의 양.request.receiver: [선택] 수신자의 주소.request.licenseTemplate: [선택] 라이선스 템플릿의 주소.
registerPILTerms
새 라이선스 조건을 등록하고 새로 등록된 라이선스 조건의 ID를 반환합니다.| Method | Type |
|---|---|
registerPILTerms | (request: RegisterPILTermsRequest) => Promise<RegisterPILResponse> |
registerPilTermsAndAttach
Programmable IP License Terms을 등록하고(아직 등록되지 않은 경우) IP에 첨부합니다.| Method | Type |
|---|---|
registerPilTermsAndAttach | (request: RegisterPilTermsAndAttachRequest) => Promise<RegisterPilTermsAndAttachResponse> |
request.ipId: IP의 ID.request.licenseTermsData[]: 첨부할 라이선스 조건 배열.request.licenseTermsData.terms: LicenseTerms type을 참조하세요.request.licenseTermsData.licensingConfig: [선택] LicensingConfig type을 참조하세요. 제공되지 않으면 여기에 표시된 기본값으로 설정됩니다.
request.deadline: [선택] 서명의 마감 시간(밀리초). 기본값은 1000.
registerNonComSocialRemixingPIL
레지스트리에 PIL 비상업적 소셜 리믹스 라이선스를 등록하기 위한 편리한 함수.| Method | Type |
|---|---|
registerNonComSocialRemixingPIL | (request?: RegisterNonComSocialRemixingPILRequest) => Promise<RegisterPILResponse> |
registerCommercialUsePIL
레지스트리에 PIL 상업적 사용 라이선스를 등록하기 위한 편리한 함수.| Method | Type |
|---|---|
registerCommercialUsePIL | (request: RegisterCommercialUsePILRequest) => Promise<RegisterPILResponse> |
request.defaultMintingFee: 라이선스 민팅 시 지불할 수수료.request.currency: 민팅 수수료를 지불하는 데 사용되는 ERC20 토큰이며 토큰은 DATA Foundation의 프로토콜에 등록되어 있어야 합니다.request.royaltyPolicyAddress: [선택] 로열티 정책 컨트랙트의 주소, 기본값은 LAP입니다.
registerCommercialRemixPIL
레지스트리에 PIL 상업적 리믹스 라이선스를 등록하기 위한 편리한 함수.| Method | Type |
|---|---|
registerCommercialRemixPIL | (request: RegisterCommercialRemixPILRequest) => Promise<RegisterPILResponse> |
request.defaultMintingFee: 라이선스 민팅 시 지불할 수수료.request.commercialRevShare: 라이선서와 공유해야 하는 수익의 백분율.request.currency: 민팅 수수료를 지불하는 데 사용되는 ERC20 토큰이며 토큰은 DATA Foundation의 프로토콜에 등록되어 있어야 합니다.request.royaltyPolicyAddress: [선택] 로열티 정책 컨트랙트의 주소, 기본값은 LAP입니다.
registerCreativeCommonsAttributionPIL
레지스트리에 PIL 크리에이티브 커먼즈 저작자 표시 라이선스를 등록하기 위한 편리한 함수.| Method | Type |
|---|---|
registerCreativeCommonsAttributionPIL | (request: RegisterCreativeCommonsAttributionPILRequest) => Promise<RegisterPILResponse> |
request.currency: 민팅 수수료를 지불하는 데 사용되는 ERC20 토큰이며 토큰은 DATA Foundation의 프로토콜에 등록되어 있어야 합니다.request.royaltyPolicyAddress: [선택] 로열티 정책 컨트랙트의 주소, 기본값은 LAP입니다.
getLicenseTerms
주어진 ID의 라이선스 조건을 가져옵니다.| Method | Type |
|---|---|
getLicenseTerms | (selectedLicenseTermsId: string | number | bigint) => PiLicenseTemplateGetLicenseTermsResponse |
selectedLicenseTermsId: 라이선스 조건의 ID.
Response Type
predictMintingLicenseFee
주어진 IP와 라이선스 조건에 대한 라이선스 민팅 수수료를 사전 계산합니다. 이 함수는 라이선스 토큰을 민팅하기 전에 라이선스 민팅 수수료를 계산하는 데 사용할 수 있습니다.| Method | Type |
|---|---|
predictMintingLicenseFee | (request: PredictMintingLicenseFeeRequest) => LicensingModulePredictMintingLicenseFeeResponse |
request.licensorIpId: 라이선서의 IP ID.request.licenseTermsId: 라이선스 조건의 ID.request.amount: 민팅할 라이선스 토큰의 양.request.licenseTemplate: [선택] 라이선스 템플릿의 주소, 기본값은 Programmable IP License입니다.request.receiver: [선택] 수신자의 주소, 기본값은 지갑 주소입니다.
Response Type
setLicensingConfig
IP의 특정 라이선스 조건에 대한 라이선싱 구성을 설정합니다.| Method | Type |
|---|---|
setLicensingConfig | (request: SetLicensingConfigRequest) => SetLicensingConfigResponse |
request.ipId: 구성이 설정되는 IP의 주소.request.licenseTermsId: 라이선스 템플릿 내 라이선스 조건의 ID.request.licenseTemplate: [선택] 사용된 라이선스 템플릿의 주소. 지정되지 않으면, 구성은 모든 라이선스에 적용됩니다.request.licensingConfig: 라이선스에 대한 라이선싱 구성.request.licensingConfig.isSet: 구성이 설정되었는지 여부.request.licensingConfig.mintingFee: 라이선스 토큰을 민팅할 때 지불할 민팅 수수료.request.licensingConfig.hookData: 라이선싱 훅에 의해 사용될 데이터.request.licensingConfig.licensingHook: 라이선싱 모듈의 훅 컨트랙트 주소, 또는 없는 경우 address(0).request.licensingConfig.commercialRevShare: 상업적 수익 지분 백분율 (0에서 100까지).request.licensingConfig.disabled: 라이선싱이 비활성화되었는지 여부. true이면 라이선스를 민팅할 수 없으며 더 이상 파생물을 첨부할 수 없습니다.request.licensingConfig.expectMinimumGroupRewardShare: 그룹의 보상 지분의 최소 백분율 (0에서 100까지).request.licensingConfig.expectGroupRewardPool: 예상되는 그룹 보상 풀의 주소. IP는 이 지정된 보상 풀 주소를 가진 그룹에만 추가될 수 있으며, IP가 어떤 그룹에도 추가되기를 원하지 않으면 zero address입니다.
getLicensingConfig
IP의 특정 라이선스 조건에 대한 라이선싱 구성을 가져옵니다.| Method | Type |
|---|---|
getLicensingConfig | (request: GetLicensingConfigRequest) => LicensingConfig |
request.ipId: 구성이 조회되는 IP의 주소.request.licenseTermsId: 라이선스 템플릿 내 라이선스 조건의 ID.request.licenseTemplate: [선택] 사용된 라이선스 템플릿의 주소.
setMaxLicenseTokens
특정 라이선스에 대한 최대 라이선스 토큰 제한을 설정합니다. 이 메서드는 현재 라이선싱 훅이TotalLicenseTokenLimitHook로 설정되어 있지 않은 경우 TotalLicenseTokenLimitHook 컨트랙트를 사용하도록 라이선싱 훅을 자동으로 구성하고, 지정된 제한으로 최대 라이선스 토큰을 설정합니다.
| Method | Type |
|---|---|
setMaxLicenseTokens | (request: SetMaxLicenseTokensRequest) => Promise<TransactionResponse> |
request.ipId: 구성이 설정되는 IP의 주소.request.licenseTermsId: 라이선스 템플릿 내 라이선스 조건의 ID.request.maxLicenseTokens: 총 라이선스 토큰 제한, 0은 제한 없음을 의미합니다.request.licenseTemplate: [선택] 사용된 라이선스 템플릿의 주소.