PHPackages                             itcolima/siitec-api-client - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. itcolima/siitec-api-client

ActiveLibrary[API Development](/categories/api)

itcolima/siitec-api-client
==========================

PHP ITColima SIITEC API Client

v0.1.91(5mo ago)11.1kPHP

Since Jul 12Pushed 5mo ago1 watchersCompare

[ Source](https://github.com/tecnm-colima/siitec-api-client)[ Packagist](https://packagist.org/packages/itcolima/siitec-api-client)[ RSS](/packages/itcolima-siitec-api-client/feed)WikiDiscussions master Synced today

READMEChangelog (1)Dependencies (6)Versions (97)Used By (0)

Cliente PHP de la API de SIITEC
===============================

[](#cliente-php-de-la-api-de-siitec)

Instalación
-----------

[](#instalación)

La instalación del paquete se puede hacer mediante **composer** utilizando el siguiente comando:

```
composer require itcolima/siitec-api-client
```

Inicialización
--------------

[](#inicialización)

La forma de inicializar la API de SIITEC es mediante la clase `ITColima\SiitecApi\SiitecApi`.

```
use ITColima\SiitecApi\SiitecApi;

// Carga manual de las variables de entorno
putenv('SIITEC_API_CLIENT_ID', '');
putenv('SIITEC_API_CLIENT_SECRET', '');

$siitecApi = new SiitecApi();
```

> **CARGA AUTOMÁTICA DE LAS VARIABLES DE ENTORNO**
>
> La API de SIITEC puede cargar automáticamente las variables de entorno si se utiliza un framework o librería que las cargue desde un archivo `.env`. En el archivo deberían incluirse de la siguiente manera:
>
> ```
> # ===================================
> # SIITEC API SETTINGS
> # ===================================
> SIITEC_API_CLIENT_ID = ''
> SIITEC_API_CLIENT_SECRET = ''
> ```

> **NOTA**
>
> Los valores de los parámetros `` y `` son proporcionados por el Departamento de Centro de Cómputo del Instituto Tecnológico de Colima.

Inicio de sesión
----------------

[](#inicio-de-sesión)

Una de las funcionalidades especiales de la libería API de SIITEC es permitir acceso a recursos propios de cada usuario, identificándolo mediante su inicio de sesión.

El inicio de sesión en la API de SIITEC se realiza utilizando el Framework de Autorización OAuth 2.0, el cual permite obtener acceso a recursos protegidos utilizando claves temporales de acceso, llamadas Access Token, y permitiendo una operación continua.

Estos procesos de inicio de sesión requieren de una compleja red de interacciones e intercambio de peticiones HTTP entre el Cliente (aplicación) y el servidor de SIITEC. Ese complejo mecanismo se simplifica utilizando funciones de la librería, que permiten centrarse menos en la estructura y más en la funcionalidad.

### Implementación de las funciones de inicio de sesión

[](#implementación-de-las-funciones-de-inicio-de-sesión)

```
use ITColima\SiitecApi\SiitecApi;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;

class OAuth2Controller
{
    /**
     * Recibe la solicitud del cliente para iniciar proceso de inicio de sesión.
     *
     * Ruta: GET /oauth2[/]
     */
    public function indexGet(): ResponseInterface
    {
        $siitecApi = new SiitecApi();

        if ($api->isLoggedIn()) {
            return SiitecApi::redirectTo(SiitecApi::siteUrl());
        }

        $response = $siitecApi->login(
            SiitecApi::siteUrl('/oauth2/login_handler'),
            SiitecApi::siteUrl('/oauth2/logout')
        );
        return $response;
    }

    /**
     * Recibe la respuesta del servidor de autorización con el código de
     * autorización o error, según corresponda el caso.
     *
     * Ruta: GET /oauth2/callback[/]
     */
    public function callbackGet(ServerRequestInterface $request): ResponseInterface
    {
        $siitecApi = new SiitecApi();
        $redirUri = $siitecApi->handleLogin($request);
        return SiitecApi::redirectTo($redirUri);
    }

    /**
     * Destruye la sesión y hace la solicitud para cancelar la sesión activa del
     * usuario en SIITEC.
     *
     * Ruta: GET /logout[/]
     */
    public function logoutGet(ServerRequestInterface $request): ResponseInterface
    {
        $siitecApi = new SiitecApi();
        $response = $siitecApi->handleLogout($request);
        session_destroy();
        return SiitecApi::emitResponse($response);
    }
}
```

> **NOTA**
>
> La implementación puede variar dependiendo del framework y técnica para el desarrollo que se esté utilizando.

DEPURACIÓN
----------

[](#depuración)

De manera predeterminada la API tiene asociadas direcciones de inicialización, mismas que pueden modificarse para depuración y ejecución con entornos locales.

```
# =====================================
# SIITEC API DEBUGGING
# =====================================
SIITEC_HOME  = 'https://siitec.colima.tecnm.mx'
SIITEC_API   = 'https://siitec.colima.tecnm.mx/api/index.php'
```

> **VARIABLES DE ENTORNO ESPECÍFICAS**
>
> Alternativamente puede utilizar variables de entorno específicas para los mecanismo de autenticación, aunque esto se recomienda para depuraciones específicas, y no conviene utilizarse de manera generalizada.
>
> ```
> # =====================================
> # SIITEC API DEBUGGING
> # =====================================
> SIITEC_API_AUTHORIZE_ENDPOINT = 'https://siitec.colima.tecnm.mx/index.php/oauth2/authorize'
> SIITEC_API_TOKEN_ENDPOINT     = 'https://siitec.colima.tecnm.mx/index.php/oauth2/token'
> SIITEC_API_RESOURCES_ENDPOINT = 'https://siitec.colima.tecnm.mx/api/index.php'
> ```

### Otras variables de entorno

[](#otras-variables-de-entorno)

```
# Override de enrutamientos
SIITEC_API_PAGOS_URL = 'https://siitec.colima.tecnm.mx/pagos'
SIITEC_API_DOCENCIA_URL = 'https://siitec.colima.tecnm.mx/docencia'

# Override en envío de correos electrónicos
SIITEC_API_EMAIL_OVERRIDE = 'mytestemail@domain.com'
```

###  Health Score

42

—

FairBetter than 88% of packages

Maintenance72

Regular maintenance activity

Popularity17

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity58

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 87.9% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~17 days

Recently: every ~54 days

Total

95

Last Release

161d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/630263d156ec44e1d55c3d237fe08354442d0cbe7b257032997d0a649baf1854?d=identicon)[francerz](/maintainers/francerz)

![](https://www.gravatar.com/avatar/10e7a00cdd3f2e24935c66638237d39fcff522bc99896fcc364177c5fbd11981?d=identicon)[tecnm-colima](/maintainers/tecnm-colima)

---

Top Contributors

[![francerz](https://avatars.githubusercontent.com/u/10836837?v=4)](https://github.com/francerz "francerz (102 commits)")[![moises995](https://avatars.githubusercontent.com/u/54329172?v=4)](https://github.com/moises995 "moises995 (14 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/itcolima-siitec-api-client/health.svg)

```
[![Health](https://phpackages.com/badges/itcolima-siitec-api-client/health.svg)](https://phpackages.com/packages/itcolima-siitec-api-client)
```

###  Alternatives

[openai-php/client

OpenAI PHP is a supercharged PHP API client that allows you to interact with the Open AI API

5.8k28.0M318](/packages/openai-php-client)[sylius/sylius

E-Commerce platform for PHP, based on Symfony framework.

8.5k5.9M737](/packages/sylius-sylius)[telnyx/telnyx-php

Official Telnyx PHP SDK — APIs for Voice, SMS, MMS, WhatsApp, Fax, SIP Trunking, Wireless IoT, Call Control, and more. Build global communications on Telnyx's private carrier-grade network.

35789.4k2](/packages/telnyx-telnyx-php)[mollie/mollie-api-php

Mollie API client library for PHP. Mollie is a European Payment Service provider and offers international payment methods such as Mastercard, VISA, American Express and PayPal, and local payment methods such as iDEAL, Bancontact, SOFORT Banking, SEPA direct debit, Belfius Direct Net, KBC Payment Button and various gift cards such as Podiumcadeaukaart and fashioncheque.

60216.0M85](/packages/mollie-mollie-api-php)[deeplcom/deepl-php

Official DeepL API Client Library

2607.3M113](/packages/deeplcom-deepl-php)[tempest/framework

The PHP framework that gets out of your way.

2.2k34.4k15](/packages/tempest-framework)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
