--- title: "Glossary" slug: "papago-glossary" tags: ["Papago Translation"] updated: 2026-09-17T09:35:51Z published: 2026-09-17T09:35:51Z canonical: "api.ncloud-docs.com/papago-glossary" --- > ## Documentation Index > Fetch the complete documentation index at: https://api.ncloud-docs.com/llms.txt > Use this file to discover all available pages before exploring further. # Glossary Available in Classic and VPC This document introduces the Papago Translation API examples. ## Create glossary This section describes an example of creating a glossary. ### Python The following is a Python-based sample code for the API. ``` import hashlib import hmac import base64 import time import requests def make_signature(access_key, secret_key, timestamp, url, method): timestamp = str(timestamp) secret_key = bytes(secret_key, 'UTF-8') message = method + " " + url + "\n" + timestamp + "\n" + access_key message = bytes(message, 'UTF-8') signingKey = base64.b64encode(hmac.new(secret_key, message, digestmod=hashlib.sha256).digest()) return signingKey.decode('UTF-8') def create(): baseurl = "https://papago.apigw.ntruss.com" #{OpenAPI endpoint} url = "/glossary/v1/create" access_key = "DonNfVLUKOMNnmXXXXXX" #{Main / Sub Account Access Key} secret_key = "W5RyNUbIzOuUsEM8v8eqreMdSQZHMm9nfgXXXXXX" #{Main / Sub Account Secret Key} timestamp = int(time.time() * 1000) method = "POST" signature = make_signature(access_key, secret_key, timestamp, url, method) url = baseurl + url headers = { "x-ncp-apigw-timestamp": str(timestamp), "x-ncp-iam-access-key": access_key, "x-ncp-apigw-signature-v2": str(signature) } params = { "glossaryName": "Glossary1", "description": "This is a description of the Glossary1 glossary." } response = requests.post(url=url, verify=True, headers=headers, json=params) ``` ## Upload glossary file This section describes an example of uploading a term list file to a glossary. ### Python The following is a Python-based sample code for the API. ``` import hashlib import hmac import base64 import time import requests def make_signature(access_key, secret_key, timestamp, url, method): timestamp = str(timestamp) secret_key = bytes(secret_key, 'UTF-8') message = method + " " + url + "\n" + timestamp + "\n" + access_key message = bytes(message, 'UTF-8') signingKey = base64.b64encode(hmac.new(secret_key, message, digestmod=hashlib.sha256).digest()) return signingKey.decode('UTF-8') def uploadFile(): baseurl = "https://papago.apigw.ntruss.com" #{OpenAPI endpoint} url = "/glossary/v1/{}/upload" access_key = "DonNfVLUKOMNnmXXXXXX" #{Main / Sub Account Access Key} secret_key = "W5RyNUbIzOuUsEM8v8eqreMdSQZHMm9nfgXXXXXX" #{Main / Sub Account Secret Key} timestamp = int(time.time() * 1000) method = "POST" glossary_key = "c399cf78-781e-4353-89a6-cca8aaxxxxxx" url = url.format(glossary_key) #{Change {} in URL to glossary key.} signature = make_signature(access_key, secret_key, timestamp, url, method) url = baseurl + url headers = { "x-ncp-apigw-timestamp": str(timestamp), "x-ncp-iam-access-key": access_key, "x-ncp-apigw-signature-v2": str(signature) } file = { "file": ("glossary_file.csv", open('glossary_file.csv', 'rb'), "text/csv") } response = requests.post(url=url, verify=True, headers=headers, files=file) ``` ## Download glossary file The following describes an example of downloading a registered glossary. ### Python The following is a Python-based sample code for the API. ``` import hashlib import hmac import base64 import time import requests def make_signature(access_key, secret_key, timestamp, url, method): timestamp = str(timestamp) secret_key = bytes(secret_key, 'UTF-8') message = method + " " + url + "\n" + timestamp + "\n" + access_key message = bytes(message, 'UTF-8') signingKey = base64.b64encode(hmac.new(secret_key, message, digestmod=hashlib.sha256).digest()) return signingKey.decode('UTF-8') def download(): baseurl = "papago.apigw.ntruss.com" #{OpenAPI endpoint} url = "/glossary/v1/{}/download" access_key = "DonNfVLUKOMNnmXXXXXX" #{Main / Sub Account Access Key} secret_key = "W5RyNUbIzOuUsEM8v8eqreMdSQZHMm9nfgXXXXXX" #{Main / Sub Account Secret Key} timestamp = int(time.time() * 1000) method = "POST" glossary_key = "c399cf78-781e-4353-89a6-cca8aaxxxxxx" url = url.format(glossary_key) #{change {} in url to glossary-key.} signature = make_signature(access_key, secret_key, timestamp, url, method) url = baseurl + url headers = { "x-ncp-apigw-timestamp": str(timestamp), "x-ncp-iam-access-key": access_key, "x-ncp-apigw-signature-v2": str(signature) } response = requests.post(url=url, verify=True, headers=headers) ``` ## Get glossary list The following describes an example of getting a glossary list. ### Python The following is a Python-based sample code for the API. ``` import hashlib import hmac import base64 import time import requests def make_signature(access_key, secret_key, timestamp, url, method): timestamp = str(timestamp) secret_key = bytes(secret_key, 'UTF-8') message = method + " " + url + "\n" + timestamp + "\n" + access_key message = bytes(message, 'UTF-8') signingKey = base64.b64encode(hmac.new(secret_key, message, digestmod=hashlib.sha256).digest()) return signingKey.decode('UTF-8') def get_user_glossary(): baseurl = "https://papago.apigw.ntruss.com" #{OpenAPI endpoint} url = "/glossary/v1/?currentPage={}&pageSize={}" access_key = "DonNfVLUKOMNnmXXXXXX" #{Main / Sub Account Access Key} secret_key = "W5RyNUbIzOuUsEM8v8eqreMdSQZHMm9nfgXXXXXX" #{Main / Sub Account Secret Key} timestamp = int(time.time() * 1000) method = "GET" url = url.format(1, 10) # {change {} in url to page number and page size.}{Set {} in URL to page number and page size.} signature = make_signature(access_key, secret_key, timestamp, url, method) url = baseurl + url headers = { "x-ncp-apigw-timestamp": str(timestamp), "x-ncp-iam-access-key": access_key, "x-ncp-apigw-signature-v2": str(signature) } response = requests.get(url=url, verify=True, headers=headers) ``` ## Delete glossary The following describes an example of deleting a glossary list. ### Python The following is a Python-based sample code for the API. ``` import hashlib import hmac import base64 import time import requests def make_signature(access_key, secret_key, timestamp, url, method): timestamp = str(timestamp) secret_key = bytes(secret_key, 'UTF-8') message = method + " " + url + "\n" + timestamp + "\n" + access_key message = bytes(message, 'UTF-8') signingKey = base64.b64encode(hmac.new(secret_key, message, digestmod=hashlib.sha256).digest()) return signingKey.decode('UTF-8') def delete(): baseurl = "https://papago.apigw.ntruss.com" # {OpenAPI endpoint} url = "/glossary/v1/{}" access_key = "DonNfVLUKOMNnmXXXXXX" # {Main / Sub Account Access Key} secret_key = "W5RyNUbIzOuUsEM8v8eqreMdSQZHMm9nfgXXXXXX" # {Main / Sub Account Secret Key} timestamp = int(time.time() * 1000) method = "DELETE" glossary_key = "c399cf78-781e-4353-89a6-cca8aaxxxxxx" url = url.format(glossary_key) #{Change {} in URL to glossary key.} signature = make_signature(access_key, secret_key, timestamp, url, method) url = baseurl + url headers = { "x-ncp-apigw-timestamp": str(timestamp), "x-ncp-iam-access-key": access_key, "x-ncp-apigw-signature-v2": str(signature) } response = requests.delete(url=url, verify=True, headers=headers) ```