POSIX is a standard, or rather a whole series of standards. It also covers things like the shell and shell utilities, and the semantics of various kernel services, as well as the C libraries. These days you might want to look up SUS (Single Unix Specification) too.
POSIX specifies the API available to programs, and also shell and commands and stuff available to users. It does not specify which functions should be available from the standard C library, and which should be available from the kernel: from the standpoint of POSIX, it's all the same. POSIX doesn't care how the API is implemented, just that it is implemented correctly.