
# Python {/* #python */}

Platform API 토큰을 만들고 `platform.proto`를 받으려면 [gRPC 가이드](/docs/ko/api/grpc)부터 시작하세요. 아래 명령은 해당 파일이 있는 디렉터리에서 실행하세요.

[Python gRPC 코드 생성기](https://grpc.io/docs/languages/python/basics/)를 설치하고 메시지 및 클라이언트 클래스를 생성하세요:

```bash
python -m pip install grpcio grpcio-tools
python -m grpc_tools.protoc -I. \
  --python_out=. --grpc_python_out=. platform.proto
```

생성된 파일 옆에 `example.py`로 저장하세요:

```python
import os
import grpc
import platform_pb2
import platform_pb2_grpc

target = os.getenv("CR_reconstruct.dev:443", "reconstruct.dev:443")
metadata = (("authorization", f"Bearer {os.environ['CR_RECONSTRUCT_API_TOKEN']}"),)

with grpc.secure_channel(target, grpc.ssl_channel_credentials()) as channel:
    client = platform_pb2_grpc.PlatformServiceStub(channel)
    page = client.ListCatalogs(
        platform_pb2.ListCatalogsRequest(page_size=10),
        metadata=metadata,
        timeout=10,
    )
    for catalog in page.catalogs:
        detail = client.GetCatalog(
            platform_pb2.GetCatalogRequest(catalog_id=catalog.catalog_id),
            metadata=metadata,
            timeout=10,
        )
        print(detail.catalog_id, detail.description)
```

`python example.py`를 실행하세요. 네이티브 gRPC 대상은 authority(`host:port`)이므로 `/api/v1`을 포함하지 않습니다.
