Loading video player...
How do we take sore-l like videos and
post them on any social media and done
automatically? I'm going to show you
step by step how you can create a social
media brand that automatically creates
content leveraging this Sora API.
Welcome back y'all. On today's video,
we're going to be leveraging SOAR API so
we can automatically create video
content. And today's video is sponsored
by Zapier. They hit me up and they said,
Corbin, we have a cool idea for video.
We need to leverage the SOA API. And I'm
like, you know what? You're right. Let's
do it. Zapier is an automation platform
that allows us to connect all these
different softwares you're about to see
in today's video, such as uploading to
YouTube, pushing this data to a Google
sheet, and leveraging the actual Sora
API itself. So, let's go ahead and get
started here. And what I want you to do
is actually create a folder. So, we
create new folder. I'm going to call
this Sora influencer. Save. My objective
is simple. How do we automatically
create Sora videos? And then you can
leverage that and post anywhere on
social media. Therefore, create new zap.
This first automation we're going to do
together is simply going to create the
actual video. It's going to put in a
request and you're going to notice that
it's pending. Therefore, we're going to
create a separate automation to listen
for this request. So, when it's done, we
can do XYZ. So, first things first,
what's going to initiate your creation
of a new video. This in theory could be
maybe you're researching, you find a
cool topic and add information here and
then Zapier automatically grabs this
data and puts it through the pipeline.
In today's video, we'll do a simple
trigger which is going to be a scheduler
schedule. So the logic I want to run in
this pipeline is first we're going to do
a trigger event of how often we want the
pipeline to run. As you can see right
here we can set our frequency. So for
now I will go and say every hour. We
want to put out a new piece of content
every single hour. Hit continue. We can
select the relevant time. So we'll say
every hour at 6:00 7:00 alternatively
6:15 7:15 whether to trigger in the
weekends or not. Continue. The specific
action we're looking for here is going
to be a Sora video generation. By the
time you watch this video it probably
already exists. As of now, we're just
going to do an API request to actually
access this endpoint. So, I'm going do
API request beta. If that option is
still not there by the time you see
this, then don't worry. Just follow the
same steps I'm doing. Select your
account. Continue. Now, this might look
a little confusing. Don't worry. For
one, I'll put the entire documentation
for Sora API in the description down
below. For two, simply hit copy page
here. Paste it into an AI model chat.
Say, "Hey, I want to integrate Sora with
Zapier." It will help you out. It will
show you step by step. For now though,
for us, we're going to do the URL.
Because we're sending data to OpenAI,
we're going to use the method of post.
Think of it like sending mail. You got
mail. That situation. The URL is going
to be this URL right here. The v1/v
videos. This information is outlined
here as well. If you're wondering like
where's he getting all these URLs from?
It's in the docs. Anytime you do a
request like this, we're going to have
to add an additional header here of
content type. This is going to be
application JSON. This is essentially
how we're sending the data. Don't over
complicate this, y'all. If you don't
know what's happening up to this point,
don't worry. Just talk to an AI model or
just paste it in here. All JSON is is
another language. If you speak German,
it's Deutsch Deutsch. If you speak
English, it's English. This is the way
that these little bots and software, it
communicates with each other. Therefore,
JSON in this payload, we need to
identify a couple things. First off, the
model type. This is actually pretty
fundamentally important for you to know.
And what I mean by that is you can see
the relevant pricing associated with
each model here at OpenAI pricing. If I
come down here, you can see the Sora 2
model is only 10 cents per second.
Alternatively, the Sora 2 Pro is 50
cents when you use these dimensions. So,
dive into the documentation a little.
See what your use case is. See which
model is the best fit. The higher level
model will give you higher quality
outputs supposedly. Try it out. Maybe
you like sore too. Next is the prompt.
We all know this. This is essentially
telling the model, "Hey, we want this to
happen in the video. I'm going to say a
cinematic vertical video of a person
walking through a neon lit Tokyo street
at night rain reflecting the lights. I
went to Japan during August. It was
extremely hot. Trust me, there's
summers. You are going to sweat.
Sidetracked. Size 720 x 1280. We want
that Tik Tok vertical format. And then
how long you want it to be. Right now,
we can do 4 seconds, 8 seconds, 12
seconds. For now, I'll do 4 seconds. Hit
continue. I'm going to test this step.
You'll know it's successful when you
type in response here. Or actually,
let's just type in Q. You'll notice it's
successful when you see status is cued.
You run into errors here, you can use
Zapier's AI helper, or alternatively,
use a chatbot. Now, while that video is
cooking, let me show you how you make a
dynamic prompt here if you want to kind
of just push out content on a very
specific niche. We'll do here is
something very special that we've done
for the past couple years here on this
channel. Just add another chat GBT
block, but specifically a block that
identifies a dynamic variable that we'll
use in the next block here when creating
the video. That didn't make sense. Don't
worry, you'll see what I mean. So, I'm
going to choose conversation. I'm going
to continue the model. I'll go GBT5. So,
I went ahead and cooked up a prompt. We
got generate a visually rich cinematic
two-s sentence summary of a random event
happening somewhere in Japan. First term
that is very fundamentally important for
you to see, random. This ensures that
you get randomness in your output. Eg,
one video doesn't match the other video
that came out. So, when you're posting
on social media, you're good to go cuz
it's going to be random. The scene
should feel like it's being captured
through a camera, including framing or
film terms such as wide shot, panning,
close-up, soft light, handheld camera. I
just want to give a bunch of variety
here, y'all. Keep it short, vivid, and
realistic as if describing the opening
of a movie scene. What's big here?
What's your niche? What kind of content
do you want to make for your specific
profile? Is your niche cooking? Or maybe
even niched even further like pasta. Do
you really like pasta? I love pasta. Or
is your niche sports? Or is your niche
fishing? Like you could quite literally
make a whole social media profile where
in the profile it's different people
catching different types of fish. And
it's kind of funny because sometimes the
fish wilds out cuz it's AI generated.
Maybe it's a big bass. Maybe they're
catching like a piece of toast. Who
knows? But the point being though, the
purpose of this is to give us the prompt
for the Sora input. Next, we're going to
put a memory key here. We say Sora
output. This ensures consistent outputs
here. So, we're going to go down and
this should be good and continue. Test
this step. Scroll down. And here's our
prompt. Yshot. Dawn missed over the
Tokyo fish market as forklifts weave
between crates. So on so forth. We'll
actually try this as well so we can see
what it looks like. I'm going to
continue. Continue. And then what we can
do is scroll down to original payload.
And now we're making it dynamic. I
delete this. I add it here. Previous
output, the message content text. Click
that. But what we just created together
is now we have the ability every single
hour to shoot off get a random prompt
but specific to Japan. And then that
prompt is then sent to be created as a
Sora video. So the next question here is
Corbin, how do we get the Sora video?
Where is it? It's in the cloud. But how
do we get to the cloud to get it? Let me
show you. First off, rename this. We're
going to call this Sora Creator. We're
going to back out. I'm in my folder,
Sora Influencer. We're going to create
another zap. So, now that we have a
functional pipeline to create sor
videos, we now need to know when they're
done. So, to do that, we're going to do
a web hook. All I want you to think
about when you hear web hook is this is
our way of listening when the video is
done. So, we're going to do catch hook
here. Continue. Continue. And this is
our URL. Mopy. Because of the fact that
this is using OpenAI's API to create the
Sora video, we need to go back to our
dev portal. This is where you created
your API key. You're going to scroll
down and select web hooks. If you don't
know how I got to this page, you go up
to the projects, hit manage projects.
Once we're here, we're going to create
I'm going to call this zap zap the URL
we just received. And to be honest with
you all, you're learning another lesson
here where essentially you can listen to
any of these different things happening
and incurring within your specific
organization at OpenAI. Now, all we care
about is at the very end here, which is
video completed and video failed. If you
find yourself hitting test trigger and
no data showing up, just go back to the
other automation flow we created
together and just retest step to send
another payload through. What you can
see here though is that it was
completed. Continue selected record.
What we want to do next is add a filter
block. The purpose of this filter block
is going to stop it when it fails. So as
you saw with the web hook we created,
it's video completed and video failed.
Therefore, let's stop the automation
early if the video failed. There's no
reason to keep going, right? So if type
exactly matches video.failed,
the automation would have not continued
as you see right here. Therefore, we
need to make sure it exactly matches
completed because it tells us it
actually worked. Continue. It's golden.
It's green. I love it. So, now that we
have that, we need to get the video
check GBT. JGBT action event. This is
going to be an API request again. Select
your account. Continue. And now due to
the fact that we need to receive data,
grab data. We're going to do a HTTP
method of get and based off OpenAI's
documentation. The way we do that is we
call this URL here v1 videos data ID
content. the data ID because it's
dynamic. We simply add that add and this
will come from the web hook identified
as data ID. Once that's clicked in, now
we'll have the ability to grab the
relevant data of the finished video. I'm
going to go ahead and identify how we
want to accept it. So I'm going say
application octet stream. This is for
video files. Continue and test step. And
yes, the response is a little crazy. So
let me show you a real quick workaround.
We're going to be able to push this
relevant link here and download the
video using Postman. as right now sora
files can be quite large. So it's harder
to pass it through API. So in order to
do this effectively what I want to do is
going to be pass this URL to my Google
sheet. So I'm going do Google sheet here
action event create spreadsheet row.
Select your account. I'll choose my
specific spreadsheet. Aora influencer
worksheet sheet one. Continue. And we'll
go ahead and put in that relevant data
that we care about. Right? So under
download a video come over here. We'll
put request URL. Continue and test this
step. Here we go. Here is the request
URL. I'll zoom out y'all. Now, yes, in
theory, we could remove this step right
here and just grab the relevant data
from here and send it straight to the
spreadsheet row. But I wanted to show
you this step here. So when you want to
integrate it with other platforms like
YouTube or X or whatever it may be
through API, now you know how to grab it
in an automation flow in Zapier. For now
though, what is valuable is we have the
link to the video that exists. So I can
copy this. I'm going to use a platform
called Postman. This allows me to
download directly within the UI. So what
I do is I'll put in that link that we
had earlier. I'll paste it right here.
I'll do a get method. In authorization,
you put in your open API key here. And
when you put your API key here, you hit
send. And here's our video. And before
we play it, let me go ahead and just
download it. So, I'm going to hit
download here. All right. Here's our
video. This is for Tokyo. All right.
This is the forklift prompt. Let's check
it out.
>> True. So, now you know functionally
every single hour a new video will pop
up here for you to download and publish
throughout different platforms. Now, a
really cool workflow you could add on
top of this would be setting up a Google
Drive where every single time you add a
new file in that Google Drive, eg the
video we just created together, it would
automatically upload a YouTube shorts
for example. Now, here's the last two
things I want to leave you with. The
first thing is notice they don't have
any sore watermarks here. So, using the
API, there's no watermark. Second thing,
some of y'all might be like, Corbin,
that's way too short of a video. All you
need to do is come back to this payload.
Instead of four, put eight, put 12. This
is where you identify the duration for
the video. That just about does today's
video. So, make sure to leave a like. It
is completely free. And as you already
know with these style videos, I'll see
you in the next. Zab your plus just
makes it so we can just create content,
content, content, content. So much
content, AI content. I love content.
Zapier plus Sora is the best I've ever
seen.
Automate OpenAI Sora with Zapier 👉 https://bit.ly/4oKRyDH Video generation with Sora Create, iterate on, and manage videos with the Sora API. https://platform.openai.com/docs/guides/video-generation subscribe for more ► https://bit.ly/3zlUmiS follow me on twitter (x) ► https://twitter.com/corbin_braun follow me on instagram ► https://www.instagram.com/corbin_braunlich follow me on tiktok ► https://www.tiktok.com/@corbin_braunlich watch me live ► https://www.twitch.tv/itscorbinbrown join our ai community (free) ► https://www.skool.com/ai-for-your-business join my software ► https://bumpups.com/ steal my software ► https://github.com/coffeefuelbump LINK TO EVERYTHING ► https://linktr.ee/corbin_brown my recording setup: https://www.amazon.com/shop/corbinbrown #openai #sora #zapier Become a Builder + Perks 🛠️ https://www.youtube.com/channel/UCJFMlSxcvlZg5yZUYJT0Pug/join