Anar al contingut principal
API REST v1

Documentació de l'API

REST API + webhooks. Tot el que necessites per connectar els teus sistemes a MiEspacio en un dia.

Primers passos

URL base

Totes les sol·licituds d'API es fan a la següent URL base:

/api//v1

Els endpoints públics es poden accedir sense autenticació. Els endpoints autenticats requereixen un token Bearer obtingut a través de l'endpoint de login.

Endpoints

Endpoints públics

Aquests endpoints estan disponibles sense autenticació.

MètodeURLDescripcióAuth
GET/companiesLlistar empresesNo
GET/companies/{slug}Detalls d'empresaNo
GET/companies/{slug}/servicesServeis d'empresaNo
GET/companies/{slug}/reviewsRessenyes d'empresaNo
GET/companies/{uuid}/booking/availabilityDisponibilitat de reservesNo
POST/companies/{uuid}/bookingsCrear reservaNo
GET/restaurantsLlistar restaurantsNo
GET/eventsLlistar esdevenimentsNo
GET/vacanciesLlistar ofertes de treballNo
GET/blog/postsPublicacions del blogNo
GET/business-typesTipus de negociNo
GET/platform-statsEstadístiques de la plataformaNo

Endpoints d'autenticació

Usats per obtenir i gestionar tokens d'accés.

MètodeURLDescripcióAuth
POST/auth/loginIniciar sessióNo
POST/auth/registerRegistrar-seNo
POST/auth/refreshRefrescar token
GET/auth/meUsuari actual

Autenticació

MiEspacio usa autenticació Bearer token amb Laravel Sanctum. Per accedir als endpoints autenticats:

  1. Envia una sol·licitud POST a /auth/login amb les teves credencials.
  2. Inclou el token retornat a la capçalera Authorization de les sol·licituds posteriors.
  3. Refresca el token abans que expiri usant l'endpoint de refresc.

Exemple de capçalera:

Authorization: Bearer your-token-here

Límits de velocitat

Les sol·licituds d'API estan limitades per IP per garantir un ús just.

ÀmbitLímit
Endpoints públics2.000 sol/min
Endpoints de reserves300 sol/min
Endpoints d'autenticació25 sol/min

Quan se supera el límit, rebràs una resposta 429 Too Many Requests. La capçalera Retry-After indica quants segons esperar.

Format de resposta

Totes les respostes es retornen en format JSON. Les respostes exitoses solen seguir aquesta estructura:

{
  "data": [
    {
      "id": 1,
      "name": "La Maison Barcelona",
      "slug": "la-maison-barcelona"
    }
  ],
  "meta": {
    "current_page": 1,
    "last_page": 4,
    "per_page": 20,
    "total": 78
  }
}

Les respostes paginades inclouen metadades de paginació estàndard de Laravel (current_page, last_page, per_page, total).

Codis d'error

L'API usa codis d'estat HTTP estàndard per indicar el resultat d'una sol·licitud.

CodiSignificat
200OK — Sol·licitud exitosa
201Created — Recurs creat exitosament
400Bad Request — Paràmetres de sol·licitud invàlids
401Unauthorized — Autenticació faltant o invàlida
403Forbidden — Permisos insuficients
404Not Found — El recurs no existeix
422Unprocessable Entity — Errors de validació
429Too Many Requests — Límit de velocitat excedit
500Internal Server Error — Alguna cosa ha anat malament al nostre servidor

Les respostes d'error inclouen un missatge i, quan aplica, un codi d'error estructurat:

{
  "message": "The selected time slot is no longer available.",
  "errors": {
    "slot": [
      "Please choose another available time."
    ]
  }
}

Necessites una clau d'API?

Contacta amb el nostre equip per sol·licitar accés a l'API per a la teva aplicació.

Contactar