Whether or not you will be able to identify calls from a modified or reverse-engineered form of your code depends on your capacity to recognise whether the calls could have been made by the original code.
For example, if your code is only able to issue a value for a parameter out of a set number of possible values, any call with an unknown value is likely to have been made by some other code than yours.
There is otherwise no possible way to know what has called your API, especially if the call is valid. For example if you are hosting a publicly facing http web service, I can issue curl commands to send GET requests to it, and it wouldn’t be possible to tell I used curl instead of your binary (and even if your binary does something clever like adding headers, I can always sniff them and imitate them later).
For a library, there is no efficient way of preventing another binary to link against it and start using its API.
Obfuscation will just slow down a reverse-engineer. If reversing your binary is sufficiently valuable, someone is bound to overcome your obfuscation sooner or later: code is not everything, they may also dump the memory during execution and see what’s in there, e.g. urls, variable values, etc... It may however divert more dilettante hackers that may just have wanted to poke around it. Please also note is not a means to protect critical information like embedded api keys or credentials, as recently and spectacularly demonstrated by the Retina-X breach, meaning that a reverser can acquire and mimic any mechanism that you would put in place to authenticate your original binary against your API.
Code signing is not a way to protect your code against reverse-engineering. It’s a way to cryptographically ensure that a binary’s integrity was not compromised before acquiring it, i.e. that the binary is exactly the same as that which was compiled by the original authors. It means however that no one should be able to distribute an altered binary and make it pass for a legitimate version you would have distributed yourself.