Sesiones con cURL

Creo que tengo un problema muy simple. Actualmente estoy trabajando en una API y antes de que puedas usarla, debes iniciar sesión. El inicio de sesión se realiza a través de una solicitud http, por lo que para iniciar sesión podría acceder

http://myapi.com/[email protected]&password 

por ejemplo.

Cuando el correo electrónico y la contraseña son correctos, establezco algunas variables de sesión y comienzo una sesión:

session_start();
$_SESSION['idUser'] = $row['id'];
$_SESSION['email'] = $row['email'];
print(json_encode(array("authenticated" => true)));

Sin embargo, cuando accedo a la API y hago una solicitud (no inicio de sesión) por cURL desde mi terminal, dice que no estoy autorizado, mientras ejecuté la solicitud de inicio de sesión. En cada llamada a la API en otra página reviso las variables de la sesión. Si están configurados, el usuario está conectado:

function checkSession()
{
    session_start();
    if(!isset($_SESSION['idUser']) || !isset($_SESSION['email']))
    {
            print json_encode(array("error" => "Not authorized"));
            exit();
    }
}

¿Por qué dice que no estoy autorizado? Cuando accedo a las páginas desde un navegador web, todo funciona bien.

¡Gracias!

Respuestas a la pregunta(2)

Su respuesta a la pregunta