> This page is for Camera to Cloud.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://developer.staging.frame.io/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://developer.staging.frame.io/_mcp/server.

# How to: Setting up

## Introduction

Before implementing your Camera to Cloud device, let's ensure you have everything needed for success.

## Register as a Developer

You'll need a `client_secret` for your device to follow the implementation guides. If you haven't already, review our [getting started guide](./getting-started-with-cloud-device-integrations) for information on registering as a C2C developer. Our team will provide the credentials necessary for API interaction.

## Tools for Following Implementation Guides

While not strictly required, having these tools available will help you follow along with our tutorials and test API interactions directly.

### cURL

These tutorials demonstrate Frame.io API requests using `curl`. This widely-used library provides an excellent command-line interface for making HTTP requests. When implementing your device, you'll need to replicate these HTTP calls in your preferred programming language. Using `curl` in these examples allows you to test API interactions by simply copying commands into your terminal.

To verify `curl` installation on your system, enter this command in your terminal:

```shell
curl --version
```

You should see output similar to:

```text
curl 7.64.1 (x86_64-apple-darwin20.0) libcurl/7.64.1 (SecureTransport) LibreSSL/2.8.3 zlib/1.2.11 nghttp2/1.41.0
Release-Date: 2019-03-27
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp 
Features: AsynchDNS GSS-API HTTP2 HTTPS-proxy IPv6 Kerberos Largefile libz MultiSSL NTLM NTLM_WB SPNEGO SSL UnixSockets
```

If not installed, you can find installers for most operating systems [here](https://curl.se/download.html). MacOS or Linux users can install via [Homebrew](https://brew.sh/):

```shell
brew install curl
```

### Python

We'll use Python to format JSON response payloads by piping `curl` results through:

```shell
curl https://api.frame.io/health | python -m json.tool
```

To check for Python installation:

```shell
python --version
```

Expected output:

```text
Python 2.7.16
```

If not installed, you can [download Python here](https://www.python.org/downloads/). Python 2.6+ or Python 3.x will work for these examples.

While Python isn't required, it helps make the responses more readable. Alternatively, tools like [jq](https://stedolan.github.io/jq/) provide similar functionality.

## Reference Implementation

Your developer package includes a Python reference implementation with an example CLI application for uploading media to Frame.io as a C2C Connection. After working through each section of these guides, you may find it helpful to examine the reference implementation to see the concepts applied in working code.

## Next Steps

We encourage you to contact our team if you haven't already, then continue to the [authentication and authorization guide](./implementing-c2c-authentication-and-authorization). We look forward to supporting your implementation journey.