I was reading Peter Cameron's explanation of Fraïssé's Theorem in his book Permutation Groups (Chapter 5). He states the Fraïssé class of finite graphs has limit being the countable random/Rado graph, $R$. I couldn't work out how to show (d). I give my arguments for the rest below in brackets.
Theorem: Let $C$ be a class of finite structures over a relational language. $C$ is the age of a countable homogeneous structure $M$ if and only if:
a) $C$ is closed under isomorphism - (isomorphisms of finite graphs are finite graphs)
b) $C$ is closed under taking induced substructures - (induced subgraphs of finite graphs are finite)
c) $C$ contains only countably many non-isomorphic structures - (there are finitely many graphs order $n$ so the number of finite graphs is countable (I'm not sure how to explain this) so the number of non-isomorphic finite graphs must be less than this)
d) $C$ has the amalgamation property i.e. given $A, B_1, B_2 \in C$ with embeddings $f_i:A\rightarrow B_i$ for $i=1,2$ then there exists $E\in C $ and embeddings $g_i:B_i\rightarrow E;$ for $i=1,2$ such that $g_1 f_1 = g_2 f_2$ is a map $A\rightarrow E$ - (???)
Moreover $M$ is unique up to isomorphism.
I imagine once I prove the finite graphs form a Fraïssé class, I can use the fact that the countable random graph / Rado graph $R$ is universal/homogeneous (I'm not sure which) for all finite graphs so finite graphs can be embedded in $R$ so the class of finite graphs is the age of $R$. Then by the uniqueness statement $R$ is the unique Fraïssé limit of $R$.
You are nearly there.
The argument for $(d)$ is as follows. You can decompose the vertices of $B_i$ into $V_A$ (the codomain of $f_i$) and $V'_{B_i} = V(B_i)\setminus f_i(A)$. Similarly write $E_{A}$, $E_{(A, B_i)}$ and $E_{B_i}$ respectively for edges in the image of $A$, vertices between the image of $A$ and the other vertices, and edges that do not involve vertices of $f_i(A)$. Then take $$C= (V_A \cup V'_{B_1} \cup V'_{B_2}, E_{A} \cup E_{(A, B_1)} \cup E_{B_1} \cup E_{(A, B_2)} \cup E_{B_2})$$ You can then simply build the $g_i$ embeddings by case analysis.
To conclude you use the universality (there are homogeneous structures that are not universal). It's usually called the extension property (for any two disjoint sets of vertices $A$, $B$ you can find some vertex $v$ adjacent to everything in $A$ and nothing in $B$). This allows you to find any graph as a subgraph.