Introduction
This documentation aims to provide all the information you need to work with our API.
<aside>As you scroll, you'll see code examples for working with the API in different programming languages in the dark area to the right (or as part of the content on mobile).
You can switch the language used with the tabs at the top right (or from the nav menu at the top left on mobile).</aside>
Authenticating requests
To authenticate requests, include an Authorization header with the value "Bearer {YOUR_AUTH_KEY}".
All authenticated endpoints are marked with a requires authentication badge in the documentation below.
You can retrieve your token by visiting your dashboard and clicking Generate API token.
Authentication
Login
Inicia sesión sin requerir guard. Detecta automáticamente si usar platform o tenant.
Devuelve token con abilities (guard/team), roles y permisos, y todas las membresías del usuario.
Example request:
curl --request POST \
"https://api.ciberticket.co/api/login" \
--header "X-Tenant: string optional Team/Tenant deseado (si se envía, fuerza login en tenant)." \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"login\": \"edinson.vasquez@example.com\",
\"password\": \"secret123\",
\"remember\": true
}"
const url = new URL(
"https://api.ciberticket.co/api/login"
);
const headers = {
"X-Tenant": "string optional Team/Tenant deseado (si se envía, fuerza login en tenant).",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"login": "edinson.vasquez@example.com",
"password": "secret123",
"remember": true
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"message": "Login successful",
"user": {
"id": 7,
"name": "Edinson",
"email": "edinson.vasquez@example.com"
},
"token": "47|...",
"guard": "platform",
"team_id": null,
"roles": {
"platform": [
"owner"
],
"tenant": []
},
"permissions": {
"platform": [
"core.owner.index"
],
"tenant": []
},
"memberships": [
{
"tenant_id": "web",
"tenant_name": "CiberLoto Web",
"roles": [
"admin"
],
"permissions": [
"tenant.event.create"
]
},
{
"tenant_id": "store-1",
"tenant_name": "CiberSnacks Tienda 1",
"roles": [
"viewer"
],
"permissions": [
"tenant.event.view"
]
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Core
Owner - List all owners.
requires authentication
This endpoint retrieves all users who have the "owner" role assigned.
Example request:
curl --request GET \
--get "https://api.ciberticket.co/api/core/owner" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://api.ciberticket.co/api/core/owner"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
[
{
"id": 1,
"name": "John",
"surname": "Doe",
"email": "john.doe@example.com",
"phone": "+57 3001234567",
"avatar_url": "https://example.com/avatar.jpg",
"locale": "es",
"timezone": "America/Bogota",
"status": "active"
},
{
"id": 2,
"name": "Jane",
"surname": "Smith",
"email": "jane.smith@example.com",
"phone": "+57 3019876543",
"avatar_url": null,
"locale": "en",
"timezone": "UTC",
"status": "active"
}
]
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Owner - Create a new Owner user
requires authentication
This endpoint allows you to create a new Owner user.
The user is not yet associated with any tenant.
By default, the role owner will be assigned in the tenant guard.
Example request:
curl --request POST \
"https://api.ciberticket.co/api/core/owner" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"John\",
\"surname\": \"Doe\",
\"email\": \"john.doe@example.com\",
\"phone_code\": \"+57\",
\"phone\": \"31812345678\",
\"password\": \"myStrongP@ssw0rd\",
\"avatar_url\": \"https:\\/\\/example.com\\/avatar.jpg\",
\"locale\": \"en\",
\"timezone\": \"America\\/New_York\",
\"password_confirmation\": \"myStrongP@ssw0rd\"
}"
const url = new URL(
"https://api.ciberticket.co/api/core/owner"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "John",
"surname": "Doe",
"email": "john.doe@example.com",
"phone_code": "+57",
"phone": "31812345678",
"password": "myStrongP@ssw0rd",
"avatar_url": "https:\/\/example.com\/avatar.jpg",
"locale": "en",
"timezone": "America\/New_York",
"password_confirmation": "myStrongP@ssw0rd"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (201):
{
"message": "Owner successfully created",
"user": {
"id": 1,
"name": "John",
"surname": "Doe",
"email": "john.doe@example.com",
"phone_code": "+57",
"phone": "3181234567",
},
"roles": ["owner"]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Owner - Update an existing user.
requires authentication
This endpoint allows updating an existing user. You can change personal information, email, phone, avatar, locale, timezone, and optionally update the password.
Example request:
curl --request PUT \
"https://api.ciberticket.co/api/core/owner/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"John\",
\"surname\": \"Doe\",
\"email\": \"john.doe@example.com\",
\"phone\": \"3001234567\",
\"avatar_url\": \"https:\\/\\/example.com\\/avatar.jpg\",
\"locale\": \"en\",
\"timezone\": \"UTC\",
\"password\": \"password123\",
\"password_confirmation\": \"password123\"
}"
const url = new URL(
"https://api.ciberticket.co/api/core/owner/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "John",
"surname": "Doe",
"email": "john.doe@example.com",
"phone": "3001234567",
"avatar_url": "https:\/\/example.com\/avatar.jpg",
"locale": "en",
"timezone": "UTC",
"password": "password123",
"password_confirmation": "password123"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (201):
{
"message": "Owner successfully updated",
"user": {
"id": 5,
"name": "John",
"surname": "Doe",
"email": "john.doe@example.com",
"phone_code": "+57",
"phone": "3001234567"
},
"roles": [
"owner"
]
}
Example response (422):
{
"message": "The given data was invalid.",
"errors": {
"email": [
"The email has already been taken."
]
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Owner - Show user by ID.
requires authentication
This endpoint retrieves the details of a specific user by their ID.
Example request:
curl --request GET \
--get "https://api.ciberticket.co/api/core/owner/1" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://api.ciberticket.co/api/core/owner/1"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"id": 1,
"name": "John",
"surname": "Doe",
"email": "john.doe@example.com",
"phone": "+57 3001234567",
"avatar_url": "https://example.com/avatar.jpg",
"locale": "es",
"timezone": "America/Bogota",
"status": "active",
"created_at": "2025-01-15T10:00:00.000000Z",
"updated_at": "2025-02-20T14:35:00.000000Z"
}
Example response (404):
{
"message": "No query results for model [App\\Models\\User] 999"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Owner - Delete (soft) a user.
requires authentication
This endpoint marks an existing user as deleted by updating their status field to deleted.
The user record is not physically removed from the database.
Example request:
curl --request DELETE \
"https://api.ciberticket.co/api/core/owner/10" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://api.ciberticket.co/api/core/owner/10"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Example response (200):
{
"message": "Owner successfully deleted"
}
Example response (404):
{
"message": "Owner not found or unauthorized."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Tenant - Crear tenant (ASYNC provisioning)
requires authentication
Example request:
curl --request POST \
"https://api.ciberticket.co/api/core/tenant" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"id\": \"web\",
\"domain\": \"web.cibertickets.co\",
\"brand_name\": \"CiberTickets\",
\"currency\": \"COP\",
\"timezone\": \"America\\/Bogota\",
\"contact_email\": \"soporte@cibertickets.co\",
\"logo_url\": \"https:\\/\\/www.gulgowski.com\\/nihil-accusantium-harum-mollitia-modi-deserunt\",
\"logo_light_url\": \"http:\\/\\/www.dubuque.net\\/quo-omnis-nostrum-aut-adipisci\",
\"logo_dark_url\": \"https:\\/\\/cronin.com\\/incidunt-iure-odit-et-et-modi-ipsum.html\",
\"favicon_url\": \"http:\\/\\/www.predovic.biz\\/consequatur-aut-dolores-enim-non-facere-tempora.html\",
\"font_heading\": \"t\",
\"font_body\": \"u\",
\"rounded_ui\": false,
\"border_radius\": 3,
\"brand_domain\": \"w\",
\"brand_support_url\": \"https:\\/\\/labadie.com\\/deleniti-distinctio-eum-doloremque-id-aut.html\",
\"social_links\": {
\"instagram\": \"q\",
\"facebook\": \"b\",
\"x\": \"e\",
\"tiktok\": \"w\",
\"youtube\": \"t\"
}
}"
const url = new URL(
"https://api.ciberticket.co/api/core/tenant"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"id": "web",
"domain": "web.cibertickets.co",
"brand_name": "CiberTickets",
"currency": "COP",
"timezone": "America\/Bogota",
"contact_email": "soporte@cibertickets.co",
"logo_url": "https:\/\/www.gulgowski.com\/nihil-accusantium-harum-mollitia-modi-deserunt",
"logo_light_url": "http:\/\/www.dubuque.net\/quo-omnis-nostrum-aut-adipisci",
"logo_dark_url": "https:\/\/cronin.com\/incidunt-iure-odit-et-et-modi-ipsum.html",
"favicon_url": "http:\/\/www.predovic.biz\/consequatur-aut-dolores-enim-non-facere-tempora.html",
"font_heading": "t",
"font_body": "u",
"rounded_ui": false,
"border_radius": 3,
"brand_domain": "w",
"brand_support_url": "https:\/\/labadie.com\/deleniti-distinctio-eum-doloremque-id-aut.html",
"social_links": {
"instagram": "q",
"facebook": "b",
"x": "e",
"tiktok": "w",
"youtube": "t"
}
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (202):
{
"message": "Tenant provisioning queued",
"data": {
"id": "web",
"domain": "web.cibertickets.co",
"owner_id": 7,
"provisioning": "queued"
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
User Tenant - List users across all tenants managed by the owner (including per-tenant roles)
requires authentication
Returns all users linked to the tenants that the authenticated platform user manages, and for each user, the list of those tenants with the user's roles within each tenant.
Example request:
curl --request GET \
--get "https://api.ciberticket.co/api/core/tenant/users/index" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://api.ciberticket.co/api/core/tenant/users/index"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"message": "Users and tenant roles retrieved",
"data": [
{
"id": 15,
"name": "John",
"surname": "Doe",
"email": "john.doe@example.com",
"status": "active",
"tenants": [
{
"id": "academy-1",
"name": "AleAcademy",
"role_hint": "admin",
"roles": [
"Administrative",
"Coach"
]
},
{
"id": "club-22",
"name": "City Club",
"role_hint": "viewer",
"roles": [
"Player"
]
}
]
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
User Tenant - Create a user and assign per-tenant roles
requires authentication
Creates a global user and links it to one or more tenants, assigning roles within each tenant.
Roles must exist with guard tenant (e.g., admin, organizer, finance, scanner).
Example request:
curl --request POST \
"https://api.ciberticket.co/api/core/tenant/users/store" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"John\",
\"surname\": \"Doe\",
\"email\": \"john.doe@example.com\",
\"password\": \"MyStr0ngP@ss\",
\"tenants\": [
\"architecto\"
]
}"
const url = new URL(
"https://api.ciberticket.co/api/core/tenant/users/store"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "John",
"surname": "Doe",
"email": "john.doe@example.com",
"password": "MyStr0ngP@ss",
"tenants": [
"architecto"
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (201):
{
"message": "User created and roles assigned",
"data": {
"user": {
"id": 101,
"name": "John",
"surname": "Doe",
"email": "john.doe@example.com",
"status": "active"
},
"tenants": [
{
"id": "academy-1",
"name": "AleAcademy",
"role_hint": "admin",
"roles": [
"admin",
"organizer"
]
},
{
"id": "club-22",
"name": "City Club",
"role_hint": "organizer",
"roles": [
"organizer"
]
}
]
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
User Tenant - Update a user and (optionally) per-tenant roles/membership
requires authentication
Updates basic user fields. Optionally syncs roles for specific tenants and/or detaches the user
from other tenants. Roles must exist with guard tenant (e.g., admin, organizer, finance, scanner).
Example request:
curl --request PUT \
"https://api.ciberticket.co/api/core/tenant/users/1/update" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"John\",
\"surname\": \"Doe\",
\"email\": \"john.doe@example.com\",
\"password\": \"MyStr0ngP@ss\",
\"tenants\": [
\"architecto\"
],
\"detach_tenants\": [
\"architecto\"
],
\"detach_tenants[]\": \"club-22\"
}"
const url = new URL(
"https://api.ciberticket.co/api/core/tenant/users/1/update"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "John",
"surname": "Doe",
"email": "john.doe@example.com",
"password": "MyStr0ngP@ss",
"tenants": [
"architecto"
],
"detach_tenants": [
"architecto"
],
"detach_tenants[]": "club-22"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"message": "User updated",
"data": {
"user": {
"id": 101,
"name": "John",
"surname": "Doe",
"email": "john.doe@example.com",
"status": "active"
},
"tenants": [
{
"id": "academy-1",
"name": "AleAcademy",
"role_hint": "admin",
"roles": [
"admin",
"organizer"
]
},
{
"id": "club-22",
"name": "City Club",
"role_hint": "viewer",
"roles": [
"organizer"
]
}
]
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
User Tenant - Archive (soft-delete) a user by status
requires authentication
Marks the user as deleted (status = 'deleted'). Due to the global scope
(NonDeletedScope), archived users stop appearing in listings by default.
No tenant memberships or roles are removed.
Example request:
curl --request DELETE \
"https://api.ciberticket.co/api/core/tenant/users/1/destroy" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://api.ciberticket.co/api/core/tenant/users/1/destroy"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Example response (200):
{
"message": "User archived",
"data": {
"user": {
"id": 101,
"name": "John",
"surname": "Doe",
"email": "john.doe@example.com",
"status": "deleted"
}
}
}
Example response (404):
{
"message": "User not found in your tenants."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Endpoints
Handles the API request and renders the Swagger documentation view.
Example request:
curl --request GET \
--get "https://api.ciberticket.co/api/documentation" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://api.ciberticket.co/api/documentation"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (500):
Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
{
"status": "error",
"message": "Route [l5-swagger.default.docs] not defined."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Handles the OAuth2 callback and retrieves the required file for the redirect.
Example request:
curl --request GET \
--get "https://api.ciberticket.co/api/oauth2-callback" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://api.ciberticket.co/api/oauth2-callback"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
Show headers
content-type: text/html; charset=UTF-8
cache-control: no-cache, private
vary: Origin
<!doctype html>
<html lang="en-US">
<head>
<title>Swagger UI: OAuth2 Redirect</title>
</head>
<body>
<script>
'use strict';
function run () {
var oauth2 = window.opener.swaggerUIRedirectOauth2;
var sentState = oauth2.state;
var redirectUrl = oauth2.redirectUrl;
var isValid, qp, arr;
if (/code|token|error/.test(window.location.hash)) {
qp = window.location.hash.substring(1).replace('?', '&');
} else {
qp = location.search.substring(1);
}
arr = qp.split("&");
arr.forEach(function (v,i,_arr) { _arr[i] = '"' + v.replace('=', '":"') + '"';});
qp = qp ? JSON.parse('{' + arr.join() + '}',
function (key, value) {
return key === "" ? value : decodeURIComponent(value);
}
) : {};
isValid = qp.state === sentState;
if ((
oauth2.auth.schema.get("flow") === "accessCode" ||
oauth2.auth.schema.get("flow") === "authorizationCode" ||
oauth2.auth.schema.get("flow") === "authorization_code"
) && !oauth2.auth.code) {
if (!isValid) {
oauth2.errCb({
authId: oauth2.auth.name,
source: "auth",
level: "warning",
message: "Authorization may be unsafe, passed state was changed in server. The passed state wasn't returned from auth server."
});
}
if (qp.code) {
delete oauth2.state;
oauth2.auth.code = qp.code;
oauth2.callback({auth: oauth2.auth, redirectUrl: redirectUrl});
} else {
let oauthErrorMsg;
if (qp.error) {
oauthErrorMsg = "["+qp.error+"]: " +
(qp.error_description ? qp.error_description+ ". " : "no accessCode received from the server. ") +
(qp.error_uri ? "More info: "+qp.error_uri : "");
}
oauth2.errCb({
authId: oauth2.auth.name,
source: "auth",
level: "error",
message: oauthErrorMsg || "[Authorization failed]: no accessCode received from the server."
});
}
} else {
oauth2.callback({auth: oauth2.auth, token: qp, isValid: isValid, redirectUrl: redirectUrl});
}
window.close();
}
if (document.readyState !== 'loading') {
run();
} else {
document.addEventListener('DOMContentLoaded', function () {
run();
});
}
</script>
</body>
</html>
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
POST api/logout
Example request:
curl --request POST \
"https://api.ciberticket.co/api/logout" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://api.ciberticket.co/api/logout"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
POST /events Permiso requerido: tenant.event.create
Example request:
curl --request POST \
"https://api.ciberticket.co/api/event" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://api.ciberticket.co/api/event"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
GET /events/{id} Permiso requerido: tenant.event.show
Example request:
curl --request GET \
--get "https://api.ciberticket.co/api/event/architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://api.ciberticket.co/api/event/architecto"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (500):
Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
{
"status": "error",
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
PUT/PATCH /events/{id} Permiso requerido: tenant.event.update
Example request:
curl --request PUT \
"https://api.ciberticket.co/api/event/architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://api.ciberticket.co/api/event/architecto"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "PUT",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
DELETE /events/{id} Permiso requerido: tenant.event.delete
Example request:
curl --request DELETE \
"https://api.ciberticket.co/api/event/architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://api.ciberticket.co/api/event/architecto"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Tenant
Settings - Visual Configuration
Devuelve la configuración visual del tenant (colores, logos, fuentes, etc.).
Example request:
curl --request GET \
--get "https://api.ciberticket.co/api/settings" \
--header "X-Tenant: string required El ID del tenant a consultar. Example: web" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://api.ciberticket.co/api/settings"
);
const headers = {
"X-Tenant": "string required El ID del tenant a consultar. Example: web",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"brand_name": "CiberTickets",
"currency": "COP",
"timezone": "America/Bogota",
"contact_email": "soporte@cibertickets.co",
"logo": {
"default": null,
"light": null,
"dark": null,
"favicon": null
},
"colors": {
"primary": "#00E5FF",
"secondary": "#7C3AED",
"accent": "#22C55E"
},
"fonts": {
"heading": "Poppins",
"body": "Inter"
},
"theme_mode": "system"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Event - index
requires authentication
List all events in the current tenant. Requires permission: tenant.event.view
Example request:
curl --request GET \
--get "https://api.ciberticket.co/api/event" \
--header "Authorization: Bearer {token}" \
--header "X-Tenant: {tenant_id}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://api.ciberticket.co/api/event"
);
const headers = {
"Authorization": "Bearer {token}",
"X-Tenant": "{tenant_id}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"allowed": true,
"permission": "tenant.event.view",
"note": "You can list events in this tenant."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.