Concepts and Fundamentals
Understanding Core Concepts
The C2C API relies on several essential technologies that you should understand before beginning an integration project. Review the headings in this article—if any terms are unfamiliar, this guide will help address those knowledge gaps. If you encounter challenges with specific concepts, our team is available to provide additional resources and support.
What You Need to Know
To successfully integrate with the C2C API, you should have a basic understanding of:
Networking Basics and Glossary
At its core, the Frame.io API enables communication between Frame.io’s servers and your device or application, requiring network interactions for every operation.
Clear communication is essential in any relationship, including between servers and clients. Just as miscommunications occur in everyday conversation, similar challenges exist when computers exchange information.
Beyond addressing standard communication issues, we need to ensure secure transmission of sensitive data. Frame.io requires encryption for all server communications, adding necessary security layers to the process.
While implementing the C2C API, you’ll likely use third-party libraries to handle networking details. However, since networking components often generate real-world errors, understanding the underlying processes when interacting with Frame.io’s servers is valuable. Here’s a concise glossary of essential terminology:
Public and Private Keys
A public key works like a lock, while a private key serves as the corresponding key.
Think of this scenario: You want to send a confidential message to a colleague while ensuring privacy until delivery.
First, ask your colleague to send you a lock for which only they have the key.
Upon receiving this lock, secure your confidential message in a container using it. While anyone handling the container can see the lock, only your colleague has the key to access the contents. The lock provides no value to unauthorized parties trying to view the message. Even you cannot unlock it without the key.
When your colleague receives the secured container, they simply use their key to access the contents.
Public and private keys work the same way. You can share a public key widely. Recipients encrypt messages with this key, but only the private key holder can decrypt these communications. As long as the private key remains confidential, the public key cannot be used to decode the encrypted messages it creates.
This public/private key mechanism underpins TLS functionality, allowing parties to communicate openly while establishing secure, private channels.
Certificates
Certificates contain public and private keys, authenticated by trusted certification authorities.
When a Certificate Authority validates a key, it essentially vouches for the key’s authenticity. Recipients of a public key—such as one from Google—can verify this endorsement from recognized certification authorities. Unendorsed keys are considered potentially fraudulent and trigger security alerts.
Frame.io’s certificates are validated by the Amazon Root CA 1 certificate authority. These certificates are available through various resources, including the Certifi library (used by Mozilla and the Python Requests library).
For implementation, we recommend the Certifi GitHub repository and certificate PEM bundle to validate HTTPS requests to api.frame.io.
HTTP/S Requests
HTTP is ubiquitous in web browsing—appearing at the beginning of nearly every website address. HTTP (Hypertext Transfer Protocol) establishes standardized computer-to-computer communication protocols.
You can think of HTTP as a standardized form system for client-server interactions—similar to government forms required for information requests or program applications. Without properly completed forms, government agencies cannot process or respond to requests.
HTTP requests facilitate all Frame.io application interactions. Within the C2C API framework, HTTP request types represent the available functional capabilities.
For a comprehensive HTTP overview, see this informative article. Understanding these fundamentals is essential before proceeding. If you’re new to HTTP requests, consider reviewing introductory materials. For optimal preparation, familiarize yourself with these HTTP concepts:
While networking libraries typically handle request construction, the HTTP/1.1 RFC provides a reference resource if needed.
Authentication and Authorization
We’ll explore these concepts more thoroughly later, but understanding these foundational principles is important:
Next Steps
We encourage you to contact our team with any questions, then proceed to the next guide section. We look forward to supporting your integration efforts.
For a technical overview, see the integration architecture guide.
If you haven’t already, please review the Implementing C2C: Setting Up guide before proceeding.
You’ll need the access_token obtained during the authentication and authorization process.