MENU navbar-image

Introduction

This documentation aims to provide all the information you need to work with our API.

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.

Admin

Export all invoices to Excel (XLSX format)

requires authentication

This endpoint exports all transactions/invoices to an Excel file. Only accessible by administrators.

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/payment/invoices/export" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/invoices/export"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/invoices/export';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/invoices/export'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200, Success):


Binary file download
 

Request      

GET api/v1/payment/invoices/export

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Auth management

APIs for managing resources auth

Forgot password user request send email link reset

This endpoint allow request forgot password user

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/forgot-password" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"email\": \"[email protected]\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/forgot-password"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "email": "[email protected]"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/forgot-password';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'email' => '[email protected]',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/forgot-password'
payload = {
    "email": "[email protected]"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (404):


{
    "sucess": false,
    "message": "Message errors"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Example response (424):


{
    "sucess": false,
    "message": "Message errors"
}
 

Example response (429):


{
    "sucess": false,
    "message": "Message errors"
}
 

Request      

POST api/v1/forgot-password

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

email   string   

El campo value debe ser una dirección de correo válida. Example: [email protected]

Reset password user

This endpoint allow reset password user

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/reset-password" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"email\": \"[email protected]\",
    \"token\": \"quo\",
    \"password\": \"laboriosam\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/reset-password"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "email": "[email protected]",
    "token": "quo",
    "password": "laboriosam"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reset-password';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'email' => '[email protected]',
            'token' => 'quo',
            'password' => 'laboriosam',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reset-password'
payload = {
    "email": "[email protected]",
    "token": "quo",
    "password": "laboriosam"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (404):


{
    "sucess": false,
    "message": "Message errors"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Example response (429):


{
    "sucess": false,
    "message": "Message errors"
}
 

Request      

POST api/v1/reset-password

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

email   string   

El campo value debe ser una dirección de correo válida. Example: [email protected]

token   string   

Example: quo

password   string   

Example: laboriosam

User login

This endpoint allows login user, before logging in you must do as indicated here https://laravel.com/docs/sanctum#spa-authenticating

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/login" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"login\": \"eaque\",
    \"password\": \"quod\",
    \"remember\": false
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/login"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "login": "eaque",
    "password": "quod",
    "remember": false
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/login';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'login' => 'eaque',
            'password' => 'quod',
            'remember' => false,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/login'
payload = {
    "login": "eaque",
    "password": "quod",
    "remember": false
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (201):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/login

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

login   string   

Example: eaque

password   string   

Example: quod

remember   boolean  optional  

Example: false

Verify account user

This endpoint allow verification account user

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/email/verify/hic" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"expires\": \"error\",
    \"hash\": \"qui\",
    \"signature\": \"vero\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/email/verify/hic"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "expires": "error",
    "hash": "qui",
    "signature": "vero"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/email/verify/hic';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'expires' => 'error',
            'hash' => 'qui',
            'signature' => 'vero',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/email/verify/hic'
payload = {
    "expires": "error",
    "hash": "qui",
    "signature": "vero"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (404):


{
    "sucess": false,
    "message": "Message errors"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Example response (429):


{
    "sucess": false,
    "message": "Message errors"
}
 

Request      

GET api/v1/email/verify/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the verify. Example: hic

Body Parameters

expires   string   

Example: error

hash   string   

Example: qui

signature   string   

Example: vero

Resend email verify user

This endpoint allow resend email for verification user

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/email/resend" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"email\": \"[email protected]\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/email/resend"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "email": "[email protected]"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/email/resend';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'email' => '[email protected]',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/email/resend'
payload = {
    "email": "[email protected]"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (404):


{
    "sucess": false,
    "message": "Message errors"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Example response (424):


{
    "sucess": false,
    "message": "Message errors"
}
 

Example response (429):


{
    "sucess": false,
    "message": "Message errors"
}
 

Request      

GET api/v1/email/resend

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

email   string   

El campo value debe ser una dirección de correo válida. The email of an existing record in the users table. Example: [email protected]

Logout session user

requires authentication

This endpoint logout session user

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/logout" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/logout"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/logout';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/logout'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Request      

POST api/v1/logout

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Cart Payment Management

APIs for managing cart payments

Get cart commission details

Returns detailed breakdown of cart commissions and fees for display in checkout

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/checkout/commissions" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/checkout/commissions"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/checkout/commissions';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/checkout/commissions'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers)
response.json()

Request      

POST api/v1/checkout/commissions

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Get checkout status by payment_intent_id or cart_id Si el proveedor tiene response_hours = 0, auto-aprueba y captura el pago

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/checkout/status" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/checkout/status"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/checkout/status';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/checkout/status'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 59
access-control-allow-origin: *
 


 

Request      

GET api/v1/checkout/status

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Process a cart payment

requires authentication

This endpoint processes a payment for all items in a cart.

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/payment/cart/process" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"cart_id\": 123,
    \"user_id\": 20,
    \"payment_method\": \"stripe\",
    \"payment_method_id\": \"pm_123456789\",
    \"currency\": \"EUR\",
    \"amount\": 7.058,
    \"wc_to_use\": 59,
    \"class_id\": 14,
    \"item_id\": 19
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/cart/process"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "cart_id": 123,
    "user_id": 20,
    "payment_method": "stripe",
    "payment_method_id": "pm_123456789",
    "currency": "EUR",
    "amount": 7.058,
    "wc_to_use": 59,
    "class_id": 14,
    "item_id": 19
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/cart/process';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'cart_id' => 123,
            'user_id' => 20,
            'payment_method' => 'stripe',
            'payment_method_id' => 'pm_123456789',
            'currency' => 'EUR',
            'amount' => 7.058,
            'wc_to_use' => 59,
            'class_id' => 14,
            'item_id' => 19,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/cart/process'
payload = {
    "cart_id": 123,
    "user_id": 20,
    "payment_method": "stripe",
    "payment_method_id": "pm_123456789",
    "currency": "EUR",
    "amount": 7.058,
    "wc_to_use": 59,
    "class_id": 14,
    "item_id": 19
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/payment/cart/process

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

cart_id   integer   

The ID of the cart. Example: 123

user_id   integer   

The id of an existing record in the users table. Example: 20

payment_method   string   

The payment method (stripe, paypal, wallet). Example: stripe

payment_method_id   string  optional  

The payment method ID (required for stripe). Example: pm_123456789

currency   string  optional  

The currency code (default: EUR). Example: EUR

amount   number  optional  

Example: 7.058

wc_to_use   integer  optional  

El campo value debe ser al menos 0. Example: 59

class_id   integer  optional  

Example: 14

item_id   integer  optional  

Example: 19

Confirm a cart payment

requires authentication

This endpoint confirms a payment for a cart after it has been processed.

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/payment/cart/confirm" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"cart_id\": 123,
    \"payment_id\": 1,
    \"payment_intent_id\": \"pi_123456789\",
    \"class_id\": 3,
    \"item_id\": 6,
    \"reservation_intents\": [
        {
            \"reservation_id\": 15,
            \"payment_intent_id\": \"commodi\",
            \"payment_id\": 11
        }
    ]
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/cart/confirm"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "cart_id": 123,
    "payment_id": 1,
    "payment_intent_id": "pi_123456789",
    "class_id": 3,
    "item_id": 6,
    "reservation_intents": [
        {
            "reservation_id": 15,
            "payment_intent_id": "commodi",
            "payment_id": 11
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/cart/confirm';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'cart_id' => 123,
            'payment_id' => 1,
            'payment_intent_id' => 'pi_123456789',
            'class_id' => 3,
            'item_id' => 6,
            'reservation_intents' => [
                [
                    'reservation_id' => 15,
                    'payment_intent_id' => 'commodi',
                    'payment_id' => 11,
                ],
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/cart/confirm'
payload = {
    "cart_id": 123,
    "payment_id": 1,
    "payment_intent_id": "pi_123456789",
    "class_id": 3,
    "item_id": 6,
    "reservation_intents": [
        {
            "reservation_id": 15,
            "payment_intent_id": "commodi",
            "payment_id": 11
        }
    ]
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/payment/cart/confirm

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

cart_id   integer   

The ID of the cart. Example: 123

payment_id   integer  optional  

This field is required when payment_intent_id is not present. The id of an existing record in the payments table. Example: 1

payment_intent_id   string   

The payment intent ID. Example: pi_123456789

reservation_intents   object[]  optional  
reservation_id   integer  optional  

This field is required when reservation_intents is present. Example: 15

payment_intent_id   string  optional  

This field is required when reservation_intents is present. Example: commodi

payment_id   integer  optional  

Example: 11

class_id   integer  optional  

Example: 3

item_id   integer  optional  

Example: 6

Generate invoice for cart purchase

requires authentication

This endpoint generates an invoice for a completed cart purchase.

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/payment/cart/invoice" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"cart_id\": 123,
    \"payment_id\": 456
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/cart/invoice"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "cart_id": 123,
    "payment_id": 456
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/cart/invoice';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'cart_id' => 123,
            'payment_id' => 456,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/cart/invoice'
payload = {
    "cart_id": 123,
    "payment_id": 456
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/payment/cart/invoice

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

cart_id   integer   

The ID of the cart. Example: 123

payment_id   integer   

The ID of the payment. Example: 456

Validate cart payment before processing

requires authentication

This endpoint validates a cart for payment and returns detailed information about the cart, its items, and payment requirements.

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/payment/cart/validate" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"cart_id\": 123,
    \"payment_method\": \"stripe\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/cart/validate"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "cart_id": 123,
    "payment_method": "stripe"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/cart/validate';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'cart_id' => 123,
            'payment_method' => 'stripe',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/cart/validate'
payload = {
    "cart_id": 123,
    "payment_method": "stripe"
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/payment/cart/validate

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

cart_id   integer   

The ID of the cart. Example: 123

payment_method   string  optional  

The payment method (stripe, paypal, wallet, mixed). Example: stripe

Process mixed payment for cart

requires authentication

This endpoint processes a mixed payment for a cart, using wallet balance and another payment method.

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/payment/cart/mixed" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"cart_id\": 123,
    \"user_id\": 456,
    \"payment_method\": \"stripe\",
    \"payment_method_id\": \"pm_123456789\",
    \"remaining_amount\": \"50.00\",
    \"requires_invoice\": true
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/cart/mixed"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "cart_id": 123,
    "user_id": 456,
    "payment_method": "stripe",
    "payment_method_id": "pm_123456789",
    "remaining_amount": "50.00",
    "requires_invoice": true
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/cart/mixed';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'cart_id' => 123,
            'user_id' => 456,
            'payment_method' => 'stripe',
            'payment_method_id' => 'pm_123456789',
            'remaining_amount' => '50.00',
            'requires_invoice' => true,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/cart/mixed'
payload = {
    "cart_id": 123,
    "user_id": 456,
    "payment_method": "stripe",
    "payment_method_id": "pm_123456789",
    "remaining_amount": "50.00",
    "requires_invoice": true
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/payment/cart/mixed

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

cart_id   integer   

The ID of the cart. Example: 123

user_id   integer   

The ID of the user. Example: 456

payment_method   string   

The payment method for remaining amount (stripe, paypal). Example: stripe

payment_method_id   string  optional  

The payment method ID (required for stripe). Example: pm_123456789

remaining_amount   numeric  optional  

The remaining amount to be paid after using wallet balance. Example: 50.00

requires_invoice   boolean  optional  

Whether to generate an invoice. Example: true

Process wallet payment for cart

requires authentication

This endpoint processes a payment using the user's wallet balance.

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/payment/cart/wallet" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"cart_id\": 123,
    \"user_id\": 456,
    \"requires_invoice\": true
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/cart/wallet"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "cart_id": 123,
    "user_id": 456,
    "requires_invoice": true
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/cart/wallet';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'cart_id' => 123,
            'user_id' => 456,
            'requires_invoice' => true,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/cart/wallet'
payload = {
    "cart_id": 123,
    "user_id": 456,
    "requires_invoice": true
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/payment/cart/wallet

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

cart_id   integer   

The ID of the cart. Example: 123

user_id   integer   

The ID of the user. Example: 456

requires_invoice   boolean  optional  

Whether to generate an invoice. Example: true

Get cart commission details

Returns detailed breakdown of cart commissions and fees for display in checkout

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/payment/cart/commissions" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/cart/commissions"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/cart/commissions';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/cart/commissions'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/payment/cart/commissions

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Get checkout status by payment_intent_id or cart_id Si el proveedor tiene response_hours = 0, auto-aprueba y captura el pago

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/payment/cart/checkout/status" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/cart/checkout/status"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/cart/checkout/status';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/cart/checkout/status'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/payment/cart/checkout/status

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Cart management

APIs for managing carts to user

Cart

Endpoints associated with cart to user

Get the current user's active cart

requires authentication

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/cart" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/cart"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/cart';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/cart'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Request      

GET api/v1/cart

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Create/Update cart and add items to cart

requires authentication

This endpoint allows to add a new item to the user's cart.

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/cart/items" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user_id\": 12,
    \"class_id\": 17,
    \"requires_invoice\": true,
    \"timezone\": \"Africa\\/Lusaka\",
    \"assistants\": [
        {
            \"full_name\": \"sed\",
            \"is_child\": false,
            \"level_id\": 2,
            \"birthday_date_at\": \"2026-02-18T20:34:35\",
            \"email\": \"[email protected]\"
        }
    ],
    \"schedules\": [
        {
            \"start_time\": \"2026-02-18T20:34:35\",
            \"end_time\": \"2115-08-18\"
        }
    ]
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/cart/items"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "user_id": 12,
    "class_id": 17,
    "requires_invoice": true,
    "timezone": "Africa\/Lusaka",
    "assistants": [
        {
            "full_name": "sed",
            "is_child": false,
            "level_id": 2,
            "birthday_date_at": "2026-02-18T20:34:35",
            "email": "[email protected]"
        }
    ],
    "schedules": [
        {
            "start_time": "2026-02-18T20:34:35",
            "end_time": "2115-08-18"
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/cart/items';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'user_id' => 12,
            'class_id' => 17,
            'requires_invoice' => true,
            'timezone' => 'Africa/Lusaka',
            'assistants' => [
                [
                    'full_name' => 'sed',
                    'is_child' => false,
                    'level_id' => 2,
                    'birthday_date_at' => '2026-02-18T20:34:35',
                    'email' => '[email protected]',
                ],
            ],
            'schedules' => [
                [
                    'start_time' => '2026-02-18T20:34:35',
                    'end_time' => '2115-08-18',
                ],
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/cart/items'
payload = {
    "user_id": 12,
    "class_id": 17,
    "requires_invoice": true,
    "timezone": "Africa\/Lusaka",
    "assistants": [
        {
            "full_name": "sed",
            "is_child": false,
            "level_id": 2,
            "birthday_date_at": "2026-02-18T20:34:35",
            "email": "[email protected]"
        }
    ],
    "schedules": [
        {
            "start_time": "2026-02-18T20:34:35",
            "end_time": "2115-08-18"
        }
    ]
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (201):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/cart/items

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

user_id   integer   

The id of an existing record in the users table. Example: 12

class_id   integer   

The id of an existing record in the class_infos table. Example: 17

requires_invoice   boolean  optional  

Example: true

timezone   string   

Must be a valid time zone, such as Africa/Accra. Example: Africa/Lusaka

assistants   object[]   

El campo value debe contener al menos 1 elementos.

full_name   string   

Example: sed

is_child   boolean   

Example: false

level_id   integer  optional  

The id of an existing record in the levels table. Example: 2

birthday_date_at   string   

El campo value no corresponde con una fecha válida. Example: 2026-02-18T20:34:35

email   string  optional  

El campo value debe ser una dirección de correo válida. Example: [email protected]

materials   object  optional  
schedules   object[]   

El campo value debe contener al menos 1 elementos.

start_time   string   

El campo value no corresponde con una fecha válida. Example: 2026-02-18T20:34:35

end_time   string   

El campo value no corresponde con una fecha válida. El campo value debe ser una fecha posterior a schedules.*.start_time. Example: 2115-08-18

Add material to cart with reservation dates

requires authentication

This endpoint allows to add a material with rental dates to the user's cart.

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/cart/add-material" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/cart/add-material"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/cart/add-material';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/cart/add-material'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers)
response.json()

Example response (201):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/cart/add-material

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Get a specific cart item

requires authentication

This endpoint allows to get details of a specific item in the user's cart.

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/cart/items/in" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/cart/items/in"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/cart/items/in';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/cart/items/in'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (404):


{
    "sucess": false,
    "message": "Message errors"
}
 

Request      

GET api/v1/cart/items/{itemId}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

itemId   string   

Example: in

Update a cart item

requires authentication

This endpoint allows to update an existing item in the user's cart.

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/cart/items/quis" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user_id\": 7,
    \"requires_invoice\": true,
    \"timezone\": \"Pacific\\/Guadalcanal\",
    \"assistants\": [
        {
            \"full_name\": \"nesciunt\",
            \"is_child\": true,
            \"level_id\": 8,
            \"birthday_date_at\": \"2026-02-18T20:34:35\",
            \"email\": \"[email protected]\",
            \"materials\": [
                {
                    \"amount\": 21
                }
            ]
        }
    ],
    \"schedules\": [
        {
            \"start_time\": \"2026-02-18T20:34:35\",
            \"end_time\": \"2101-03-18\"
        }
    ]
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/cart/items/quis"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "user_id": 7,
    "requires_invoice": true,
    "timezone": "Pacific\/Guadalcanal",
    "assistants": [
        {
            "full_name": "nesciunt",
            "is_child": true,
            "level_id": 8,
            "birthday_date_at": "2026-02-18T20:34:35",
            "email": "[email protected]",
            "materials": [
                {
                    "amount": 21
                }
            ]
        }
    ],
    "schedules": [
        {
            "start_time": "2026-02-18T20:34:35",
            "end_time": "2101-03-18"
        }
    ]
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/cart/items/quis';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'user_id' => 7,
            'requires_invoice' => true,
            'timezone' => 'Pacific/Guadalcanal',
            'assistants' => [
                [
                    'full_name' => 'nesciunt',
                    'is_child' => true,
                    'level_id' => 8,
                    'birthday_date_at' => '2026-02-18T20:34:35',
                    'email' => '[email protected]',
                    'materials' => [
                        [
                            'amount' => 21,
                        ],
                    ],
                ],
            ],
            'schedules' => [
                [
                    'start_time' => '2026-02-18T20:34:35',
                    'end_time' => '2101-03-18',
                ],
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/cart/items/quis'
payload = {
    "user_id": 7,
    "requires_invoice": true,
    "timezone": "Pacific\/Guadalcanal",
    "assistants": [
        {
            "full_name": "nesciunt",
            "is_child": true,
            "level_id": 8,
            "birthday_date_at": "2026-02-18T20:34:35",
            "email": "[email protected]",
            "materials": [
                {
                    "amount": 21
                }
            ]
        }
    ],
    "schedules": [
        {
            "start_time": "2026-02-18T20:34:35",
            "end_time": "2101-03-18"
        }
    ]
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (404):


{
    "sucess": false,
    "message": "Message errors"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

PUT api/v1/cart/items/{itemId}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

itemId   string   

Example: quis

Body Parameters

user_id   integer   

The id of an existing record in the users table. Example: 7

requires_invoice   boolean  optional  

Example: true

timezone   string  optional  

Must be a valid time zone, such as Africa/Accra. Example: Pacific/Guadalcanal

assistants   object[]  optional  

El campo value debe contener al menos 1 elementos.

full_name   string  optional  

This field is required when assistants is present. Example: nesciunt

is_child   boolean  optional  

This field is required when assistants is present. Example: true

level_id   integer  optional  

The id of an existing record in the levels table. Example: 8

birthday_date_at   string  optional  

This field is required when assistants is present. El campo value no corresponde con una fecha válida. Example: 2026-02-18T20:34:35

email   string  optional  

El campo value debe ser una dirección de correo válida. Example: [email protected]

materials   object[]  optional  
material_id   string  optional  

This field is required when assistants.*.materials is present. The id of an existing record in the materials table.

amount   number  optional  

This field is required when assistants.*.materials is present. El campo value debe ser al menos 1. Example: 21

schedules   object[]  optional  

El campo value debe contener al menos 1 elementos.

start_time   string  optional  

This field is required when schedules is present. El campo value no corresponde con una fecha válida. Example: 2026-02-18T20:34:35

end_time   string  optional  

This field is required when schedules is present. El campo value no corresponde con una fecha válida. El campo value debe ser una fecha posterior a schedules.*.start_time. Example: 2101-03-18

Delete a cart item

requires authentication

This endpoint allows to remove an item from the user's cart.

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/cart/items/eum" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/cart/items/eum"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/cart/items/eum';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/cart/items/eum'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (404):


{
    "sucess": false,
    "message": "Message errors"
}
 

Request      

DELETE api/v1/cart/items/{itemId}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

itemId   string   

Example: eum

Class Admin management

APIs for managing resources class admin management

Classes

Endpoints admin associated with classes

Update status class

requires authentication

This endpoint update status class by admin

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/admin/classes/provident/status?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"status\": \"blocked\",
    \"observation\": \"quis\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/classes/provident/status"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "status": "blocked",
    "observation": "quis"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/admin/classes/provident/status';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'status' => 'blocked',
            'observation' => 'quis',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/classes/provident/status'
payload = {
    "status": "blocked",
    "observation": "quis"
}
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/admin/classes/{class}/status

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

class   string   

The class. Example: provident

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

status   string   

Example: blocked

Must be one of:
  • approved
  • review
  • blocked
  • pending_price_approval
observation   string  optional  

Example: quis

List classes

This endpoint retrieve list classes

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/admin/classes/list?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"perPage\": 37,
    \"page\": 18,
    \"order\": \"nemo\",
    \"sort\": \"odit\",
    \"sites\": [
        19
    ],
    \"modalities\": [
        7
    ],
    \"min_age\": 11,
    \"max_age\": 10,
    \"levels\": [
        8
    ],
    \"languages\": [
        1
    ],
    \"activities\": [
        16
    ],
    \"activity_types\": [
        19
    ],
    \"subactivities\": [
        5
    ],
    \"schedules\": {
        \"amount_min\": 1.56,
        \"amount_max\": 835,
        \"date_start\": \"2026-02-18T20:34:38\",
        \"date_end\": \"2026-02-18T20:34:38\"
    },
    \"status\": \"review\",
    \"address\": \"sint\",
    \"supplier\": \"iste\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/classes/list"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "perPage": 37,
    "page": 18,
    "order": "nemo",
    "sort": "odit",
    "sites": [
        19
    ],
    "modalities": [
        7
    ],
    "min_age": 11,
    "max_age": 10,
    "levels": [
        8
    ],
    "languages": [
        1
    ],
    "activities": [
        16
    ],
    "activity_types": [
        19
    ],
    "subactivities": [
        5
    ],
    "schedules": {
        "amount_min": 1.56,
        "amount_max": 835,
        "date_start": "2026-02-18T20:34:38",
        "date_end": "2026-02-18T20:34:38"
    },
    "status": "review",
    "address": "sint",
    "supplier": "iste"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/admin/classes/list';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'perPage' => 37,
            'page' => 18,
            'order' => 'nemo',
            'sort' => 'odit',
            'sites' => [
                19,
            ],
            'modalities' => [
                7,
            ],
            'min_age' => 11,
            'max_age' => 10,
            'levels' => [
                8,
            ],
            'languages' => [
                1,
            ],
            'activities' => [
                16,
            ],
            'activity_types' => [
                19,
            ],
            'subactivities' => [
                5,
            ],
            'schedules' => [
                'amount_min' => 1.56,
                'amount_max' => 835.0,
                'date_start' => '2026-02-18T20:34:38',
                'date_end' => '2026-02-18T20:34:38',
            ],
            'status' => 'review',
            'address' => 'sint',
            'supplier' => 'iste',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/classes/list'
payload = {
    "perPage": 37,
    "page": 18,
    "order": "nemo",
    "sort": "odit",
    "sites": [
        19
    ],
    "modalities": [
        7
    ],
    "min_age": 11,
    "max_age": 10,
    "levels": [
        8
    ],
    "languages": [
        1
    ],
    "activities": [
        16
    ],
    "activity_types": [
        19
    ],
    "subactivities": [
        5
    ],
    "schedules": {
        "amount_min": 1.56,
        "amount_max": 835,
        "date_start": "2026-02-18T20:34:38",
        "date_end": "2026-02-18T20:34:38"
    },
    "status": "review",
    "address": "sint",
    "supplier": "iste"
}
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/admin/classes/list

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

perPage   integer   

El campo value debe ser al menos 1. Example: 37

page   integer  optional  

This field is required when perPage is present. Example: 18

order   string  optional  

Example: nemo

sort   string  optional  

This field is required when order is present. Example: odit

sites   integer[]   

The id of an existing record in the sites table.

modalities   integer[]   

The id of an existing record in the modalities table.

min_age   integer  optional  

Example: 11

max_age   integer  optional  

Example: 10

levels   integer[]   

The id of an existing record in the levels table.

languages   integer[]   

The id of an existing record in the languages table.

activities   integer[]   

The id of an existing record in the activities table.

activity_types   integer[]   

The id of an existing record in the activity_types table.

subactivities   integer[]   

The id of an existing record in the subactivities table.

schedules   object  optional  
amount_min   number  optional  

Example: 1.56

amount_max   number  optional  

Example: 835

date_start   string  optional  

El campo value no corresponde con una fecha válida. Example: 2026-02-18T20:34:38

date_end   string  optional  

El campo value no corresponde con una fecha válida. Example: 2026-02-18T20:34:38

status   string  optional  

Example: review

Must be one of:
  • approved
  • pendient
  • review
  • blocked
address   string  optional  

Example: sint

supplier   string  optional  

Example: iste

Class management

APIs for managing resources class management

Activity type

Endpoints associated with class

List activity types

This endpoint retrieve list activity types

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/activity-types?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/activity-types"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/activity-types';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/activity-types'
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/activity-types

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Store activity type

requires authentication

This endpoint allows create a new activity types

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/activity-types?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "translations[es][name]=enim"\
    --form "translations[es][slug]=autem"\
    --form "translations[en][name]=temporibus"\
    --form "translations[en][slug]=vel"\
    --form "images[][type]=profile"\
    --form "images[][image]=@/tmp/phpRkYi48" 
const url = new URL(
    "https://api.wildoow.com/api/v1/activity-types"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('translations[es][name]', 'enim');
body.append('translations[es][slug]', 'autem');
body.append('translations[en][name]', 'temporibus');
body.append('translations[en][slug]', 'vel');
body.append('images[][type]', 'profile');
body.append('images[][image]', document.querySelector('input[name="images[][image]"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/activity-types';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'multipart' => [
            [
                'name' => 'translations[es][name]',
                'contents' => 'enim'
            ],
            [
                'name' => 'translations[es][slug]',
                'contents' => 'autem'
            ],
            [
                'name' => 'translations[en][name]',
                'contents' => 'temporibus'
            ],
            [
                'name' => 'translations[en][slug]',
                'contents' => 'vel'
            ],
            [
                'name' => 'images[][type]',
                'contents' => 'profile'
            ],
            [
                'name' => 'images[][image]',
                'contents' => fopen('/tmp/phpRkYi48', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/activity-types'
files = {
  'translations[es][name]': (None, 'enim'),
  'translations[es][slug]': (None, 'autem'),
  'translations[en][name]': (None, 'temporibus'),
  'translations[en][slug]': (None, 'vel'),
  'images[][type]': (None, 'profile'),
  'images[][image]': open('/tmp/phpRkYi48', 'rb')}
payload = {
    "translations": {
        "es": {
            "name": "enim",
            "slug": "autem"
        },
        "en": {
            "name": "temporibus",
            "slug": "vel"
        }
    },
    "images": [
        {
            "type": "profile"
        }
    ]
}
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, files=files, params=params)
response.json()

Example response (201):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/activity-types

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

translations   object  optional  
es   object  optional  
name   string  optional  

Example: enim

slug   string  optional  

Example: autem

en   object  optional  
name   string  optional  

Example: temporibus

slug   string  optional  

Example: vel

images   object[]   
image   file   

El campo value debe ser una imagen. El archivo value no debe pesar más de 5120 kilobytes. Example: /tmp/phpRkYi48

type   string   

Example: profile

Must be one of:
  • profile
  • cover

Show activity type

requires authentication

This endpoint retrieve detail activity type

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/activity-types/qui?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/activity-types/qui"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/activity-types/qui';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/activity-types/qui'
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

GET api/v1/activity-types/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the activity type. Example: qui

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Update a activity type

requires authentication

This endpoint allow update a activity type

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/activity-types/sunt" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "translations[es][name]=tempora"\
    --form "translations[es][slug]=rerum"\
    --form "translations[en][name]=magnam"\
    --form "translations[en][slug]=a"\
    --form "is_active=1"\
    --form "images[][type]=profile"\
    --form "images[][image]=@/tmp/phpyT8AxJ" 
const url = new URL(
    "https://api.wildoow.com/api/v1/activity-types/sunt"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('translations[es][name]', 'tempora');
body.append('translations[es][slug]', 'rerum');
body.append('translations[en][name]', 'magnam');
body.append('translations[en][slug]', 'a');
body.append('is_active', '1');
body.append('images[][type]', 'profile');
body.append('images[][image]', document.querySelector('input[name="images[][image]"]').files[0]);

fetch(url, {
    method: "PUT",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/activity-types/sunt';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'translations[es][name]',
                'contents' => 'tempora'
            ],
            [
                'name' => 'translations[es][slug]',
                'contents' => 'rerum'
            ],
            [
                'name' => 'translations[en][name]',
                'contents' => 'magnam'
            ],
            [
                'name' => 'translations[en][slug]',
                'contents' => 'a'
            ],
            [
                'name' => 'is_active',
                'contents' => '1'
            ],
            [
                'name' => 'images[][type]',
                'contents' => 'profile'
            ],
            [
                'name' => 'images[][image]',
                'contents' => fopen('/tmp/phpyT8AxJ', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/activity-types/sunt'
files = {
  'translations[es][name]': (None, 'tempora'),
  'translations[es][slug]': (None, 'rerum'),
  'translations[en][name]': (None, 'magnam'),
  'translations[en][slug]': (None, 'a'),
  'is_active': (None, '1'),
  'images[][type]': (None, 'profile'),
  'images[][image]': open('/tmp/phpyT8AxJ', 'rb')}
payload = {
    "translations": {
        "es": {
            "name": "tempora",
            "slug": "rerum"
        },
        "en": {
            "name": "magnam",
            "slug": "a"
        }
    },
    "is_active": true,
    "images": [
        {
            "type": "profile"
        }
    ]
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, files=files)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

PUT api/v1/activity-types/{id}

PATCH api/v1/activity-types/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the activity type. Example: sunt

Body Parameters

translations   object  optional  
es   object  optional  
name   string  optional  

Example: tempora

slug   string  optional  

Example: rerum

en   object  optional  
name   string  optional  

Example: magnam

slug   string  optional  

Example: a

is_active   boolean  optional  

Example: true

images   object[]  optional  
image   file   

El campo value debe ser una imagen. El archivo value no debe pesar más de 5120 kilobytes. Example: /tmp/phpyT8AxJ

type   string   

Example: profile

Must be one of:
  • profile
  • cover

Delete a activity type

requires authentication

This endpoint allow delete a activity type

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/activity-types/minus" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/activity-types/minus"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/activity-types/minus';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/activity-types/minus'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

DELETE api/v1/activity-types/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the activity type. Example: minus

Levels

Endpoints associated with class

List levels

This endpoint retrieve list levels

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/levels?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/levels"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/levels';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/levels'
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/levels

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Store level

requires authentication

This endpoint allows create a new level

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/levels?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"translations\": {
        \"es\": {
            \"name\": \"est\",
            \"slug\": \"maiores\"
        },
        \"en\": {
            \"name\": \"porro\",
            \"slug\": \"quas\"
        }
    },
    \"is_active\": true
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/levels"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "translations": {
        "es": {
            "name": "est",
            "slug": "maiores"
        },
        "en": {
            "name": "porro",
            "slug": "quas"
        }
    },
    "is_active": true
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/levels';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'translations' => [
                'es' => [
                    'name' => 'est',
                    'slug' => 'maiores',
                ],
                'en' => [
                    'name' => 'porro',
                    'slug' => 'quas',
                ],
            ],
            'is_active' => true,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/levels'
payload = {
    "translations": {
        "es": {
            "name": "est",
            "slug": "maiores"
        },
        "en": {
            "name": "porro",
            "slug": "quas"
        }
    },
    "is_active": true
}
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload, params=params)
response.json()

Example response (201):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/levels

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

translations   object  optional  
es   object  optional  
name   string  optional  

Example: est

slug   string  optional  

Example: maiores

en   object  optional  
name   string  optional  

Example: porro

slug   string  optional  

Example: quas

is_active   boolean  optional  

Example: true

Show level

requires authentication

This endpoint retrieve detail level

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/levels/et?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/levels/et"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/levels/et';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/levels/et'
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

GET api/v1/levels/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the level. Example: et

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Update a level

requires authentication

This endpoint allow update a level

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/levels/quidem" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"translations\": {
        \"es\": {
            \"name\": \"sapiente\",
            \"slug\": \"sint\"
        },
        \"en\": {
            \"name\": \"fuga\",
            \"slug\": \"ea\"
        }
    },
    \"is_active\": false
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/levels/quidem"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "translations": {
        "es": {
            "name": "sapiente",
            "slug": "sint"
        },
        "en": {
            "name": "fuga",
            "slug": "ea"
        }
    },
    "is_active": false
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/levels/quidem';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'translations' => [
                'es' => [
                    'name' => 'sapiente',
                    'slug' => 'sint',
                ],
                'en' => [
                    'name' => 'fuga',
                    'slug' => 'ea',
                ],
            ],
            'is_active' => false,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/levels/quidem'
payload = {
    "translations": {
        "es": {
            "name": "sapiente",
            "slug": "sint"
        },
        "en": {
            "name": "fuga",
            "slug": "ea"
        }
    },
    "is_active": false
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

PUT api/v1/levels/{id}

PATCH api/v1/levels/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the level. Example: quidem

Body Parameters

translations   object  optional  
es   object  optional  
name   string  optional  

Example: sapiente

slug   string  optional  

Example: sint

en   object  optional  
name   string  optional  

Example: fuga

slug   string  optional  

Example: ea

is_active   boolean  optional  

Example: false

Delete a level

requires authentication

This endpoint allow delete a level

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/levels/omnis" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/levels/omnis"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/levels/omnis';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/levels/omnis'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

DELETE api/v1/levels/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the level. Example: omnis

Subactivity

Endpoints associated with class

List subactivities

This endpoint retrieve list subactivities

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/subactivities?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"order\": \"quia\",
    \"sort\": \"quaerat\",
    \"name\": \"blanditiis\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/subactivities"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "order": "quia",
    "sort": "quaerat",
    "name": "blanditiis"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/subactivities';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'order' => 'quia',
            'sort' => 'quaerat',
            'name' => 'blanditiis',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/subactivities'
payload = {
    "order": "quia",
    "sort": "quaerat",
    "name": "blanditiis"
}
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/subactivities

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

order   string  optional  

Example: quia

sort   string  optional  

This field is required when order is present. Example: quaerat

code   string  optional  

The code of an existing record in the subactivities table.

name   string  optional  

Example: blanditiis

Store subactivity

requires authentication

This endpoint allows create a new subactivity

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/subactivities?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"translations\": {
        \"es\": {
            \"name\": \"beatae\",
            \"slug\": \"dolores\"
        },
        \"en\": {
            \"name\": \"molestiae\",
            \"slug\": \"adipisci\"
        }
    },
    \"is_active\": false
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/subactivities"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "translations": {
        "es": {
            "name": "beatae",
            "slug": "dolores"
        },
        "en": {
            "name": "molestiae",
            "slug": "adipisci"
        }
    },
    "is_active": false
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/subactivities';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'translations' => [
                'es' => [
                    'name' => 'beatae',
                    'slug' => 'dolores',
                ],
                'en' => [
                    'name' => 'molestiae',
                    'slug' => 'adipisci',
                ],
            ],
            'is_active' => false,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/subactivities'
payload = {
    "translations": {
        "es": {
            "name": "beatae",
            "slug": "dolores"
        },
        "en": {
            "name": "molestiae",
            "slug": "adipisci"
        }
    },
    "is_active": false
}
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload, params=params)
response.json()

Example response (201):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/subactivities

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

translations   object  optional  
es   object  optional  
name   string   

Example: beatae

slug   string   

Example: dolores

en   object  optional  
name   string   

Example: molestiae

slug   string   

Example: adipisci

is_active   boolean  optional  

Example: false

Show subactivity

requires authentication

This endpoint retrieve detail subactivity

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/subactivities/temporibus?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/subactivities/temporibus"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/subactivities/temporibus';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/subactivities/temporibus'
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

GET api/v1/subactivities/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the subactivity. Example: temporibus

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Update a subactivity

requires authentication

This endpoint allow update a subactivity

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/subactivities/necessitatibus" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"translations\": {
        \"es\": {
            \"name\": \"optio\",
            \"slug\": \"ea\"
        },
        \"en\": {
            \"name\": \"impedit\",
            \"slug\": \"odit\"
        }
    },
    \"is_active\": true
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/subactivities/necessitatibus"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "translations": {
        "es": {
            "name": "optio",
            "slug": "ea"
        },
        "en": {
            "name": "impedit",
            "slug": "odit"
        }
    },
    "is_active": true
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/subactivities/necessitatibus';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'translations' => [
                'es' => [
                    'name' => 'optio',
                    'slug' => 'ea',
                ],
                'en' => [
                    'name' => 'impedit',
                    'slug' => 'odit',
                ],
            ],
            'is_active' => true,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/subactivities/necessitatibus'
payload = {
    "translations": {
        "es": {
            "name": "optio",
            "slug": "ea"
        },
        "en": {
            "name": "impedit",
            "slug": "odit"
        }
    },
    "is_active": true
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

PUT api/v1/subactivities/{id}

PATCH api/v1/subactivities/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the subactivity. Example: necessitatibus

Body Parameters

translations   object  optional  
es   object  optional  
name   string  optional  

Example: optio

slug   string  optional  

Example: ea

en   object  optional  
name   string  optional  

Example: impedit

slug   string  optional  

Example: odit

is_active   boolean  optional  

Example: true

Delete a subactivity

requires authentication

This endpoint allow delete a subactivity

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/subactivities/repudiandae" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/subactivities/repudiandae"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/subactivities/repudiandae';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/subactivities/repudiandae'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

DELETE api/v1/subactivities/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the subactivity. Example: repudiandae

Activity

Endpoints associated with class

List activities

This endpoint retrieve list activities

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/activities?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"order\": \"debitis\",
    \"sort\": \"sed\",
    \"name\": \"aut\",
    \"slug\": \"est\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/activities"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "order": "debitis",
    "sort": "sed",
    "name": "aut",
    "slug": "est"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/activities';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'order' => 'debitis',
            'sort' => 'sed',
            'name' => 'aut',
            'slug' => 'est',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/activities'
payload = {
    "order": "debitis",
    "sort": "sed",
    "name": "aut",
    "slug": "est"
}
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/activities

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

order   string  optional  

Example: debitis

sort   string  optional  

This field is required when order is present. Example: sed

subactivity_id   string  optional  

The id of an existing record in the subactivities table.

activity_type_id   string  optional  

The id of an existing record in the activity_types table.

code   string  optional  

The code of an existing record in the activities table.

name   string  optional  

Example: aut

slug   string  optional  

Example: est

Store activity

requires authentication

This endpoint allows create a new activity

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/activities?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"translations\": {
        \"es\": {
            \"name\": \"ab\",
            \"slug\": \"qui\"
        },
        \"en\": {
            \"name\": \"dolorem\",
            \"slug\": \"id\"
        }
    },
    \"code\": \"sacpytcfbjnygzdzovnsjoxcfgllkoznopsshugnkajccwvcgff\",
    \"activity_type_id\": \"sunt\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/activities"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "translations": {
        "es": {
            "name": "ab",
            "slug": "qui"
        },
        "en": {
            "name": "dolorem",
            "slug": "id"
        }
    },
    "code": "sacpytcfbjnygzdzovnsjoxcfgllkoznopsshugnkajccwvcgff",
    "activity_type_id": "sunt"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/activities';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'translations' => [
                'es' => [
                    'name' => 'ab',
                    'slug' => 'qui',
                ],
                'en' => [
                    'name' => 'dolorem',
                    'slug' => 'id',
                ],
            ],
            'code' => 'sacpytcfbjnygzdzovnsjoxcfgllkoznopsshugnkajccwvcgff',
            'activity_type_id' => 'sunt',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/activities'
payload = {
    "translations": {
        "es": {
            "name": "ab",
            "slug": "qui"
        },
        "en": {
            "name": "dolorem",
            "slug": "id"
        }
    },
    "code": "sacpytcfbjnygzdzovnsjoxcfgllkoznopsshugnkajccwvcgff",
    "activity_type_id": "sunt"
}
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload, params=params)
response.json()

Example response (201):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/activities

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

translations   object  optional  
es   object  optional  
name   string  optional  

Example: ab

slug   string  optional  

Example: qui

en   object  optional  
name   string  optional  

Example: dolorem

slug   string  optional  

Example: id

code   string  optional  

El campo value debe contener al menos 2 caracteres. Example: sacpytcfbjnygzdzovnsjoxcfgllkoznopsshugnkajccwvcgff

subactivity_id   string  optional  

The id of an existing record in the subactivities table.

activity_type_id   string   

The id of an existing record in the activity_types table. Example: sunt

Show activity

requires authentication

This endpoint retrieve detail activity

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/activities/veniam?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/activities/veniam"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/activities/veniam';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/activities/veniam'
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

GET api/v1/activities/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the activity. Example: veniam

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Update a activity

requires authentication

This endpoint allow update a activity

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/activities/expedita" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"translations\": {
        \"es\": {
            \"name\": \"est\",
            \"slug\": \"quas\"
        },
        \"en\": {
            \"name\": \"necessitatibus\",
            \"slug\": \"ab\"
        }
    },
    \"code\": \"hzpisbntjmekndkzrqskmvgvr\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/activities/expedita"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "translations": {
        "es": {
            "name": "est",
            "slug": "quas"
        },
        "en": {
            "name": "necessitatibus",
            "slug": "ab"
        }
    },
    "code": "hzpisbntjmekndkzrqskmvgvr"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/activities/expedita';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'translations' => [
                'es' => [
                    'name' => 'est',
                    'slug' => 'quas',
                ],
                'en' => [
                    'name' => 'necessitatibus',
                    'slug' => 'ab',
                ],
            ],
            'code' => 'hzpisbntjmekndkzrqskmvgvr',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/activities/expedita'
payload = {
    "translations": {
        "es": {
            "name": "est",
            "slug": "quas"
        },
        "en": {
            "name": "necessitatibus",
            "slug": "ab"
        }
    },
    "code": "hzpisbntjmekndkzrqskmvgvr"
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

PUT api/v1/activities/{id}

PATCH api/v1/activities/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the activity. Example: expedita

Body Parameters

translations   object  optional  
es   object  optional  
name   string  optional  

Example: est

slug   string  optional  

Example: quas

en   object  optional  
name   string  optional  

Example: necessitatibus

slug   string  optional  

Example: ab

code   string  optional  

El campo value debe contener al menos 2 caracteres. Example: hzpisbntjmekndkzrqskmvgvr

subactivity_id   string  optional  

The id of an existing record in the subactivities table.

activity_type_id   string  optional  

The id of an existing record in the activity_types table.

Delete a activity

requires authentication

This endpoint allow delete a activity

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/activities/molestiae" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/activities/molestiae"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/activities/molestiae';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/activities/molestiae'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

DELETE api/v1/activities/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the activity. Example: molestiae

List degrees by activity

This endpoint retrieve list degrees by activity

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/activities/sapiente/degrees?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/activities/sapiente/degrees"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/activities/sapiente/degrees';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/activities/sapiente/degrees'
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/activities/{activity_id}/degrees

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

activity_id   string   

The ID of the activity. Example: sapiente

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Modalities

Endpoints associated with customer modalities

List modalities

This endpoint retrieve list modalities

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/modalities?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"order\": \"eaque\",
    \"sort\": \"non\",
    \"name\": \"est\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/modalities"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "order": "eaque",
    "sort": "non",
    "name": "est"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/modalities';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'order' => 'eaque',
            'sort' => 'non',
            'name' => 'est',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/modalities'
payload = {
    "order": "eaque",
    "sort": "non",
    "name": "est"
}
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/modalities

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

order   string  optional  

Example: eaque

sort   string  optional  

This field is required when order is present. Example: non

code   string  optional  

The code of an existing record in the seasons table.

name   string  optional  

Example: est

Store modality

requires authentication

This endpoint allows create a new modality

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/modalities?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"translations\": {
        \"es\": {
            \"name\": \"quae\",
            \"slug\": \"explicabo\"
        },
        \"en\": {
            \"name\": \"iste\",
            \"slug\": \"illo\"
        }
    },
    \"is_active\": false
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/modalities"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "translations": {
        "es": {
            "name": "quae",
            "slug": "explicabo"
        },
        "en": {
            "name": "iste",
            "slug": "illo"
        }
    },
    "is_active": false
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/modalities';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'translations' => [
                'es' => [
                    'name' => 'quae',
                    'slug' => 'explicabo',
                ],
                'en' => [
                    'name' => 'iste',
                    'slug' => 'illo',
                ],
            ],
            'is_active' => false,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/modalities'
payload = {
    "translations": {
        "es": {
            "name": "quae",
            "slug": "explicabo"
        },
        "en": {
            "name": "iste",
            "slug": "illo"
        }
    },
    "is_active": false
}
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload, params=params)
response.json()

Example response (201):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/modalities

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

translations   object  optional  
es   object  optional  
name   string  optional  

Example: quae

slug   string  optional  

Example: explicabo

en   object  optional  
name   string  optional  

Example: iste

slug   string  optional  

Example: illo

is_active   boolean  optional  

Example: false

Show modality

requires authentication

This endpoint retrieve detail modality

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/modalities/omnis?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/modalities/omnis"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/modalities/omnis';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/modalities/omnis'
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

GET api/v1/modalities/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the modality. Example: omnis

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Update a modality

requires authentication

This endpoint allow update a modality

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/modalities/officia" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"translations\": {
        \"es\": {
            \"name\": \"earum\",
            \"slug\": \"eum\"
        },
        \"en\": {
            \"name\": \"soluta\",
            \"slug\": \"id\"
        }
    },
    \"is_active\": true
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/modalities/officia"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "translations": {
        "es": {
            "name": "earum",
            "slug": "eum"
        },
        "en": {
            "name": "soluta",
            "slug": "id"
        }
    },
    "is_active": true
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/modalities/officia';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'translations' => [
                'es' => [
                    'name' => 'earum',
                    'slug' => 'eum',
                ],
                'en' => [
                    'name' => 'soluta',
                    'slug' => 'id',
                ],
            ],
            'is_active' => true,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/modalities/officia'
payload = {
    "translations": {
        "es": {
            "name": "earum",
            "slug": "eum"
        },
        "en": {
            "name": "soluta",
            "slug": "id"
        }
    },
    "is_active": true
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

PUT api/v1/modalities/{id}

PATCH api/v1/modalities/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the modality. Example: officia

Body Parameters

translations   object  optional  
es   object  optional  
name   string  optional  

Example: earum

slug   string  optional  

Example: eum

en   object  optional  
name   string  optional  

Example: soluta

slug   string  optional  

Example: id

is_active   boolean  optional  

Example: true

Delete a modality

requires authentication

This endpoint allow delete a modality

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/modalities/odit" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/modalities/odit"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/modalities/odit';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/modalities/odit'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

DELETE api/v1/modalities/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the modality. Example: odit

Site

Endpoints associated with class

List sites

This endpoint retrieve list sites

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/sites?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"order\": \"harum\",
    \"sort\": \"non\",
    \"perPage\": 78,
    \"page\": 17,
    \"country_id\": 9,
    \"province_id\": 8,
    \"is_visible\": false
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/sites"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "order": "harum",
    "sort": "non",
    "perPage": 78,
    "page": 17,
    "country_id": 9,
    "province_id": 8,
    "is_visible": false
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/sites';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'order' => 'harum',
            'sort' => 'non',
            'perPage' => 78,
            'page' => 17,
            'country_id' => 9,
            'province_id' => 8,
            'is_visible' => false,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/sites'
payload = {
    "order": "harum",
    "sort": "non",
    "perPage": 78,
    "page": 17,
    "country_id": 9,
    "province_id": 8,
    "is_visible": false
}
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/sites

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

order   string  optional  

Example: harum

sort   string  optional  

This field is required when order is present. Example: non

perPage   integer  optional  

El campo value debe ser al menos 1. Example: 78

page   integer  optional  

This field is required when perPage is present. Example: 17

country_id   integer  optional  

The id of an existing record in the countries table. Example: 9

province_id   integer  optional  

The id of an existing record in the provinces table. Example: 8

is_visible   boolean  optional  

Example: false

Get sites by activity type

This endpoint retrieves a list of sites associated with a specific activity

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/sites/activities/officiis" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"search\": \"gpxmmgrcaujedjhdy\",
    \"perPage\": 42,
    \"page\": 13
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/sites/activities/officiis"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "search": "gpxmmgrcaujedjhdy",
    "perPage": 42,
    "page": 13
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/sites/activities/officiis';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'search' => 'gpxmmgrcaujedjhdy',
            'perPage' => 42,
            'page' => 13,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/sites/activities/officiis'
payload = {
    "search": "gpxmmgrcaujedjhdy",
    "perPage": 42,
    "page": 13
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

GET api/v1/sites/activities/{activityId}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

activityId   string   

Example: officiis

Body Parameters

search   string  optional  

El campo value no debe contener más de 255 caracteres. Example: gpxmmgrcaujedjhdy

perPage   integer   

El campo value debe ser al menos 1. Example: 42

page   integer  optional  

This field is required when perPage is present. Example: 13

Store site

requires authentication

This endpoint allows create a new site

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/sites?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "translations[es][name]=sint"\
    --form "translations[es][slug]=minima"\
    --form "translations[en][name]=consequatur"\
    --form "translations[en][slug]=natus"\
    --form "is_visible="\
    --form "is_active=1"\
    --form "country_id=17"\
    --form "province_id=6"\
    --form "images[][type]=cover"\
    --form "images[][image]=@/tmp/phpDS2vv4" 
const url = new URL(
    "https://api.wildoow.com/api/v1/sites"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('translations[es][name]', 'sint');
body.append('translations[es][slug]', 'minima');
body.append('translations[en][name]', 'consequatur');
body.append('translations[en][slug]', 'natus');
body.append('is_visible', '');
body.append('is_active', '1');
body.append('country_id', '17');
body.append('province_id', '6');
body.append('images[][type]', 'cover');
body.append('images[][image]', document.querySelector('input[name="images[][image]"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/sites';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'multipart' => [
            [
                'name' => 'translations[es][name]',
                'contents' => 'sint'
            ],
            [
                'name' => 'translations[es][slug]',
                'contents' => 'minima'
            ],
            [
                'name' => 'translations[en][name]',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'translations[en][slug]',
                'contents' => 'natus'
            ],
            [
                'name' => 'is_visible',
                'contents' => ''
            ],
            [
                'name' => 'is_active',
                'contents' => '1'
            ],
            [
                'name' => 'country_id',
                'contents' => '17'
            ],
            [
                'name' => 'province_id',
                'contents' => '6'
            ],
            [
                'name' => 'images[][type]',
                'contents' => 'cover'
            ],
            [
                'name' => 'images[][image]',
                'contents' => fopen('/tmp/phpDS2vv4', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/sites'
files = {
  'translations[es][name]': (None, 'sint'),
  'translations[es][slug]': (None, 'minima'),
  'translations[en][name]': (None, 'consequatur'),
  'translations[en][slug]': (None, 'natus'),
  'is_visible': (None, ''),
  'is_active': (None, '1'),
  'country_id': (None, '17'),
  'province_id': (None, '6'),
  'images[][type]': (None, 'cover'),
  'images[][image]': open('/tmp/phpDS2vv4', 'rb')}
payload = {
    "translations": {
        "es": {
            "name": "sint",
            "slug": "minima"
        },
        "en": {
            "name": "consequatur",
            "slug": "natus"
        }
    },
    "is_visible": false,
    "is_active": true,
    "country_id": 17,
    "province_id": 6,
    "images": [
        {
            "type": "cover"
        }
    ]
}
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, files=files, params=params)
response.json()

Example response (201):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/sites

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

translations   object  optional  
es   object  optional  
name   string  optional  

Example: sint

slug   string  optional  

Example: minima

en   object  optional  
name   string  optional  

Example: consequatur

slug   string  optional  

Example: natus

is_visible   boolean  optional  

Example: false

is_active   boolean  optional  

Example: true

country_id   integer   

The id of an existing record in the countries table. Example: 17

province_id   integer   

The id of an existing record in the provinces table. Example: 6

images   object[]   
image   file   

El campo value debe ser una imagen. El archivo value no debe pesar más de 5120 kilobytes. Example: /tmp/phpDS2vv4

type   string   

Example: cover

Must be one of:
  • profile
  • cover

Show site

requires authentication

This endpoint retrieve detail site

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/sites/illo?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/sites/illo"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/sites/illo';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/sites/illo'
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

GET api/v1/sites/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the site. Example: illo

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Update a site

requires authentication

This endpoint allow update a site

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/sites/sit" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "translations[es][name]=ut"\
    --form "translations[es][slug]=et"\
    --form "translations[en][name]=voluptatem"\
    --form "translations[en][slug]=cum"\
    --form "is_visible=1"\
    --form "is_active="\
    --form "country_id=5"\
    --form "province_id=5"\
    --form "images[][type]=profile"\
    --form "images[][image]=@/tmp/phpNHEBeX" 
const url = new URL(
    "https://api.wildoow.com/api/v1/sites/sit"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('translations[es][name]', 'ut');
body.append('translations[es][slug]', 'et');
body.append('translations[en][name]', 'voluptatem');
body.append('translations[en][slug]', 'cum');
body.append('is_visible', '1');
body.append('is_active', '');
body.append('country_id', '5');
body.append('province_id', '5');
body.append('images[][type]', 'profile');
body.append('images[][image]', document.querySelector('input[name="images[][image]"]').files[0]);

fetch(url, {
    method: "PUT",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/sites/sit';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'translations[es][name]',
                'contents' => 'ut'
            ],
            [
                'name' => 'translations[es][slug]',
                'contents' => 'et'
            ],
            [
                'name' => 'translations[en][name]',
                'contents' => 'voluptatem'
            ],
            [
                'name' => 'translations[en][slug]',
                'contents' => 'cum'
            ],
            [
                'name' => 'is_visible',
                'contents' => '1'
            ],
            [
                'name' => 'is_active',
                'contents' => ''
            ],
            [
                'name' => 'country_id',
                'contents' => '5'
            ],
            [
                'name' => 'province_id',
                'contents' => '5'
            ],
            [
                'name' => 'images[][type]',
                'contents' => 'profile'
            ],
            [
                'name' => 'images[][image]',
                'contents' => fopen('/tmp/phpNHEBeX', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/sites/sit'
files = {
  'translations[es][name]': (None, 'ut'),
  'translations[es][slug]': (None, 'et'),
  'translations[en][name]': (None, 'voluptatem'),
  'translations[en][slug]': (None, 'cum'),
  'is_visible': (None, '1'),
  'is_active': (None, ''),
  'country_id': (None, '5'),
  'province_id': (None, '5'),
  'images[][type]': (None, 'profile'),
  'images[][image]': open('/tmp/phpNHEBeX', 'rb')}
payload = {
    "translations": {
        "es": {
            "name": "ut",
            "slug": "et"
        },
        "en": {
            "name": "voluptatem",
            "slug": "cum"
        }
    },
    "is_visible": true,
    "is_active": false,
    "country_id": 5,
    "province_id": 5,
    "images": [
        {
            "type": "profile"
        }
    ]
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, files=files)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

PUT api/v1/sites/{id}

PATCH api/v1/sites/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the site. Example: sit

Body Parameters

translations   object  optional  
es   object  optional  
name   string  optional  

Example: ut

slug   string  optional  

Example: et

en   object  optional  
name   string  optional  

Example: voluptatem

slug   string  optional  

Example: cum

is_visible   boolean  optional  

Example: true

is_active   boolean  optional  

Example: false

country_id   integer  optional  

The id of an existing record in the countries table. Example: 5

province_id   integer  optional  

The id of an existing record in the provinces table. Example: 5

images   object[]  optional  
image   file   

El campo value debe ser una imagen. El archivo value no debe pesar más de 5120 kilobytes. Example: /tmp/phpNHEBeX

type   string   

Example: profile

Must be one of:
  • profile
  • cover

Delete a site

requires authentication

This endpoint allow delete a site

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/sites/officiis" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/sites/officiis"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/sites/officiis';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/sites/officiis'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

DELETE api/v1/sites/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the site. Example: officiis

Classes

Endpoints associated with classes

List classes

This endpoint retrieve list classes

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/classes?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"order\": \"debitis\",
    \"sort\": \"nulla\",
    \"perPage\": 22,
    \"page\": 17
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/classes"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "order": "debitis",
    "sort": "nulla",
    "perPage": 22,
    "page": 17
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/classes';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'order' => 'debitis',
            'sort' => 'nulla',
            'perPage' => 22,
            'page' => 17,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/classes'
payload = {
    "order": "debitis",
    "sort": "nulla",
    "perPage": 22,
    "page": 17
}
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/classes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

order   string  optional  

Example: debitis

sort   string  optional  

This field is required when order is present. Example: nulla

perPage   integer  optional  

El campo value debe ser al menos 1. Example: 22

page   integer  optional  

This field is required when perPage is present. Example: 17

Show class

requires authentication

This endpoint retrieve detail class

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/classes/harum?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/classes/harum"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/classes/harum';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/classes/harum'
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

GET api/v1/classes/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the class. Example: harum

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Update a class

requires authentication

This endpoint allow update a class

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/classes/dolore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "title=vodhekgyaswrtd"\
    --form "detail=cakcoydtxmvwjepzonntxmgpgozaikgeuuv"\
    --form "min_participants=49"\
    --form "max_participants=1"\
    --form "concurrent_activities=2"\
    --form "min_age=23"\
    --form "max_age=3"\
    --form "timezone=America/Grand_Turk"\
    --form "meeting_zone_lat=velit"\
    --form "meeting_zone_lng=veniam"\
    --form "meeting_zone=kfxcarerdnyntxaumexolxsrdzjhulvnjcceprpvhzrusjoeiykja"\
    --form "meeting_zone_description=oyunzwsnnkipzwphfgmnwdulrimoalazdjsesccxzvqjemhzhiiqbkfzzvmofwaeoimkktzucte"\
    --form "has_material="\
    --form "address=quo"\
    --form "site_id=5"\
    --form "modality_id=2"\
    --form "country_id=16"\
    --form "province_id=9"\
    --form "city_id=16"\
    --form "block_hours=70"\
    --form "activities[][activity_id]=20"\
    --form "levels[][level_id]=13"\
    --form "languages[][language_id]=12"\
    --form "schedules[][amount]=753516170.86181"\
    --form "schedules[][start_date]=2026-02-18T20:34:37"\
    --form "schedules[][end_date]=2078-04-02"\
    --form "licenses[][license_id]=8"\
    --form "images[][type]=main"\
    --form "class_relations[][child_id]=8"\
    --form "images[][image]=@/tmp/phpNsdBP8" 
const url = new URL(
    "https://api.wildoow.com/api/v1/classes/dolore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('title', 'vodhekgyaswrtd');
body.append('detail', 'cakcoydtxmvwjepzonntxmgpgozaikgeuuv');
body.append('min_participants', '49');
body.append('max_participants', '1');
body.append('concurrent_activities', '2');
body.append('min_age', '23');
body.append('max_age', '3');
body.append('timezone', 'America/Grand_Turk');
body.append('meeting_zone_lat', 'velit');
body.append('meeting_zone_lng', 'veniam');
body.append('meeting_zone', 'kfxcarerdnyntxaumexolxsrdzjhulvnjcceprpvhzrusjoeiykja');
body.append('meeting_zone_description', 'oyunzwsnnkipzwphfgmnwdulrimoalazdjsesccxzvqjemhzhiiqbkfzzvmofwaeoimkktzucte');
body.append('has_material', '');
body.append('address', 'quo');
body.append('site_id', '5');
body.append('modality_id', '2');
body.append('country_id', '16');
body.append('province_id', '9');
body.append('city_id', '16');
body.append('block_hours', '70');
body.append('activities[][activity_id]', '20');
body.append('levels[][level_id]', '13');
body.append('languages[][language_id]', '12');
body.append('schedules[][amount]', '753516170.86181');
body.append('schedules[][start_date]', '2026-02-18T20:34:37');
body.append('schedules[][end_date]', '2078-04-02');
body.append('licenses[][license_id]', '8');
body.append('images[][type]', 'main');
body.append('class_relations[][child_id]', '8');
body.append('images[][image]', document.querySelector('input[name="images[][image]"]').files[0]);

fetch(url, {
    method: "PUT",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/classes/dolore';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'title',
                'contents' => 'vodhekgyaswrtd'
            ],
            [
                'name' => 'detail',
                'contents' => 'cakcoydtxmvwjepzonntxmgpgozaikgeuuv'
            ],
            [
                'name' => 'min_participants',
                'contents' => '49'
            ],
            [
                'name' => 'max_participants',
                'contents' => '1'
            ],
            [
                'name' => 'concurrent_activities',
                'contents' => '2'
            ],
            [
                'name' => 'min_age',
                'contents' => '23'
            ],
            [
                'name' => 'max_age',
                'contents' => '3'
            ],
            [
                'name' => 'timezone',
                'contents' => 'America/Grand_Turk'
            ],
            [
                'name' => 'meeting_zone_lat',
                'contents' => 'velit'
            ],
            [
                'name' => 'meeting_zone_lng',
                'contents' => 'veniam'
            ],
            [
                'name' => 'meeting_zone',
                'contents' => 'kfxcarerdnyntxaumexolxsrdzjhulvnjcceprpvhzrusjoeiykja'
            ],
            [
                'name' => 'meeting_zone_description',
                'contents' => 'oyunzwsnnkipzwphfgmnwdulrimoalazdjsesccxzvqjemhzhiiqbkfzzvmofwaeoimkktzucte'
            ],
            [
                'name' => 'has_material',
                'contents' => ''
            ],
            [
                'name' => 'address',
                'contents' => 'quo'
            ],
            [
                'name' => 'site_id',
                'contents' => '5'
            ],
            [
                'name' => 'modality_id',
                'contents' => '2'
            ],
            [
                'name' => 'country_id',
                'contents' => '16'
            ],
            [
                'name' => 'province_id',
                'contents' => '9'
            ],
            [
                'name' => 'city_id',
                'contents' => '16'
            ],
            [
                'name' => 'block_hours',
                'contents' => '70'
            ],
            [
                'name' => 'activities[][activity_id]',
                'contents' => '20'
            ],
            [
                'name' => 'levels[][level_id]',
                'contents' => '13'
            ],
            [
                'name' => 'languages[][language_id]',
                'contents' => '12'
            ],
            [
                'name' => 'schedules[][amount]',
                'contents' => '753516170.86181'
            ],
            [
                'name' => 'schedules[][start_date]',
                'contents' => '2026-02-18T20:34:37'
            ],
            [
                'name' => 'schedules[][end_date]',
                'contents' => '2078-04-02'
            ],
            [
                'name' => 'licenses[][license_id]',
                'contents' => '8'
            ],
            [
                'name' => 'images[][type]',
                'contents' => 'main'
            ],
            [
                'name' => 'class_relations[][child_id]',
                'contents' => '8'
            ],
            [
                'name' => 'images[][image]',
                'contents' => fopen('/tmp/phpNsdBP8', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/classes/dolore'
files = {
  'title': (None, 'vodhekgyaswrtd'),
  'detail': (None, 'cakcoydtxmvwjepzonntxmgpgozaikgeuuv'),
  'min_participants': (None, '49'),
  'max_participants': (None, '1'),
  'concurrent_activities': (None, '2'),
  'min_age': (None, '23'),
  'max_age': (None, '3'),
  'timezone': (None, 'America/Grand_Turk'),
  'meeting_zone_lat': (None, 'velit'),
  'meeting_zone_lng': (None, 'veniam'),
  'meeting_zone': (None, 'kfxcarerdnyntxaumexolxsrdzjhulvnjcceprpvhzrusjoeiykja'),
  'meeting_zone_description': (None, 'oyunzwsnnkipzwphfgmnwdulrimoalazdjsesccxzvqjemhzhiiqbkfzzvmofwaeoimkktzucte'),
  'has_material': (None, ''),
  'address': (None, 'quo'),
  'site_id': (None, '5'),
  'modality_id': (None, '2'),
  'country_id': (None, '16'),
  'province_id': (None, '9'),
  'city_id': (None, '16'),
  'block_hours': (None, '70'),
  'activities[][activity_id]': (None, '20'),
  'levels[][level_id]': (None, '13'),
  'languages[][language_id]': (None, '12'),
  'schedules[][amount]': (None, '753516170.86181'),
  'schedules[][start_date]': (None, '2026-02-18T20:34:37'),
  'schedules[][end_date]': (None, '2078-04-02'),
  'licenses[][license_id]': (None, '8'),
  'images[][type]': (None, 'main'),
  'class_relations[][child_id]': (None, '8'),
  'images[][image]': open('/tmp/phpNsdBP8', 'rb')}
payload = {
    "title": "vodhekgyaswrtd",
    "detail": "cakcoydtxmvwjepzonntxmgpgozaikgeuuv",
    "min_participants": 49,
    "max_participants": 1,
    "concurrent_activities": 2,
    "min_age": 23,
    "max_age": 3,
    "timezone": "America\/Grand_Turk",
    "meeting_zone_lat": "velit",
    "meeting_zone_lng": "veniam",
    "meeting_zone": "kfxcarerdnyntxaumexolxsrdzjhulvnjcceprpvhzrusjoeiykja",
    "meeting_zone_description": "oyunzwsnnkipzwphfgmnwdulrimoalazdjsesccxzvqjemhzhiiqbkfzzvmofwaeoimkktzucte",
    "has_material": false,
    "address": "quo",
    "site_id": 5,
    "modality_id": 2,
    "country_id": 16,
    "province_id": 9,
    "city_id": 16,
    "block_hours": 70,
    "activities": [
        {
            "activity_id": 20
        }
    ],
    "levels": [
        {
            "level_id": 13
        }
    ],
    "languages": [
        {
            "language_id": 12
        }
    ],
    "schedules": [
        {
            "amount": 753516170.86181,
            "start_date": "2026-02-18T20:34:37",
            "end_date": "2078-04-02"
        }
    ],
    "licenses": [
        {
            "license_id": 8
        }
    ],
    "images": [
        {
            "type": "main"
        }
    ],
    "class_relations": [
        {
            "child_id": 8
        }
    ]
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, files=files)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

PUT api/v1/classes/{id}

PATCH api/v1/classes/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the class. Example: dolore

Body Parameters

title   string  optional  

El campo value debe contener al menos 2 caracteres. Example: vodhekgyaswrtd

detail   string  optional  

El campo value debe contener al menos 4 caracteres. Example: cakcoydtxmvwjepzonntxmgpgozaikgeuuv

min_participants   integer  optional  

El campo value debe ser al menos 0. Example: 49

max_participants   integer  optional  

Example: 1

concurrent_activities   integer  optional  

El campo value debe ser al menos 0. Example: 2

min_age   integer  optional  

El campo value debe ser al menos 0. Example: 23

max_age   integer  optional  

Example: 3

timezone   string  optional  

Example: America/Grand_Turk

meeting_zone_lat   string  optional  

Example: velit

meeting_zone_lng   string  optional  

Example: veniam

meeting_zone   string  optional  

El campo value debe contener al menos 5 caracteres. Example: kfxcarerdnyntxaumexolxsrdzjhulvnjcceprpvhzrusjoeiykja

meeting_zone_description   string  optional  

El campo value debe contener al menos 5 caracteres. Example: oyunzwsnnkipzwphfgmnwdulrimoalazdjsesccxzvqjemhzhiiqbkfzzvmofwaeoimkktzucte

has_material   boolean  optional  

Example: false

address   string  optional  

Example: quo

site_id   integer  optional  

The id of an existing record in the sites table. Example: 5

modality_id   integer  optional  

The id of an existing record in the modalities table. Example: 2

country_id   integer  optional  

The id of an existing record in the countries table. Example: 16

province_id   integer  optional  

The id of an existing record in the provinces table. Example: 9

city_id   integer  optional  

The id of an existing record in the cities table. Example: 16

block_hours   integer  optional  

El campo value debe ser al menos 1. Example: 70

activities   object[]  optional  
activity_id   integer   

The id of an existing record in the activities table. Example: 20

levels   object[]  optional  
level_id   integer   

The id of an existing record in the levels table. Example: 13

languages   object[]  optional  
language_id   integer   

The id of an existing record in the supplier_languages table. Example: 12

schedules   object[]  optional  
amount   number   

Example: 753516170.86181

start_date   string   

El campo value no corresponde con una fecha válida. Example: 2026-02-18T20:34:37

end_date   string   

El campo value no corresponde con una fecha válida. El campo value debe ser una fecha posterior a shedules.*.start_date. Example: 2078-04-02

licenses   object[]  optional  
license_id   integer   

The id of an existing record in the licenses table. Example: 8

images   object[]  optional  
image   file   

El campo value debe ser una imagen. El archivo value no debe pesar más de 5120 kilobytes. Example: /tmp/phpNsdBP8

type   string   

Example: main

Must be one of:
  • main
  • additional
  • point
class_relations   object[]  optional  
child_id   integer   

The id of an existing record in the class_infos table. Example: 8

Delete a class

requires authentication

This endpoint allow delete a class

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/classes/amet" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/classes/amet"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/classes/amet';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/classes/amet'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

DELETE api/v1/classes/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the class. Example: amet

Store class

requires authentication

This endpoint allows create a new class

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/classes?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "title=yckezoilqbwvnhcaztunrgdewzkfgftwdyfvdazgdqtvschztckgzeocbqfownosdd"\
    --form "detail=kocyfvmaokftfxkzuaogdyikrsvceuq"\
    --form "min_participants=78"\
    --form "max_participants=4"\
    --form "concurrent_activities=78"\
    --form "min_age=1"\
    --form "max_age=4"\
    --form "timezone=Australia/Eucla"\
    --form "meeting_zone_lat=iste"\
    --form "meeting_zone_lng=fugiat"\
    --form "meeting_zone=yrwikpyrvgkmmckgttgpsovrrqjnpxxezshsnj"\
    --form "meeting_zone_description=vopklpzgjnfijtfjsfkfhfwph"\
    --form "has_material="\
    --form "address=quia"\
    --form "site_id=1"\
    --form "modality_id=9"\
    --form "country_id=6"\
    --form "province_id=12"\
    --form "city_id=4"\
    --form "block_hours=48"\
    --form "activities[][activity_id]=1"\
    --form "schedules[][amount]=0"\
    --form "schedules[][start_date]=2026-02-18T20:34:37"\
    --form "schedules[][end_date]=2045-11-28"\
    --form "user_id=13"\
    --form "levels[][level_id]=12"\
    --form "languages[][language_id]=13"\
    --form "licenses[][license_id]=8"\
    --form "images[][type]=additional"\
    --form "class_relations[][child_id]=16"\
    --form "images[][image]=@/tmp/phpmHTPqh" 
const url = new URL(
    "https://api.wildoow.com/api/v1/classes"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('title', 'yckezoilqbwvnhcaztunrgdewzkfgftwdyfvdazgdqtvschztckgzeocbqfownosdd');
body.append('detail', 'kocyfvmaokftfxkzuaogdyikrsvceuq');
body.append('min_participants', '78');
body.append('max_participants', '4');
body.append('concurrent_activities', '78');
body.append('min_age', '1');
body.append('max_age', '4');
body.append('timezone', 'Australia/Eucla');
body.append('meeting_zone_lat', 'iste');
body.append('meeting_zone_lng', 'fugiat');
body.append('meeting_zone', 'yrwikpyrvgkmmckgttgpsovrrqjnpxxezshsnj');
body.append('meeting_zone_description', 'vopklpzgjnfijtfjsfkfhfwph');
body.append('has_material', '');
body.append('address', 'quia');
body.append('site_id', '1');
body.append('modality_id', '9');
body.append('country_id', '6');
body.append('province_id', '12');
body.append('city_id', '4');
body.append('block_hours', '48');
body.append('activities[][activity_id]', '1');
body.append('schedules[][amount]', '0');
body.append('schedules[][start_date]', '2026-02-18T20:34:37');
body.append('schedules[][end_date]', '2045-11-28');
body.append('user_id', '13');
body.append('levels[][level_id]', '12');
body.append('languages[][language_id]', '13');
body.append('licenses[][license_id]', '8');
body.append('images[][type]', 'additional');
body.append('class_relations[][child_id]', '16');
body.append('images[][image]', document.querySelector('input[name="images[][image]"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/classes';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'multipart' => [
            [
                'name' => 'title',
                'contents' => 'yckezoilqbwvnhcaztunrgdewzkfgftwdyfvdazgdqtvschztckgzeocbqfownosdd'
            ],
            [
                'name' => 'detail',
                'contents' => 'kocyfvmaokftfxkzuaogdyikrsvceuq'
            ],
            [
                'name' => 'min_participants',
                'contents' => '78'
            ],
            [
                'name' => 'max_participants',
                'contents' => '4'
            ],
            [
                'name' => 'concurrent_activities',
                'contents' => '78'
            ],
            [
                'name' => 'min_age',
                'contents' => '1'
            ],
            [
                'name' => 'max_age',
                'contents' => '4'
            ],
            [
                'name' => 'timezone',
                'contents' => 'Australia/Eucla'
            ],
            [
                'name' => 'meeting_zone_lat',
                'contents' => 'iste'
            ],
            [
                'name' => 'meeting_zone_lng',
                'contents' => 'fugiat'
            ],
            [
                'name' => 'meeting_zone',
                'contents' => 'yrwikpyrvgkmmckgttgpsovrrqjnpxxezshsnj'
            ],
            [
                'name' => 'meeting_zone_description',
                'contents' => 'vopklpzgjnfijtfjsfkfhfwph'
            ],
            [
                'name' => 'has_material',
                'contents' => ''
            ],
            [
                'name' => 'address',
                'contents' => 'quia'
            ],
            [
                'name' => 'site_id',
                'contents' => '1'
            ],
            [
                'name' => 'modality_id',
                'contents' => '9'
            ],
            [
                'name' => 'country_id',
                'contents' => '6'
            ],
            [
                'name' => 'province_id',
                'contents' => '12'
            ],
            [
                'name' => 'city_id',
                'contents' => '4'
            ],
            [
                'name' => 'block_hours',
                'contents' => '48'
            ],
            [
                'name' => 'activities[][activity_id]',
                'contents' => '1'
            ],
            [
                'name' => 'schedules[][amount]',
                'contents' => '0'
            ],
            [
                'name' => 'schedules[][start_date]',
                'contents' => '2026-02-18T20:34:37'
            ],
            [
                'name' => 'schedules[][end_date]',
                'contents' => '2045-11-28'
            ],
            [
                'name' => 'user_id',
                'contents' => '13'
            ],
            [
                'name' => 'levels[][level_id]',
                'contents' => '12'
            ],
            [
                'name' => 'languages[][language_id]',
                'contents' => '13'
            ],
            [
                'name' => 'licenses[][license_id]',
                'contents' => '8'
            ],
            [
                'name' => 'images[][type]',
                'contents' => 'additional'
            ],
            [
                'name' => 'class_relations[][child_id]',
                'contents' => '16'
            ],
            [
                'name' => 'images[][image]',
                'contents' => fopen('/tmp/phpmHTPqh', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/classes'
files = {
  'title': (None, 'yckezoilqbwvnhcaztunrgdewzkfgftwdyfvdazgdqtvschztckgzeocbqfownosdd'),
  'detail': (None, 'kocyfvmaokftfxkzuaogdyikrsvceuq'),
  'min_participants': (None, '78'),
  'max_participants': (None, '4'),
  'concurrent_activities': (None, '78'),
  'min_age': (None, '1'),
  'max_age': (None, '4'),
  'timezone': (None, 'Australia/Eucla'),
  'meeting_zone_lat': (None, 'iste'),
  'meeting_zone_lng': (None, 'fugiat'),
  'meeting_zone': (None, 'yrwikpyrvgkmmckgttgpsovrrqjnpxxezshsnj'),
  'meeting_zone_description': (None, 'vopklpzgjnfijtfjsfkfhfwph'),
  'has_material': (None, ''),
  'address': (None, 'quia'),
  'site_id': (None, '1'),
  'modality_id': (None, '9'),
  'country_id': (None, '6'),
  'province_id': (None, '12'),
  'city_id': (None, '4'),
  'block_hours': (None, '48'),
  'activities[][activity_id]': (None, '1'),
  'schedules[][amount]': (None, '0'),
  'schedules[][start_date]': (None, '2026-02-18T20:34:37'),
  'schedules[][end_date]': (None, '2045-11-28'),
  'user_id': (None, '13'),
  'levels[][level_id]': (None, '12'),
  'languages[][language_id]': (None, '13'),
  'licenses[][license_id]': (None, '8'),
  'images[][type]': (None, 'additional'),
  'class_relations[][child_id]': (None, '16'),
  'images[][image]': open('/tmp/phpmHTPqh', 'rb')}
payload = {
    "title": "yckezoilqbwvnhcaztunrgdewzkfgftwdyfvdazgdqtvschztckgzeocbqfownosdd",
    "detail": "kocyfvmaokftfxkzuaogdyikrsvceuq",
    "min_participants": 78,
    "max_participants": 4,
    "concurrent_activities": 78,
    "min_age": 1,
    "max_age": 4,
    "timezone": "Australia\/Eucla",
    "meeting_zone_lat": "iste",
    "meeting_zone_lng": "fugiat",
    "meeting_zone": "yrwikpyrvgkmmckgttgpsovrrqjnpxxezshsnj",
    "meeting_zone_description": "vopklpzgjnfijtfjsfkfhfwph",
    "has_material": false,
    "address": "quia",
    "site_id": 1,
    "modality_id": 9,
    "country_id": 6,
    "province_id": 12,
    "city_id": 4,
    "block_hours": 48,
    "activities": [
        {
            "activity_id": 1
        }
    ],
    "schedules": [
        {
            "amount": 0,
            "start_date": "2026-02-18T20:34:37",
            "end_date": "2045-11-28"
        }
    ],
    "user_id": 13,
    "levels": [
        {
            "level_id": 12
        }
    ],
    "languages": [
        {
            "language_id": 13
        }
    ],
    "licenses": [
        {
            "license_id": 8
        }
    ],
    "images": [
        {
            "type": "additional"
        }
    ],
    "class_relations": [
        {
            "child_id": 16
        }
    ]
}
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, files=files, params=params)
response.json()

Example response (201):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/classes

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

title   string   

El campo value debe contener al menos 2 caracteres. Example: yckezoilqbwvnhcaztunrgdewzkfgftwdyfvdazgdqtvschztckgzeocbqfownosdd

detail   string   

El campo value debe contener al menos 4 caracteres. Example: kocyfvmaokftfxkzuaogdyikrsvceuq

min_participants   integer   

El campo value debe ser al menos 0. Example: 78

max_participants   integer   

Example: 4

concurrent_activities   integer   

El campo value debe ser al menos 0. Example: 78

min_age   integer   

El campo value debe ser al menos 0. Example: 1

max_age   integer   

Example: 4

timezone   string   

Example: Australia/Eucla

meeting_zone_lat   string   

Example: iste

meeting_zone_lng   string   

Example: fugiat

meeting_zone   string   

El campo value debe contener al menos 5 caracteres. Example: yrwikpyrvgkmmckgttgpsovrrqjnpxxezshsnj

meeting_zone_description   string   

El campo value debe contener al menos 5 caracteres. Example: vopklpzgjnfijtfjsfkfhfwph

has_material   boolean  optional  

Example: false

address   string  optional  

Example: quia

site_id   integer  optional  

The id of an existing record in the sites table. Example: 1

modality_id   integer  optional  

The id of an existing record in the modalities table. Example: 9

country_id   integer  optional  

The id of an existing record in the countries table. Example: 6

province_id   integer  optional  

The id of an existing record in the provinces table. Example: 12

city_id   integer  optional  

The id of an existing record in the cities table. Example: 4

block_hours   integer  optional  

El campo value debe ser al menos 1. Example: 48

activities   object[]   
activity_id   integer   

The id of an existing record in the activities table. Example: 1

levels   object[]  optional  
level_id   integer   

The id of an existing record in the levels table. Example: 12

languages   object[]  optional  
language_id   integer   

The id of an existing record in the supplier_languages table. Example: 13

schedules   object[]   
amount   number   

Example: 0

start_date   string   

El campo value no corresponde con una fecha válida. Example: 2026-02-18T20:34:37

end_date   string   

El campo value no corresponde con una fecha válida. El campo value debe ser una fecha posterior a shedules.*.start_date. Example: 2045-11-28

licenses   object[]  optional  
license_id   integer   

The id of an existing record in the licenses table. Example: 8

images   object[]  optional  
image   file   

El campo value debe ser una imagen. El archivo value no debe pesar más de 5120 kilobytes. Example: /tmp/phpmHTPqh

type   string   

Example: additional

Must be one of:
  • main
  • additional
  • point
class_relations   object[]  optional  
child_id   integer   

The id of an existing record in the class_infos table. Example: 16

user_id   integer  optional  

The id of an existing record in the users table. Example: 13

Update schedule price

requires authentication

This endpoint allows updating the price of a schedule and optionally all schedules with the same date and previous price

Example request:
curl --request PATCH \
    "https://api.wildoow.com/api/v1/schedules/delectus/price" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"price\": 4293.3029279,
    \"update_matching\": true
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/schedules/delectus/price"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "price": 4293.3029279,
    "update_matching": true
};

fetch(url, {
    method: "PATCH",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/schedules/delectus/price';
$response = $client->patch(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'price' => 4293.3029279,
            'update_matching' => true,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/schedules/delectus/price'
payload = {
    "price": 4293.3029279,
    "update_matching": true
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()

Request      

PATCH api/v1/schedules/{scheduleId}/price

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

scheduleId   string   

Example: delectus

Body Parameters

price   number   

Example: 4293.3029279

update_matching   boolean  optional  

Example: true

List classes with filter

This endpoint retrieve list classes filtered

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/classes/filtered/list?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"perPage\": 45,
    \"page\": 2,
    \"order\": \"maiores\",
    \"sort\": \"molestias\",
    \"sites\": [
        18
    ],
    \"modalities\": [
        6
    ],
    \"min_age\": 8,
    \"max_age\": 11,
    \"levels\": [
        20
    ],
    \"languages\": [
        10
    ],
    \"activities\": [
        17
    ],
    \"activity_types\": [
        9
    ],
    \"subactivities\": [
        17
    ],
    \"schedules\": {
        \"amount_min\": 8,
        \"amount_max\": 174172985.99071756,
        \"date_start\": \"2026-02-18T20:34:38\",
        \"date_end\": \"2026-02-18T20:34:38\"
    },
    \"status\": \"review\",
    \"address\": \"inventore\",
    \"supplier\": \"facilis\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/classes/filtered/list"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "perPage": 45,
    "page": 2,
    "order": "maiores",
    "sort": "molestias",
    "sites": [
        18
    ],
    "modalities": [
        6
    ],
    "min_age": 8,
    "max_age": 11,
    "levels": [
        20
    ],
    "languages": [
        10
    ],
    "activities": [
        17
    ],
    "activity_types": [
        9
    ],
    "subactivities": [
        17
    ],
    "schedules": {
        "amount_min": 8,
        "amount_max": 174172985.99071756,
        "date_start": "2026-02-18T20:34:38",
        "date_end": "2026-02-18T20:34:38"
    },
    "status": "review",
    "address": "inventore",
    "supplier": "facilis"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/classes/filtered/list';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'perPage' => 45,
            'page' => 2,
            'order' => 'maiores',
            'sort' => 'molestias',
            'sites' => [
                18,
            ],
            'modalities' => [
                6,
            ],
            'min_age' => 8,
            'max_age' => 11,
            'levels' => [
                20,
            ],
            'languages' => [
                10,
            ],
            'activities' => [
                17,
            ],
            'activity_types' => [
                9,
            ],
            'subactivities' => [
                17,
            ],
            'schedules' => [
                'amount_min' => 8.0,
                'amount_max' => 174172985.99071756,
                'date_start' => '2026-02-18T20:34:38',
                'date_end' => '2026-02-18T20:34:38',
            ],
            'status' => 'review',
            'address' => 'inventore',
            'supplier' => 'facilis',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/classes/filtered/list'
payload = {
    "perPage": 45,
    "page": 2,
    "order": "maiores",
    "sort": "molestias",
    "sites": [
        18
    ],
    "modalities": [
        6
    ],
    "min_age": 8,
    "max_age": 11,
    "levels": [
        20
    ],
    "languages": [
        10
    ],
    "activities": [
        17
    ],
    "activity_types": [
        9
    ],
    "subactivities": [
        17
    ],
    "schedules": {
        "amount_min": 8,
        "amount_max": 174172985.99071756,
        "date_start": "2026-02-18T20:34:38",
        "date_end": "2026-02-18T20:34:38"
    },
    "status": "review",
    "address": "inventore",
    "supplier": "facilis"
}
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/classes/filtered/list

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

perPage   integer   

El campo value debe ser al menos 1. Example: 45

page   integer  optional  

This field is required when perPage is present. Example: 2

order   string  optional  

Example: maiores

sort   string  optional  

This field is required when order is present. Example: molestias

sites   integer[]   

The id of an existing record in the sites table.

modalities   integer[]   

The id of an existing record in the modalities table.

min_age   integer  optional  

Example: 8

max_age   integer  optional  

Example: 11

levels   integer[]   

The id of an existing record in the levels table.

languages   integer[]   

The id of an existing record in the languages table.

activities   integer[]   

The id of an existing record in the activities table.

activity_types   integer[]   

The id of an existing record in the activity_types table.

subactivities   integer[]   

The id of an existing record in the subactivities table.

schedules   object  optional  
amount_min   number  optional  

Example: 8

amount_max   number  optional  

Example: 174172985.99072

date_start   string  optional  

El campo value no corresponde con una fecha válida. Example: 2026-02-18T20:34:38

date_end   string  optional  

El campo value no corresponde con una fecha válida. Example: 2026-02-18T20:34:38

status   string  optional  

Example: review

Must be one of:
  • approved
  • pendient
  • review
  • blocked
address   string  optional  

Example: inventore

supplier   string  optional  

Example: facilis

Show class detail

requires authentication

This endpoint retrieve detail class

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/classes/show/voluptatum?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/classes/show/voluptatum"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/classes/show/voluptatum';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/classes/show/voluptatum'
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

GET api/v1/classes/show/{class}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

class   string   

Example: voluptatum

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Licenses

Endpoints associated with class

List licenses

This endpoint retrieve list licenses

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/licenses?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"activity_id\": 4
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/licenses"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "activity_id": 4
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/licenses';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'activity_id' => 4,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/licenses'
payload = {
    "activity_id": 4
}
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/licenses

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

activity_id   integer  optional  

The id of an existing record in the activities table. Example: 4

Dashboard management

APIs for managing dashboard statistics

Statistics

Endpoints associated with dashboard statistics

Get client dashboard statistics based on time period

This endpoint retrieves client-specific dashboard statistics based on the selected time period

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/dashboard/stats/clients?period=30d" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"period\": \"24h\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/dashboard/stats/clients"
);

const params = {
    "period": "30d",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "period": "24h"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/dashboard/stats/clients';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'period' => '30d',
        ],
        'json' => [
            'period' => '24h',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/dashboard/stats/clients'
payload = {
    "period": "24h"
}
params = {
  'period': '30d',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/dashboard/stats/clients

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

period   string   

The time period for statistics. Example: 30d

Must be one of:
  • 24h
  • 7d
  • 30d
  • 12m

Body Parameters

period   string   

Example: 24h

Must be one of:
  • 24h
  • 7d
  • 30d
  • 12m

Get detailed stats for client

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/dashboard/stats/detailed/clients?period=30d" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"period\": \"24h\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/dashboard/stats/detailed/clients"
);

const params = {
    "period": "30d",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "period": "24h"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/dashboard/stats/detailed/clients';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'period' => '30d',
        ],
        'json' => [
            'period' => '24h',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/dashboard/stats/detailed/clients'
payload = {
    "period": "24h"
}
params = {
  'period': '30d',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/dashboard/stats/detailed/clients

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

period   string   

The time period for statistics. Example: 30d

Must be one of:
  • 24h
  • 7d
  • 30d
  • 12m

Body Parameters

period   string   

Example: 24h

Must be one of:
  • 24h
  • 7d
  • 30d
  • 12m

Get supplier stats with reviews

This endpoint returns statistics for suppliers including reservations and reviews grouped by date within the specified period.

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/dashboard/stats/suppliers?period=30d" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"period\": \"24h\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/dashboard/stats/suppliers"
);

const params = {
    "period": "30d",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "period": "24h"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/dashboard/stats/suppliers';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'period' => '30d',
        ],
        'json' => [
            'period' => '24h',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/dashboard/stats/suppliers'
payload = {
    "period": "24h"
}
params = {
  'period': '30d',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/dashboard/stats/suppliers

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

period   string   

The time period for statistics. Example: 30d

Must be one of:
  • 24h
  • 7d
  • 30d
  • 12m

Body Parameters

period   string   

Example: 24h

Must be one of:
  • 24h
  • 7d
  • 30d
  • 12m

Degree management

APIs for managing resources degree management

Degrees

Endpoints associated with degrees

List degrees

This endpoint retrieve list degrees

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/suppliers/degrees?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"order\": \"qui\",
    \"sort\": \"reiciendis\",
    \"perPage\": 50,
    \"page\": 16,
    \"name\": \"velit\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/degrees"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "order": "qui",
    "sort": "reiciendis",
    "perPage": 50,
    "page": 16,
    "name": "velit"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/degrees';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'order' => 'qui',
            'sort' => 'reiciendis',
            'perPage' => 50,
            'page' => 16,
            'name' => 'velit',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/degrees'
payload = {
    "order": "qui",
    "sort": "reiciendis",
    "perPage": 50,
    "page": 16,
    "name": "velit"
}
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/suppliers/degrees

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

order   string  optional  

Example: qui

sort   string  optional  

This field is required when order is present. Example: reiciendis

perPage   integer  optional  

El campo value debe ser al menos 1. Example: 50

page   integer  optional  

This field is required when perPage is present. Example: 16

code   string  optional  

The code of an existing record in the degrees table.

name   string  optional  

Example: velit

Store degree

requires authentication

This endpoint allows create a new degree

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/suppliers/degrees?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"translations\": {
        \"es\": {
            \"name\": \"iste\",
            \"description\": \"Illum laudantium qui temporibus odit et accusamus.\"
        },
        \"en\": {
            \"name\": \"et\",
            \"description\": \"Quidem est quos ut nam pariatur adipisci voluptas.\"
        }
    },
    \"code\": \"quaerat\",
    \"is_active\": false
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/degrees"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "translations": {
        "es": {
            "name": "iste",
            "description": "Illum laudantium qui temporibus odit et accusamus."
        },
        "en": {
            "name": "et",
            "description": "Quidem est quos ut nam pariatur adipisci voluptas."
        }
    },
    "code": "quaerat",
    "is_active": false
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/degrees';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'translations' => [
                'es' => [
                    'name' => 'iste',
                    'description' => 'Illum laudantium qui temporibus odit et accusamus.',
                ],
                'en' => [
                    'name' => 'et',
                    'description' => 'Quidem est quos ut nam pariatur adipisci voluptas.',
                ],
            ],
            'code' => 'quaerat',
            'is_active' => false,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/degrees'
payload = {
    "translations": {
        "es": {
            "name": "iste",
            "description": "Illum laudantium qui temporibus odit et accusamus."
        },
        "en": {
            "name": "et",
            "description": "Quidem est quos ut nam pariatur adipisci voluptas."
        }
    },
    "code": "quaerat",
    "is_active": false
}
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload, params=params)
response.json()

Example response (201):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/suppliers/degrees

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

translations   object  optional  
es   object  optional  
name   string  optional  

Example: iste

description   string  optional  

Example: Illum laudantium qui temporibus odit et accusamus.

en   object  optional  
name   string  optional  

Example: et

description   string  optional  

Example: Quidem est quos ut nam pariatur adipisci voluptas.

code   string  optional  

Example: quaerat

is_active   boolean  optional  

Example: false

Show degree

requires authentication

This endpoint retrieve detail degree

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/suppliers/degrees/nulla?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/degrees/nulla"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/degrees/nulla';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/degrees/nulla'
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

GET api/v1/suppliers/degrees/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the degree. Example: nulla

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Update a degree

requires authentication

This endpoint allow update a degree

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/suppliers/degrees/ex" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"translations\": {
        \"es\": {
            \"name\": \"beatae\",
            \"description\": \"Hic explicabo quidem quia totam et.\"
        },
        \"en\": {
            \"name\": \"rerum\",
            \"description\": \"Asperiores sit laboriosam aliquid qui vitae.\"
        }
    },
    \"code\": \"et\",
    \"is_active\": false
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/degrees/ex"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "translations": {
        "es": {
            "name": "beatae",
            "description": "Hic explicabo quidem quia totam et."
        },
        "en": {
            "name": "rerum",
            "description": "Asperiores sit laboriosam aliquid qui vitae."
        }
    },
    "code": "et",
    "is_active": false
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/degrees/ex';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'translations' => [
                'es' => [
                    'name' => 'beatae',
                    'description' => 'Hic explicabo quidem quia totam et.',
                ],
                'en' => [
                    'name' => 'rerum',
                    'description' => 'Asperiores sit laboriosam aliquid qui vitae.',
                ],
            ],
            'code' => 'et',
            'is_active' => false,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/degrees/ex'
payload = {
    "translations": {
        "es": {
            "name": "beatae",
            "description": "Hic explicabo quidem quia totam et."
        },
        "en": {
            "name": "rerum",
            "description": "Asperiores sit laboriosam aliquid qui vitae."
        }
    },
    "code": "et",
    "is_active": false
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

PUT api/v1/suppliers/degrees/{id}

PATCH api/v1/suppliers/degrees/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the degree. Example: ex

Body Parameters

translations   object  optional  
es   object  optional  
name   string  optional  

Example: beatae

description   string  optional  

Example: Hic explicabo quidem quia totam et.

en   object  optional  
name   string  optional  

Example: rerum

description   string  optional  

Example: Asperiores sit laboriosam aliquid qui vitae.

code   string  optional  

Example: et

is_active   boolean  optional  

Example: false

Delete a degree

requires authentication

This endpoint allow delete a degree

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/suppliers/degrees/quis" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/degrees/quis"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/degrees/quis';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/degrees/quis'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

DELETE api/v1/suppliers/degrees/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the degree. Example: quis

Document Verification

APIs for managing supplier document verification

Admin

Endpoints for administrators to verify supplier documents

Get list of pending document verifications

This endpoint retrieves all documents pending verification

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/admin/users/illo/suppliers/documents/pending" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/users/illo/suppliers/documents/pending"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/admin/users/illo/suppliers/documents/pending';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/users/illo/suppliers/documents/pending'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/admin/users/{userId}/suppliers/documents/pending

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

userId   string   

Example: illo

Update document verification status

This endpoint allows administrators to verify supplier documents

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/admin/users/qui/suppliers/documents/verify" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"document_type\": \"dni\",
    \"status\": \"pending\",
    \"observation\": \"rtb\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/users/qui/suppliers/documents/verify"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "document_type": "dni",
    "status": "pending",
    "observation": "rtb"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/admin/users/qui/suppliers/documents/verify';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'document_type' => 'dni',
            'status' => 'pending',
            'observation' => 'rtb',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/users/qui/suppliers/documents/verify'
payload = {
    "document_type": "dni",
    "status": "pending",
    "observation": "rtb"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/admin/users/{userId}/suppliers/documents/verify

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

userId   string   

Example: qui

Body Parameters

document_type   string   

Example: dni

Must be one of:
  • dni
  • dni_back
  • legal
  • insurance
  • sexual_offense
  • bank_certificate
status   string   

Example: pending

Must be one of:
  • pending
  • approved
  • rejected
observation   string  optional  

El campo value no debe contener más de 500 caracteres. Example: rtb

Endpoints

Handle OAuth callback

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/oauth/callback" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"provider\": \"google\",
    \"accessToken\": \"facilis\",
    \"refreshToken\": \"et\",
    \"idToken\": \"est\",
    \"expiresIn\": 18,
    \"scope\": \"et\",
    \"tokenType\": \"ut\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/oauth/callback"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "provider": "google",
    "accessToken": "facilis",
    "refreshToken": "et",
    "idToken": "est",
    "expiresIn": 18,
    "scope": "et",
    "tokenType": "ut"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/oauth/callback';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'provider' => 'google',
            'accessToken' => 'facilis',
            'refreshToken' => 'et',
            'idToken' => 'est',
            'expiresIn' => 18,
            'scope' => 'et',
            'tokenType' => 'ut',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/oauth/callback'
payload = {
    "provider": "google",
    "accessToken": "facilis",
    "refreshToken": "et",
    "idToken": "est",
    "expiresIn": 18,
    "scope": "et",
    "tokenType": "ut"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/oauth/callback

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

provider   string   

Example: google

Must be one of:
  • google
accessToken   string   

Example: facilis

refreshToken   string  optional  

Example: et

idToken   string  optional  

Example: est

expiresIn   integer  optional  

Example: 18

scope   string  optional  

Example: et

tokenType   string  optional  

Example: ut

Authenticate the request for channel access.

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/broadcasting/auth" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/broadcasting/auth"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/broadcasting/auth';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/broadcasting/auth'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/broadcasting/auth

POST api/v1/broadcasting/auth

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Disconnect OAuth provider

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/oauth/corrupti/disconnect" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/oauth/corrupti/disconnect"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/oauth/corrupti/disconnect';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/oauth/corrupti/disconnect'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

DELETE api/v1/oauth/{provider}/disconnect

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

provider   string   

Example: corrupti

Check OAuth provider connection status

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/oauth/esse/status" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/oauth/esse/status"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/oauth/esse/status';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/oauth/esse/status'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/oauth/{provider}/status

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

provider   string   

Example: esse

Process checkout and create payment intent

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/checkout/payment-intent" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"cart_id\": \"nihil\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/checkout/payment-intent"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "cart_id": "nihil"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/checkout/payment-intent';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'cart_id' => 'nihil',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/checkout/payment-intent'
payload = {
    "cart_id": "nihil"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/checkout/payment-intent

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

cart_id   string   

The id of an existing record in the carts table. Example: nihil

Complete the checkout process after successful payment

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/checkout/complete" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"payment_intent_id\": \"dolores\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/checkout/complete"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "payment_intent_id": "dolores"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/checkout/complete';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'payment_intent_id' => 'dolores',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/checkout/complete'
payload = {
    "payment_intent_id": "dolores"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/checkout/complete

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

payment_intent_id   string   

Example: dolores

Obtener disponibilidad de horarios para una actividad con validación de cutoff

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/classes/labore/availability" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/classes/labore/availability"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/classes/labore/availability';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/classes/labore/availability'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 58
access-control-allow-origin: *
 

{
    "message": "Modules\\ClassManagement\\Http\\Controllers\\AvailabilityController::getAvailability(): Argument #2 ($classId) must be of type int, string given, called in /usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Controller.php on line 54",
    "exception": "TypeError",
    "file": "/usr/src/app/Modules/ClassManagement/Http/Controllers/AvailabilityController.php",
    "line": 30,
    "trace": [
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Controller.php",
            "line": 54,
            "function": "getAvailability",
            "class": "Modules\\ClassManagement\\Http\\Controllers\\AvailabilityController",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php",
            "line": 43,
            "function": "callAction",
            "class": "Illuminate\\Routing\\Controller",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
            "line": 265,
            "function": "dispatch",
            "class": "Illuminate\\Routing\\ControllerDispatcher",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
            "line": 211,
            "function": "runController",
            "class": "Illuminate\\Routing\\Route",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 808,
            "function": "run",
            "class": "Illuminate\\Routing\\Route",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 144,
            "function": "Illuminate\\Routing\\{closure}",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php",
            "line": 51,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Routing\\Middleware\\SubstituteBindings",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php",
            "line": 161,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php",
            "line": 127,
            "function": "handleRequest",
            "class": "Illuminate\\Routing\\Middleware\\ThrottleRequests",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php",
            "line": 89,
            "function": "handleRequestUsingNamedLimiter",
            "class": "Illuminate\\Routing\\Middleware\\ThrottleRequests",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Routing\\Middleware\\ThrottleRequests",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/sanctum/src/Http/Middleware/EnsureFrontendRequestsAreStateful.php",
            "line": 25,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 144,
            "function": "Laravel\\Sanctum\\Http\\Middleware\\{closure}",
            "class": "Laravel\\Sanctum\\Http\\Middleware\\EnsureFrontendRequestsAreStateful",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 119,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/sanctum/src/Http/Middleware/EnsureFrontendRequestsAreStateful.php",
            "line": 24,
            "function": "then",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Laravel\\Sanctum\\Http\\Middleware\\EnsureFrontendRequestsAreStateful",
            "type": "->"
        },
        {
            "file": "/usr/src/app/app/Http/Middleware/AcceptJson.php",
            "line": 20,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "App\\Http\\Middleware\\AcceptJson",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/appyweb/appywebphp-settings/src/Http/Middleware/JsonResponse.php",
            "line": 20,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Appyweb\\AppywebphpSettings\\Http\\Middleware\\JsonResponse",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 119,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 807,
            "function": "then",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 786,
            "function": "runRouteWithinStack",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 750,
            "function": "runRoute",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 739,
            "function": "dispatchToRoute",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
            "line": 201,
            "function": "dispatch",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 144,
            "function": "Illuminate\\Foundation\\Http\\{closure}",
            "class": "Illuminate\\Foundation\\Http\\Kernel",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/appyweb/appywebphp-settings/src/Http/Middleware/Locale.php",
            "line": 23,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Appyweb\\AppywebphpSettings\\Http\\Middleware\\Locale",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
            "line": 21,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php",
            "line": 31,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
            "line": 21,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php",
            "line": 51,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\TrimStrings",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php",
            "line": 27,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Http\\Middleware\\ValidatePostSize",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php",
            "line": 110,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php",
            "line": 62,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Http\\Middleware\\HandleCors",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php",
            "line": 58,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Http\\Middleware\\TrustProxies",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 119,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
            "line": 176,
            "function": "then",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
            "line": 145,
            "function": "sendRequestThroughRouter",
            "class": "Illuminate\\Foundation\\Http\\Kernel",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 310,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Kernel",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 298,
            "function": "callLaravelOrLumenRoute",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 91,
            "function": "makeApiCall",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 44,
            "function": "makeResponseCall",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 35,
            "function": "makeResponseCallIfConditionsPass",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
            "line": 237,
            "function": "__invoke",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
            "line": 163,
            "function": "iterateThroughStrategies",
            "class": "Knuckles\\Scribe\\Extracting\\Extractor",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
            "line": 95,
            "function": "fetchResponses",
            "class": "Knuckles\\Scribe\\Extracting\\Extractor",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
            "line": 125,
            "function": "processRoute",
            "class": "Knuckles\\Scribe\\Extracting\\Extractor",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
            "line": 72,
            "function": "extractEndpointsInfoFromLaravelApp",
            "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
            "line": 50,
            "function": "extractEndpointsInfoAndWriteToDisk",
            "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Commands/GenerateDocumentation.php",
            "line": 53,
            "function": "get",
            "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
            "line": 36,
            "function": "handle",
            "class": "Knuckles\\Scribe\\Commands\\GenerateDocumentation",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Util.php",
            "line": 43,
            "function": "Illuminate\\Container\\{closure}",
            "class": "Illuminate\\Container\\BoundMethod",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
            "line": 95,
            "function": "unwrapIfClosure",
            "class": "Illuminate\\Container\\Util",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
            "line": 35,
            "function": "callBoundMethod",
            "class": "Illuminate\\Container\\BoundMethod",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 694,
            "function": "call",
            "class": "Illuminate\\Container\\BoundMethod",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Console/Command.php",
            "line": 213,
            "function": "call",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Command/Command.php",
            "line": 279,
            "function": "execute",
            "class": "Illuminate\\Console\\Command",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Console/Command.php",
            "line": 182,
            "function": "run",
            "class": "Symfony\\Component\\Console\\Command\\Command",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Application.php",
            "line": 1047,
            "function": "run",
            "class": "Illuminate\\Console\\Command",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Application.php",
            "line": 316,
            "function": "doRunCommand",
            "class": "Symfony\\Component\\Console\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Application.php",
            "line": 167,
            "function": "doRun",
            "class": "Symfony\\Component\\Console\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php",
            "line": 197,
            "function": "run",
            "class": "Symfony\\Component\\Console\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/artisan",
            "line": 35,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Console\\Kernel",
            "type": "->"
        }
    ]
}
 

Request      

GET api/v1/classes/{classId}/availability

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

classId   string   

Example: labore

Display a listing of pending edit requests for a class

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/admin/classes/quia/edit-requests" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/classes/quia/edit-requests"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/admin/classes/quia/edit-requests';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/classes/quia/edit-requests'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/admin/classes/{classId}/edit-requests

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

classId   string   

Example: quia

Approve a price change request

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/admin/edit-requests/omnis/approve" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/edit-requests/omnis/approve"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/admin/edit-requests/omnis/approve';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/edit-requests/omnis/approve'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers)
response.json()

Request      

POST api/v1/admin/edit-requests/{id}/approve

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the edit request. Example: omnis

Reject a price change request

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/admin/edit-requests/nihil/reject" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"rejection_reason\": \"tujghizjf\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/edit-requests/nihil/reject"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "rejection_reason": "tujghizjf"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/admin/edit-requests/nihil/reject';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'rejection_reason' => 'tujghizjf',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/edit-requests/nihil/reject'
payload = {
    "rejection_reason": "tujghizjf"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/admin/edit-requests/{id}/reject

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the edit request. Example: nihil

Body Parameters

rejection_reason   string   

El campo value no debe contener más de 500 caracteres. Example: tujghizjf

GET api/v1/client

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/client" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/client"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/client';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/client'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/client

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Get all prohibited keyword attempts for admin

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/admin/prohibited-keyword-attempts

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Get statistics about prohibited keyword attempts

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/stats" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/stats"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/stats';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/stats'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/admin/prohibited-keyword-attempts/stats

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Get the list of prohibited keywords configured in the system

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/keywords" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/keywords"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/keywords';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/keywords'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/admin/prohibited-keyword-attempts/keywords

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Get a single attempt by ID

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/enim" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/enim"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/enim';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/enim'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/admin/prohibited-keyword-attempts/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the prohibited keyword attempt. Example: enim

Mark an attempt as reviewed

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/ut/review" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/ut/review"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/ut/review';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/ut/review'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers)
response.json()

Request      

PUT api/v1/admin/prohibited-keyword-attempts/{id}/review

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the prohibited keyword attempt. Example: ut

Mark multiple attempts as reviewed

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/review-multiple" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/review-multiple"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/review-multiple';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/review-multiple'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers)
response.json()

Request      

PUT api/v1/admin/prohibited-keyword-attempts/review-multiple

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Delete an attempt record

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/ipsam" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/ipsam"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/ipsam';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/ipsam'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Request      

DELETE api/v1/admin/prohibited-keyword-attempts/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the prohibited keyword attempt. Example: ipsam

Get the connection status of WhatsApp

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/whatsapp/status" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/whatsapp/status"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/whatsapp/status';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/whatsapp/status'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/whatsapp/status

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Generate a QR code for linking a device

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/whatsapp/qr" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/whatsapp/qr"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/whatsapp/qr';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/whatsapp/qr'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers)
response.json()

Request      

POST api/v1/whatsapp/qr

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Send a test message to verify the connection Sends the message to the same phone number configured in the connection

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/whatsapp/test-message" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/whatsapp/test-message"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/whatsapp/test-message';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/whatsapp/test-message'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers)
response.json()

Request      

POST api/v1/whatsapp/test-message

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Store WhatsApp settings

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/whatsapp/settings" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"connection_name\": \"kzrlrpltktpefvapq\",
    \"phone_number\": \"kyvlmriuocnpwwnikfnki\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/whatsapp/settings"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "connection_name": "kzrlrpltktpefvapq",
    "phone_number": "kyvlmriuocnpwwnikfnki"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/whatsapp/settings';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'connection_name' => 'kzrlrpltktpefvapq',
            'phone_number' => 'kyvlmriuocnpwwnikfnki',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/whatsapp/settings'
payload = {
    "connection_name": "kzrlrpltktpefvapq",
    "phone_number": "kyvlmriuocnpwwnikfnki"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/whatsapp/settings

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

connection_name   string   

El campo value no debe contener más de 100 caracteres. Example: kzrlrpltktpefvapq

phone_number   string   

El campo value debe contener al menos 9 caracteres. Example: kyvlmriuocnpwwnikfnki

Delete WhatsApp configuration

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/whatsapp/delete" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/whatsapp/delete"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/whatsapp/delete';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/whatsapp/delete'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Request      

DELETE api/v1/whatsapp/delete

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Handle incoming Stripe webhook events

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/payment/stripe/webhook" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/stripe/webhook"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/stripe/webhook';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/stripe/webhook'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers)
response.json()

Request      

POST api/v1/payment/stripe/webhook

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Get balance summary for the authenticated provider

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/payment/blocked-balance/summary" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/blocked-balance/summary"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/blocked-balance/summary';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/blocked-balance/summary'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "$config must be a string or an array",
    "exception": "Stripe\\Exception\\InvalidArgumentException",
    "file": "/usr/src/app/vendor/stripe/stripe-php/lib/BaseStripeClient.php",
    "line": 80,
    "trace": [
        {
            "file": "/usr/src/app/Modules/Payment/Services/StripePayoutService.php",
            "line": 23,
            "function": "__construct",
            "class": "Stripe\\BaseStripeClient",
            "type": "->"
        },
        {
            "function": "__construct",
            "class": "Modules\\Payment\\Services\\StripePayoutService",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 989,
            "function": "newInstanceArgs",
            "class": "ReflectionClass",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 819,
            "function": "build",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
            "line": 1048,
            "function": "resolve",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 755,
            "function": "resolve",
            "class": "Illuminate\\Foundation\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
            "line": 1030,
            "function": "make",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 1118,
            "function": "make",
            "class": "Illuminate\\Foundation\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 1028,
            "function": "resolveClass",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 979,
            "function": "resolveDependencies",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 819,
            "function": "build",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
            "line": 1048,
            "function": "resolve",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 755,
            "function": "resolve",
            "class": "Illuminate\\Foundation\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
            "line": 1030,
            "function": "make",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 1118,
            "function": "make",
            "class": "Illuminate\\Foundation\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 1028,
            "function": "resolveClass",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 979,
            "function": "resolveDependencies",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 819,
            "function": "build",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
            "line": 1048,
            "function": "resolve",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 755,
            "function": "resolve",
            "class": "Illuminate\\Foundation\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
            "line": 1030,
            "function": "make",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
            "line": 284,
            "function": "make",
            "class": "Illuminate\\Foundation\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
            "line": 1124,
            "function": "getController",
            "class": "Illuminate\\Routing\\Route",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
            "line": 1053,
            "function": "controllerMiddleware",
            "class": "Illuminate\\Routing\\Route",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 820,
            "function": "gatherMiddleware",
            "class": "Illuminate\\Routing\\Route",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 802,
            "function": "gatherRouteMiddleware",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 786,
            "function": "runRouteWithinStack",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 750,
            "function": "runRoute",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 739,
            "function": "dispatchToRoute",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
            "line": 201,
            "function": "dispatch",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 144,
            "function": "Illuminate\\Foundation\\Http\\{closure}",
            "class": "Illuminate\\Foundation\\Http\\Kernel",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/appyweb/appywebphp-settings/src/Http/Middleware/Locale.php",
            "line": 23,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Appyweb\\AppywebphpSettings\\Http\\Middleware\\Locale",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
            "line": 21,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php",
            "line": 31,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
            "line": 21,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php",
            "line": 51,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\TrimStrings",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php",
            "line": 27,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Http\\Middleware\\ValidatePostSize",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php",
            "line": 110,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php",
            "line": 62,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Http\\Middleware\\HandleCors",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php",
            "line": 58,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Http\\Middleware\\TrustProxies",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 119,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
            "line": 176,
            "function": "then",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
            "line": 145,
            "function": "sendRequestThroughRouter",
            "class": "Illuminate\\Foundation\\Http\\Kernel",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 310,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Kernel",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 298,
            "function": "callLaravelOrLumenRoute",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 91,
            "function": "makeApiCall",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 44,
            "function": "makeResponseCall",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 35,
            "function": "makeResponseCallIfConditionsPass",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
            "line": 237,
            "function": "__invoke",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
            "line": 163,
            "function": "iterateThroughStrategies",
            "class": "Knuckles\\Scribe\\Extracting\\Extractor",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
            "line": 95,
            "function": "fetchResponses",
            "class": "Knuckles\\Scribe\\Extracting\\Extractor",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
            "line": 125,
            "function": "processRoute",
            "class": "Knuckles\\Scribe\\Extracting\\Extractor",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
            "line": 72,
            "function": "extractEndpointsInfoFromLaravelApp",
            "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
            "line": 50,
            "function": "extractEndpointsInfoAndWriteToDisk",
            "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Commands/GenerateDocumentation.php",
            "line": 53,
            "function": "get",
            "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
            "line": 36,
            "function": "handle",
            "class": "Knuckles\\Scribe\\Commands\\GenerateDocumentation",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Util.php",
            "line": 43,
            "function": "Illuminate\\Container\\{closure}",
            "class": "Illuminate\\Container\\BoundMethod",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
            "line": 95,
            "function": "unwrapIfClosure",
            "class": "Illuminate\\Container\\Util",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
            "line": 35,
            "function": "callBoundMethod",
            "class": "Illuminate\\Container\\BoundMethod",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 694,
            "function": "call",
            "class": "Illuminate\\Container\\BoundMethod",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Console/Command.php",
            "line": 213,
            "function": "call",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Command/Command.php",
            "line": 279,
            "function": "execute",
            "class": "Illuminate\\Console\\Command",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Console/Command.php",
            "line": 182,
            "function": "run",
            "class": "Symfony\\Component\\Console\\Command\\Command",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Application.php",
            "line": 1047,
            "function": "run",
            "class": "Illuminate\\Console\\Command",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Application.php",
            "line": 316,
            "function": "doRunCommand",
            "class": "Symfony\\Component\\Console\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Application.php",
            "line": 167,
            "function": "doRun",
            "class": "Symfony\\Component\\Console\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php",
            "line": 197,
            "function": "run",
            "class": "Symfony\\Component\\Console\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/artisan",
            "line": 35,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Console\\Kernel",
            "type": "->"
        }
    ]
}
 

Request      

GET api/v1/payment/blocked-balance/summary

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Get detailed blocked balances for the authenticated provider

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/payment/blocked-balance/list" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/blocked-balance/list"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/blocked-balance/list';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/blocked-balance/list'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "$config must be a string or an array",
    "exception": "Stripe\\Exception\\InvalidArgumentException",
    "file": "/usr/src/app/vendor/stripe/stripe-php/lib/BaseStripeClient.php",
    "line": 80,
    "trace": [
        {
            "file": "/usr/src/app/Modules/Payment/Services/StripePayoutService.php",
            "line": 23,
            "function": "__construct",
            "class": "Stripe\\BaseStripeClient",
            "type": "->"
        },
        {
            "function": "__construct",
            "class": "Modules\\Payment\\Services\\StripePayoutService",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 989,
            "function": "newInstanceArgs",
            "class": "ReflectionClass",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 819,
            "function": "build",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
            "line": 1048,
            "function": "resolve",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 755,
            "function": "resolve",
            "class": "Illuminate\\Foundation\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
            "line": 1030,
            "function": "make",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 1118,
            "function": "make",
            "class": "Illuminate\\Foundation\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 1028,
            "function": "resolveClass",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 979,
            "function": "resolveDependencies",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 819,
            "function": "build",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
            "line": 1048,
            "function": "resolve",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 755,
            "function": "resolve",
            "class": "Illuminate\\Foundation\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
            "line": 1030,
            "function": "make",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 1118,
            "function": "make",
            "class": "Illuminate\\Foundation\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 1028,
            "function": "resolveClass",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 979,
            "function": "resolveDependencies",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 819,
            "function": "build",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
            "line": 1048,
            "function": "resolve",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 755,
            "function": "resolve",
            "class": "Illuminate\\Foundation\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
            "line": 1030,
            "function": "make",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
            "line": 284,
            "function": "make",
            "class": "Illuminate\\Foundation\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
            "line": 1124,
            "function": "getController",
            "class": "Illuminate\\Routing\\Route",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
            "line": 1053,
            "function": "controllerMiddleware",
            "class": "Illuminate\\Routing\\Route",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 820,
            "function": "gatherMiddleware",
            "class": "Illuminate\\Routing\\Route",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 802,
            "function": "gatherRouteMiddleware",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 786,
            "function": "runRouteWithinStack",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 750,
            "function": "runRoute",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 739,
            "function": "dispatchToRoute",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
            "line": 201,
            "function": "dispatch",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 144,
            "function": "Illuminate\\Foundation\\Http\\{closure}",
            "class": "Illuminate\\Foundation\\Http\\Kernel",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/appyweb/appywebphp-settings/src/Http/Middleware/Locale.php",
            "line": 23,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Appyweb\\AppywebphpSettings\\Http\\Middleware\\Locale",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
            "line": 21,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php",
            "line": 31,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
            "line": 21,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php",
            "line": 51,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\TrimStrings",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php",
            "line": 27,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Http\\Middleware\\ValidatePostSize",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php",
            "line": 110,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php",
            "line": 62,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Http\\Middleware\\HandleCors",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php",
            "line": 58,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Http\\Middleware\\TrustProxies",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 119,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
            "line": 176,
            "function": "then",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
            "line": 145,
            "function": "sendRequestThroughRouter",
            "class": "Illuminate\\Foundation\\Http\\Kernel",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 310,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Kernel",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 298,
            "function": "callLaravelOrLumenRoute",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 91,
            "function": "makeApiCall",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 44,
            "function": "makeResponseCall",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 35,
            "function": "makeResponseCallIfConditionsPass",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
            "line": 237,
            "function": "__invoke",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
            "line": 163,
            "function": "iterateThroughStrategies",
            "class": "Knuckles\\Scribe\\Extracting\\Extractor",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
            "line": 95,
            "function": "fetchResponses",
            "class": "Knuckles\\Scribe\\Extracting\\Extractor",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
            "line": 125,
            "function": "processRoute",
            "class": "Knuckles\\Scribe\\Extracting\\Extractor",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
            "line": 72,
            "function": "extractEndpointsInfoFromLaravelApp",
            "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
            "line": 50,
            "function": "extractEndpointsInfoAndWriteToDisk",
            "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Commands/GenerateDocumentation.php",
            "line": 53,
            "function": "get",
            "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
            "line": 36,
            "function": "handle",
            "class": "Knuckles\\Scribe\\Commands\\GenerateDocumentation",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Util.php",
            "line": 43,
            "function": "Illuminate\\Container\\{closure}",
            "class": "Illuminate\\Container\\BoundMethod",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
            "line": 95,
            "function": "unwrapIfClosure",
            "class": "Illuminate\\Container\\Util",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
            "line": 35,
            "function": "callBoundMethod",
            "class": "Illuminate\\Container\\BoundMethod",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 694,
            "function": "call",
            "class": "Illuminate\\Container\\BoundMethod",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Console/Command.php",
            "line": 213,
            "function": "call",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Command/Command.php",
            "line": 279,
            "function": "execute",
            "class": "Illuminate\\Console\\Command",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Console/Command.php",
            "line": 182,
            "function": "run",
            "class": "Symfony\\Component\\Console\\Command\\Command",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Application.php",
            "line": 1047,
            "function": "run",
            "class": "Illuminate\\Console\\Command",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Application.php",
            "line": 316,
            "function": "doRunCommand",
            "class": "Symfony\\Component\\Console\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Application.php",
            "line": 167,
            "function": "doRun",
            "class": "Symfony\\Component\\Console\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php",
            "line": 197,
            "function": "run",
            "class": "Symfony\\Component\\Console\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/artisan",
            "line": 35,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Console\\Kernel",
            "type": "->"
        }
    ]
}
 

Request      

GET api/v1/payment/blocked-balance/list

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Get upcoming releases (balances that will be released soon)

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/payment/blocked-balance/upcoming" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/blocked-balance/upcoming"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/blocked-balance/upcoming';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/blocked-balance/upcoming'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "$config must be a string or an array",
    "exception": "Stripe\\Exception\\InvalidArgumentException",
    "file": "/usr/src/app/vendor/stripe/stripe-php/lib/BaseStripeClient.php",
    "line": 80,
    "trace": [
        {
            "file": "/usr/src/app/Modules/Payment/Services/StripePayoutService.php",
            "line": 23,
            "function": "__construct",
            "class": "Stripe\\BaseStripeClient",
            "type": "->"
        },
        {
            "function": "__construct",
            "class": "Modules\\Payment\\Services\\StripePayoutService",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 989,
            "function": "newInstanceArgs",
            "class": "ReflectionClass",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 819,
            "function": "build",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
            "line": 1048,
            "function": "resolve",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 755,
            "function": "resolve",
            "class": "Illuminate\\Foundation\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
            "line": 1030,
            "function": "make",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 1118,
            "function": "make",
            "class": "Illuminate\\Foundation\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 1028,
            "function": "resolveClass",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 979,
            "function": "resolveDependencies",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 819,
            "function": "build",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
            "line": 1048,
            "function": "resolve",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 755,
            "function": "resolve",
            "class": "Illuminate\\Foundation\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
            "line": 1030,
            "function": "make",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 1118,
            "function": "make",
            "class": "Illuminate\\Foundation\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 1028,
            "function": "resolveClass",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 979,
            "function": "resolveDependencies",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 819,
            "function": "build",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
            "line": 1048,
            "function": "resolve",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 755,
            "function": "resolve",
            "class": "Illuminate\\Foundation\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
            "line": 1030,
            "function": "make",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
            "line": 284,
            "function": "make",
            "class": "Illuminate\\Foundation\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
            "line": 1124,
            "function": "getController",
            "class": "Illuminate\\Routing\\Route",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
            "line": 1053,
            "function": "controllerMiddleware",
            "class": "Illuminate\\Routing\\Route",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 820,
            "function": "gatherMiddleware",
            "class": "Illuminate\\Routing\\Route",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 802,
            "function": "gatherRouteMiddleware",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 786,
            "function": "runRouteWithinStack",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 750,
            "function": "runRoute",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 739,
            "function": "dispatchToRoute",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
            "line": 201,
            "function": "dispatch",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 144,
            "function": "Illuminate\\Foundation\\Http\\{closure}",
            "class": "Illuminate\\Foundation\\Http\\Kernel",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/appyweb/appywebphp-settings/src/Http/Middleware/Locale.php",
            "line": 23,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Appyweb\\AppywebphpSettings\\Http\\Middleware\\Locale",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
            "line": 21,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php",
            "line": 31,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
            "line": 21,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php",
            "line": 51,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\TrimStrings",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php",
            "line": 27,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Http\\Middleware\\ValidatePostSize",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php",
            "line": 110,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php",
            "line": 62,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Http\\Middleware\\HandleCors",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php",
            "line": 58,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Http\\Middleware\\TrustProxies",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 119,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
            "line": 176,
            "function": "then",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
            "line": 145,
            "function": "sendRequestThroughRouter",
            "class": "Illuminate\\Foundation\\Http\\Kernel",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 310,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Kernel",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 298,
            "function": "callLaravelOrLumenRoute",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 91,
            "function": "makeApiCall",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 44,
            "function": "makeResponseCall",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 35,
            "function": "makeResponseCallIfConditionsPass",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
            "line": 237,
            "function": "__invoke",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
            "line": 163,
            "function": "iterateThroughStrategies",
            "class": "Knuckles\\Scribe\\Extracting\\Extractor",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
            "line": 95,
            "function": "fetchResponses",
            "class": "Knuckles\\Scribe\\Extracting\\Extractor",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
            "line": 125,
            "function": "processRoute",
            "class": "Knuckles\\Scribe\\Extracting\\Extractor",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
            "line": 72,
            "function": "extractEndpointsInfoFromLaravelApp",
            "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
            "line": 50,
            "function": "extractEndpointsInfoAndWriteToDisk",
            "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Commands/GenerateDocumentation.php",
            "line": 53,
            "function": "get",
            "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
            "line": 36,
            "function": "handle",
            "class": "Knuckles\\Scribe\\Commands\\GenerateDocumentation",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Util.php",
            "line": 43,
            "function": "Illuminate\\Container\\{closure}",
            "class": "Illuminate\\Container\\BoundMethod",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
            "line": 95,
            "function": "unwrapIfClosure",
            "class": "Illuminate\\Container\\Util",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
            "line": 35,
            "function": "callBoundMethod",
            "class": "Illuminate\\Container\\BoundMethod",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 694,
            "function": "call",
            "class": "Illuminate\\Container\\BoundMethod",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Console/Command.php",
            "line": 213,
            "function": "call",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Command/Command.php",
            "line": 279,
            "function": "execute",
            "class": "Illuminate\\Console\\Command",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Console/Command.php",
            "line": 182,
            "function": "run",
            "class": "Symfony\\Component\\Console\\Command\\Command",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Application.php",
            "line": 1047,
            "function": "run",
            "class": "Illuminate\\Console\\Command",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Application.php",
            "line": 316,
            "function": "doRunCommand",
            "class": "Symfony\\Component\\Console\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Application.php",
            "line": 167,
            "function": "doRun",
            "class": "Symfony\\Component\\Console\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php",
            "line": 197,
            "function": "run",
            "class": "Symfony\\Component\\Console\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/artisan",
            "line": 35,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Console\\Kernel",
            "type": "->"
        }
    ]
}
 

Request      

GET api/v1/payment/blocked-balance/upcoming

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Withdraw released balances (manual withdrawal) This processes the bank transfer via Stripe first, then withdraws from wallet only on success

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/payment/blocked-balance/withdraw" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/blocked-balance/withdraw"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/blocked-balance/withdraw';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/blocked-balance/withdraw'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers)
response.json()

Request      

POST api/v1/payment/blocked-balance/withdraw

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/v1/payment/payout/setup

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/payment/payout/setup" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/payout/setup"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/payout/setup';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/payout/setup'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers)
response.json()

Request      

POST api/v1/payment/payout/setup

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Process a withdrawal request

Sequence of operations:

  1. Validate request data (amount > 0, <= balance, >= minimum)
  2. Execute Stripe transfer
  3. Process Stripe response (success/error)
  4. Register withdrawal in DB
  5. Deduct amount from user wallet
  6. Return new balance
Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/payment/payout/withdraw" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"amount\": 184
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/payout/withdraw"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "amount": 184
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/payout/withdraw';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'amount' => 184,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/payout/withdraw'
payload = {
    "amount": 184
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/payment/payout/withdraw

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

amount   number  optional  

El campo value debe ser al menos 300. Example: 184

GET api/v1/payment/payout/status

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/payment/payout/status" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/payout/status"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/payout/status';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/payout/status'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "$config must be a string or an array",
    "exception": "Stripe\\Exception\\InvalidArgumentException",
    "file": "/usr/src/app/vendor/stripe/stripe-php/lib/BaseStripeClient.php",
    "line": 80,
    "trace": [
        {
            "file": "/usr/src/app/Modules/Payment/Services/StripePayoutService.php",
            "line": 23,
            "function": "__construct",
            "class": "Stripe\\BaseStripeClient",
            "type": "->"
        },
        {
            "function": "__construct",
            "class": "Modules\\Payment\\Services\\StripePayoutService",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 989,
            "function": "newInstanceArgs",
            "class": "ReflectionClass",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 819,
            "function": "build",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
            "line": 1048,
            "function": "resolve",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 755,
            "function": "resolve",
            "class": "Illuminate\\Foundation\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
            "line": 1030,
            "function": "make",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 1118,
            "function": "make",
            "class": "Illuminate\\Foundation\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 1028,
            "function": "resolveClass",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 979,
            "function": "resolveDependencies",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 819,
            "function": "build",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
            "line": 1048,
            "function": "resolve",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 755,
            "function": "resolve",
            "class": "Illuminate\\Foundation\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
            "line": 1030,
            "function": "make",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
            "line": 284,
            "function": "make",
            "class": "Illuminate\\Foundation\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
            "line": 1124,
            "function": "getController",
            "class": "Illuminate\\Routing\\Route",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
            "line": 1053,
            "function": "controllerMiddleware",
            "class": "Illuminate\\Routing\\Route",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 820,
            "function": "gatherMiddleware",
            "class": "Illuminate\\Routing\\Route",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 802,
            "function": "gatherRouteMiddleware",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 786,
            "function": "runRouteWithinStack",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 750,
            "function": "runRoute",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 739,
            "function": "dispatchToRoute",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
            "line": 201,
            "function": "dispatch",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 144,
            "function": "Illuminate\\Foundation\\Http\\{closure}",
            "class": "Illuminate\\Foundation\\Http\\Kernel",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/appyweb/appywebphp-settings/src/Http/Middleware/Locale.php",
            "line": 23,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Appyweb\\AppywebphpSettings\\Http\\Middleware\\Locale",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
            "line": 21,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php",
            "line": 31,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
            "line": 21,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php",
            "line": 51,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\TrimStrings",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php",
            "line": 27,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Http\\Middleware\\ValidatePostSize",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php",
            "line": 110,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php",
            "line": 62,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Http\\Middleware\\HandleCors",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php",
            "line": 58,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Http\\Middleware\\TrustProxies",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 119,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
            "line": 176,
            "function": "then",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
            "line": 145,
            "function": "sendRequestThroughRouter",
            "class": "Illuminate\\Foundation\\Http\\Kernel",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 310,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Kernel",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 298,
            "function": "callLaravelOrLumenRoute",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 91,
            "function": "makeApiCall",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 44,
            "function": "makeResponseCall",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 35,
            "function": "makeResponseCallIfConditionsPass",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
            "line": 237,
            "function": "__invoke",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
            "line": 163,
            "function": "iterateThroughStrategies",
            "class": "Knuckles\\Scribe\\Extracting\\Extractor",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
            "line": 95,
            "function": "fetchResponses",
            "class": "Knuckles\\Scribe\\Extracting\\Extractor",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
            "line": 125,
            "function": "processRoute",
            "class": "Knuckles\\Scribe\\Extracting\\Extractor",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
            "line": 72,
            "function": "extractEndpointsInfoFromLaravelApp",
            "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
            "line": 50,
            "function": "extractEndpointsInfoAndWriteToDisk",
            "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Commands/GenerateDocumentation.php",
            "line": 53,
            "function": "get",
            "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
            "line": 36,
            "function": "handle",
            "class": "Knuckles\\Scribe\\Commands\\GenerateDocumentation",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Util.php",
            "line": 43,
            "function": "Illuminate\\Container\\{closure}",
            "class": "Illuminate\\Container\\BoundMethod",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
            "line": 95,
            "function": "unwrapIfClosure",
            "class": "Illuminate\\Container\\Util",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
            "line": 35,
            "function": "callBoundMethod",
            "class": "Illuminate\\Container\\BoundMethod",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 694,
            "function": "call",
            "class": "Illuminate\\Container\\BoundMethod",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Console/Command.php",
            "line": 213,
            "function": "call",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Command/Command.php",
            "line": 279,
            "function": "execute",
            "class": "Illuminate\\Console\\Command",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Console/Command.php",
            "line": 182,
            "function": "run",
            "class": "Symfony\\Component\\Console\\Command\\Command",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Application.php",
            "line": 1047,
            "function": "run",
            "class": "Illuminate\\Console\\Command",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Application.php",
            "line": 316,
            "function": "doRunCommand",
            "class": "Symfony\\Component\\Console\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Application.php",
            "line": 167,
            "function": "doRun",
            "class": "Symfony\\Component\\Console\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php",
            "line": 197,
            "function": "run",
            "class": "Symfony\\Component\\Console\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/artisan",
            "line": 35,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Console\\Kernel",
            "type": "->"
        }
    ]
}
 

Request      

GET api/v1/payment/payout/status

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Approve a reservation and capture the payment

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/reservations/sapiente/approve" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/reservations/sapiente/approve"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reservations/sapiente/approve';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reservations/sapiente/approve'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers)
response.json()

Request      

POST api/v1/reservations/{id}/approve

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the reservation. Example: sapiente

Reject a reservation and cancel the payment

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/reservations/aut/reject" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"reason\": \"xkmoh\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/reservations/aut/reject"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "reason": "xkmoh"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reservations/aut/reject';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'reason' => 'xkmoh',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reservations/aut/reject'
payload = {
    "reason": "xkmoh"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/reservations/{id}/reject

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the reservation. Example: aut

Body Parameters

reason   string   

El campo value no debe contener más de 500 caracteres. Example: xkmoh

Confirmar una reserva y capturar el pago

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/reservations/quo/confirm-payment" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/reservations/quo/confirm-payment"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reservations/quo/confirm-payment';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reservations/quo/confirm-payment'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers)
response.json()

Request      

POST api/v1/reservations/{id}/confirm-payment

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the reservation. Example: quo

Rechazar una reserva y cancelar el pago autorizado

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/reservations/enim/reject-payment" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/reservations/enim/reject-payment"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reservations/enim/reject-payment';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reservations/enim/reject-payment'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers)
response.json()

Request      

POST api/v1/reservations/{id}/reject-payment

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the reservation. Example: enim

Get filtered materials for public search (no auth required)

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/materials-class/filtered/list" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/materials-class/filtered/list"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/materials-class/filtered/list';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/materials-class/filtered/list'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 57
access-control-allow-origin: *
 

{
    "message": "Modules\\Supplier\\Http\\Controllers\\MaterialClassController::indexFiltered(): Return value must be of type Illuminate\\Http\\JsonResponse, Symfony\\Component\\HttpFoundation\\StreamedJsonResponse returned",
    "exception": "TypeError",
    "file": "/usr/src/app/Modules/Supplier/Http/Controllers/MaterialClassController.php",
    "line": 75,
    "trace": [
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Controller.php",
            "line": 54,
            "function": "indexFiltered",
            "class": "Modules\\Supplier\\Http\\Controllers\\MaterialClassController",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php",
            "line": 43,
            "function": "callAction",
            "class": "Illuminate\\Routing\\Controller",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
            "line": 265,
            "function": "dispatch",
            "class": "Illuminate\\Routing\\ControllerDispatcher",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
            "line": 211,
            "function": "runController",
            "class": "Illuminate\\Routing\\Route",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 808,
            "function": "run",
            "class": "Illuminate\\Routing\\Route",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 144,
            "function": "Illuminate\\Routing\\{closure}",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php",
            "line": 51,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Routing\\Middleware\\SubstituteBindings",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php",
            "line": 161,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php",
            "line": 127,
            "function": "handleRequest",
            "class": "Illuminate\\Routing\\Middleware\\ThrottleRequests",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php",
            "line": 89,
            "function": "handleRequestUsingNamedLimiter",
            "class": "Illuminate\\Routing\\Middleware\\ThrottleRequests",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Routing\\Middleware\\ThrottleRequests",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/sanctum/src/Http/Middleware/EnsureFrontendRequestsAreStateful.php",
            "line": 25,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 144,
            "function": "Laravel\\Sanctum\\Http\\Middleware\\{closure}",
            "class": "Laravel\\Sanctum\\Http\\Middleware\\EnsureFrontendRequestsAreStateful",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 119,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/sanctum/src/Http/Middleware/EnsureFrontendRequestsAreStateful.php",
            "line": 24,
            "function": "then",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Laravel\\Sanctum\\Http\\Middleware\\EnsureFrontendRequestsAreStateful",
            "type": "->"
        },
        {
            "file": "/usr/src/app/app/Http/Middleware/AcceptJson.php",
            "line": 20,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "App\\Http\\Middleware\\AcceptJson",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/appyweb/appywebphp-settings/src/Http/Middleware/JsonResponse.php",
            "line": 20,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Appyweb\\AppywebphpSettings\\Http\\Middleware\\JsonResponse",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 119,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 807,
            "function": "then",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 786,
            "function": "runRouteWithinStack",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 750,
            "function": "runRoute",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 739,
            "function": "dispatchToRoute",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
            "line": 201,
            "function": "dispatch",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 144,
            "function": "Illuminate\\Foundation\\Http\\{closure}",
            "class": "Illuminate\\Foundation\\Http\\Kernel",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/appyweb/appywebphp-settings/src/Http/Middleware/Locale.php",
            "line": 23,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Appyweb\\AppywebphpSettings\\Http\\Middleware\\Locale",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
            "line": 21,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php",
            "line": 31,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
            "line": 21,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php",
            "line": 51,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\TrimStrings",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php",
            "line": 27,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Http\\Middleware\\ValidatePostSize",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php",
            "line": 110,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php",
            "line": 62,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Http\\Middleware\\HandleCors",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php",
            "line": 58,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Http\\Middleware\\TrustProxies",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 119,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
            "line": 176,
            "function": "then",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
            "line": 145,
            "function": "sendRequestThroughRouter",
            "class": "Illuminate\\Foundation\\Http\\Kernel",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 310,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Kernel",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 298,
            "function": "callLaravelOrLumenRoute",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 91,
            "function": "makeApiCall",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 44,
            "function": "makeResponseCall",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 35,
            "function": "makeResponseCallIfConditionsPass",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
            "line": 237,
            "function": "__invoke",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
            "line": 163,
            "function": "iterateThroughStrategies",
            "class": "Knuckles\\Scribe\\Extracting\\Extractor",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
            "line": 95,
            "function": "fetchResponses",
            "class": "Knuckles\\Scribe\\Extracting\\Extractor",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
            "line": 125,
            "function": "processRoute",
            "class": "Knuckles\\Scribe\\Extracting\\Extractor",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
            "line": 72,
            "function": "extractEndpointsInfoFromLaravelApp",
            "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
            "line": 50,
            "function": "extractEndpointsInfoAndWriteToDisk",
            "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Commands/GenerateDocumentation.php",
            "line": 53,
            "function": "get",
            "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
            "line": 36,
            "function": "handle",
            "class": "Knuckles\\Scribe\\Commands\\GenerateDocumentation",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Util.php",
            "line": 43,
            "function": "Illuminate\\Container\\{closure}",
            "class": "Illuminate\\Container\\BoundMethod",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
            "line": 95,
            "function": "unwrapIfClosure",
            "class": "Illuminate\\Container\\Util",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
            "line": 35,
            "function": "callBoundMethod",
            "class": "Illuminate\\Container\\BoundMethod",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 694,
            "function": "call",
            "class": "Illuminate\\Container\\BoundMethod",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Console/Command.php",
            "line": 213,
            "function": "call",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Command/Command.php",
            "line": 279,
            "function": "execute",
            "class": "Illuminate\\Console\\Command",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Console/Command.php",
            "line": 182,
            "function": "run",
            "class": "Symfony\\Component\\Console\\Command\\Command",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Application.php",
            "line": 1047,
            "function": "run",
            "class": "Illuminate\\Console\\Command",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Application.php",
            "line": 316,
            "function": "doRunCommand",
            "class": "Symfony\\Component\\Console\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Application.php",
            "line": 167,
            "function": "doRun",
            "class": "Symfony\\Component\\Console\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php",
            "line": 197,
            "function": "run",
            "class": "Symfony\\Component\\Console\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/artisan",
            "line": 35,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Console\\Kernel",
            "type": "->"
        }
    ]
}
 

Request      

GET api/v1/materials-class/filtered/list

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Get material by ID

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/materials-class/explicabo" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/materials-class/explicabo"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/materials-class/explicabo';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/materials-class/explicabo'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 56
access-control-allow-origin: *
 

{
    "message": "Modules\\Supplier\\Http\\Controllers\\MaterialClassController::show(): Argument #1 ($id) must be of type int, string given, called in /usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Controller.php on line 54",
    "exception": "TypeError",
    "file": "/usr/src/app/Modules/Supplier/Http/Controllers/MaterialClassController.php",
    "line": 82,
    "trace": [
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Controller.php",
            "line": 54,
            "function": "show",
            "class": "Modules\\Supplier\\Http\\Controllers\\MaterialClassController",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php",
            "line": 43,
            "function": "callAction",
            "class": "Illuminate\\Routing\\Controller",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
            "line": 265,
            "function": "dispatch",
            "class": "Illuminate\\Routing\\ControllerDispatcher",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
            "line": 211,
            "function": "runController",
            "class": "Illuminate\\Routing\\Route",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 808,
            "function": "run",
            "class": "Illuminate\\Routing\\Route",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 144,
            "function": "Illuminate\\Routing\\{closure}",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php",
            "line": 51,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Routing\\Middleware\\SubstituteBindings",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php",
            "line": 161,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php",
            "line": 127,
            "function": "handleRequest",
            "class": "Illuminate\\Routing\\Middleware\\ThrottleRequests",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php",
            "line": 89,
            "function": "handleRequestUsingNamedLimiter",
            "class": "Illuminate\\Routing\\Middleware\\ThrottleRequests",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Routing\\Middleware\\ThrottleRequests",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/sanctum/src/Http/Middleware/EnsureFrontendRequestsAreStateful.php",
            "line": 25,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 144,
            "function": "Laravel\\Sanctum\\Http\\Middleware\\{closure}",
            "class": "Laravel\\Sanctum\\Http\\Middleware\\EnsureFrontendRequestsAreStateful",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 119,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/sanctum/src/Http/Middleware/EnsureFrontendRequestsAreStateful.php",
            "line": 24,
            "function": "then",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Laravel\\Sanctum\\Http\\Middleware\\EnsureFrontendRequestsAreStateful",
            "type": "->"
        },
        {
            "file": "/usr/src/app/app/Http/Middleware/AcceptJson.php",
            "line": 20,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "App\\Http\\Middleware\\AcceptJson",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/appyweb/appywebphp-settings/src/Http/Middleware/JsonResponse.php",
            "line": 20,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Appyweb\\AppywebphpSettings\\Http\\Middleware\\JsonResponse",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 119,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 807,
            "function": "then",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 786,
            "function": "runRouteWithinStack",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 750,
            "function": "runRoute",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 739,
            "function": "dispatchToRoute",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
            "line": 201,
            "function": "dispatch",
            "class": "Illuminate\\Routing\\Router",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 144,
            "function": "Illuminate\\Foundation\\Http\\{closure}",
            "class": "Illuminate\\Foundation\\Http\\Kernel",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/appyweb/appywebphp-settings/src/Http/Middleware/Locale.php",
            "line": 23,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Appyweb\\AppywebphpSettings\\Http\\Middleware\\Locale",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
            "line": 21,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php",
            "line": 31,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
            "line": 21,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php",
            "line": 51,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\TrimStrings",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php",
            "line": 27,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Http\\Middleware\\ValidatePostSize",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php",
            "line": 110,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php",
            "line": 62,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Http\\Middleware\\HandleCors",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php",
            "line": 58,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 183,
            "function": "handle",
            "class": "Illuminate\\Http\\Middleware\\TrustProxies",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 119,
            "function": "Illuminate\\Pipeline\\{closure}",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
            "line": 176,
            "function": "then",
            "class": "Illuminate\\Pipeline\\Pipeline",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
            "line": 145,
            "function": "sendRequestThroughRouter",
            "class": "Illuminate\\Foundation\\Http\\Kernel",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 310,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Http\\Kernel",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 298,
            "function": "callLaravelOrLumenRoute",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 91,
            "function": "makeApiCall",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 44,
            "function": "makeResponseCall",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
            "line": 35,
            "function": "makeResponseCallIfConditionsPass",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
            "line": 237,
            "function": "__invoke",
            "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
            "line": 163,
            "function": "iterateThroughStrategies",
            "class": "Knuckles\\Scribe\\Extracting\\Extractor",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
            "line": 95,
            "function": "fetchResponses",
            "class": "Knuckles\\Scribe\\Extracting\\Extractor",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
            "line": 125,
            "function": "processRoute",
            "class": "Knuckles\\Scribe\\Extracting\\Extractor",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
            "line": 72,
            "function": "extractEndpointsInfoFromLaravelApp",
            "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
            "line": 50,
            "function": "extractEndpointsInfoAndWriteToDisk",
            "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/knuckleswtf/scribe/src/Commands/GenerateDocumentation.php",
            "line": 53,
            "function": "get",
            "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
            "line": 36,
            "function": "handle",
            "class": "Knuckles\\Scribe\\Commands\\GenerateDocumentation",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Util.php",
            "line": 43,
            "function": "Illuminate\\Container\\{closure}",
            "class": "Illuminate\\Container\\BoundMethod",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
            "line": 95,
            "function": "unwrapIfClosure",
            "class": "Illuminate\\Container\\Util",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
            "line": 35,
            "function": "callBoundMethod",
            "class": "Illuminate\\Container\\BoundMethod",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 694,
            "function": "call",
            "class": "Illuminate\\Container\\BoundMethod",
            "type": "::"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Console/Command.php",
            "line": 213,
            "function": "call",
            "class": "Illuminate\\Container\\Container",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Command/Command.php",
            "line": 279,
            "function": "execute",
            "class": "Illuminate\\Console\\Command",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Console/Command.php",
            "line": 182,
            "function": "run",
            "class": "Symfony\\Component\\Console\\Command\\Command",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Application.php",
            "line": 1047,
            "function": "run",
            "class": "Illuminate\\Console\\Command",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Application.php",
            "line": 316,
            "function": "doRunCommand",
            "class": "Symfony\\Component\\Console\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/symfony/console/Application.php",
            "line": 167,
            "function": "doRun",
            "class": "Symfony\\Component\\Console\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php",
            "line": 197,
            "function": "run",
            "class": "Symfony\\Component\\Console\\Application",
            "type": "->"
        },
        {
            "file": "/usr/src/app/artisan",
            "line": 35,
            "function": "handle",
            "class": "Illuminate\\Foundation\\Console\\Kernel",
            "type": "->"
        }
    ]
}
 

Request      

GET api/v1/materials-class/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the materials class. Example: explicabo

Check availability for a material

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/material-reservations/check-availability" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"material_class_id\": 12,
    \"start_date\": \"2026-02-18T20:34:40\",
    \"end_date\": \"2094-11-14\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/material-reservations/check-availability"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "material_class_id": 12,
    "start_date": "2026-02-18T20:34:40",
    "end_date": "2094-11-14"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/material-reservations/check-availability';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'material_class_id' => 12,
            'start_date' => '2026-02-18T20:34:40',
            'end_date' => '2094-11-14',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/material-reservations/check-availability'
payload = {
    "material_class_id": 12,
    "start_date": "2026-02-18T20:34:40",
    "end_date": "2094-11-14"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/material-reservations/check-availability

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

material_class_id   integer   

The id of an existing record in the materials_class table. Example: 12

start_date   string   

El campo value no corresponde con una fecha válida. Example: 2026-02-18T20:34:40

end_date   string   

El campo value no corresponde con una fecha válida. El campo value debe ser una fecha posterior a start_date. Example: 2094-11-14

Get availability for a supplier on a specific date

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/suppliers/sint/availability" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"date\": \"2026-02-18\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/sint/availability"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "date": "2026-02-18"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/sint/availability';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'date' => '2026-02-18',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/sint/availability'
payload = {
    "date": "2026-02-18"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/suppliers/{supplierId}/availability

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

supplierId   string   

Example: sint

Body Parameters

date   string  optional  

Must be a valid date in the format Y-m-d. Example: 2026-02-18

Add availability for a specific time range This creates an available slot for the supplier

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/suppliers/quis/availability" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"date\": \"2026-02-18\",
    \"start_time\": \"20:34\",
    \"end_time\": \"2034-07-20\",
    \"class_id\": 16,
    \"price\": 8
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/quis/availability"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "date": "2026-02-18",
    "start_time": "20:34",
    "end_time": "2034-07-20",
    "class_id": 16,
    "price": 8
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/quis/availability';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'date' => '2026-02-18',
            'start_time' => '20:34',
            'end_time' => '2034-07-20',
            'class_id' => 16,
            'price' => 8,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/quis/availability'
payload = {
    "date": "2026-02-18",
    "start_time": "20:34",
    "end_time": "2034-07-20",
    "class_id": 16,
    "price": 8
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/suppliers/{supplierId}/availability

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

supplierId   string   

Example: quis

Body Parameters

date   string   

Must be a valid date in the format Y-m-d. Example: 2026-02-18

start_time   string   

Must be a valid date in the format H:i. Example: 20:34

end_time   string   

Must be a valid date in the format H:i. El campo value debe ser una fecha posterior a start_time. Example: 2034-07-20

class_id   integer  optional  

The id of an existing record in the class_infos table. Example: 16

price   number  optional  

El campo value debe ser al menos 0. Example: 8

Get availability slots for a supplier on a specific date

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/suppliers/inventore/availability/slots" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"date\": \"2026-02-18\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/inventore/availability/slots"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "date": "2026-02-18"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/inventore/availability/slots';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'date' => '2026-02-18',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/inventore/availability/slots'
payload = {
    "date": "2026-02-18"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/suppliers/{supplierId}/availability/slots

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

supplierId   string   

Example: inventore

Body Parameters

date   string   

Must be a valid date in the format Y-m-d. Example: 2026-02-18

Get availability slots for a supplier in a date range

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/suppliers/explicabo/availability/slots/range" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"start_date\": \"2026-02-18\",
    \"end_date\": \"2123-05-31\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/explicabo/availability/slots/range"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "start_date": "2026-02-18",
    "end_date": "2123-05-31"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/explicabo/availability/slots/range';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'start_date' => '2026-02-18',
            'end_date' => '2123-05-31',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/explicabo/availability/slots/range'
payload = {
    "start_date": "2026-02-18",
    "end_date": "2123-05-31"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/suppliers/{supplierId}/availability/slots/range

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

supplierId   string   

Example: explicabo

Body Parameters

start_date   string   

Must be a valid date in the format Y-m-d. Example: 2026-02-18

end_date   string   

Must be a valid date in the format Y-m-d. El campo value debe ser una fecha posterior o igual a start_date. Example: 2123-05-31

Create class schedules in bulk for a supplier activity.

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/suppliers/et/availability/bulk-schedules" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"supplier_id\": 9,
    \"class_id\": 2,
    \"divide_blocks\": false,
    \"schedules\": [
        {
            \"start_date\": \"2026-02-18T20:34:40\",
            \"end_date\": \"2026-02-18T20:34:40\",
            \"amount\": 257011.944
        }
    ]
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/et/availability/bulk-schedules"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "supplier_id": 9,
    "class_id": 2,
    "divide_blocks": false,
    "schedules": [
        {
            "start_date": "2026-02-18T20:34:40",
            "end_date": "2026-02-18T20:34:40",
            "amount": 257011.944
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/et/availability/bulk-schedules';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'supplier_id' => 9,
            'class_id' => 2,
            'divide_blocks' => false,
            'schedules' => [
                [
                    'start_date' => '2026-02-18T20:34:40',
                    'end_date' => '2026-02-18T20:34:40',
                    'amount' => 257011.944,
                ],
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/et/availability/bulk-schedules'
payload = {
    "supplier_id": 9,
    "class_id": 2,
    "divide_blocks": false,
    "schedules": [
        {
            "start_date": "2026-02-18T20:34:40",
            "end_date": "2026-02-18T20:34:40",
            "amount": 257011.944
        }
    ]
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/suppliers/{supplierId}/availability/bulk-schedules

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

supplierId   string   

Example: et

Body Parameters

supplier_id   integer  optional  

The id of an existing record in the suppliers table. Example: 9

class_id   integer   

The id of an existing record in the class_infos table. Example: 2

divide_blocks   boolean  optional  

Example: false

schedules   object[]   

El campo value debe contener al menos 1 elementos.

start_date   string   

El campo value no corresponde con una fecha válida. Example: 2026-02-18T20:34:40

end_date   string   

El campo value no corresponde con una fecha válida. Example: 2026-02-18T20:34:40

amount   number   

Example: 257011.944

Paginated list of class schedules for a supplier activity.

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/suppliers/qui/availability/bulk-schedules" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"class_id\": 4,
    \"date\": \"2026-02-18\",
    \"per_page\": 5,
    \"page\": 1
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/qui/availability/bulk-schedules"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "class_id": 4,
    "date": "2026-02-18",
    "per_page": 5,
    "page": 1
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/qui/availability/bulk-schedules';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'class_id' => 4,
            'date' => '2026-02-18',
            'per_page' => 5,
            'page' => 1,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/qui/availability/bulk-schedules'
payload = {
    "class_id": 4,
    "date": "2026-02-18",
    "per_page": 5,
    "page": 1
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/suppliers/{supplierId}/availability/bulk-schedules

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

supplierId   string   

Example: qui

Body Parameters

class_id   integer   

The id of an existing record in the class_infos table. Example: 4

date   string  optional  

Must be a valid date in the format Y-m-d. Example: 2026-02-18

per_page   integer  optional  

El campo value debe ser al menos 1. El campo value no debe ser mayor a 100. Example: 5

page   integer  optional  

El campo value debe ser al menos 1. Example: 1

POST api/v1/suppliers/{supplierId}/unavailability

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/suppliers/nesciunt/unavailability" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"supplier_id\": 12,
    \"date\": \"2026-02-18\",
    \"start_time\": \"20:34\",
    \"end_time\": \"2058-02-04\",
    \"reason\": \"fmdt\",
    \"notes\": \"aut\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/nesciunt/unavailability"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "supplier_id": 12,
    "date": "2026-02-18",
    "start_time": "20:34",
    "end_time": "2058-02-04",
    "reason": "fmdt",
    "notes": "aut"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/nesciunt/unavailability';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'supplier_id' => 12,
            'date' => '2026-02-18',
            'start_time' => '20:34',
            'end_time' => '2058-02-04',
            'reason' => 'fmdt',
            'notes' => 'aut',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/nesciunt/unavailability'
payload = {
    "supplier_id": 12,
    "date": "2026-02-18",
    "start_time": "20:34",
    "end_time": "2058-02-04",
    "reason": "fmdt",
    "notes": "aut"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/suppliers/{supplierId}/unavailability

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

supplierId   string   

Example: nesciunt

Body Parameters

supplier_id   integer   

The id of an existing record in the suppliers table. Example: 12

date   string   

Must be a valid date in the format Y-m-d. Example: 2026-02-18

start_time   string   

Must be a valid date in the format H:i. Example: 20:34

end_time   string   

Must be a valid date in the format H:i. El campo value debe ser una fecha posterior a start_time. Example: 2058-02-04

reason   string  optional  

El campo value no debe contener más de 255 caracteres. Example: fmdt

notes   string  optional  

Example: aut

PUT api/v1/suppliers/{supplierId}/unavailability/{id}

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/suppliers/aliquid/unavailability/dolores" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"supplier_id\": 18,
    \"date\": \"2026-02-18\",
    \"start_time\": \"20:34\",
    \"end_time\": \"2050-05-19\",
    \"reason\": \"woclqihpjdkgnpbwwayscsqi\",
    \"notes\": \"eligendi\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/aliquid/unavailability/dolores"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "supplier_id": 18,
    "date": "2026-02-18",
    "start_time": "20:34",
    "end_time": "2050-05-19",
    "reason": "woclqihpjdkgnpbwwayscsqi",
    "notes": "eligendi"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/aliquid/unavailability/dolores';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'supplier_id' => 18,
            'date' => '2026-02-18',
            'start_time' => '20:34',
            'end_time' => '2050-05-19',
            'reason' => 'woclqihpjdkgnpbwwayscsqi',
            'notes' => 'eligendi',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/aliquid/unavailability/dolores'
payload = {
    "supplier_id": 18,
    "date": "2026-02-18",
    "start_time": "20:34",
    "end_time": "2050-05-19",
    "reason": "woclqihpjdkgnpbwwayscsqi",
    "notes": "eligendi"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()

Request      

PUT api/v1/suppliers/{supplierId}/unavailability/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

supplierId   string   

Example: aliquid

id   string   

The ID of the unavailability. Example: dolores

Body Parameters

supplier_id   integer   

The id of an existing record in the suppliers table. Example: 18

date   string   

Must be a valid date in the format Y-m-d. Example: 2026-02-18

start_time   string   

Must be a valid date in the format H:i. Example: 20:34

end_time   string   

Must be a valid date in the format H:i. El campo value debe ser una fecha posterior a start_time. Example: 2050-05-19

reason   string  optional  

El campo value no debe contener más de 255 caracteres. Example: woclqihpjdkgnpbwwayscsqi

notes   string  optional  

Example: eligendi

DELETE api/v1/suppliers/{supplierId}/unavailability/{id}

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/suppliers/quia/unavailability/quaerat" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/quia/unavailability/quaerat"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/quia/unavailability/quaerat';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/quia/unavailability/quaerat'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Request      

DELETE api/v1/suppliers/{supplierId}/unavailability/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

supplierId   string   

Example: quia

id   string   

The ID of the unavailability. Example: quaerat

GET api/v1/suppliers/{supplierId}/unavailability/date

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/suppliers/consequuntur/unavailability/date" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"date\": \"2026-02-18\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/consequuntur/unavailability/date"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "date": "2026-02-18"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/consequuntur/unavailability/date';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'date' => '2026-02-18',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/consequuntur/unavailability/date'
payload = {
    "date": "2026-02-18"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/suppliers/{supplierId}/unavailability/date

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

supplierId   string   

Example: consequuntur

Body Parameters

date   string   

Must be a valid date in the format Y-m-d. Example: 2026-02-18

GET api/v1/suppliers/{supplierId}/unavailability/range

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/suppliers/veniam/unavailability/range" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"start_date\": \"2026-02-18\",
    \"end_date\": \"2123-08-20\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/veniam/unavailability/range"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "start_date": "2026-02-18",
    "end_date": "2123-08-20"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/veniam/unavailability/range';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'start_date' => '2026-02-18',
            'end_date' => '2123-08-20',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/veniam/unavailability/range'
payload = {
    "start_date": "2026-02-18",
    "end_date": "2123-08-20"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/suppliers/{supplierId}/unavailability/range

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

supplierId   string   

Example: veniam

Body Parameters

start_date   string   

Must be a valid date in the format Y-m-d. Example: 2026-02-18

end_date   string   

Must be a valid date in the format Y-m-d. El campo value debe ser una fecha posterior o igual a start_date. Example: 2123-08-20

Block full day for supplier Creates unavailability blocks for the entire working day

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/suppliers/eos/unavailability/block-full-day" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"date\": \"2043-06-04\",
    \"reason\": \"hrhczatpzthsvqhheijr\",
    \"notes\": \"dicta\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/eos/unavailability/block-full-day"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "date": "2043-06-04",
    "reason": "hrhczatpzthsvqhheijr",
    "notes": "dicta"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/eos/unavailability/block-full-day';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'date' => '2043-06-04',
            'reason' => 'hrhczatpzthsvqhheijr',
            'notes' => 'dicta',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/eos/unavailability/block-full-day'
payload = {
    "date": "2043-06-04",
    "reason": "hrhczatpzthsvqhheijr",
    "notes": "dicta"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/suppliers/{supplierId}/unavailability/block-full-day

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

supplierId   string   

Example: eos

Body Parameters

date   string   

Must be a valid date in the format Y-m-d. El campo value debe ser una fecha posterior o igual a today. Example: 2043-06-04

reason   string  optional  

El campo value no debe contener más de 255 caracteres. Example: hrhczatpzthsvqhheijr

notes   string  optional  

Example: dicta

Unblock slot (removes the unavailability block)

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/suppliers/ad/unavailability/corrupti/unblock" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/ad/unavailability/corrupti/unblock"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/ad/unavailability/corrupti/unblock';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/ad/unavailability/corrupti/unblock'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers)
response.json()

Request      

POST api/v1/suppliers/{supplierId}/unavailability/{id}/unblock

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

supplierId   string   

Example: ad

id   string   

The ID of the unavailability. Example: corrupti

Convert blocked slot to available Removes the unavailability block and marks the slot as available

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/suppliers/pariatur/unavailability/corporis/make-available" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/pariatur/unavailability/corporis/make-available"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/pariatur/unavailability/corporis/make-available';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/pariatur/unavailability/corporis/make-available'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers)
response.json()

Request      

POST api/v1/suppliers/{supplierId}/unavailability/{id}/make-available

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

supplierId   string   

Example: pariatur

id   string   

The ID of the unavailability. Example: corporis

List user's reservations

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/material-reservations/my-reservations" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/material-reservations/my-reservations"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/material-reservations/my-reservations';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/material-reservations/my-reservations'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/material-reservations/my-reservations

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

List supplier's reservations

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/material-reservations/supplier-reservations" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/material-reservations/supplier-reservations"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/material-reservations/supplier-reservations';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/material-reservations/supplier-reservations'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/material-reservations/supplier-reservations

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Store a new reservation

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/material-reservations" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"material_class_id\": 11,
    \"start_date\": \"2087-09-21\",
    \"end_date\": \"2052-01-09\",
    \"notes\": \"zbkvfrb\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/material-reservations"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "material_class_id": 11,
    "start_date": "2087-09-21",
    "end_date": "2052-01-09",
    "notes": "zbkvfrb"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/material-reservations';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'material_class_id' => 11,
            'start_date' => '2087-09-21',
            'end_date' => '2052-01-09',
            'notes' => 'zbkvfrb',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/material-reservations'
payload = {
    "material_class_id": 11,
    "start_date": "2087-09-21",
    "end_date": "2052-01-09",
    "notes": "zbkvfrb"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/material-reservations

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

material_class_id   integer   

The id of an existing record in the materials_class table. Example: 11

start_date   string   

El campo value no corresponde con una fecha válida. El campo value debe ser una fecha posterior a now. Example: 2087-09-21

end_date   string   

El campo value no corresponde con una fecha válida. El campo value debe ser una fecha posterior a start_date. Example: 2052-01-09

notes   string  optional  

El campo value no debe contener más de 1000 caracteres. Example: zbkvfrb

metadata   object  optional  

Show a reservation

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/material-reservations/nostrum" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/material-reservations/nostrum"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/material-reservations/nostrum';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/material-reservations/nostrum'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/material-reservations/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the material reservation. Example: nostrum

Get detailed reservation information formatted for frontend

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/material-reservations/officiis/detail" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/material-reservations/officiis/detail"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/material-reservations/officiis/detail';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/material-reservations/officiis/detail'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/material-reservations/{id}/detail

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the material reservation. Example: officiis

Update a reservation

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/material-reservations/veritatis" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"start_date\": \"2026-02-18T20:34:40\",
    \"end_date\": \"2107-06-22\",
    \"status\": \"confirmed\",
    \"notes\": \"dcn\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/material-reservations/veritatis"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "start_date": "2026-02-18T20:34:40",
    "end_date": "2107-06-22",
    "status": "confirmed",
    "notes": "dcn"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/material-reservations/veritatis';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'start_date' => '2026-02-18T20:34:40',
            'end_date' => '2107-06-22',
            'status' => 'confirmed',
            'notes' => 'dcn',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/material-reservations/veritatis'
payload = {
    "start_date": "2026-02-18T20:34:40",
    "end_date": "2107-06-22",
    "status": "confirmed",
    "notes": "dcn"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()

Request      

PUT api/v1/material-reservations/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the material reservation. Example: veritatis

Body Parameters

start_date   string  optional  

El campo value no corresponde con una fecha válida. Example: 2026-02-18T20:34:40

end_date   string  optional  

El campo value no corresponde con una fecha válida. El campo value debe ser una fecha posterior a start_date. Example: 2107-06-22

status   string  optional  

Example: confirmed

Must be one of:
  • pending
  • confirmed
  • cancelled
  • completed
notes   string  optional  

El campo value no debe contener más de 1000 caracteres. Example: dcn

metadata   object  optional  

Cancel a reservation

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/material-reservations/dolorem/cancel" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/material-reservations/dolorem/cancel"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/material-reservations/dolorem/cancel';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/material-reservations/dolorem/cancel'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers)
response.json()

Request      

POST api/v1/material-reservations/{id}/cancel

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the material reservation. Example: dolorem

Approve a material reservation

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/material-reservations/quasi/approve" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/material-reservations/quasi/approve"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/material-reservations/quasi/approve';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/material-reservations/quasi/approve'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers)
response.json()

Request      

POST api/v1/material-reservations/{id}/approve

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the material reservation. Example: quasi

Reject a material reservation

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/material-reservations/qui/reject" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/material-reservations/qui/reject"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/material-reservations/qui/reject';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/material-reservations/qui/reject'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers)
response.json()

Request      

POST api/v1/material-reservations/{id}/reject

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the material reservation. Example: qui

Delete a reservation

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/material-reservations/aut" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/material-reservations/aut"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/material-reservations/aut';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/material-reservations/aut'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Request      

DELETE api/v1/material-reservations/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the material reservation. Example: aut

Get all suppliers with the Top Wildoow badge

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/admin/suppliers/badges/top-wildoow" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/suppliers/badges/top-wildoow"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/admin/suppliers/badges/top-wildoow';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/suppliers/badges/top-wildoow'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/admin/suppliers/badges/top-wildoow

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Toggle the Top Wildoow badge for a supplier

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/admin/suppliers/amet/badges/top-wildoow" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"is_top_wildoow\": false
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/suppliers/amet/badges/top-wildoow"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "is_top_wildoow": false
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/admin/suppliers/amet/badges/top-wildoow';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'is_top_wildoow' => false,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/suppliers/amet/badges/top-wildoow'
payload = {
    "is_top_wildoow": false
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/admin/suppliers/{supplierId}/badges/top-wildoow

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

supplierId   string   

Example: amet

Body Parameters

is_top_wildoow   boolean   

Example: false

Get all materials for admin

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/admin/materials-class" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/materials-class"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/admin/materials-class';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/materials-class'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/admin/materials-class

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Create new material (admin)

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/admin/materials-class" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "name=vvpky"\
    --form "description=Eum rem vitae fugiat nihil eos voluptatem suscipit."\
    --form "price=80"\
    --form "supplier_id=ipsa"\
    --form "main_image=@/tmp/php5J5ryw" \
    --form "additional_images[]=@/tmp/phpyFDMZn" 
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/materials-class"
);

const headers = {
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('name', 'vvpky');
body.append('description', 'Eum rem vitae fugiat nihil eos voluptatem suscipit.');
body.append('price', '80');
body.append('supplier_id', 'ipsa');
body.append('main_image', document.querySelector('input[name="main_image"]').files[0]);
body.append('additional_images[]', document.querySelector('input[name="additional_images[]"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/admin/materials-class';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'name',
                'contents' => 'vvpky'
            ],
            [
                'name' => 'description',
                'contents' => 'Eum rem vitae fugiat nihil eos voluptatem suscipit.'
            ],
            [
                'name' => 'price',
                'contents' => '80'
            ],
            [
                'name' => 'supplier_id',
                'contents' => 'ipsa'
            ],
            [
                'name' => 'main_image',
                'contents' => fopen('/tmp/php5J5ryw', 'r')
            ],
            [
                'name' => 'additional_images[]',
                'contents' => fopen('/tmp/phpyFDMZn', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/materials-class'
files = {
  'name': (None, 'vvpky'),
  'description': (None, 'Eum rem vitae fugiat nihil eos voluptatem suscipit.'),
  'price': (None, '80'),
  'supplier_id': (None, 'ipsa'),
  'main_image': open('/tmp/php5J5ryw', 'rb'),
  'additional_images[]': open('/tmp/phpyFDMZn', 'rb')}
payload = {
    "name": "vvpky",
    "description": "Eum rem vitae fugiat nihil eos voluptatem suscipit.",
    "price": 80,
    "supplier_id": "ipsa"
}
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, files=files)
response.json()

Request      

POST api/v1/admin/materials-class

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

name   string   

El campo value no debe contener más de 255 caracteres. Example: vvpky

description   string  optional  

Example: Eum rem vitae fugiat nihil eos voluptatem suscipit.

price   number   

El campo value debe ser al menos 0. Example: 80

supplier_id   string   

The id of an existing record in the suppliers table. Example: ipsa

activity_ids   string[]  optional  

The id of an existing record in the activities table.

main_image   file  optional  

El campo value debe ser una imagen. El archivo value no debe pesar más de 5120 kilobytes. Example: /tmp/php5J5ryw

additional_images   file[]  optional  

El campo value debe ser una imagen. El archivo value no debe pesar más de 5120 kilobytes.

Get material by ID

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/admin/materials-class/non" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/materials-class/non"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/admin/materials-class/non';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/materials-class/non'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/admin/materials-class/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the materials class. Example: non

Update material (admin)

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/admin/materials-class/occaecati" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "name=dayzlawcgeypz"\
    --form "description=Aut quam atque eaque earum laudantium quas."\
    --form "price=4"\
    --form "main_image=@/tmp/phpj08yfM" \
    --form "additional_images[]=@/tmp/phpBEAbVT" 
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/materials-class/occaecati"
);

const headers = {
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('name', 'dayzlawcgeypz');
body.append('description', 'Aut quam atque eaque earum laudantium quas.');
body.append('price', '4');
body.append('main_image', document.querySelector('input[name="main_image"]').files[0]);
body.append('additional_images[]', document.querySelector('input[name="additional_images[]"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/admin/materials-class/occaecati';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'name',
                'contents' => 'dayzlawcgeypz'
            ],
            [
                'name' => 'description',
                'contents' => 'Aut quam atque eaque earum laudantium quas.'
            ],
            [
                'name' => 'price',
                'contents' => '4'
            ],
            [
                'name' => 'main_image',
                'contents' => fopen('/tmp/phpj08yfM', 'r')
            ],
            [
                'name' => 'additional_images[]',
                'contents' => fopen('/tmp/phpBEAbVT', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/materials-class/occaecati'
files = {
  'name': (None, 'dayzlawcgeypz'),
  'description': (None, 'Aut quam atque eaque earum laudantium quas.'),
  'price': (None, '4'),
  'main_image': open('/tmp/phpj08yfM', 'rb'),
  'additional_images[]': open('/tmp/phpBEAbVT', 'rb')}
payload = {
    "name": "dayzlawcgeypz",
    "description": "Aut quam atque eaque earum laudantium quas.",
    "price": 4
}
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, files=files)
response.json()

Request      

POST api/v1/admin/materials-class/{id}

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the materials class. Example: occaecati

Body Parameters

name   string   

El campo value no debe contener más de 255 caracteres. Example: dayzlawcgeypz

description   string  optional  

Example: Aut quam atque eaque earum laudantium quas.

price   number   

El campo value debe ser al menos 0. Example: 4

activity_ids   string[]  optional  

The id of an existing record in the activities table.

main_image   file  optional  

El campo value debe ser una imagen. El archivo value no debe pesar más de 5120 kilobytes. Example: /tmp/phpj08yfM

additional_images   file[]  optional  

El campo value debe ser una imagen. El archivo value no debe pesar más de 5120 kilobytes.

Update material status (approve/reject)

Example request:
curl --request PATCH \
    "https://api.wildoow.com/api/v1/admin/materials-class/tempora/status" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"status\": \"review\",
    \"observation\": \"aut\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/materials-class/tempora/status"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "status": "review",
    "observation": "aut"
};

fetch(url, {
    method: "PATCH",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/admin/materials-class/tempora/status';
$response = $client->patch(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'status' => 'review',
            'observation' => 'aut',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/materials-class/tempora/status'
payload = {
    "status": "review",
    "observation": "aut"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()

Request      

PATCH api/v1/admin/materials-class/{id}/status

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the materials class. Example: tempora

Body Parameters

status   string   

Example: review

Must be one of:
  • approved
  • review
  • blocked
observation   string  optional  

Example: aut

Delete material (admin only)

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/admin/materials-class/earum" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/materials-class/earum"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/admin/materials-class/earum';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/materials-class/earum'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Request      

DELETE api/v1/admin/materials-class/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the materials class. Example: earum

List all reservations (admin only)

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/admin/material-reservations" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/material-reservations"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/admin/material-reservations';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/material-reservations'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/admin/material-reservations

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Get materials by supplier

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/suppliers/materials-class" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"status\": \"inactive\",
    \"search\": \"kjoanrxwk\",
    \"per_page\": 22,
    \"order_by\": \"price\",
    \"order_direction\": \"asc\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/materials-class"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "status": "inactive",
    "search": "kjoanrxwk",
    "per_page": 22,
    "order_by": "price",
    "order_direction": "asc"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/materials-class';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'status' => 'inactive',
            'search' => 'kjoanrxwk',
            'per_page' => 22,
            'order_by' => 'price',
            'order_direction' => 'asc',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/materials-class'
payload = {
    "status": "inactive",
    "search": "kjoanrxwk",
    "per_page": 22,
    "order_by": "price",
    "order_direction": "asc"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/suppliers/materials-class

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

status   string  optional  

Example: inactive

Must be one of:
  • active
  • inactive
search   string  optional  

El campo value no debe contener más de 255 caracteres. Example: kjoanrxwk

per_page   integer  optional  

El campo value debe ser al menos 1. El campo value no debe ser mayor a 100. Example: 22

order_by   string  optional  

Example: price

Must be one of:
  • name
  • price
  • created_at
  • code
order_direction   string  optional  

Example: asc

Must be one of:
  • asc
  • desc

Create new material

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/suppliers/materials-class" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "code=hddkgrbjpqnori"\
    --form "name=bqvnpsuzkxephuulvdcaufr"\
    --form "description=Omnis error dolores molestiae et."\
    --form "price=5"\
    --form "location=sxpyvww"\
    --form "location_lat=-89"\
    --form "location_lng=-180"\
    --form "location_address=rijhmddfywycqceh"\
    --form "meeting_point=nbr"\
    --form "activity_ids[]=2"\
    --form "images[][type]=main"\
    --form "main_image=@/tmp/phpymxHon" \
    --form "additional_images[]=@/tmp/phpUxsMS9" \
    --form "images[][image]=@/tmp/phpWcsKQQ" 
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/materials-class"
);

const headers = {
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('code', 'hddkgrbjpqnori');
body.append('name', 'bqvnpsuzkxephuulvdcaufr');
body.append('description', 'Omnis error dolores molestiae et.');
body.append('price', '5');
body.append('location', 'sxpyvww');
body.append('location_lat', '-89');
body.append('location_lng', '-180');
body.append('location_address', 'rijhmddfywycqceh');
body.append('meeting_point', 'nbr');
body.append('activity_ids[]', '2');
body.append('images[][type]', 'main');
body.append('main_image', document.querySelector('input[name="main_image"]').files[0]);
body.append('additional_images[]', document.querySelector('input[name="additional_images[]"]').files[0]);
body.append('images[][image]', document.querySelector('input[name="images[][image]"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/materials-class';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'code',
                'contents' => 'hddkgrbjpqnori'
            ],
            [
                'name' => 'name',
                'contents' => 'bqvnpsuzkxephuulvdcaufr'
            ],
            [
                'name' => 'description',
                'contents' => 'Omnis error dolores molestiae et.'
            ],
            [
                'name' => 'price',
                'contents' => '5'
            ],
            [
                'name' => 'location',
                'contents' => 'sxpyvww'
            ],
            [
                'name' => 'location_lat',
                'contents' => '-89'
            ],
            [
                'name' => 'location_lng',
                'contents' => '-180'
            ],
            [
                'name' => 'location_address',
                'contents' => 'rijhmddfywycqceh'
            ],
            [
                'name' => 'meeting_point',
                'contents' => 'nbr'
            ],
            [
                'name' => 'activity_ids[]',
                'contents' => '2'
            ],
            [
                'name' => 'images[][type]',
                'contents' => 'main'
            ],
            [
                'name' => 'main_image',
                'contents' => fopen('/tmp/phpymxHon', 'r')
            ],
            [
                'name' => 'additional_images[]',
                'contents' => fopen('/tmp/phpUxsMS9', 'r')
            ],
            [
                'name' => 'images[][image]',
                'contents' => fopen('/tmp/phpWcsKQQ', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/materials-class'
files = {
  'code': (None, 'hddkgrbjpqnori'),
  'name': (None, 'bqvnpsuzkxephuulvdcaufr'),
  'description': (None, 'Omnis error dolores molestiae et.'),
  'price': (None, '5'),
  'location': (None, 'sxpyvww'),
  'location_lat': (None, '-89'),
  'location_lng': (None, '-180'),
  'location_address': (None, 'rijhmddfywycqceh'),
  'meeting_point': (None, 'nbr'),
  'activity_ids[]': (None, '2'),
  'images[][type]': (None, 'main'),
  'main_image': open('/tmp/phpymxHon', 'rb'),
  'additional_images[]': open('/tmp/phpUxsMS9', 'rb'),
  'images[][image]': open('/tmp/phpWcsKQQ', 'rb')}
payload = {
    "code": "hddkgrbjpqnori",
    "name": "bqvnpsuzkxephuulvdcaufr",
    "description": "Omnis error dolores molestiae et.",
    "price": 5,
    "location": "sxpyvww",
    "location_lat": -89,
    "location_lng": -180,
    "location_address": "rijhmddfywycqceh",
    "meeting_point": "nbr",
    "activity_ids": [
        2
    ],
    "images": [
        {
            "type": "main"
        }
    ]
}
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, files=files)
response.json()

Request      

POST api/v1/suppliers/materials-class

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

code   string  optional  

El campo value no debe contener más de 255 caracteres. Example: hddkgrbjpqnori

name   string   

El campo value no debe contener más de 255 caracteres. Example: bqvnpsuzkxephuulvdcaufr

description   string  optional  

Example: Omnis error dolores molestiae et.

price   number   

El campo value debe ser al menos 0. Example: 5

location   string  optional  

El campo value no debe contener más de 500 caracteres. Example: sxpyvww

location_lat   number  optional  

El campo value debe ser un valor entre -90 y 90. Example: -89

location_lng   number  optional  

El campo value debe ser un valor entre -180 y 180. Example: -180

location_address   string  optional  

El campo value no debe contener más de 500 caracteres. Example: rijhmddfywycqceh

meeting_point   string  optional  

El campo value no debe contener más de 1000 caracteres. Example: nbr

activity_ids   integer[]  optional  

The id of an existing record in the activities table.

main_image   file  optional  

El campo value debe ser una imagen. El archivo value no debe pesar más de 5120 kilobytes. Example: /tmp/phpymxHon

additional_images   file[]  optional  

El campo value debe ser una imagen. El archivo value no debe pesar más de 5120 kilobytes.

images   object[]  optional  
type   string   

Example: main

Must be one of:
  • main
  • additional
image   file   

Must be a file. El campo value debe ser una imagen. El archivo value no debe pesar más de 5120 kilobytes. Example: /tmp/phpWcsKQQ

Get material by ID

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/suppliers/materials-class/sunt" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/materials-class/sunt"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/materials-class/sunt';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/materials-class/sunt'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/suppliers/materials-class/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the materials class. Example: sunt

Update material

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/suppliers/materials-class/quas" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "code=sjuq"\
    --form "name=ztlgkcmpjtjkkhm"\
    --form "description=Expedita quia repudiandae voluptas magni quidem harum et."\
    --form "price=16"\
    --form "location=tetzqzkgdzhafelxcmz"\
    --form "location_lat=-90"\
    --form "location_lng=-180"\
    --form "location_address=phpqxkhocckfqkc"\
    --form "meeting_point=elnuyvzu"\
    --form "activity_ids[]=5"\
    --form "images[][type]=main"\
    --form "main_image=@/tmp/phpwJX1Oo" \
    --form "additional_images[]=@/tmp/phpBWXwmI" \
    --form "images[][image]=@/tmp/phpE40oSA" 
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/materials-class/quas"
);

const headers = {
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('code', 'sjuq');
body.append('name', 'ztlgkcmpjtjkkhm');
body.append('description', 'Expedita quia repudiandae voluptas magni quidem harum et.');
body.append('price', '16');
body.append('location', 'tetzqzkgdzhafelxcmz');
body.append('location_lat', '-90');
body.append('location_lng', '-180');
body.append('location_address', 'phpqxkhocckfqkc');
body.append('meeting_point', 'elnuyvzu');
body.append('activity_ids[]', '5');
body.append('images[][type]', 'main');
body.append('main_image', document.querySelector('input[name="main_image"]').files[0]);
body.append('additional_images[]', document.querySelector('input[name="additional_images[]"]').files[0]);
body.append('images[][image]', document.querySelector('input[name="images[][image]"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/materials-class/quas';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'code',
                'contents' => 'sjuq'
            ],
            [
                'name' => 'name',
                'contents' => 'ztlgkcmpjtjkkhm'
            ],
            [
                'name' => 'description',
                'contents' => 'Expedita quia repudiandae voluptas magni quidem harum et.'
            ],
            [
                'name' => 'price',
                'contents' => '16'
            ],
            [
                'name' => 'location',
                'contents' => 'tetzqzkgdzhafelxcmz'
            ],
            [
                'name' => 'location_lat',
                'contents' => '-90'
            ],
            [
                'name' => 'location_lng',
                'contents' => '-180'
            ],
            [
                'name' => 'location_address',
                'contents' => 'phpqxkhocckfqkc'
            ],
            [
                'name' => 'meeting_point',
                'contents' => 'elnuyvzu'
            ],
            [
                'name' => 'activity_ids[]',
                'contents' => '5'
            ],
            [
                'name' => 'images[][type]',
                'contents' => 'main'
            ],
            [
                'name' => 'main_image',
                'contents' => fopen('/tmp/phpwJX1Oo', 'r')
            ],
            [
                'name' => 'additional_images[]',
                'contents' => fopen('/tmp/phpBWXwmI', 'r')
            ],
            [
                'name' => 'images[][image]',
                'contents' => fopen('/tmp/phpE40oSA', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/materials-class/quas'
files = {
  'code': (None, 'sjuq'),
  'name': (None, 'ztlgkcmpjtjkkhm'),
  'description': (None, 'Expedita quia repudiandae voluptas magni quidem harum et.'),
  'price': (None, '16'),
  'location': (None, 'tetzqzkgdzhafelxcmz'),
  'location_lat': (None, '-90'),
  'location_lng': (None, '-180'),
  'location_address': (None, 'phpqxkhocckfqkc'),
  'meeting_point': (None, 'elnuyvzu'),
  'activity_ids[]': (None, '5'),
  'images[][type]': (None, 'main'),
  'main_image': open('/tmp/phpwJX1Oo', 'rb'),
  'additional_images[]': open('/tmp/phpBWXwmI', 'rb'),
  'images[][image]': open('/tmp/phpE40oSA', 'rb')}
payload = {
    "code": "sjuq",
    "name": "ztlgkcmpjtjkkhm",
    "description": "Expedita quia repudiandae voluptas magni quidem harum et.",
    "price": 16,
    "location": "tetzqzkgdzhafelxcmz",
    "location_lat": -90,
    "location_lng": -180,
    "location_address": "phpqxkhocckfqkc",
    "meeting_point": "elnuyvzu",
    "activity_ids": [
        5
    ],
    "images": [
        {
            "type": "main"
        }
    ]
}
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, files=files)
response.json()

Request      

POST api/v1/suppliers/materials-class/{id}

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the materials class. Example: quas

Body Parameters

code   string  optional  

El campo value no debe contener más de 255 caracteres. Example: sjuq

name   string   

El campo value no debe contener más de 255 caracteres. Example: ztlgkcmpjtjkkhm

description   string  optional  

Example: Expedita quia repudiandae voluptas magni quidem harum et.

price   number   

El campo value debe ser al menos 0. Example: 16

location   string  optional  

El campo value no debe contener más de 500 caracteres. Example: tetzqzkgdzhafelxcmz

location_lat   number  optional  

El campo value debe ser un valor entre -90 y 90. Example: -90

location_lng   number  optional  

El campo value debe ser un valor entre -180 y 180. Example: -180

location_address   string  optional  

El campo value no debe contener más de 500 caracteres. Example: phpqxkhocckfqkc

meeting_point   string  optional  

El campo value no debe contener más de 1000 caracteres. Example: elnuyvzu

activity_ids   integer[]  optional  

The id of an existing record in the activities table.

main_image   file  optional  

El campo value debe ser una imagen. El archivo value no debe pesar más de 5120 kilobytes. Example: /tmp/phpwJX1Oo

additional_images   file[]  optional  

El campo value debe ser una imagen. El archivo value no debe pesar más de 5120 kilobytes.

images   object[]  optional  
type   string   

Example: main

Must be one of:
  • main
  • additional
image   file   

Must be a file. El campo value debe ser una imagen. El archivo value no debe pesar más de 5120 kilobytes. Example: /tmp/phpE40oSA

Delete material

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/suppliers/materials-class/rerum" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/materials-class/rerum"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/materials-class/rerum';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/materials-class/rerum'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Request      

DELETE api/v1/suppliers/materials-class/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the materials class. Example: rerum

Locations

APIs for managing resources locations

Country

Endpoints associated with countries

List countries

This endpoint retrieve all countries,

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/countries?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"order\": \"dolores\",
    \"sort\": \"harum\",
    \"name\": \"revfeahsnytvjixaluwzusdfbcbscliohdfvpzofbqaeafjrcakdanckmrobmwahlbcsasyaz\",
    \"iso2\": \"fuxqvldaqdczouocohitzkateokwazjdwxhwtfdlizoblofeb\",
    \"iso3\": \"tjzlsaye\",
    \"currency\": \"vxgoqmkzlxnfyypnumkartspwz\",
    \"capital\": \"qbonoab\",
    \"belongsUe\": true,
    \"phonecode\": \"puenbzvkukfzfhckpakfuaseicqllfecbpmhelooveooodpaywu\",
    \"region\": \"vywtanjwfzwcutgknaxhcpewmsnjzajrfvaehoftctxzsazqblmslrwahkbtumcmjheypmmgb\",
    \"subregion\": \"huxdmskjwfymqakeksjlqpvtdanakkdnjrhsgddofbrwkklgjdvxtfojbz\",
    \"perPage\": 35,
    \"page\": 5
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/countries"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "order": "dolores",
    "sort": "harum",
    "name": "revfeahsnytvjixaluwzusdfbcbscliohdfvpzofbqaeafjrcakdanckmrobmwahlbcsasyaz",
    "iso2": "fuxqvldaqdczouocohitzkateokwazjdwxhwtfdlizoblofeb",
    "iso3": "tjzlsaye",
    "currency": "vxgoqmkzlxnfyypnumkartspwz",
    "capital": "qbonoab",
    "belongsUe": true,
    "phonecode": "puenbzvkukfzfhckpakfuaseicqllfecbpmhelooveooodpaywu",
    "region": "vywtanjwfzwcutgknaxhcpewmsnjzajrfvaehoftctxzsazqblmslrwahkbtumcmjheypmmgb",
    "subregion": "huxdmskjwfymqakeksjlqpvtdanakkdnjrhsgddofbrwkklgjdvxtfojbz",
    "perPage": 35,
    "page": 5
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/countries';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'order' => 'dolores',
            'sort' => 'harum',
            'name' => 'revfeahsnytvjixaluwzusdfbcbscliohdfvpzofbqaeafjrcakdanckmrobmwahlbcsasyaz',
            'iso2' => 'fuxqvldaqdczouocohitzkateokwazjdwxhwtfdlizoblofeb',
            'iso3' => 'tjzlsaye',
            'currency' => 'vxgoqmkzlxnfyypnumkartspwz',
            'capital' => 'qbonoab',
            'belongsUe' => true,
            'phonecode' => 'puenbzvkukfzfhckpakfuaseicqllfecbpmhelooveooodpaywu',
            'region' => 'vywtanjwfzwcutgknaxhcpewmsnjzajrfvaehoftctxzsazqblmslrwahkbtumcmjheypmmgb',
            'subregion' => 'huxdmskjwfymqakeksjlqpvtdanakkdnjrhsgddofbrwkklgjdvxtfojbz',
            'perPage' => 35,
            'page' => 5,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/countries'
payload = {
    "order": "dolores",
    "sort": "harum",
    "name": "revfeahsnytvjixaluwzusdfbcbscliohdfvpzofbqaeafjrcakdanckmrobmwahlbcsasyaz",
    "iso2": "fuxqvldaqdczouocohitzkateokwazjdwxhwtfdlizoblofeb",
    "iso3": "tjzlsaye",
    "currency": "vxgoqmkzlxnfyypnumkartspwz",
    "capital": "qbonoab",
    "belongsUe": true,
    "phonecode": "puenbzvkukfzfhckpakfuaseicqllfecbpmhelooveooodpaywu",
    "region": "vywtanjwfzwcutgknaxhcpewmsnjzajrfvaehoftctxzsazqblmslrwahkbtumcmjheypmmgb",
    "subregion": "huxdmskjwfymqakeksjlqpvtdanakkdnjrhsgddofbrwkklgjdvxtfojbz",
    "perPage": 35,
    "page": 5
}
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Countries List",
    "data": "Array"
}
 

Request      

GET api/v1/countries

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

order   string  optional  

Example: dolores

sort   string  optional  

This field is required when order is present. Example: harum

name   string  optional  

El campo value debe contener al menos 2 caracteres. Example: revfeahsnytvjixaluwzusdfbcbscliohdfvpzofbqaeafjrcakdanckmrobmwahlbcsasyaz

iso2   string  optional  

El campo value debe contener al menos 1 caracteres. Example: fuxqvldaqdczouocohitzkateokwazjdwxhwtfdlizoblofeb

iso3   string  optional  

El campo value debe contener al menos 1 caracteres. Example: tjzlsaye

currency   string  optional  

El campo value debe contener al menos 2 caracteres. Example: vxgoqmkzlxnfyypnumkartspwz

capital   string  optional  

El campo value debe contener al menos 2 caracteres. Example: qbonoab

belongsUe   boolean  optional  

Example: true

phonecode   string  optional  

El campo value debe contener al menos 2 caracteres. Example: puenbzvkukfzfhckpakfuaseicqllfecbpmhelooveooodpaywu

region   string  optional  

El campo value debe contener al menos 2 caracteres. Example: vywtanjwfzwcutgknaxhcpewmsnjzajrfvaehoftctxzsazqblmslrwahkbtumcmjheypmmgb

subregion   string  optional  

El campo value debe contener al menos 2 caracteres. Example: huxdmskjwfymqakeksjlqpvtdanakkdnjrhsgddofbrwkklgjdvxtfojbz

perPage   integer  optional  

El campo value debe ser al menos 1. Example: 35

page   integer  optional  

This field is required when perPage is present. Example: 5

Language

Endpoints associated with languages

List all languages

This endpoint retrieve all languages

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/languages?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"order\": \"nam\",
    \"sort\": \"nobis\",
    \"name\": \"jqitkujgegqpotytazbitqfxduazkf\",
    \"iso2\": \"egnlvmzuup\",
    \"is_active\": true,
    \"perPage\": 15,
    \"page\": 12
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/languages"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "order": "nam",
    "sort": "nobis",
    "name": "jqitkujgegqpotytazbitqfxduazkf",
    "iso2": "egnlvmzuup",
    "is_active": true,
    "perPage": 15,
    "page": 12
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/languages';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'order' => 'nam',
            'sort' => 'nobis',
            'name' => 'jqitkujgegqpotytazbitqfxduazkf',
            'iso2' => 'egnlvmzuup',
            'is_active' => true,
            'perPage' => 15,
            'page' => 12,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/languages'
payload = {
    "order": "nam",
    "sort": "nobis",
    "name": "jqitkujgegqpotytazbitqfxduazkf",
    "iso2": "egnlvmzuup",
    "is_active": true,
    "perPage": 15,
    "page": 12
}
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Languages List",
    "data": "Array"
}
 

Request      

GET api/v1/languages

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

order   string  optional  

Example: nam

sort   string  optional  

This field is required when order is present. Example: nobis

name   string  optional  

El campo value debe contener al menos 2 caracteres. Example: jqitkujgegqpotytazbitqfxduazkf

iso2   string  optional  

El campo value debe contener al menos 1 caracteres. Example: egnlvmzuup

is_active   boolean  optional  

Example: true

perPage   integer  optional  

El campo value debe ser al menos 1. Example: 15

page   integer  optional  

This field is required when perPage is present. Example: 12

Show language

This endpoint show detail a language

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/languages/aut?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/languages/aut"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/languages/aut';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/languages/aut'
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Languages show",
    "data": "Objet"
}
 

Request      

GET api/v1/languages/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the language. Example: aut

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Create language

requires authentication

This endpoint create new language

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/languages?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"translations\": {
        \"es\": {
            \"name\": \"quidem\"
        },
        \"en\": {
            \"name\": \"sequi\"
        }
    },
    \"is_active\": true,
    \"iso2\": \"iuafcptxzmgoucccwnbqyyrhvdngqamiwdxgcstbhlaexcxxzzffhjijlsmui\",
    \"emoji\": \"iqgtrlfnfbczjaqjmftq\",
    \"emoji_u\": \"xrblcesucbsvpngggdpzhlwrycsxiluqabjwsmdbioreyxfgxxsaxgbionxzropiruadunawocwjxyktcbeuoirykf\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/languages"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "translations": {
        "es": {
            "name": "quidem"
        },
        "en": {
            "name": "sequi"
        }
    },
    "is_active": true,
    "iso2": "iuafcptxzmgoucccwnbqyyrhvdngqamiwdxgcstbhlaexcxxzzffhjijlsmui",
    "emoji": "iqgtrlfnfbczjaqjmftq",
    "emoji_u": "xrblcesucbsvpngggdpzhlwrycsxiluqabjwsmdbioreyxfgxxsaxgbionxzropiruadunawocwjxyktcbeuoirykf"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/languages';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'translations' => [
                'es' => [
                    'name' => 'quidem',
                ],
                'en' => [
                    'name' => 'sequi',
                ],
            ],
            'is_active' => true,
            'iso2' => 'iuafcptxzmgoucccwnbqyyrhvdngqamiwdxgcstbhlaexcxxzzffhjijlsmui',
            'emoji' => 'iqgtrlfnfbczjaqjmftq',
            'emoji_u' => 'xrblcesucbsvpngggdpzhlwrycsxiluqabjwsmdbioreyxfgxxsaxgbionxzropiruadunawocwjxyktcbeuoirykf',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/languages'
payload = {
    "translations": {
        "es": {
            "name": "quidem"
        },
        "en": {
            "name": "sequi"
        }
    },
    "is_active": true,
    "iso2": "iuafcptxzmgoucccwnbqyyrhvdngqamiwdxgcstbhlaexcxxzzffhjijlsmui",
    "emoji": "iqgtrlfnfbczjaqjmftq",
    "emoji_u": "xrblcesucbsvpngggdpzhlwrycsxiluqabjwsmdbioreyxfgxxsaxgbionxzropiruadunawocwjxyktcbeuoirykf"
}
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload, params=params)
response.json()

Example response (201):


{
    "success": true,
    "message": "Languages create",
    "data": "Objet"
}
 

Request      

POST api/v1/languages

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

translations   object  optional  
es   object  optional  
name   string  optional  

Example: quidem

en   object  optional  
name   string  optional  

Example: sequi

is_active   boolean  optional  

Example: true

iso2   string   

El campo value debe contener al menos 1 caracteres. Example: iuafcptxzmgoucccwnbqyyrhvdngqamiwdxgcstbhlaexcxxzzffhjijlsmui

emoji   string  optional  

El campo value debe contener al menos 1 caracteres. Example: iqgtrlfnfbczjaqjmftq

emoji_u   string  optional  

El campo value debe contener al menos 1 caracteres. Example: xrblcesucbsvpngggdpzhlwrycsxiluqabjwsmdbioreyxfgxxsaxgbionxzropiruadunawocwjxyktcbeuoirykf

Update language

requires authentication

This endpoint update a language

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/languages/animi?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"translations\": {
        \"es\": {
            \"name\": \"et\"
        },
        \"en\": {
            \"name\": \"dolorem\"
        }
    },
    \"is_active\": true,
    \"iso2\": \"kihoxtnkfhhuiipyjqkyamganjayjve\",
    \"emoji\": \"znpxvjhjstulsxsbjncveznaekkvvhoytwbxwzggnbpkqebcgommkgtaa\",
    \"emoji_u\": \"hmtgoqnxvwxugkhnoihsmbvyzkcpidypljuwvo\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/languages/animi"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "translations": {
        "es": {
            "name": "et"
        },
        "en": {
            "name": "dolorem"
        }
    },
    "is_active": true,
    "iso2": "kihoxtnkfhhuiipyjqkyamganjayjve",
    "emoji": "znpxvjhjstulsxsbjncveznaekkvvhoytwbxwzggnbpkqebcgommkgtaa",
    "emoji_u": "hmtgoqnxvwxugkhnoihsmbvyzkcpidypljuwvo"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/languages/animi';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'translations' => [
                'es' => [
                    'name' => 'et',
                ],
                'en' => [
                    'name' => 'dolorem',
                ],
            ],
            'is_active' => true,
            'iso2' => 'kihoxtnkfhhuiipyjqkyamganjayjve',
            'emoji' => 'znpxvjhjstulsxsbjncveznaekkvvhoytwbxwzggnbpkqebcgommkgtaa',
            'emoji_u' => 'hmtgoqnxvwxugkhnoihsmbvyzkcpidypljuwvo',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/languages/animi'
payload = {
    "translations": {
        "es": {
            "name": "et"
        },
        "en": {
            "name": "dolorem"
        }
    },
    "is_active": true,
    "iso2": "kihoxtnkfhhuiipyjqkyamganjayjve",
    "emoji": "znpxvjhjstulsxsbjncveznaekkvvhoytwbxwzggnbpkqebcgommkgtaa",
    "emoji_u": "hmtgoqnxvwxugkhnoihsmbvyzkcpidypljuwvo"
}
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Languages update",
    "data": "Objet"
}
 

Request      

PUT api/v1/languages/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the language. Example: animi

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

translations   object  optional  
es   object  optional  
name   string  optional  

Example: et

en   object  optional  
name   string  optional  

Example: dolorem

is_active   boolean  optional  

Example: true

iso2   string  optional  

El campo value debe contener al menos 1 caracteres. Example: kihoxtnkfhhuiipyjqkyamganjayjve

emoji   string  optional  

El campo value debe contener al menos 1 caracteres. Example: znpxvjhjstulsxsbjncveznaekkvvhoytwbxwzggnbpkqebcgommkgtaa

emoji_u   string  optional  

El campo value debe contener al menos 1 caracteres. Example: hmtgoqnxvwxugkhnoihsmbvyzkcpidypljuwvo

Delete language

requires authentication

This endpoint delete a language

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/languages/autem?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/languages/autem"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/languages/autem';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/languages/autem'
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Languages delete",
    "data": true
}
 

Request      

DELETE api/v1/languages/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the language. Example: autem

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Timezone

Endpoints associated with timezones

List all timezones

This endpoint retrieve all timezones

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/timezones?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"order\": \"itaque\",
    \"sort\": \"adipisci\",
    \"timezone\": \"Asia\\/Singapore\",
    \"utc\": \"lmtwokmriypiwuxiibendrzqskmrgbgoybzcrnsvhtwvoufcsntbqgdibryrfituyftpadfllkvj\",
    \"offset\": \"wyffdzkuvhbfllnbylkuqjglcltttucqffvop\",
    \"is_active\": false,
    \"perPage\": 30,
    \"page\": 18
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/timezones"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "order": "itaque",
    "sort": "adipisci",
    "timezone": "Asia\/Singapore",
    "utc": "lmtwokmriypiwuxiibendrzqskmrgbgoybzcrnsvhtwvoufcsntbqgdibryrfituyftpadfllkvj",
    "offset": "wyffdzkuvhbfllnbylkuqjglcltttucqffvop",
    "is_active": false,
    "perPage": 30,
    "page": 18
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/timezones';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'order' => 'itaque',
            'sort' => 'adipisci',
            'timezone' => 'Asia/Singapore',
            'utc' => 'lmtwokmriypiwuxiibendrzqskmrgbgoybzcrnsvhtwvoufcsntbqgdibryrfituyftpadfllkvj',
            'offset' => 'wyffdzkuvhbfllnbylkuqjglcltttucqffvop',
            'is_active' => false,
            'perPage' => 30,
            'page' => 18,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/timezones'
payload = {
    "order": "itaque",
    "sort": "adipisci",
    "timezone": "Asia\/Singapore",
    "utc": "lmtwokmriypiwuxiibendrzqskmrgbgoybzcrnsvhtwvoufcsntbqgdibryrfituyftpadfllkvj",
    "offset": "wyffdzkuvhbfllnbylkuqjglcltttucqffvop",
    "is_active": false,
    "perPage": 30,
    "page": 18
}
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Timezones List",
    "data": "Array"
}
 

Request      

GET api/v1/timezones

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

order   string  optional  

Example: itaque

sort   string  optional  

This field is required when order is present. Example: adipisci

timezone   string  optional  

El campo value debe contener al menos 2 caracteres. Example: Asia/Singapore

utc   string  optional  

El campo value debe contener al menos 1 caracteres. Example: lmtwokmriypiwuxiibendrzqskmrgbgoybzcrnsvhtwvoufcsntbqgdibryrfituyftpadfllkvj

offset   string  optional  

El campo value debe contener al menos 1 caracteres. Example: wyffdzkuvhbfllnbylkuqjglcltttucqffvop

is_active   boolean  optional  

Example: false

perPage   integer  optional  

El campo value debe ser al menos 1. Example: 30

page   integer  optional  

This field is required when perPage is present. Example: 18

Show timezone

This endpoint show detail a timezone

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/timezones/ut?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/timezones/ut"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/timezones/ut';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/timezones/ut'
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Timezone show",
    "data": "Objet"
}
 

Request      

GET api/v1/timezones/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the timezone. Example: ut

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Create timezone

requires authentication

This endpoint create new timezone

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/timezones?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"is_active\": false,
    \"timezone\": \"America\\/New_York\",
    \"utc\": \"kskllhdghlbgdzaydygczvhn\",
    \"offset\": \"unuorhelankyvajrfhscvnmnpjvjbhjrkimxudotgiafnbnbzhhstwksnnqdhhqyhbdpkjxghphkmngx\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/timezones"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "is_active": false,
    "timezone": "America\/New_York",
    "utc": "kskllhdghlbgdzaydygczvhn",
    "offset": "unuorhelankyvajrfhscvnmnpjvjbhjrkimxudotgiafnbnbzhhstwksnnqdhhqyhbdpkjxghphkmngx"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/timezones';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'is_active' => false,
            'timezone' => 'America/New_York',
            'utc' => 'kskllhdghlbgdzaydygczvhn',
            'offset' => 'unuorhelankyvajrfhscvnmnpjvjbhjrkimxudotgiafnbnbzhhstwksnnqdhhqyhbdpkjxghphkmngx',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/timezones'
payload = {
    "is_active": false,
    "timezone": "America\/New_York",
    "utc": "kskllhdghlbgdzaydygczvhn",
    "offset": "unuorhelankyvajrfhscvnmnpjvjbhjrkimxudotgiafnbnbzhhstwksnnqdhhqyhbdpkjxghphkmngx"
}
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload, params=params)
response.json()

Example response (201):


{
    "success": true,
    "message": "Timezone create",
    "data": "Objet"
}
 

Request      

POST api/v1/timezones

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

is_active   boolean  optional  

Example: false

timezone   string   

El campo value debe contener al menos 5 caracteres. Example: America/New_York

utc   string   

El campo value debe contener al menos 2 caracteres. Example: kskllhdghlbgdzaydygczvhn

offset   string   

El campo value debe contener al menos 1 caracteres. Example: unuorhelankyvajrfhscvnmnpjvjbhjrkimxudotgiafnbnbzhhstwksnnqdhhqyhbdpkjxghphkmngx

Update timezone

requires authentication

This endpoint update a timezone

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/timezones/a?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"is_active\": false,
    \"timezone\": \"Africa\\/Tunis\",
    \"utc\": \"mkohxuyasuginhttsflfmpaattgievpawelxjqqvwuh\",
    \"offset\": \"wlydkyzbsfocyjozabgzvnhoneavhsdzpet\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/timezones/a"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "is_active": false,
    "timezone": "Africa\/Tunis",
    "utc": "mkohxuyasuginhttsflfmpaattgievpawelxjqqvwuh",
    "offset": "wlydkyzbsfocyjozabgzvnhoneavhsdzpet"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/timezones/a';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'is_active' => false,
            'timezone' => 'Africa/Tunis',
            'utc' => 'mkohxuyasuginhttsflfmpaattgievpawelxjqqvwuh',
            'offset' => 'wlydkyzbsfocyjozabgzvnhoneavhsdzpet',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/timezones/a'
payload = {
    "is_active": false,
    "timezone": "Africa\/Tunis",
    "utc": "mkohxuyasuginhttsflfmpaattgievpawelxjqqvwuh",
    "offset": "wlydkyzbsfocyjozabgzvnhoneavhsdzpet"
}
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Timezone update",
    "data": "Objet"
}
 

Request      

PUT api/v1/timezones/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the timezone. Example: a

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

is_active   boolean  optional  

Example: false

timezone   string  optional  

El campo value debe contener al menos 5 caracteres. Example: Africa/Tunis

utc   string  optional  

El campo value debe contener al menos 2 caracteres. Example: mkohxuyasuginhttsflfmpaattgievpawelxjqqvwuh

offset   string  optional  

El campo value debe contener al menos 2 caracteres. Example: wlydkyzbsfocyjozabgzvnhoneavhsdzpet

Delete timezone

requires authentication

This endpoint delete a timezone

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/timezones/occaecati?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/timezones/occaecati"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/timezones/occaecati';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/timezones/occaecati'
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Timezone delete",
    "data": true
}
 

Request      

DELETE api/v1/timezones/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the timezone. Example: occaecati

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Province

Endpoints associated with provinces of country

List provinces by country

This endpoint retrieve all provinces by country

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/provinces/countries/sed?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"order\": \"dicta\",
    \"sort\": \"dicta\",
    \"name\": \"vbtvvlvrzjlqhv\",
    \"iso2\": \"noiklocafrolpyagxjogozsatvqbougrlafkwmumlun\",
    \"perPage\": 45,
    \"page\": 4
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/provinces/countries/sed"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "order": "dicta",
    "sort": "dicta",
    "name": "vbtvvlvrzjlqhv",
    "iso2": "noiklocafrolpyagxjogozsatvqbougrlafkwmumlun",
    "perPage": 45,
    "page": 4
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/provinces/countries/sed';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'order' => 'dicta',
            'sort' => 'dicta',
            'name' => 'vbtvvlvrzjlqhv',
            'iso2' => 'noiklocafrolpyagxjogozsatvqbougrlafkwmumlun',
            'perPage' => 45,
            'page' => 4,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/provinces/countries/sed'
payload = {
    "order": "dicta",
    "sort": "dicta",
    "name": "vbtvvlvrzjlqhv",
    "iso2": "noiklocafrolpyagxjogozsatvqbougrlafkwmumlun",
    "perPage": 45,
    "page": 4
}
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Provinces List",
    "data": "Array"
}
 

Request      

GET api/v1/provinces/countries/{country_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

country_id   string   

The ID of the country. Example: sed

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

order   string  optional  

Example: dicta

sort   string  optional  

This field is required when order is present. Example: dicta

name   string  optional  

El campo value debe contener al menos 2 caracteres. Example: vbtvvlvrzjlqhv

iso2   string  optional  

El campo value debe contener al menos 1 caracteres. Example: noiklocafrolpyagxjogozsatvqbougrlafkwmumlun

perPage   integer  optional  

El campo value debe ser al menos 1. Example: 45

page   integer  optional  

This field is required when perPage is present. Example: 4

City

Endpoints associated with cities of provinces

List provinces by country

This endpoint retrieve all provinces by country

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/cities/provinces/nam?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"order\": \"impedit\",
    \"sort\": \"quibusdam\",
    \"name\": \"tuuuzkrkwphjtr\",
    \"iso2\": \"fyjzqrnloltgpzqikiloxcsyhdxezksrclauxvmugbcgroplupvgcxutnjywslyy\",
    \"perPage\": 67,
    \"page\": 8
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/cities/provinces/nam"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "order": "impedit",
    "sort": "quibusdam",
    "name": "tuuuzkrkwphjtr",
    "iso2": "fyjzqrnloltgpzqikiloxcsyhdxezksrclauxvmugbcgroplupvgcxutnjywslyy",
    "perPage": 67,
    "page": 8
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/cities/provinces/nam';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'order' => 'impedit',
            'sort' => 'quibusdam',
            'name' => 'tuuuzkrkwphjtr',
            'iso2' => 'fyjzqrnloltgpzqikiloxcsyhdxezksrclauxvmugbcgroplupvgcxutnjywslyy',
            'perPage' => 67,
            'page' => 8,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/cities/provinces/nam'
payload = {
    "order": "impedit",
    "sort": "quibusdam",
    "name": "tuuuzkrkwphjtr",
    "iso2": "fyjzqrnloltgpzqikiloxcsyhdxezksrclauxvmugbcgroplupvgcxutnjywslyy",
    "perPage": 67,
    "page": 8
}
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Cities List",
    "data": "Array"
}
 

Request      

GET api/v1/cities/provinces/{province_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

province_id   string   

The ID of the province. Example: nam

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

order   string  optional  

Example: impedit

sort   string  optional  

This field is required when order is present. Example: quibusdam

name   string  optional  

El campo value debe contener al menos 2 caracteres. Example: tuuuzkrkwphjtr

iso2   string  optional  

El campo value debe contener al menos 1 caracteres. Example: fyjzqrnloltgpzqikiloxcsyhdxezksrclauxvmugbcgroplupvgcxutnjywslyy

perPage   integer  optional  

El campo value debe ser al menos 1. Example: 67

page   integer  optional  

This field is required when perPage is present. Example: 8

Loyalty management

APIs for managing loyalties

Tier

Endpoints associated with loyalties

List loyalty tiers

This endpoint retrieve list loyalty tiers

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/loyalty-tiers" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"perPage\": 13,
    \"page\": 11,
    \"order\": \"qui\",
    \"sort\": \"corporis\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/loyalty-tiers"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "perPage": 13,
    "page": 11,
    "order": "qui",
    "sort": "corporis"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/loyalty-tiers';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'perPage' => 13,
            'page' => 11,
            'order' => 'qui',
            'sort' => 'corporis',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/loyalty-tiers'
payload = {
    "perPage": 13,
    "page": 11,
    "order": "qui",
    "sort": "corporis"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/loyalty-tiers

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

perPage   integer   

El campo value debe ser al menos 1. Example: 13

page   integer  optional  

This field is required when perPage is present. Example: 11

order   string  optional  

Example: qui

sort   string  optional  

This field is required when order is present. Example: corporis

Update a loyalty tier

requires authentication

This endpoint allow update a loyalty tier

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/loyalty-tiers/explicabo" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "name=wtxgfvkmzoluk"\
    --form "min_points=25.4883"\
    --form "max_points=333076.11"\
    --form "image=@/tmp/phpApRkEN" 
const url = new URL(
    "https://api.wildoow.com/api/v1/loyalty-tiers/explicabo"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('name', 'wtxgfvkmzoluk');
body.append('min_points', '25.4883');
body.append('max_points', '333076.11');
body.append('image', document.querySelector('input[name="image"]').files[0]);

fetch(url, {
    method: "PUT",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/loyalty-tiers/explicabo';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'name',
                'contents' => 'wtxgfvkmzoluk'
            ],
            [
                'name' => 'min_points',
                'contents' => '25.4883'
            ],
            [
                'name' => 'max_points',
                'contents' => '333076.11'
            ],
            [
                'name' => 'image',
                'contents' => fopen('/tmp/phpApRkEN', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/loyalty-tiers/explicabo'
files = {
  'name': (None, 'wtxgfvkmzoluk'),
  'min_points': (None, '25.4883'),
  'max_points': (None, '333076.11'),
  'image': open('/tmp/phpApRkEN', 'rb')}
payload = {
    "name": "wtxgfvkmzoluk",
    "min_points": 25.4883,
    "max_points": 333076.11
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, files=files)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

PUT api/v1/loyalty-tiers/{id}

PATCH api/v1/loyalty-tiers/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the loyalty tier. Example: explicabo

Body Parameters

name   string  optional  

El campo value no debe contener más de 255 caracteres. Example: wtxgfvkmzoluk

min_points   number  optional  

Example: 25.4883

max_points   number  optional  

Example: 333076.11

image   file  optional  

El campo value debe ser una imagen. El archivo value no debe pesar más de 2048 kilobytes. Example: /tmp/phpApRkEN

Loyalty Benefits

Endpoints associated with loyalty benefits

List loyalty benefits

This endpoint retrieve list loyalty benefits

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/loyalty-benefits" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"perPage\": 65,
    \"page\": 20,
    \"order\": \"sint\",
    \"sort\": \"libero\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/loyalty-benefits"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "perPage": 65,
    "page": 20,
    "order": "sint",
    "sort": "libero"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/loyalty-benefits';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'perPage' => 65,
            'page' => 20,
            'order' => 'sint',
            'sort' => 'libero',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/loyalty-benefits'
payload = {
    "perPage": 65,
    "page": 20,
    "order": "sint",
    "sort": "libero"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/loyalty-benefits

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

perPage   integer   

El campo value debe ser al menos 1. Example: 65

page   integer  optional  

This field is required when perPage is present. Example: 20

order   string  optional  

Example: sint

sort   string  optional  

This field is required when order is present. Example: libero

Loyalty Action Points

Endpoints associated with loyalty action points

List loyalty action points

This endpoint retrieve list loyalty action points

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/loyalty-action-points" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"perPage\": 58,
    \"page\": 3,
    \"order\": \"est\",
    \"sort\": \"ut\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/loyalty-action-points"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "perPage": 58,
    "page": 3,
    "order": "est",
    "sort": "ut"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/loyalty-action-points';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'perPage' => 58,
            'page' => 3,
            'order' => 'est',
            'sort' => 'ut',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/loyalty-action-points'
payload = {
    "perPage": 58,
    "page": 3,
    "order": "est",
    "sort": "ut"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/loyalty-action-points

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

perPage   integer   

El campo value debe ser al menos 1. Example: 58

page   integer  optional  

This field is required when perPage is present. Example: 3

order   string  optional  

Example: est

sort   string  optional  

This field is required when order is present. Example: ut

Loyalty User

Endpoints associated with loyalty users

Get user's current tier and loyalty information

This endpoint retrieve user's current tier and loyalty information

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/loyalty-points/user/voluptatum" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/loyalty-points/user/voluptatum"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/loyalty-points/user/voluptatum';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/loyalty-points/user/voluptatum'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/loyalty-points/user/{userId?}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

userId   string  optional  

Example: voluptatum

Get user's loyalty transactions

This endpoint retrieve user's loyalty transactions

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/loyalty-points/transactions/user/sit" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"perPage\": 22,
    \"page\": 15,
    \"order\": \"autem\",
    \"sort\": \"voluptas\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/loyalty-points/transactions/user/sit"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "perPage": 22,
    "page": 15,
    "order": "autem",
    "sort": "voluptas"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/loyalty-points/transactions/user/sit';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'perPage' => 22,
            'page' => 15,
            'order' => 'autem',
            'sort' => 'voluptas',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/loyalty-points/transactions/user/sit'
payload = {
    "perPage": 22,
    "page": 15,
    "order": "autem",
    "sort": "voluptas"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/loyalty-points/transactions/user/{userId?}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

userId   string  optional  

Example: sit

Body Parameters

perPage   integer   

El campo value debe ser al menos 1. Example: 22

page   integer  optional  

This field is required when perPage is present. Example: 15

order   string  optional  

Example: autem

sort   string  optional  

This field is required when order is present. Example: voluptas

Referral

Endpoints associated with referrals

List users referred by the authenticated user

This endpoint retrieve list users referred

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/referrals/referred-users/voluptatem" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"perPage\": 49,
    \"page\": 10,
    \"name\": \"yfqie\",
    \"email\": \"[email protected]\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/referrals/referred-users/voluptatem"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "perPage": 49,
    "page": 10,
    "name": "yfqie",
    "email": "[email protected]"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/referrals/referred-users/voluptatem';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'perPage' => 49,
            'page' => 10,
            'name' => 'yfqie',
            'email' => '[email protected]',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/referrals/referred-users/voluptatem'
payload = {
    "perPage": 49,
    "page": 10,
    "name": "yfqie",
    "email": "[email protected]"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/referrals/referred-users/{userId?}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

userId   string  optional  

Example: voluptatem

Body Parameters

perPage   integer   

El campo value debe ser al menos 1. Example: 49

page   integer  optional  

This field is required when perPage is present. Example: 10

name   string  optional  

El campo value no debe contener más de 100 caracteres. Example: yfqie

email   string  optional  

El campo value no debe contener más de 100 caracteres. Example: [email protected]

Get referral statistics for the authenticated user

This endpoint retrieves statistics about user referrals including:

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/referrals/stats/eligendi" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/referrals/stats/eligendi"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/referrals/stats/eligendi';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/referrals/stats/eligendi'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/referrals/stats/{userId?}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

userId   string  optional  

Example: eligendi

Get list of recent affiliates for the authenticated user

This endpoint retrieve list users referred

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/affiliates/recent" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/affiliates/recent"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/affiliates/recent';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/affiliates/recent'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/affiliates/recent

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Message management

APIs for managing conversations

Conversation

Endpoints associated with conversations

List conversations

This endpoint retrieves all conversations for the authenticated user with pagination

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/conversations" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"perPage\": 47,
    \"page\": 1,
    \"order\": \"molestiae\",
    \"sort\": \"pariatur\",
    \"user_id\": 6,
    \"search\": \"tempora\",
    \"is_active\": false
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/conversations"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "perPage": 47,
    "page": 1,
    "order": "molestiae",
    "sort": "pariatur",
    "user_id": 6,
    "search": "tempora",
    "is_active": false
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/conversations';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'perPage' => 47,
            'page' => 1,
            'order' => 'molestiae',
            'sort' => 'pariatur',
            'user_id' => 6,
            'search' => 'tempora',
            'is_active' => false,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/conversations'
payload = {
    "perPage": 47,
    "page": 1,
    "order": "molestiae",
    "sort": "pariatur",
    "user_id": 6,
    "search": "tempora",
    "is_active": false
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

GET api/v1/conversations

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

perPage   integer   

El campo value debe ser al menos 1. Example: 47

page   integer  optional  

This field is required when perPage is present. Example: 1

order   string  optional  

Example: molestiae

sort   string  optional  

This field is required when order is present. Example: pariatur

user_id   integer  optional  

The id of an existing record in the users table. Example: 6

search   string  optional  

Example: tempora

is_active   boolean  optional  

Example: false

Store a new conversation

This endpoint creates a new conversation and adds participants

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/conversations" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"title\": \"gjcusocv\",
    \"participants\": [
        1
    ]
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/conversations"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "title": "gjcusocv",
    "participants": [
        1
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/conversations';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'title' => 'gjcusocv',
            'participants' => [
                1,
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/conversations'
payload = {
    "title": "gjcusocv",
    "participants": [
        1
    ]
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/conversations

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

title   string  optional  

El campo value no debe contener más de 255 caracteres. Example: gjcusocv

participants   integer[]   

The id of an existing record in the users table.

Show conversation details

This endpoint retrieves details of a specific conversation

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/conversations/voluptatum" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/conversations/voluptatum"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/conversations/voluptatum';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/conversations/voluptatum'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

GET api/v1/conversations/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the conversation. Example: voluptatum

Delete conversation

This endpoint deletes a conversation and removes all participants

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/conversations/ut" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/conversations/ut"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/conversations/ut';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/conversations/ut'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

DELETE api/v1/conversations/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the conversation. Example: ut

Mark all messages in conversation as read

This endpoint marks all unread messages in a conversation as read for the authenticated user

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/conversations/rerum/read" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/conversations/rerum/read"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/conversations/rerum/read';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/conversations/rerum/read'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

PUT api/v1/conversations/{conversation}/read

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

conversation   string   

The conversation. Example: rerum

Message

Endpoints associated with message

List messages

This endpoint retrieves messages from a conversation with pagination

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/conversations/et/messages" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"perPage\": 67,
    \"page\": 4,
    \"order\": \"eum\",
    \"sort\": \"occaecati\",
    \"user_id\": 1,
    \"search\": \"occaecati\",
    \"status\": \"read\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/conversations/et/messages"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "perPage": 67,
    "page": 4,
    "order": "eum",
    "sort": "occaecati",
    "user_id": 1,
    "search": "occaecati",
    "status": "read"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/conversations/et/messages';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'perPage' => 67,
            'page' => 4,
            'order' => 'eum',
            'sort' => 'occaecati',
            'user_id' => 1,
            'search' => 'occaecati',
            'status' => 'read',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/conversations/et/messages'
payload = {
    "perPage": 67,
    "page": 4,
    "order": "eum",
    "sort": "occaecati",
    "user_id": 1,
    "search": "occaecati",
    "status": "read"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/conversations/{conversation_id}/messages

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

conversation_id   string   

The ID of the conversation. Example: et

Body Parameters

perPage   integer   

El campo value debe ser al menos 1. Example: 67

page   integer  optional  

This field is required when perPage is present. Example: 4

order   string  optional  

Example: eum

sort   string  optional  

This field is required when order is present. Example: occaecati

user_id   integer  optional  

The id of an existing record in the users table. Example: 1

search   string  optional  

Example: occaecati

status   string  optional  

Example: read

Must be one of:
  • sent
  • delivered
  • read

Store a new message

This endpoint creates a new message in a conversation

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/conversations/quidem/messages" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "content=zvwboywlopzvafhglvgwoaauw"\
    --form "type=text"\
    --form "file=@/tmp/phpaZ9Ypg" 
const url = new URL(
    "https://api.wildoow.com/api/v1/conversations/quidem/messages"
);

const headers = {
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('content', 'zvwboywlopzvafhglvgwoaauw');
body.append('type', 'text');
body.append('file', document.querySelector('input[name="file"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/conversations/quidem/messages';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'content',
                'contents' => 'zvwboywlopzvafhglvgwoaauw'
            ],
            [
                'name' => 'type',
                'contents' => 'text'
            ],
            [
                'name' => 'file',
                'contents' => fopen('/tmp/phpaZ9Ypg', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/conversations/quidem/messages'
files = {
  'content': (None, 'zvwboywlopzvafhglvgwoaauw'),
  'type': (None, 'text'),
  'file': open('/tmp/phpaZ9Ypg', 'rb')}
payload = {
    "content": "zvwboywlopzvafhglvgwoaauw",
    "type": "text"
}
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, files=files)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/conversations/{conversation_id}/messages

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

conversation_id   string   

The ID of the conversation. Example: quidem

Body Parameters

content   string   

El campo value no debe contener más de 2000 caracteres. Example: zvwboywlopzvafhglvgwoaauw

type   string   

Example: text

Must be one of:
  • text
  • image
  • file
  • audio
  • video
file   file  optional  

This field is required when type is image, file, audio, or video. Must be a file. El archivo value no debe pesar más de 10240 kilobytes. Example: /tmp/phpaZ9Ypg

Show message details

This endpoint retrieves details of a specific message

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/messages/aut" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/messages/aut"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/messages/aut';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/messages/aut'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

GET api/v1/messages/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the message. Example: aut

Update message

This endpoint updates a message content

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/messages/animi" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "content=kcaqepgjoi"\
    --form "type=file"\
    --form "file=@/tmp/phphl0JGJ" 
const url = new URL(
    "https://api.wildoow.com/api/v1/messages/animi"
);

const headers = {
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('content', 'kcaqepgjoi');
body.append('type', 'file');
body.append('file', document.querySelector('input[name="file"]').files[0]);

fetch(url, {
    method: "PUT",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/messages/animi';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'content',
                'contents' => 'kcaqepgjoi'
            ],
            [
                'name' => 'type',
                'contents' => 'file'
            ],
            [
                'name' => 'file',
                'contents' => fopen('/tmp/phphl0JGJ', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/messages/animi'
files = {
  'content': (None, 'kcaqepgjoi'),
  'type': (None, 'file'),
  'file': open('/tmp/phphl0JGJ', 'rb')}
payload = {
    "content": "kcaqepgjoi",
    "type": "file"
}
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, files=files)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

PUT api/v1/messages/{id}

PATCH api/v1/messages/{id}

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the message. Example: animi

Body Parameters

content   string   

El campo value no debe contener más de 2000 caracteres. Example: kcaqepgjoi

type   string  optional  

Example: file

Must be one of:
  • text
  • image
  • file
  • audio
  • video
file   file  optional  

This field is required when type is image, file, audio, or video. Must be a file. El archivo value no debe pesar más de 10240 kilobytes. Example: /tmp/phphl0JGJ

Delete message

This endpoint deletes a message

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/messages/laboriosam" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/messages/laboriosam"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/messages/laboriosam';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/messages/laboriosam'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

DELETE api/v1/messages/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the message. Example: laboriosam

Mark message as delivered

This endpoint marks a message as delivered

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/messages/doloribus/delivered" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/messages/doloribus/delivered"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/messages/doloribus/delivered';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/messages/doloribus/delivered'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

PUT api/v1/messages/{message}/delivered

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

message   string   

The message. Example: doloribus

Notification management

APIs for managing templates notification

Templates

Endpoints associated with templates notification

List notifications template

Retrieve all available notification templates.

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/notification-templates" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"order\": \"sit\",
    \"sort\": \"tenetur\",
    \"perPage\": 21,
    \"page\": 13
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/notification-templates"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "order": "sit",
    "sort": "tenetur",
    "perPage": 21,
    "page": 13
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/notification-templates';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'order' => 'sit',
            'sort' => 'tenetur',
            'perPage' => 21,
            'page' => 13,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/notification-templates'
payload = {
    "order": "sit",
    "sort": "tenetur",
    "perPage": 21,
    "page": 13
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "message": "List of notification templates",
    "data": [
        {
            "id": 1,
            "name": "Bienvenida",
            "code": "welcome_email",
            "subject": "Bienvenido a nuestra plataforma",
            "content": "Hola {name}, bienvenido a nuestra plataforma",
            "variables": [
                "name"
            ],
            "channels": [
                "email"
            ],
            "is_active": true
        }
    ]
}
 

Request      

GET api/v1/notification-templates

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

order   string  optional  

Example: sit

sort   string  optional  

This field is required when order is present. Example: tenetur

perPage   integer   

El campo value debe ser al menos 1. Example: 21

page   integer  optional  

This field is required when perPage is present. Example: 13

Create template notification

requires authentication

Create a new template notification

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/notification-templates" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"vewhtjyxsgdfbhfhhiuhtyrm\",
    \"code\": \"jrqqhphdhj\",
    \"subject\": \"lvdtagbjueuwlpic\",
    \"content\": \"aspernatur\",
    \"variables\": [
        \"repellat\"
    ],
    \"channels\": [
        \"sms\"
    ],
    \"is_active\": true,
    \"is_default\": false
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/notification-templates"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "vewhtjyxsgdfbhfhhiuhtyrm",
    "code": "jrqqhphdhj",
    "subject": "lvdtagbjueuwlpic",
    "content": "aspernatur",
    "variables": [
        "repellat"
    ],
    "channels": [
        "sms"
    ],
    "is_active": true,
    "is_default": false
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/notification-templates';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'name' => 'vewhtjyxsgdfbhfhhiuhtyrm',
            'code' => 'jrqqhphdhj',
            'subject' => 'lvdtagbjueuwlpic',
            'content' => 'aspernatur',
            'variables' => [
                'repellat',
            ],
            'channels' => [
                'sms',
            ],
            'is_active' => true,
            'is_default' => false,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/notification-templates'
payload = {
    "name": "vewhtjyxsgdfbhfhhiuhtyrm",
    "code": "jrqqhphdhj",
    "subject": "lvdtagbjueuwlpic",
    "content": "aspernatur",
    "variables": [
        "repellat"
    ],
    "channels": [
        "sms"
    ],
    "is_active": true,
    "is_default": false
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (201):


{
    "message": "Notification template created successfully",
    "data": {
        "id": 1,
        "name": "Bienvenida",
        "code": "welcome_email",
        "subject": "Bienvenido a nuestra plataforma",
        "content": "Hola {name}, bienvenido a nuestra plataforma",
        "variables": [
            "name"
        ],
        "channels": [
            "email"
        ],
        "is_active": true
    }
}
 

Request      

POST api/v1/notification-templates

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

name   string   

El campo value no debe contener más de 255 caracteres. Example: vewhtjyxsgdfbhfhhiuhtyrm

code   string   

El campo value no debe contener más de 255 caracteres. Example: jrqqhphdhj

subject   string  optional  

El campo value no debe contener más de 255 caracteres. Example: lvdtagbjueuwlpic

content   string   

Example: aspernatur

variables   string[]  optional  
channels   string[]  optional  
Must be one of:
  • mail
  • database
  • sms
  • push
is_active   boolean  optional  

Example: true

is_default   boolean  optional  

Example: false

Show a template notification

Retrieve the details of a specific template.

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/notification-templates/expedita" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/notification-templates/expedita"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/notification-templates/expedita';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/notification-templates/expedita'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "message": "Notification template details",
    "data": {
        "id": 1,
        "name": "Bienvenida",
        "code": "welcome_email",
        "subject": "Bienvenido a nuestra plataforma",
        "content": "Hola {name}, bienvenido a nuestra plataforma",
        "variables": [
            "name"
        ],
        "channels": [
            "email"
        ],
        "is_active": true
    }
}
 

Request      

GET api/v1/notification-templates/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the notification template. Example: expedita

template   string   

ID de la plantilla Example: eaque

Update a template notification

requires authentication

Update an existing template notification.

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/notification-templates/perferendis" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"vlwskecvas\",
    \"code\": \"zpgiowthbkfrbmwdyjygcage\",
    \"subject\": \"uopyyezhgrxgedjsdx\",
    \"content\": \"ipsum\",
    \"variables\": [
        \"asperiores\"
    ],
    \"channels\": [
        \"push\"
    ],
    \"is_active\": true
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/notification-templates/perferendis"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "vlwskecvas",
    "code": "zpgiowthbkfrbmwdyjygcage",
    "subject": "uopyyezhgrxgedjsdx",
    "content": "ipsum",
    "variables": [
        "asperiores"
    ],
    "channels": [
        "push"
    ],
    "is_active": true
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/notification-templates/perferendis';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'name' => 'vlwskecvas',
            'code' => 'zpgiowthbkfrbmwdyjygcage',
            'subject' => 'uopyyezhgrxgedjsdx',
            'content' => 'ipsum',
            'variables' => [
                'asperiores',
            ],
            'channels' => [
                'push',
            ],
            'is_active' => true,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/notification-templates/perferendis'
payload = {
    "name": "vlwskecvas",
    "code": "zpgiowthbkfrbmwdyjygcage",
    "subject": "uopyyezhgrxgedjsdx",
    "content": "ipsum",
    "variables": [
        "asperiores"
    ],
    "channels": [
        "push"
    ],
    "is_active": true
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "message": "Notification template updated successfully",
    "data": {
        "id": 1,
        "name": "Bienvenida actualizada",
        "code": "welcome_email",
        "subject": "Bienvenido a nuestra plataforma",
        "content": "Hola {name}, bienvenido a nuestra plataforma",
        "variables": [
            "name"
        ],
        "channels": [
            "mail",
            "sms"
        ],
        "is_active": true
    }
}
 

Request      

PUT api/v1/notification-templates/{id}

PATCH api/v1/notification-templates/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the notification template. Example: perferendis

Body Parameters

name   string  optional  

El campo value no debe contener más de 255 caracteres. Example: vlwskecvas

code   string  optional  

El campo value no debe contener más de 255 caracteres. Example: zpgiowthbkfrbmwdyjygcage

subject   string  optional  

El campo value no debe contener más de 255 caracteres. Example: uopyyezhgrxgedjsdx

content   string  optional  

Example: ipsum

variables   string[]  optional  
channels   string[]  optional  
Must be one of:
  • mail
  • database
  • sms
  • push
is_active   boolean  optional  

Example: true

Delete a template notification

requires authentication

Delete a template notification.

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/notification-templates/suscipit" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/notification-templates/suscipit"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/notification-templates/suscipit';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/notification-templates/suscipit'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Example response (200):


{
    "message": "Notification template deleted successfully"
}
 

Request      

DELETE api/v1/notification-templates/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the notification template. Example: suscipit

template   string   

ID de la plantilla Example: totam

Oauth management

APIs for managing oauth login/register

Url redirect to provider

This endpoint retrieve the url redirect to provider

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/oauth/google" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/oauth/google"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/oauth/google';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/oauth/google'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 3
x-ratelimit-remaining: 2
access-control-allow-origin: *
 


 

Request      

GET api/v1/oauth/{provider}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

provider   string  optional  

The provider. Example: google

Must be one of:
  • google

Retrieve data access token by code url Google

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/oauth/google/access-token" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"code\": \"smdznsvqnonnrgvrzhesbgkvutneleviydhapyfpfppyqrbtstgboxsukrfufkzrgpmaqemonzoihxkwqoj\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/oauth/google/access-token"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "code": "smdznsvqnonnrgvrzhesbgkvutneleviydhapyfpfppyqrbtstgboxsukrfufkzrgpmaqemonzoihxkwqoj"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/oauth/google/access-token';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'code' => 'smdznsvqnonnrgvrzhesbgkvutneleviydhapyfpfppyqrbtstgboxsukrfufkzrgpmaqemonzoihxkwqoj',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/oauth/google/access-token'
payload = {
    "code": "smdznsvqnonnrgvrzhesbgkvutneleviydhapyfpfppyqrbtstgboxsukrfufkzrgpmaqemonzoihxkwqoj"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/oauth/google/access-token

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

code   string   

El campo value debe contener al menos 8 caracteres. Example: smdznsvqnonnrgvrzhesbgkvutneleviydhapyfpfppyqrbtstgboxsukrfufkzrgpmaqemonzoihxkwqoj

Payment management

APIs for managing payments

This endpoint retrieves the wallet balance of a user.

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/payment/wallet/et/balance" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/wallet/et/balance"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/wallet/et/balance';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/wallet/et/balance'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/payment/wallet/{userId}/balance

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

userId   string   

Example: et

Get transactions list

This endpoint returns a paginated list of transactions for a user.

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/payment/transactions/excepturi/list" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"perPage\": 30,
    \"page\": 5
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/transactions/excepturi/list"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "perPage": 30,
    "page": 5
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/transactions/excepturi/list';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'perPage' => 30,
            'page' => 5,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/transactions/excepturi/list'
payload = {
    "perPage": 30,
    "page": 5
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/payment/transactions/{userId}/list

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

userId   string   

Example: excepturi

Body Parameters

perPage   integer  optional  

El campo value debe ser al menos 1. Example: 30

page   integer  optional  

El campo value debe ser al menos 1. Example: 5

This endpoint retrieves details of a specific transaction.

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/payment/transactions/quidem/detail" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/transactions/quidem/detail"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/transactions/quidem/detail';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/transactions/quidem/detail'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/payment/transactions/{transactionId}/detail

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

transactionId   string   

Example: quidem

This endpoint processes a transaction for a user.

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/payment/transactions/process" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user_id\": 123,
    \"reservation_id\": 456,
    \"amount\": 100.5,
    \"operation_type\": \"deposit\",
    \"class\": \"reservation\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/transactions/process"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "user_id": 123,
    "reservation_id": 456,
    "amount": 100.5,
    "operation_type": "deposit",
    "class": "reservation"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/transactions/process';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'user_id' => 123,
            'reservation_id' => 456,
            'amount' => 100.5,
            'operation_type' => 'deposit',
            'class' => 'reservation',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/transactions/process'
payload = {
    "user_id": 123,
    "reservation_id": 456,
    "amount": 100.5,
    "operation_type": "deposit",
    "class": "reservation"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

POST api/v1/payment/transactions/process

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

user_id   integer   

The ID of the user making the payment. Example: 123

reservation_id   integer   

The ID of the reservation associated with the payment. Example: 456

amount   number   

The amount of the transaction. Minimum: 0.01. Example: 100.5

operation_type   string   

The type of operation. Must be 'deposit' or 'withdraw'. Example: deposit

class   string   

The class of the transaction. Must be 'reservation' or 'cancellation'. Example: reservation

This endpoint processes a refund for a transaction.

requires authentication

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/payment/transactions/refund" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"reservation_id\": 123,
    \"provider_id\": 456,
    \"user_id\": 789
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/transactions/refund"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "reservation_id": 123,
    "provider_id": 456,
    "user_id": 789
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/transactions/refund';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'reservation_id' => 123,
            'provider_id' => 456,
            'user_id' => 789,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/transactions/refund'
payload = {
    "reservation_id": 123,
    "provider_id": 456,
    "user_id": 789
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

POST api/v1/payment/transactions/refund

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

reservation_id   integer   

The ID of the reservation associated with the transaction. Example: 123

provider_id   integer   

The ID of the provider receiving the payment. Example: 456

user_id   integer   

The ID of the user making the transaction. Example: 789

Generate a payment order for Stripe or PayPal.

requires authentication

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/payment/create" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user_id\": 123,
    \"reservation_id\": 456,
    \"amount\": 150.75,
    \"currency\": \"EUR\",
    \"payment_method\": \"stripe\",
    \"payment_method_id\": \"pm_abc123xyz\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/create"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "user_id": 123,
    "reservation_id": 456,
    "amount": 150.75,
    "currency": "EUR",
    "payment_method": "stripe",
    "payment_method_id": "pm_abc123xyz"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/create';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'user_id' => 123,
            'reservation_id' => 456,
            'amount' => 150.75,
            'currency' => 'EUR',
            'payment_method' => 'stripe',
            'payment_method_id' => 'pm_abc123xyz',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/create'
payload = {
    "user_id": 123,
    "reservation_id": 456,
    "amount": 150.75,
    "currency": "EUR",
    "payment_method": "stripe",
    "payment_method_id": "pm_abc123xyz"
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

POST api/v1/payment/create

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

user_id   integer   

The ID of the user making the payment. Example: 123

reservation_id   integer   

The ID of the reservation being paid for. Example: 456

amount   number   

The amount to be paid. Must be at least 1. Example: 150.75

currency   string   

The currency code (ISO 4217 format). Must be 3 characters long. Example: EUR

payment_method   string   

The payment method. Must be either "stripe" or "paypal". Example: stripe

payment_method_id   string  optional  

nullable The payment method ID, required only in some Stripe cases. Example: pm_abc123xyz

Confirm a payment after it has been processed.

requires authentication

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/payment/confirm" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user_id\": 123,
    \"reservation_id\": 456,
    \"payment_id\": \"\\\"pay_abc123xyz\\\"\",
    \"payment_method\": \"stripe\",
    \"confirm_id\": \"\\\"cnf_789xyz\\\"\",
    \"payment_method_id\": \"pm_abc123xyz\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/confirm"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "user_id": 123,
    "reservation_id": 456,
    "payment_id": "\"pay_abc123xyz\"",
    "payment_method": "stripe",
    "confirm_id": "\"cnf_789xyz\"",
    "payment_method_id": "pm_abc123xyz"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/confirm';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'user_id' => 123,
            'reservation_id' => 456,
            'payment_id' => '"pay_abc123xyz"',
            'payment_method' => 'stripe',
            'confirm_id' => '"cnf_789xyz"',
            'payment_method_id' => 'pm_abc123xyz',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/confirm'
payload = {
    "user_id": 123,
    "reservation_id": 456,
    "payment_id": "\"pay_abc123xyz\"",
    "payment_method": "stripe",
    "confirm_id": "\"cnf_789xyz\"",
    "payment_method_id": "pm_abc123xyz"
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

POST api/v1/payment/confirm

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

user_id   integer   

The ID of the user confirming the payment. Example: 123

reservation_id   integer   

The ID of the reservation related to the payment. Example: 456

payment_id   string   

The unique ID of the payment. Example: "pay_abc123xyz"

payment_method   string   

The payment method. Must be either "stripe" or "paypal". Example: stripe

confirm_id   string   

The confirmation ID provided by the payment gateway. Example: "cnf_789xyz"

payment_method_id   string  optional  

nullable The payment method ID, required only in some Stripe cases. Example: pm_abc123xyz

Retrieve the payment history for a specific user.

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/payment/history/list?string=voluptatem&perPage=10&page=2" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"perPage\": 10,
    \"page\": 2,
    \"order\": \"voluptatibus\",
    \"sort\": \"aut\",
    \"role\": \"supplier\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/history/list"
);

const params = {
    "string": "voluptatem",
    "perPage": "10",
    "page": "2",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "perPage": 10,
    "page": 2,
    "order": "voluptatibus",
    "sort": "aut",
    "role": "supplier"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/history/list';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'string' => 'voluptatem',
            'perPage' => '10',
            'page' => '2',
        ],
        'json' => [
            'perPage' => 10,
            'page' => 2,
            'order' => 'voluptatibus',
            'sort' => 'aut',
            'role' => 'supplier',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/history/list'
payload = {
    "perPage": 10,
    "page": 2,
    "order": "voluptatibus",
    "sort": "aut",
    "role": "supplier"
}
params = {
  'string': 'voluptatem',
  'perPage': '10',
  'page': '2',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/payment/history/list

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

string   string  optional  

$role User role (admin, provider, client) [Sent by the consumer] Example: voluptatem

perPage   integer  optional  

Number of results per page. Optional. Minimum: 1. Example: 10

page   integer  optional  

Page number for pagination. Optional. Minimum: 1. Example: 2

Body Parameters

perPage   integer  optional  

El campo value debe ser al menos 1. Example: 10

page   integer  optional  

El campo value debe ser al menos 1. Example: 2

order   string  optional  

Example: voluptatibus

sort   string  optional  

This field is required when order is present. Example: aut

role   string   

Example: supplier

Must be one of:
  • supplier
  • client

Confirm a payment after it has been processed.

requires authentication

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/payment/mixed" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user_id\": 123,
    \"reservation_id\": 456,
    \"amount\": 150.75,
    \"currency\": \"EUR\",
    \"payment_method\": \"stripe\",
    \"payment_method_id\": \"quidem\",
    \"payment_id\": \"\\\"pay_abc123xyz\\\"\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/mixed"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "user_id": 123,
    "reservation_id": 456,
    "amount": 150.75,
    "currency": "EUR",
    "payment_method": "stripe",
    "payment_method_id": "quidem",
    "payment_id": "\"pay_abc123xyz\""
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/mixed';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'user_id' => 123,
            'reservation_id' => 456,
            'amount' => 150.75,
            'currency' => 'EUR',
            'payment_method' => 'stripe',
            'payment_method_id' => 'quidem',
            'payment_id' => '"pay_abc123xyz"',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/mixed'
payload = {
    "user_id": 123,
    "reservation_id": 456,
    "amount": 150.75,
    "currency": "EUR",
    "payment_method": "stripe",
    "payment_method_id": "quidem",
    "payment_id": "\"pay_abc123xyz\""
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

POST api/v1/payment/mixed

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

user_id   integer   

The ID of the user confirming the payment. Example: 123

reservation_id   integer   

The ID of the reservation related to the payment. Example: 456

amount   number   

The amount to be paid. Must be at least 1. Example: 150.75

currency   string   

The currency code (ISO 4217 format). Must be 3 characters long. Example: EUR

payment_method   string   

The payment method. Must be either "stripe" or "paypal". Example: stripe

payment_method_id   string  optional  

This field is required when payment_method is stripe. Example: quidem

payment_id   string   

The unique ID of the payment. Example: "pay_abc123xyz"

Create a connected Stripe account.

requires authentication

This endpoint allows a provider to create a connected account in Stripe. The account is created as an Express account and requires additional onboarding.

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/payment/stripe/create-account" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"provider_id\": 789,
    \"email\": \"[email protected]\",
    \"phone\": \"+34600000000\",
    \"first_name\": \"John\",
    \"last_name\": \"Doe\",
    \"address_line1\": \"123 Main Street\",
    \"postal_code\": \"28001\",
    \"city\": \"Madrid\",
    \"state\": \"Madrid\",
    \"website\": \"https:\\/\\/providerwebsite.com\",
    \"product_description\": \"Online payment services\",
    \"country\": \"ES\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/stripe/create-account"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "provider_id": 789,
    "email": "[email protected]",
    "phone": "+34600000000",
    "first_name": "John",
    "last_name": "Doe",
    "address_line1": "123 Main Street",
    "postal_code": "28001",
    "city": "Madrid",
    "state": "Madrid",
    "website": "https:\/\/providerwebsite.com",
    "product_description": "Online payment services",
    "country": "ES"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/stripe/create-account';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'provider_id' => 789,
            'email' => '[email protected]',
            'phone' => '+34600000000',
            'first_name' => 'John',
            'last_name' => 'Doe',
            'address_line1' => '123 Main Street',
            'postal_code' => '28001',
            'city' => 'Madrid',
            'state' => 'Madrid',
            'website' => 'https://providerwebsite.com',
            'product_description' => 'Online payment services',
            'country' => 'ES',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/stripe/create-account'
payload = {
    "provider_id": 789,
    "email": "[email protected]",
    "phone": "+34600000000",
    "first_name": "John",
    "last_name": "Doe",
    "address_line1": "123 Main Street",
    "postal_code": "28001",
    "city": "Madrid",
    "state": "Madrid",
    "website": "https:\/\/providerwebsite.com",
    "product_description": "Online payment services",
    "country": "ES"
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

POST api/v1/payment/stripe/create-account

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

provider_id   integer   

The ID of the provider creating the connected account. Must match an existing user ID. Example: 789

email   string   

The email of the provider. Must match the email registered for the given provider_id. Example: [email protected]

phone   string   

The phone number of the provider in international format, including country code. Example: +34600000000

first_name   string   

The first name of the provider. Example: John

last_name   string   

The last name of the provider. Example: Doe

address_line1   string   

The primary address line. Example: 123 Main Street

postal_code   string   

The postal code of the provider's address. Must be numeric and between 4-10 digits. Example: 28001

city   string   

The city of the provider's address. Example: Madrid

state   string   

The state or region of the provider's address. Example: Madrid

website   string   

The provider's business website. Must be a valid URL. Example: https://providerwebsite.com

product_description   string   

A brief description of the provider's business or services. Example: Online payment services

country   string   

The country code in ISO 3166-1 alpha-2 format. Example: ES

Add a payment method in Stripe.

requires authentication

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/payment/stripe/add-payment-method" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"provider_id\": 123,
    \"payment_method_id\": \"est\",
    \"payment_method\": \"tok_visa\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/stripe/add-payment-method"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "provider_id": 123,
    "payment_method_id": "est",
    "payment_method": "tok_visa"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/stripe/add-payment-method';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'provider_id' => 123,
            'payment_method_id' => 'est',
            'payment_method' => 'tok_visa',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/stripe/add-payment-method'
payload = {
    "provider_id": 123,
    "payment_method_id": "est",
    "payment_method": "tok_visa"
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

POST api/v1/payment/stripe/add-payment-method

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

provider_id   integer   

The ID of the provider. Example: 123

payment_method_id   string   

Example: est

payment_method   string   

The payment method token. Example: tok_visa

Request a withdrawal to Stripe.

requires authentication

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/payment/stripe/withdraw" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"provider_id\": 123,
    \"amount\": 100.5
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/stripe/withdraw"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "provider_id": 123,
    "amount": 100.5
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/stripe/withdraw';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'provider_id' => 123,
            'amount' => 100.5,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/stripe/withdraw'
payload = {
    "provider_id": 123,
    "amount": 100.5
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

POST api/v1/payment/stripe/withdraw

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

provider_id   integer   

The ID of the provider. Example: 123

amount   number   

The amount to withdraw. Example: 100.5

Retrieve provider's Stripe account

requires authentication

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/payment/stripe/account" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/stripe/account"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/stripe/account';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/stripe/account'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/payment/stripe/account

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Retrieve active payment methods.

requires authentication

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/payment/stripe/payment-methods" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/stripe/payment-methods"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/stripe/payment-methods';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/stripe/payment-methods'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/payment/stripe/payment-methods

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Process a withdrawal request.

requires authentication

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/payment/stripe/withdraw/process" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"withdrawal_id\": 13
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/stripe/withdraw/process"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "withdrawal_id": 13
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/stripe/withdraw/process';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'withdrawal_id' => 13,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/stripe/withdraw/process'
payload = {
    "withdrawal_id": 13
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

POST api/v1/payment/stripe/withdraw/process

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

withdrawal_id   integer   

The id of an existing record in the withdrawals table. Example: 13

Retrieve withdrawal.

requires authentication

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/payment/stripe/withdrawal-provider" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/stripe/withdrawal-provider"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/stripe/withdrawal-provider';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/stripe/withdrawal-provider'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/payment/stripe/withdrawal-provider

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Regenerate the onboarding link for a connected Stripe account.

requires authentication

This endpoint allows a provider to regenerate the onboarding link in case it was previously used or needs to be refreshed to complete the Stripe account setup.

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/payment/stripe/provider/regenerate-onboarding" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"provider_id\": 789
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/stripe/provider/regenerate-onboarding"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "provider_id": 789
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/payment/stripe/provider/regenerate-onboarding';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'provider_id' => 789,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/stripe/provider/regenerate-onboarding'
payload = {
    "provider_id": 789
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

POST api/v1/payment/stripe/provider/regenerate-onboarding

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

provider_id   integer   

The ID of the provider whose Stripe account is being updated. Example: 789

Reservation management

APIs for managing reservations

List reservations with filters

This endpoint retrieves a filtered list of reservations.

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/reservations/filtered/list?provider_id=1&client_id=2&status=confirmed&start_date=2024-02-01&end_date=2024-02-28&string=non" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"perPage\": 88,
    \"page\": 6,
    \"order\": \"dolorum\",
    \"sort\": \"molestiae\",
    \"provider_id\": 4,
    \"client_id\": 4,
    \"status\": \"process\",
    \"start_date\": \"2026-02-18T20:34:39\",
    \"end_date\": \"2111-10-03\",
    \"role\": \"client\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/reservations/filtered/list"
);

const params = {
    "provider_id": "1",
    "client_id": "2",
    "status": "confirmed",
    "start_date": "2024-02-01",
    "end_date": "2024-02-28",
    "string": "non",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "perPage": 88,
    "page": 6,
    "order": "dolorum",
    "sort": "molestiae",
    "provider_id": 4,
    "client_id": 4,
    "status": "process",
    "start_date": "2026-02-18T20:34:39",
    "end_date": "2111-10-03",
    "role": "client"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reservations/filtered/list';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'provider_id' => '1',
            'client_id' => '2',
            'status' => 'confirmed',
            'start_date' => '2024-02-01',
            'end_date' => '2024-02-28',
            'string' => 'non',
        ],
        'json' => [
            'perPage' => 88,
            'page' => 6,
            'order' => 'dolorum',
            'sort' => 'molestiae',
            'provider_id' => 4,
            'client_id' => 4,
            'status' => 'process',
            'start_date' => '2026-02-18T20:34:39',
            'end_date' => '2111-10-03',
            'role' => 'client',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reservations/filtered/list'
payload = {
    "perPage": 88,
    "page": 6,
    "order": "dolorum",
    "sort": "molestiae",
    "provider_id": 4,
    "client_id": 4,
    "status": "process",
    "start_date": "2026-02-18T20:34:39",
    "end_date": "2111-10-03",
    "role": "client"
}
params = {
  'provider_id': '1',
  'client_id': '2',
  'status': 'confirmed',
  'start_date': '2024-02-01',
  'end_date': '2024-02-28',
  'string': 'non',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/reservations/filtered/list

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

provider_id   string  optional  

Filter by provider (user_id of ClassInfo). Example: 1

client_id   string  optional  

Filter by client (user_id of Reservation). Example: 2

status   string  optional  

Filter by reservation status. Example: confirmed

start_date   string  optional  

Filter by start date. Example: 2024-02-01

end_date   string  optional  

Filter by end date. Example: 2024-02-28

string   string  optional  

$role User role (admin, provider, client) [Sent by the consumer] Example: non

Body Parameters

perPage   integer   

El campo value debe ser al menos 1. Example: 88

page   integer  optional  

This field is required when perPage is present. Example: 6

order   string  optional  

Example: dolorum

sort   string  optional  

This field is required when order is present. Example: molestiae

provider_id   integer  optional  

The id of an existing record in the users table. Example: 4

client_id   integer  optional  

The id of an existing record in the users table. Example: 4

status   string  optional  

Example: process

Must be one of:
  • cancel
  • pending
  • process
  • finished
start_date   string  optional  

El campo value no corresponde con una fecha válida. Example: 2026-02-18T20:34:39

end_date   string  optional  

El campo value no corresponde con una fecha válida. El campo value debe ser una fecha posterior o igual a start_date. Example: 2111-10-03

role   string   

Example: client

Must be one of:
  • supplier
  • client
  • admin

Get reservation details

This endpoint returns the complete details of a reservation, including reservation information, provider details, class details, schedule, and participants with rented materials if applicable.

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/reservations/asperiores/detail" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"role\": \"supplier\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/reservations/asperiores/detail"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "role": "supplier"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reservations/asperiores/detail';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'role' => 'supplier',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reservations/asperiores/detail'
payload = {
    "role": "supplier"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/reservations/{reservationId}/detail

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

reservationId   string   

Example: asperiores

Body Parameters

role   string   

Example: supplier

Must be one of:
  • supplier
  • client
  • admin

List of Class Activities by Day

Retrieves a list of class activities grouped by day, including reservations, provider details, and participants.

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/reservations/activities-by-day?date=2025-02-18&role=supplier&locale=es%0A+%40responseFile+status%3D200+responses%2FresponseSuccess.json" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"locale\": \"es\",
    \"date\": \"2026-02-18T20:34:39\",
    \"role\": \"supplier\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/reservations/activities-by-day"
);

const params = {
    "date": "2025-02-18",
    "role": "supplier",
    "locale": "es
 @responseFile status=200 responses/responseSuccess.json",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "locale": "es",
    "date": "2026-02-18T20:34:39",
    "role": "supplier"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reservations/activities-by-day';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'date' => '2025-02-18',
            'role' => 'supplier',
            'locale' => 'es
 @responseFile status=200 responses/responseSuccess.json',
        ],
        'json' => [
            'locale' => 'es',
            'date' => '2026-02-18T20:34:39',
            'role' => 'supplier',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reservations/activities-by-day'
payload = {
    "locale": "es",
    "date": "2026-02-18T20:34:39",
    "role": "supplier"
}
params = {
  'date': '2025-02-18',
  'role': 'supplier',
  'locale': 'es
 @responseFile status=200 responses/responseSuccess.json',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/reservations/activities-by-day

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

date   string   

The date for which to retrieve activities (format: YYYY-MM-DD). Example: 2025-02-18

role   string   

The role of the user making the request (supplier, client, or admin). Example: supplier

locale   string  optional  

The locale for translations, 'es' for Spanish, 'en' for English. Example: es @responseFile status=200 responses/responseSuccess.json

Must be one of:
  • es
  • en

Body Parameters

locale   string  optional  

Example: es

Must be one of:
  • es
  • en
date   string   

El campo value no corresponde con una fecha válida. Example: 2026-02-18T20:34:39

role   string   

Example: supplier

Must be one of:
  • supplier
  • client
  • admin

Get daily availability for supplier

Returns all slots for a specific date including:

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/reservations/daily-availability?date=2025-02-18&locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"locale\": \"es\",
    \"date\": \"2026-02-18T20:34:40\",
    \"role\": \"supplier\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/reservations/daily-availability"
);

const params = {
    "date": "2025-02-18",
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "locale": "es",
    "date": "2026-02-18T20:34:40",
    "role": "supplier"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reservations/daily-availability';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'date' => '2025-02-18',
            'locale' => 'es',
        ],
        'json' => [
            'locale' => 'es',
            'date' => '2026-02-18T20:34:40',
            'role' => 'supplier',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reservations/daily-availability'
payload = {
    "locale": "es",
    "date": "2026-02-18T20:34:40",
    "role": "supplier"
}
params = {
  'date': '2025-02-18',
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/reservations/daily-availability

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

date   string   

The date to get availability for (format: YYYY-MM-DD). Example: 2025-02-18

locale   string  optional  

The locale for translations. Example: es

Must be one of:
  • es
  • en

Body Parameters

locale   string  optional  

Example: es

Must be one of:
  • es
  • en
date   string   

El campo value no corresponde con una fecha válida. Example: 2026-02-18T20:34:40

role   string   

Example: supplier

Must be one of:
  • supplier
  • client
  • admin

Get specific activity detail by date and time

Retrieves the details of a single class activity occurring at a specific date and time.

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/reservations/activity-detail?date=2025-02-18&time=14%3A00&role=supplier" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"date\": \"2026-02-18\",
    \"time\": \"20:34\",
    \"role\": \"client\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/reservations/activity-detail"
);

const params = {
    "date": "2025-02-18",
    "time": "14:00",
    "role": "supplier",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "date": "2026-02-18",
    "time": "20:34",
    "role": "client"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reservations/activity-detail';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'date' => '2025-02-18',
            'time' => '14:00',
            'role' => 'supplier',
        ],
        'json' => [
            'date' => '2026-02-18',
            'time' => '20:34',
            'role' => 'client',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reservations/activity-detail'
payload = {
    "date": "2026-02-18",
    "time": "20:34",
    "role": "client"
}
params = {
  'date': '2025-02-18',
  'time': '14:00',
  'role': 'supplier',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/reservations/activity-detail

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

date   string   

The date of the activity (format: YYYY-MM-DD). Example: 2025-02-18

time   string   

The time of the activity (format: HH:MM). Example: 14:00

role   string   

The role of the user making the request. Must be one of supplier, client, or admin. Example: supplier

Body Parameters

date   string   

Must be a valid date in the format Y-m-d. Example: 2026-02-18

time   string   

Must be a valid date in the format H:i. Example: 20:34

role   string   

Example: client

Must be one of:
  • supplier
  • client
  • admin

Store a reservation

requires authentication

This endpoint allows creating a new reservation.

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/reservations" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"class_id\": 16,
    \"user_id\": 4,
    \"requires_invoice\": true,
    \"timezone\": \"Europe\\/Madrid\",
    \"assistants\": [
        {
            \"materials\": [
                {
                    \"amount\": 40
                }
            ]
        }
    ],
    \"schedules\": [
        {
            \"start_time\": \"2025-02-21 16:54:02\",
            \"end_time\": \"2025-02-21 18:00:00\"
        }
    ]
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/reservations"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "class_id": 16,
    "user_id": 4,
    "requires_invoice": true,
    "timezone": "Europe\/Madrid",
    "assistants": [
        {
            "materials": [
                {
                    "amount": 40
                }
            ]
        }
    ],
    "schedules": [
        {
            "start_time": "2025-02-21 16:54:02",
            "end_time": "2025-02-21 18:00:00"
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reservations';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => \Symfony\Component\VarExporter\Internal\Hydrator::hydrate(
            $o = [
                clone (\Symfony\Component\VarExporter\Internal\Registry::$prototypes['stdClass'] ?? \Symfony\Component\VarExporter\Internal\Registry::p('stdClass')),
            ],
            null,
            [
                'stdClass' => [
                    'start_time' => [
                        '2025-02-21 16:54:02',
                    ],
                    'end_time' => [
                        '2025-02-21 18:00:00',
                    ],
                ],
            ],
            [
                'class_id' => 16,
                'user_id' => 4,
                'requires_invoice' => true,
                'timezone' => 'Europe/Madrid',
                'assistants' => [
                    [
                        'materials' => [
                            [
                                'amount' => 40,
                            ],
                        ],
                    ],
                ],
                'schedules' => [
                    $o[0],
                ],
            ],
            []
        ),
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reservations'
payload = {
    "class_id": 16,
    "user_id": 4,
    "requires_invoice": true,
    "timezone": "Europe\/Madrid",
    "assistants": [
        {
            "materials": [
                {
                    "amount": 40
                }
            ]
        }
    ],
    "schedules": [
        {
            "start_time": "2025-02-21 16:54:02",
            "end_time": "2025-02-21 18:00:00"
        }
    ]
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (201):


{
    "success": true,
    "message": "Reservation created successfully",
    "data": {
        "reservation_id": 81,
        "reservation_status": "pending",
        "total_amount": 89,
        "financial_details": {
            "subtotal": 25,
            "administrative_fee": 5,
            "tax_rate": 21,
            "iva": 6.3,
            "total": 36.3
        },
        "class": {
            "id": 16,
            "title": "alpinismo",
            "address": "espana",
            "timezone": "Europe/Madrid"
        },
        "schedules": [
            {
                "start_time": "2025-02-21 16:54:02",
                "end_time": "2025-02-21 18:00:00",
                "schedule_amount": 25,
                "total_amount": 42,
                "assistants": [
                    {
                        "full_name": "Juan Pérez",
                        "is_child": false,
                        "materials": [
                            {
                                "material_id": 1,
                                "amount": 10
                            },
                            {
                                "material_id": 2,
                                "amount": 7
                            }
                        ]
                    },
                    {
                        "full_name": "María González",
                        "is_child": true,
                        "materials": []
                    }
                ]
            }
        ]
    }
}
 

Example response (400):


{
    "success": false,
    "message": "Invalid request",
    "errors": {
        "class_id": [
            "The class ID is required."
        ],
        "user_id": [
            "The user ID is required."
        ]
    }
}
 

Example response (422):


{
    "success": false,
    "message": "Unprocessable entity",
    "errors": {
        "timezone": [
            "The timezone must be a valid timezone."
        ]
    }
}
 

Request      

POST api/v1/reservations

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

class_id   integer   

The class ID to which the reservation is made. Example: 16

user_id   integer   

The user ID making the reservation. Example: 4

requires_invoice   boolean  optional  

Whether the client requires an invoice from the supplier. Example: true

timezone   string   

The timezone for the reservation. Example: Europe/Madrid

assistants   string[]   

List of assistants in the reservation.

full_name   string   

The name of the assistant. Example: Juan Pérez

is_child   boolean   

Whether the assistant is a child. Example: false

level_id   integer  optional  

The id of an existing record in the levels table. Example: 2

birthday_date_at   string   

The assistant's birthdate in YYYY-MM-DD format. Example: 1993-01-08

email   string  optional  

El campo value debe ser una dirección de correo válida. Example: [email protected]

materials   string[]  optional  

The materials for the assistant.

material_id   integer   

The material ID. Example: 1

amount   integer   

The amount of material. Example: 10

schedules   string[]   

List of schedules for the reservation.

start_time   string   

The start time of the schedule. Example: 2025-02-21 16:54:02

end_time   string   

The end time of the schedule. Example: 2025-02-21 18:00:00

Change reservation date and time

Allows a user (client, provider, or administrator) to change the date and time of a reservation. Clients can only change their own reservations, providers can change reservations for their classes, and administrators can modify any reservation.

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/reservations/123/change" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"role\": \"\\\"client\\\"\\n[\\n  {\\n    \\\"current_start_date_at\\\": \\\"2025-02-21 18:00:00\\\",\\n    \\\"current_end_date_at\\\": \\\"2025-02-21 19:30:00\\\",\\n    \\\"new_start_date_at\\\": \\\"2025-02-22 19:30:00\\\",\\n    \\\"new_end_date_at\\\": \\\"2025-02-22 21:00:00\\\"\\n  }\\n]\",
    \"changes\": [
        \"corporis\"
    ]
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/reservations/123/change"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "role": "\"client\"\n[\n  {\n    \"current_start_date_at\": \"2025-02-21 18:00:00\",\n    \"current_end_date_at\": \"2025-02-21 19:30:00\",\n    \"new_start_date_at\": \"2025-02-22 19:30:00\",\n    \"new_end_date_at\": \"2025-02-22 21:00:00\"\n  }\n]",
    "changes": [
        "corporis"
    ]
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reservations/123/change';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'role' => '"client"'."\n"
                .'['."\n"
                .'  {'."\n"
                .'    "current_start_date_at": "2025-02-21 18:00:00",'."\n"
                .'    "current_end_date_at": "2025-02-21 19:30:00",'."\n"
                .'    "new_start_date_at": "2025-02-22 19:30:00",'."\n"
                .'    "new_end_date_at": "2025-02-22 21:00:00"'."\n"
                .'  }'."\n"
                .']',
            'changes' => [
                'corporis',
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reservations/123/change'
payload = {
    "role": "\"client\"\n[\n  {\n    \"current_start_date_at\": \"2025-02-21 18:00:00\",\n    \"current_end_date_at\": \"2025-02-21 19:30:00\",\n    \"new_start_date_at\": \"2025-02-22 19:30:00\",\n    \"new_end_date_at\": \"2025-02-22 21:00:00\"\n  }\n]",
    "changes": [
        "corporis"
    ]
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

PUT api/v1/reservations/{reservationId}/change

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

reservationId   string   

The ID of the reservation to be changed. Example: 123

Body Parameters

role   string   

The role of the user making the request. Must be one of: client, supplier, admin. Example: "client" [ { "current_start_date_at": "2025-02-21 18:00:00", "current_end_date_at": "2025-02-21 19:30:00", "new_start_date_at": "2025-02-22 19:30:00", "new_end_date_at": "2025-02-22 21:00:00" } ]

changes   string[]   

The dates and times to be updated. Example:

current_start_date_at   string   

Must be a valid date in the format Y-m-d H:i:s. The start_date_at of an existing record in the reservation_schedules table. Example: 2026-02-18 20:34:40

current_end_date_at   string   

Must be a valid date in the format Y-m-d H:i:s. The end_date_at of an existing record in the reservation_schedules table. Example: 2026-02-18 20:34:40

new_start_date_at   string   

Must be a valid date in the format Y-m-d H:i:s. El campo value debe ser una fecha posterior o igual a today. Example: 2077-04-18

new_end_date_at   string   

Must be a valid date in the format Y-m-d H:i:s. El campo value debe ser una fecha posterior o igual a changes.*.new_start_date_at. Example: 2059-02-17

Update a reservation

This endpoint allows updating an existing reservation's details such as status, invoice requirement, timezone, and assistant information. Different roles have different permissions:

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/reservations/123" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"requires_invoice\": true,
    \"status\": \"\\\"approved\\\"\",
    \"timezone\": \"\\\"Europe\\/Madrid\\\"\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/reservations/123"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "requires_invoice": true,
    "status": "\"approved\"",
    "timezone": "\"Europe\/Madrid\""
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reservations/123';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'requires_invoice' => true,
            'status' => '"approved"',
            'timezone' => '"Europe/Madrid"',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reservations/123'
payload = {
    "requires_invoice": true,
    "status": "\"approved\"",
    "timezone": "\"Europe\/Madrid\""
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (400):


{
    "success": false,
    "message": "Invalid request",
    "errors": {
        "class_id": [
            "The class ID is required."
        ],
        "user_id": [
            "The user ID is required."
        ]
    }
}
 

Example response (422):


{
    "success": false,
    "message": "Unprocessable entity",
    "errors": {
        "timezone": [
            "The timezone must be a valid timezone."
        ]
    }
}
 

Request      

PUT api/v1/reservations/{reservationId}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

reservationId   string   

The ID of the reservation to update. Example: 123

Body Parameters

requires_invoice   boolean  optional  

Whether the client requires an invoice. Example: true

status   string  optional  

Status of the reservation (admin or supplier only). Example: "approved"

timezone   string  optional  

The timezone for the reservation. Example: "Europe/Madrid"

Mark a schedule as taught

Allows a provider or administrator to mark a class session as taught.

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/reservations/schedules/456/mark-as-taught" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"role\": \"\\\"supplier\\\"\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/reservations/schedules/456/mark-as-taught"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "role": "\"supplier\""
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reservations/schedules/456/mark-as-taught';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'role' => '"supplier"',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reservations/schedules/456/mark-as-taught'
payload = {
    "role": "\"supplier\""
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

PUT api/v1/reservations/schedules/{scheduleId}/mark-as-taught

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

scheduleId   string   

The ID of the schedule to be marked as taught. Example: 456

Body Parameters

role   string   

The role of the user making the request. Must be "supplier". Example: "supplier"

Cancel a reservation

Allows the client, provider, or administrator to cancel a reservation. The reservation status will be updated to "cancelled", and based on the cancellation policy, a refund will be processed to the user's wallet.

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/reservations/123/cancel" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"role\": \"\\\"client\\\"\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/reservations/123/cancel"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "role": "\"client\""
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reservations/123/cancel';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'role' => '"client"',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reservations/123/cancel'
payload = {
    "role": "\"client\""
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

POST api/v1/reservations/{reservationId}/cancel

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

reservationId   string   

The ID of the reservation to be cancelled. Example: 123

Body Parameters

role   string   

The role of the user performing the cancellation (client, supplier, admin). Example: "client"

List reservations with payments (Admin only)

This endpoint returns a paginated list of reservations with their associated payments. Only administrators can access this endpoint.

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/reservations/payments" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"perPage\": 76,
    \"page\": 1,
    \"status\": \"pending\",
    \"start_date\": \"2026-02-18\",
    \"end_date\": \"2085-02-17\",
    \"search\": \"rllcpizlkzgntejh\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/reservations/payments"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "perPage": 76,
    "page": 1,
    "status": "pending",
    "start_date": "2026-02-18",
    "end_date": "2085-02-17",
    "search": "rllcpizlkzgntejh"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reservations/payments';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'perPage' => 76,
            'page' => 1,
            'status' => 'pending',
            'start_date' => '2026-02-18',
            'end_date' => '2085-02-17',
            'search' => 'rllcpizlkzgntejh',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reservations/payments'
payload = {
    "perPage": 76,
    "page": 1,
    "status": "pending",
    "start_date": "2026-02-18",
    "end_date": "2085-02-17",
    "search": "rllcpizlkzgntejh"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/reservations/payments

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

perPage   integer   

El campo value debe ser al menos 1. Example: 76

page   integer  optional  

This field is required when perPage is present. Example: 1

status   string  optional  

Example: pending

Must be one of:
  • pending
  • approved
  • in_progress
  • completed
  • cancelled
start_date   string  optional  

Must be a valid date in the format Y-m-d. Example: 2026-02-18

end_date   string  optional  

Must be a valid date in the format Y-m-d. El campo value debe ser una fecha posterior o igual a start_date. Example: 2085-02-17

search   string  optional  

El campo value no debe contener más de 255 caracteres. Example: rllcpizlkzgntejh

Get available dates for a specific class

requires authentication

This endpoint returns a list of available dates for a specific class.

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/reservations/sint/available-schedules?class_id=16" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/reservations/sint/available-schedules"
);

const params = {
    "class_id": "16",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reservations/sint/available-schedules';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'class_id' => '16',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reservations/sint/available-schedules'
params = {
  'class_id': '16',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "message": "Available dates fetched successfully",
    "data": [
        {
            "start_date": "2025-02-21 10:00:00",
            "end_date": "2025-02-21 12:00:00",
            "status": "available",
            "max_capacity": 20,
            "current_capacity": 5,
            "modality": "Colectiva",
            "simultaneous_activities": 2
        },
        {
            "start_date": "2025-02-21 12:30:00",
            "end_date": "2025-02-21 14:30:00",
            "status": "reserved",
            "max_capacity": 20,
            "current_capacity": 20,
            "modality": "Privada",
            "simultaneous_activities": 1
        }
    ]
}
 

Example response (400):


{
    "success": false,
    "message": "Invalid request",
    "errors": {
        "class_id": [
            "The class ID is required."
        ],
        "user_id": [
            "The user ID is required."
        ]
    }
}
 

Request      

GET api/v1/reservations/{classId}/available-schedules

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

classId   string   

Example: sint

Query Parameters

class_id   integer   

The class ID to get available dates for. Example: 16

Review management

APIs for managing resources review management

Review

Endpoints associated with review

Store review

requires authentication

This endpoint allows create a new review

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/reviews" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "class_id=placeat"\
    --form "reservation_id=praesentium"\
    --form "rating=5"\
    --form "comment=socdw"\
    --form "images[]=@/tmp/php7vWoPp" 
const url = new URL(
    "https://api.wildoow.com/api/v1/reviews"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('class_id', 'placeat');
body.append('reservation_id', 'praesentium');
body.append('rating', '5');
body.append('comment', 'socdw');
body.append('images[]', document.querySelector('input[name="images[]"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reviews';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'class_id',
                'contents' => 'placeat'
            ],
            [
                'name' => 'reservation_id',
                'contents' => 'praesentium'
            ],
            [
                'name' => 'rating',
                'contents' => '5'
            ],
            [
                'name' => 'comment',
                'contents' => 'socdw'
            ],
            [
                'name' => 'images[]',
                'contents' => fopen('/tmp/php7vWoPp', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reviews'
files = {
  'class_id': (None, 'placeat'),
  'reservation_id': (None, 'praesentium'),
  'rating': (None, '5'),
  'comment': (None, 'socdw'),
  'images[]': open('/tmp/php7vWoPp', 'rb')}
payload = {
    "class_id": "placeat",
    "reservation_id": "praesentium",
    "rating": 5,
    "comment": "socdw"
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, files=files)
response.json()

Example response (201):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/reviews

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

class_id   string   

The id of an existing record in the class_infos table. Example: placeat

reservation_id   string   

The id of an existing record in the reservations table. Example: praesentium

rating   integer   

El campo value debe ser al menos 1. El campo value no debe ser mayor a 5. Example: 5

comment   string  optional  

El campo value no debe contener más de 1000 caracteres. Example: socdw

user_id   string  optional  

The id of an existing record in the users table.

images   file[]  optional  

Must be a file.

Show Review

requires authentication

This endpoint retrieve detail review

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/reviews/voluptas" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/reviews/voluptas"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reviews/voluptas';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reviews/voluptas'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

GET api/v1/reviews/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the review. Example: voluptas

Update a review

requires authentication

This endpoint allow update a review

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/reviews/optio" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"rating\": 2,
    \"comment\": \"askycmqjkgtgjgslmbscpnk\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/reviews/optio"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "rating": 2,
    "comment": "askycmqjkgtgjgslmbscpnk"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reviews/optio';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'rating' => 2,
            'comment' => 'askycmqjkgtgjgslmbscpnk',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reviews/optio'
payload = {
    "rating": 2,
    "comment": "askycmqjkgtgjgslmbscpnk"
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

PUT api/v1/reviews/{id}

PATCH api/v1/reviews/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the review. Example: optio

Body Parameters

rating   integer  optional  

El campo value debe ser al menos 1. El campo value no debe ser mayor a 5. Example: 2

comment   string  optional  

El campo value no debe contener más de 1000 caracteres. Example: askycmqjkgtgjgslmbscpnk

Delete a review

requires authentication

This endpoint allow delete a review

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/reviews/aperiam" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/reviews/aperiam"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reviews/aperiam';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reviews/aperiam'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

DELETE api/v1/reviews/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the review. Example: aperiam

Get total reviews by rating

This endpoint retrieves the total count of reviews for each rating value

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/reviews/rating-stats/totals" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/reviews/rating-stats/totals"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reviews/rating-stats/totals';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reviews/rating-stats/totals'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/reviews/rating-stats/totals

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

List review

This endpoint retrieve list review

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/reviews" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"perPage\": 31,
    \"page\": 14,
    \"order\": \"non\",
    \"sort\": \"exercitationem\",
    \"class_id\": 5,
    \"material_id\": 7,
    \"user_id\": 1,
    \"reservation_id\": 6,
    \"rating\": 1,
    \"is_verified\": false,
    \"is_published\": true
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/reviews"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "perPage": 31,
    "page": 14,
    "order": "non",
    "sort": "exercitationem",
    "class_id": 5,
    "material_id": 7,
    "user_id": 1,
    "reservation_id": 6,
    "rating": 1,
    "is_verified": false,
    "is_published": true
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reviews';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'perPage' => 31,
            'page' => 14,
            'order' => 'non',
            'sort' => 'exercitationem',
            'class_id' => 5,
            'material_id' => 7,
            'user_id' => 1,
            'reservation_id' => 6,
            'rating' => 1,
            'is_verified' => false,
            'is_published' => true,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reviews'
payload = {
    "perPage": 31,
    "page": 14,
    "order": "non",
    "sort": "exercitationem",
    "class_id": 5,
    "material_id": 7,
    "user_id": 1,
    "reservation_id": 6,
    "rating": 1,
    "is_verified": false,
    "is_published": true
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/reviews

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

perPage   integer   

El campo value debe ser al menos 1. Example: 31

page   integer  optional  

This field is required when perPage is present. Example: 14

order   string  optional  

Example: non

sort   string  optional  

This field is required when order is present. Example: exercitationem

class_id   integer  optional  

The id of an existing record in the class_infos table. Example: 5

material_id   integer  optional  

The id of an existing record in the material_classes table. Example: 7

user_id   integer  optional  

The id of an existing record in the users table. Example: 1

reservation_id   integer  optional  

The id of an existing record in the reservations table. Example: 6

rating   integer  optional  

El campo value debe ser al menos 1. El campo value no debe ser mayor a 5. Example: 1

is_verified   boolean  optional  

Example: false

is_published   boolean  optional  

Example: true

Get rating statistics by class

This endpoint retrieves rating statistics for a specific class

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/reviews/rating-stats/classes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"class_id\": 14,
    \"material_id\": 16
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/reviews/rating-stats/classes"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "class_id": 14,
    "material_id": 16
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reviews/rating-stats/classes';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'class_id' => 14,
            'material_id' => 16,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reviews/rating-stats/classes'
payload = {
    "class_id": 14,
    "material_id": 16
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/reviews/rating-stats/classes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

class_id   integer  optional  

This field is required when material_id is not present. The id of an existing record in the class_infos table. Example: 14

material_id   integer  optional  

This field is required when class_id is not present. The id of an existing record in the materials_class table. Example: 16

Get rating statistics by material

This endpoint retrieves rating statistics for a specific material

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/reviews/rating-stats/materials" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"class_id\": 15,
    \"material_id\": 1
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/reviews/rating-stats/materials"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "class_id": 15,
    "material_id": 1
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/reviews/rating-stats/materials';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'class_id' => 15,
            'material_id' => 1,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reviews/rating-stats/materials'
payload = {
    "class_id": 15,
    "material_id": 1
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/reviews/rating-stats/materials

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

class_id   integer  optional  

This field is required when material_id is not present. The id of an existing record in the class_infos table. Example: 15

material_id   integer  optional  

This field is required when class_id is not present. The id of an existing record in the materials_class table. Example: 1

Role management

Assign permissions to role

requires authentication

This endpoint assign permissions to role

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/roles/assign-permissions" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"role\": \"rerum\",
    \"permissions\": [
        \"qui\"
    ]
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/roles/assign-permissions"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "role": "rerum",
    "permissions": [
        "qui"
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/roles/assign-permissions';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'role' => 'rerum',
            'permissions' => [
                'qui',
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/roles/assign-permissions'
payload = {
    "role": "rerum",
    "permissions": [
        "qui"
    ]
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/roles/assign-permissions

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

role   string   

The name of an existing record in the roles table. Example: rerum

permissions   string[]   

The name of an existing record in the permissions table.

Revoke permissions to role

requires authentication

This endpoint revoke permissions to role

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/roles/revoke-permissions" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"role\": \"voluptas\",
    \"permissions\": [
        \"at\"
    ]
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/roles/revoke-permissions"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "role": "voluptas",
    "permissions": [
        "at"
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/roles/revoke-permissions';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'role' => 'voluptas',
            'permissions' => [
                'at',
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/roles/revoke-permissions'
payload = {
    "role": "voluptas",
    "permissions": [
        "at"
    ]
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/roles/revoke-permissions

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

role   string   

The name of an existing record in the roles table. Example: voluptas

permissions   string[]   

The name of an existing record in the permissions table.

Retrieve list roles

requires authentication

This endpoint list roles

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/roles" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/roles"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/roles';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/roles'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Request      

GET api/v1/roles

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Store a new role

requires authentication

This endpoint allows create a new role

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/roles" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"voluptatem\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/roles"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "voluptatem"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/roles';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'name' => 'voluptatem',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/roles'
payload = {
    "name": "voluptatem"
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (201):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/roles

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

name   string   

Example: voluptatem

Retrieve data role

requires authentication

This endpoint allows get show role

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/roles/vel" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/roles/vel"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/roles/vel';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/roles/vel'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Request      

GET api/v1/roles/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the role. Example: vel

Update role

requires authentication

This endpoint allow update role

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/roles/sequi" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"aut\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/roles/sequi"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "aut"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/roles/sequi';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'name' => 'aut',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/roles/sequi'
payload = {
    "name": "aut"
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

PUT api/v1/roles/{id}

PATCH api/v1/roles/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the role. Example: sequi

Body Parameters

name   string   

Example: aut

Delete role

requires authentication

This endpoint allow delete role

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/roles/sit" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/roles/sit"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/roles/sit';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/roles/sit'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

DELETE api/v1/roles/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the role. Example: sit

Retrieve list permission

requires authentication

This endpoint list permission

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/permissions" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/permissions"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/permissions';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/permissions'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Request      

GET api/v1/permissions

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Store a new permission

requires authentication

This endpoint allows create a new permission

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/permissions" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"zjkak\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/permissions"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "zjkak"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/permissions';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'name' => 'zjkak',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/permissions'
payload = {
    "name": "zjkak"
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (201):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/permissions

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

name   string   

El campo value debe contener al menos 2 caracteres. Example: zjkak

Retrieve data permission

requires authentication

This endpoint allows get show permission

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/permissions/et" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/permissions/et"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/permissions/et';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/permissions/et'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Request      

GET api/v1/permissions/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the permission. Example: et

Update permission

requires authentication

This endpoint allow update permission

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/permissions/aut" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"zgarisvtikaariakjfamyu\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/permissions/aut"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "zgarisvtikaariakjfamyu"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/permissions/aut';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'name' => 'zgarisvtikaariakjfamyu',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/permissions/aut'
payload = {
    "name": "zgarisvtikaariakjfamyu"
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

PUT api/v1/permissions/{id}

PATCH api/v1/permissions/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the permission. Example: aut

Body Parameters

name   string   

El campo value debe contener al menos 2 caracteres. Example: zgarisvtikaariakjfamyu

Delete permission

requires authentication

This endpoint allow delete permission

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/permissions/rem" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/permissions/rem"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/permissions/rem';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/permissions/rem'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

DELETE api/v1/permissions/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the permission. Example: rem

Setting management

APIs for managing setting application

List all setting site

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/settings/site" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/settings/site"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/settings/site';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/settings/site'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 


 

Request      

GET api/v1/settings/site

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Update setting

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/settings/site" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"site_name\": \"cpazxejbezfbiiwksbjxm\",
    \"site_description\": \"oojomtfwdvaxoakacvxqcnroqeuwodznoxy\",
    \"site_keywords\": \"iribwuoxwgrycgfzoggvxsnpjdvoacaweccjtfxklnbvnvrex\",
    \"site_profile\": \"oetizushatjnbdzrdkaubizcxshcyqqpiowmxasshbwsaapgqbwpeyxpwwoctjkwyppsmihawbyk\",
    \"site_logo\": \"xdjptsdhgxdjzdxxqheg\",
    \"site_author\": \"mooscbtsnpzoxagt\",
    \"site_address\": \"yopxaoewz\",
    \"site_email\": \"[email protected]\",
    \"site_phone\": \"iczisssisechuwjhjutixouvzhdkntsujnmhfppuwitmmvmvxysalopnnhaeybcarnjkvvyjh\",
    \"site_phone_code\": \"yigkrdschftjkvnbwhpvafkjmcrvkejffwakdrqsxdchiljxtccftxtaujbqwoxarliblzqlngwavtc\",
    \"site_location\": \"pzjphxkemnxecwwldwlqiqqzkpgmwqdaljsozjvvswcfzhunxpzykywoekzpapaswwlueeooqbpsabzuaokxlpsb\",
    \"site_currency\": \"btlklvrtneezycpfoyqnrzxqcpnslsulhfooorlhmcmamtvyoaqywziizjnfdlpqgwgousp\",
    \"site_language\": \"zlvxdzbiqnbayigmrm\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/settings/site"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "site_name": "cpazxejbezfbiiwksbjxm",
    "site_description": "oojomtfwdvaxoakacvxqcnroqeuwodznoxy",
    "site_keywords": "iribwuoxwgrycgfzoggvxsnpjdvoacaweccjtfxklnbvnvrex",
    "site_profile": "oetizushatjnbdzrdkaubizcxshcyqqpiowmxasshbwsaapgqbwpeyxpwwoctjkwyppsmihawbyk",
    "site_logo": "xdjptsdhgxdjzdxxqheg",
    "site_author": "mooscbtsnpzoxagt",
    "site_address": "yopxaoewz",
    "site_email": "[email protected]",
    "site_phone": "iczisssisechuwjhjutixouvzhdkntsujnmhfppuwitmmvmvxysalopnnhaeybcarnjkvvyjh",
    "site_phone_code": "yigkrdschftjkvnbwhpvafkjmcrvkejffwakdrqsxdchiljxtccftxtaujbqwoxarliblzqlngwavtc",
    "site_location": "pzjphxkemnxecwwldwlqiqqzkpgmwqdaljsozjvvswcfzhunxpzykywoekzpapaswwlueeooqbpsabzuaokxlpsb",
    "site_currency": "btlklvrtneezycpfoyqnrzxqcpnslsulhfooorlhmcmamtvyoaqywziizjnfdlpqgwgousp",
    "site_language": "zlvxdzbiqnbayigmrm"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/settings/site';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'site_name' => 'cpazxejbezfbiiwksbjxm',
            'site_description' => 'oojomtfwdvaxoakacvxqcnroqeuwodznoxy',
            'site_keywords' => 'iribwuoxwgrycgfzoggvxsnpjdvoacaweccjtfxklnbvnvrex',
            'site_profile' => 'oetizushatjnbdzrdkaubizcxshcyqqpiowmxasshbwsaapgqbwpeyxpwwoctjkwyppsmihawbyk',
            'site_logo' => 'xdjptsdhgxdjzdxxqheg',
            'site_author' => 'mooscbtsnpzoxagt',
            'site_address' => 'yopxaoewz',
            'site_email' => '[email protected]',
            'site_phone' => 'iczisssisechuwjhjutixouvzhdkntsujnmhfppuwitmmvmvxysalopnnhaeybcarnjkvvyjh',
            'site_phone_code' => 'yigkrdschftjkvnbwhpvafkjmcrvkejffwakdrqsxdchiljxtccftxtaujbqwoxarliblzqlngwavtc',
            'site_location' => 'pzjphxkemnxecwwldwlqiqqzkpgmwqdaljsozjvvswcfzhunxpzykywoekzpapaswwlueeooqbpsabzuaokxlpsb',
            'site_currency' => 'btlklvrtneezycpfoyqnrzxqcpnslsulhfooorlhmcmamtvyoaqywziizjnfdlpqgwgousp',
            'site_language' => 'zlvxdzbiqnbayigmrm',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/settings/site'
payload = {
    "site_name": "cpazxejbezfbiiwksbjxm",
    "site_description": "oojomtfwdvaxoakacvxqcnroqeuwodznoxy",
    "site_keywords": "iribwuoxwgrycgfzoggvxsnpjdvoacaweccjtfxklnbvnvrex",
    "site_profile": "oetizushatjnbdzrdkaubizcxshcyqqpiowmxasshbwsaapgqbwpeyxpwwoctjkwyppsmihawbyk",
    "site_logo": "xdjptsdhgxdjzdxxqheg",
    "site_author": "mooscbtsnpzoxagt",
    "site_address": "yopxaoewz",
    "site_email": "[email protected]",
    "site_phone": "iczisssisechuwjhjutixouvzhdkntsujnmhfppuwitmmvmvxysalopnnhaeybcarnjkvvyjh",
    "site_phone_code": "yigkrdschftjkvnbwhpvafkjmcrvkejffwakdrqsxdchiljxtccftxtaujbqwoxarliblzqlngwavtc",
    "site_location": "pzjphxkemnxecwwldwlqiqqzkpgmwqdaljsozjvvswcfzhunxpzykywoekzpapaswwlueeooqbpsabzuaokxlpsb",
    "site_currency": "btlklvrtneezycpfoyqnrzxqcpnslsulhfooorlhmcmamtvyoaqywziizjnfdlpqgwgousp",
    "site_language": "zlvxdzbiqnbayigmrm"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/settings/site

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

site_name   string  optional  

El campo value debe contener al menos 2 caracteres. Example: cpazxejbezfbiiwksbjxm

site_description   string  optional  

El campo value debe contener al menos 2 caracteres. Example: oojomtfwdvaxoakacvxqcnroqeuwodznoxy

site_keywords   string  optional  

El campo value debe contener al menos 2 caracteres. Example: iribwuoxwgrycgfzoggvxsnpjdvoacaweccjtfxklnbvnvrex

site_profile   string  optional  

El campo value debe contener al menos 2 caracteres. Example: oetizushatjnbdzrdkaubizcxshcyqqpiowmxasshbwsaapgqbwpeyxpwwoctjkwyppsmihawbyk

site_logo   string  optional  

El campo value debe contener al menos 2 caracteres. Example: xdjptsdhgxdjzdxxqheg

site_author   string  optional  

El campo value debe contener al menos 2 caracteres. Example: mooscbtsnpzoxagt

site_address   string  optional  

El campo value debe contener al menos 2 caracteres. Example: yopxaoewz

site_email   string  optional  

El campo value debe contener al menos 2 caracteres. Example: [email protected]

site_phone   string  optional  

El campo value debe contener al menos 2 caracteres. Example: iczisssisechuwjhjutixouvzhdkntsujnmhfppuwitmmvmvxysalopnnhaeybcarnjkvvyjh

site_phone_code   string  optional  

El campo value debe contener al menos 2 caracteres. Example: yigkrdschftjkvnbwhpvafkjmcrvkejffwakdrqsxdchiljxtccftxtaujbqwoxarliblzqlngwavtc

site_location   string  optional  

El campo value debe contener al menos 2 caracteres. Example: pzjphxkemnxecwwldwlqiqqzkpgmwqdaljsozjvvswcfzhunxpzykywoekzpapaswwlueeooqbpsabzuaokxlpsb

site_currency   string  optional  

El campo value debe contener al menos 2 caracteres. Example: btlklvrtneezycpfoyqnrzxqcpnslsulhfooorlhmcmamtvyoaqywziizjnfdlpqgwgousp

site_language   string  optional  

El campo value debe contener al menos 2 caracteres. Example: zlvxdzbiqnbayigmrm

Update setting google

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/settings/google" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"google_client_id\": \"lyxfluyjkryyoottuwnqydwnahiqahyugtardyzlvookgvswkttnrqlcgcizyrxghxoexsqevbhx\",
    \"google_client_secret\": \"zvjbdfofmbftkvwhacgpnjhmxgebzgveruqjmcjzlakgkptwh\",
    \"google_redirect\": \"jkpjjgvbkooutgxsrfsgokxvgizrmzynlvziquatieozmmciq\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/settings/google"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "google_client_id": "lyxfluyjkryyoottuwnqydwnahiqahyugtardyzlvookgvswkttnrqlcgcizyrxghxoexsqevbhx",
    "google_client_secret": "zvjbdfofmbftkvwhacgpnjhmxgebzgveruqjmcjzlakgkptwh",
    "google_redirect": "jkpjjgvbkooutgxsrfsgokxvgizrmzynlvziquatieozmmciq"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/settings/google';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'google_client_id' => 'lyxfluyjkryyoottuwnqydwnahiqahyugtardyzlvookgvswkttnrqlcgcizyrxghxoexsqevbhx',
            'google_client_secret' => 'zvjbdfofmbftkvwhacgpnjhmxgebzgveruqjmcjzlakgkptwh',
            'google_redirect' => 'jkpjjgvbkooutgxsrfsgokxvgizrmzynlvziquatieozmmciq',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/settings/google'
payload = {
    "google_client_id": "lyxfluyjkryyoottuwnqydwnahiqahyugtardyzlvookgvswkttnrqlcgcizyrxghxoexsqevbhx",
    "google_client_secret": "zvjbdfofmbftkvwhacgpnjhmxgebzgveruqjmcjzlakgkptwh",
    "google_redirect": "jkpjjgvbkooutgxsrfsgokxvgizrmzynlvziquatieozmmciq"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/settings/google

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

google_client_id   string  optional  

El campo value debe contener al menos 6 caracteres. Example: lyxfluyjkryyoottuwnqydwnahiqahyugtardyzlvookgvswkttnrqlcgcizyrxghxoexsqevbhx

google_client_secret   string  optional  

El campo value debe contener al menos 6 caracteres. Example: zvjbdfofmbftkvwhacgpnjhmxgebzgveruqjmcjzlakgkptwh

google_redirect   string  optional  

El campo value debe contener al menos 2 caracteres. Example: jkpjjgvbkooutgxsrfsgokxvgizrmzynlvziquatieozmmciq

List all setting google

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/settings/google" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/settings/google"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/settings/google';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/settings/google'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/settings/google

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Cancellation

Endpoints associated with setting cancellation

List all setting cancellation

This endpoint retrieve list setting cancellation

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/settings/cancellations?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/settings/cancellations"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/settings/cancellations';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/settings/cancellations'
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/settings/cancellations

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Get cancellation policy based on booking duration

This endpoint retrieves the cancellation policy for a specific booking duration

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/settings/cancellations/2?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/settings/cancellations/2"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/settings/cancellations/2';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/settings/cancellations/2'
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/settings/cancellations/{bookingDays}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

bookingDays   integer   

The number of days for the booking. Example: 2

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Calculate refund percentage based on booking duration and days before

This endpoint calculates the refund percentage for a booking cancellation

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/settings/cancellations/2/refund/3?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/settings/cancellations/2/refund/3"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/settings/cancellations/2/refund/3';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/settings/cancellations/2/refund/3'
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/settings/cancellations/{bookingDays}/refund/{daysBefore}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

bookingDays   integer   

The number of days for the booking. Example: 2

daysBefore   integer   

The number of days before the booking start date. Example: 3

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Update cancellation policies

requires authentication

This endpoint updates all cancellation policies

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/settings/cancellations" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"cancellation_policies\": {
        \"0\": {
            \"name\": \"at\",
            \"policies\": [
                {
                    \"refund_percentage\": 6,
                    \"days_before\": 17,
                    \"description\": \"Est et odit modi maxime sint dolor.\"
                }
            ]
        },
        \"one_day\": [],
        \"two_days\": [],
        \"less_than_seven_days\": [],
        \"more_than_seven_days\": []
    }
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/settings/cancellations"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "cancellation_policies": {
        "0": {
            "name": "at",
            "policies": [
                {
                    "refund_percentage": 6,
                    "days_before": 17,
                    "description": "Est et odit modi maxime sint dolor."
                }
            ]
        },
        "one_day": [],
        "two_days": [],
        "less_than_seven_days": [],
        "more_than_seven_days": []
    }
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/settings/cancellations';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'cancellation_policies' => [
                [
                    'name' => 'at',
                    'policies' => [
                        [
                            'refund_percentage' => 6,
                            'days_before' => 17,
                            'description' => 'Est et odit modi maxime sint dolor.',
                        ],
                    ],
                ],
                'one_day' => [],
                'two_days' => [],
                'less_than_seven_days' => [],
                'more_than_seven_days' => [],
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/settings/cancellations'
payload = {
    "cancellation_policies": {
        "0": {
            "name": "at",
            "policies": [
                {
                    "refund_percentage": 6,
                    "days_before": 17,
                    "description": "Est et odit modi maxime sint dolor."
                }
            ]
        },
        "one_day": [],
        "two_days": [],
        "less_than_seven_days": [],
        "more_than_seven_days": []
    }
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()

Example response (200):


{
  "message": "Cancellation policies updated successfully",
  "data": {
    // Updated policies data
  }
}
 

Example response (422):


{
    "message": "The given data was invalid.",
    "errors": {
        "cancellation_policies": [
            "The cancellation policies field is required."
        ]
    }
}
 

Request      

PUT api/v1/settings/cancellations

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

cancellation_policies   object[]   
one_day   object   
two_days   object   
less_than_seven_days   object   
more_than_seven_days   object   
name   string   

Example: at

policies   object[]   
refund_percentage   integer   

El campo value debe ser al menos 0. El campo value no debe ser mayor a 100. Example: 6

days_before   integer   

El campo value debe ser al menos 0. Example: 17

description   string   

Example: Est et odit modi maxime sint dolor.

Financial

Endpoints associated with setting financial

Get financial settings

This endpoint retrieves all financial settings

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/settings/financial" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/settings/financial"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/settings/financial';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/settings/financial'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "message": "List of financial settings",
    "data": {
        "tax_rate": 16,
        "service_fee_percentage": 10,
        "administrative_fee": 5
    }
}
 

Request      

GET api/v1/settings/financial

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Update financial settings

requires authentication

This endpoint updates financial settings

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/settings/financial" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"tax_rate\": 23,
    \"service_fee_percentage\": 25,
    \"administrative_fee\": 16
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/settings/financial"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "tax_rate": 23,
    "service_fee_percentage": 25,
    "administrative_fee": 16
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/settings/financial';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'tax_rate' => 23,
            'service_fee_percentage' => 25,
            'administrative_fee' => 16,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/settings/financial'
payload = {
    "tax_rate": 23,
    "service_fee_percentage": 25,
    "administrative_fee": 16
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "message": "Financial settings updated successfully",
    "data": {
        "tax_rate": 16,
        "service_fee_percentage": 10,
        "administrative_fee": 5
    }
}
 

Request      

PUT api/v1/settings/financial

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

tax_rate   number  optional  

El campo value debe ser al menos 0. El campo value no debe ser mayor a 100. Example: 23

service_fee_percentage   number  optional  

El campo value debe ser al menos 0. El campo value no debe ser mayor a 100. Example: 25

administrative_fee   number  optional  

El campo value debe ser al menos 0. Example: 16

Reservation

Endpoints associated with setting reservation

Get reservation settings

This endpoint retrieves all reservation settings

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/settings/reservations" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/settings/reservations"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/settings/reservations';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/settings/reservations'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/settings/reservations

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Update reservation settings

requires authentication

This endpoint updates reservation settings

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/settings/reservations" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"days_reservation_change\": 78,
    \"commission_value\": 19
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/settings/reservations"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "days_reservation_change": 78,
    "commission_value": 19
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/settings/reservations';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'days_reservation_change' => 78,
            'commission_value' => 19,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/settings/reservations'
payload = {
    "days_reservation_change": 78,
    "commission_value": 19
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()

Example response (200):


{
  "message": "Reservation settings updated successfully",
  "data": {
    //
  }
}
 

Request      

PUT api/v1/settings/reservations

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

days_reservation_change   number  optional  

El campo value debe ser al menos 1. Example: 78

commission_value   number  optional  

El campo value debe ser al menos 0. Example: 19

Social Sharing

APIs for managing resources social sharing

Social Networks

Endpoints associated with social networks

List active social networks with url sharing

requires authentication

This endpoint retrieve all active social networksa with url sharing

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/social-networks/sharing?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"url\": \"http:\\/\\/www.hickle.org\\/mollitia-culpa-assumenda-ducimus-non-asperiores-placeat-illo.html\",
    \"text\": \"qnapfnylobpphtgxpveukkbeqfbpmbtgpvyflbxcmluqbtkilwtygqygopernqtphgcyr\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/social-networks/sharing"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "url": "http:\/\/www.hickle.org\/mollitia-culpa-assumenda-ducimus-non-asperiores-placeat-illo.html",
    "text": "qnapfnylobpphtgxpveukkbeqfbpmbtgpvyflbxcmluqbtkilwtygqygopernqtphgcyr"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/social-networks/sharing';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'url' => 'http://www.hickle.org/mollitia-culpa-assumenda-ducimus-non-asperiores-placeat-illo.html',
            'text' => 'qnapfnylobpphtgxpveukkbeqfbpmbtgpvyflbxcmluqbtkilwtygqygopernqtphgcyr',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/social-networks/sharing'
payload = {
    "url": "http:\/\/www.hickle.org\/mollitia-culpa-assumenda-ducimus-non-asperiores-placeat-illo.html",
    "text": "qnapfnylobpphtgxpveukkbeqfbpmbtgpvyflbxcmluqbtkilwtygqygopernqtphgcyr"
}
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Social Networks sharing",
    "data": "Array"
}
 

Request      

GET api/v1/social-networks/sharing

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

url   string   

Example: http://www.hickle.org/mollitia-culpa-assumenda-ducimus-non-asperiores-placeat-illo.html

text   string  optional  

El campo value debe contener al menos 2 caracteres. Example: qnapfnylobpphtgxpveukkbeqfbpmbtgpvyflbxcmluqbtkilwtygqygopernqtphgcyr

List social networks

requires authentication

This endpoint retrieve all social networks

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/social-networks?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"order\": \"eius\",
    \"sort\": \"eligendi\",
    \"name\": \"olm\",
    \"is_active\": true,
    \"perPage\": 33,
    \"page\": 5
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/social-networks"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "order": "eius",
    "sort": "eligendi",
    "name": "olm",
    "is_active": true,
    "perPage": 33,
    "page": 5
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/social-networks';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'order' => 'eius',
            'sort' => 'eligendi',
            'name' => 'olm',
            'is_active' => true,
            'perPage' => 33,
            'page' => 5,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/social-networks'
payload = {
    "order": "eius",
    "sort": "eligendi",
    "name": "olm",
    "is_active": true,
    "perPage": 33,
    "page": 5
}
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Social networks List",
    "data": "Array"
}
 

Request      

GET api/v1/social-networks

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

order   string  optional  

Example: eius

sort   string  optional  

This field is required when order is present. Example: eligendi

name   string  optional  

El campo value debe contener al menos 2 caracteres. Example: olm

is_active   boolean  optional  

Example: true

perPage   integer  optional  

El campo value debe ser al menos 1. Example: 33

page   integer  optional  

This field is required when perPage is present. Example: 5

Show social network

requires authentication

This endpoint retrieve detail social network

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/social-networks/tempore?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/social-networks/tempore"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/social-networks/tempore';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/social-networks/tempore'
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Social network show",
    "data": "Object"
}
 

Request      

GET api/v1/social-networks/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the social network. Example: tempore

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Update a social network

requires authentication

This endpoint allow update a social network

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/social-networks/quis?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"translations\": {
        \"es\": {
            \"name\": \"quod\"
        },
        \"en\": {
            \"name\": \"consectetur\"
        }
    },
    \"is_active\": false,
    \"url_logo\": \"affxhdxfhmq\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/social-networks/quis"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "translations": {
        "es": {
            "name": "quod"
        },
        "en": {
            "name": "consectetur"
        }
    },
    "is_active": false,
    "url_logo": "affxhdxfhmq"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/social-networks/quis';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'translations' => [
                'es' => [
                    'name' => 'quod',
                ],
                'en' => [
                    'name' => 'consectetur',
                ],
            ],
            'is_active' => false,
            'url_logo' => 'affxhdxfhmq',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/social-networks/quis'
payload = {
    "translations": {
        "es": {
            "name": "quod"
        },
        "en": {
            "name": "consectetur"
        }
    },
    "is_active": false,
    "url_logo": "affxhdxfhmq"
}
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Social network update",
    "data": "Object"
}
 

Request      

PUT api/v1/social-networks/{social_network}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

social_network   string   

Example: quis

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

translations   object  optional  
es   object  optional  
name   string  optional  

Example: quod

en   object  optional  
name   string  optional  

Example: consectetur

is_active   boolean  optional  

Example: false

url_logo   string  optional  

El campo value debe contener al menos 1 caracteres. Example: affxhdxfhmq

Supplier management

APIs for managing resources supplier management

Materials

Endpoints associated with supplier materials

List materials

This endpoint retrieve list materials

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/suppliers/materials?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"order\": \"voluptate\",
    \"sort\": \"occaecati\",
    \"perPage\": 17,
    \"page\": 16,
    \"activity_id\": 17
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/materials"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "order": "voluptate",
    "sort": "occaecati",
    "perPage": 17,
    "page": 16,
    "activity_id": 17
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/materials';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'order' => 'voluptate',
            'sort' => 'occaecati',
            'perPage' => 17,
            'page' => 16,
            'activity_id' => 17,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/materials'
payload = {
    "order": "voluptate",
    "sort": "occaecati",
    "perPage": 17,
    "page": 16,
    "activity_id": 17
}
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/suppliers/materials

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

order   string  optional  

Example: voluptate

sort   string  optional  

This field is required when order is present. Example: occaecati

perPage   integer  optional  

El campo value debe ser al menos 1. Example: 17

page   integer  optional  

This field is required when perPage is present. Example: 16

activity_id   integer  optional  

The id of an existing record in the activities table. Example: 17

Store material

requires authentication

This endpoint allows create a new material

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/suppliers/materials?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"row\": [
        {
            \"translations\": {
                \"es\": {
                    \"name\": \"quae\",
                    \"description\": \"Ut eveniet maxime recusandae rerum.\"
                },
                \"en\": {
                    \"name\": \"sequi\",
                    \"description\": \"Ullam perferendis qui rerum dolores distinctio aspernatur.\"
                }
            },
            \"code\": \"velit\",
            \"amount\": 0.0338235,
            \"is_pack\": false,
            \"is_active\": false,
            \"supplier_id\": 13,
            \"activity_id\": 3
        }
    ]
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/materials"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "row": [
        {
            "translations": {
                "es": {
                    "name": "quae",
                    "description": "Ut eveniet maxime recusandae rerum."
                },
                "en": {
                    "name": "sequi",
                    "description": "Ullam perferendis qui rerum dolores distinctio aspernatur."
                }
            },
            "code": "velit",
            "amount": 0.0338235,
            "is_pack": false,
            "is_active": false,
            "supplier_id": 13,
            "activity_id": 3
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/materials';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'row' => [
                [
                    'translations' => [
                        'es' => [
                            'name' => 'quae',
                            'description' => 'Ut eveniet maxime recusandae rerum.',
                        ],
                        'en' => [
                            'name' => 'sequi',
                            'description' => 'Ullam perferendis qui rerum dolores distinctio aspernatur.',
                        ],
                    ],
                    'code' => 'velit',
                    'amount' => 0.0338235,
                    'is_pack' => false,
                    'is_active' => false,
                    'supplier_id' => 13,
                    'activity_id' => 3,
                ],
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/materials'
payload = {
    "row": [
        {
            "translations": {
                "es": {
                    "name": "quae",
                    "description": "Ut eveniet maxime recusandae rerum."
                },
                "en": {
                    "name": "sequi",
                    "description": "Ullam perferendis qui rerum dolores distinctio aspernatur."
                }
            },
            "code": "velit",
            "amount": 0.0338235,
            "is_pack": false,
            "is_active": false,
            "supplier_id": 13,
            "activity_id": 3
        }
    ]
}
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload, params=params)
response.json()

Example response (201):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/suppliers/materials

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

row   object[]   
translations   object  optional  
es   object  optional  
name   string  optional  

Example: quae

description   string  optional  

Example: Ut eveniet maxime recusandae rerum.

en   object  optional  
name   string  optional  

Example: sequi

description   string  optional  

Example: Ullam perferendis qui rerum dolores distinctio aspernatur.

code   string  optional  

Example: velit

amount   number  optional  

Example: 0.0338235

is_pack   boolean  optional  

Example: false

is_active   boolean  optional  

Example: false

supplier_id   integer  optional  

The id of an existing record in the suppliers table. Example: 13

activity_id   integer   

The id of an existing record in the activities table. Example: 3

Show material

requires authentication

This endpoint retrieve detail material

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/suppliers/materials/consequatur?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/materials/consequatur"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/materials/consequatur';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/materials/consequatur'
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

GET api/v1/suppliers/materials/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the material. Example: consequatur

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Update a material

requires authentication

This endpoint allow update a material

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/suppliers/materials/assumenda" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"row\": [
        {
            \"translations\": {
                \"es\": {
                    \"name\": \"omnis\",
                    \"description\": \"Assumenda magni et accusamus.\"
                },
                \"en\": {
                    \"name\": \"id\",
                    \"description\": \"Odio sint est qui.\"
                }
            },
            \"code\": \"exercitationem\",
            \"amount\": 20,
            \"is_pack\": false,
            \"is_active\": false,
            \"supplier_id\": 6,
            \"activity_id\": 8
        }
    ]
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/materials/assumenda"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "row": [
        {
            "translations": {
                "es": {
                    "name": "omnis",
                    "description": "Assumenda magni et accusamus."
                },
                "en": {
                    "name": "id",
                    "description": "Odio sint est qui."
                }
            },
            "code": "exercitationem",
            "amount": 20,
            "is_pack": false,
            "is_active": false,
            "supplier_id": 6,
            "activity_id": 8
        }
    ]
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/materials/assumenda';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'row' => [
                [
                    'translations' => [
                        'es' => [
                            'name' => 'omnis',
                            'description' => 'Assumenda magni et accusamus.',
                        ],
                        'en' => [
                            'name' => 'id',
                            'description' => 'Odio sint est qui.',
                        ],
                    ],
                    'code' => 'exercitationem',
                    'amount' => 20.0,
                    'is_pack' => false,
                    'is_active' => false,
                    'supplier_id' => 6,
                    'activity_id' => 8,
                ],
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/materials/assumenda'
payload = {
    "row": [
        {
            "translations": {
                "es": {
                    "name": "omnis",
                    "description": "Assumenda magni et accusamus."
                },
                "en": {
                    "name": "id",
                    "description": "Odio sint est qui."
                }
            },
            "code": "exercitationem",
            "amount": 20,
            "is_pack": false,
            "is_active": false,
            "supplier_id": 6,
            "activity_id": 8
        }
    ]
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

PUT api/v1/suppliers/materials/{id}

PATCH api/v1/suppliers/materials/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the material. Example: assumenda

Body Parameters

row   object[]   
translations   object  optional  
es   object  optional  
name   string  optional  

Example: omnis

description   string  optional  

Example: Assumenda magni et accusamus.

en   object  optional  
name   string  optional  

Example: id

description   string  optional  

Example: Odio sint est qui.

code   string  optional  

Example: exercitationem

amount   number  optional  

Example: 20

is_pack   boolean  optional  

Example: false

is_active   boolean  optional  

Example: false

supplier_id   integer  optional  

The id of an existing record in the suppliers table. Example: 6

activity_id   integer   

The id of an existing record in the activities table. Example: 8

Delete a material

requires authentication

This endpoint allow delete a material

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/suppliers/materials/deserunt" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/materials/deserunt"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/materials/deserunt';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/materials/deserunt'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

DELETE api/v1/suppliers/materials/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the material. Example: deserunt

List materials by supplier and activity

requires authentication

Retrieve a list of materials for a specific supplier and activity.

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/suppliers/culpa/materials/activities/omnis?supplier_id=1&activity_id=10&locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"locale\": \"en\",
    \"order\": \"ut\",
    \"sort\": \"et\",
    \"perPage\": 80,
    \"page\": 8
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/culpa/materials/activities/omnis"
);

const params = {
    "supplier_id": "1",
    "activity_id": "10",
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "locale": "en",
    "order": "ut",
    "sort": "et",
    "perPage": 80,
    "page": 8
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/culpa/materials/activities/omnis';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'supplier_id' => '1',
            'activity_id' => '10',
            'locale' => 'es',
        ],
        'json' => [
            'locale' => 'en',
            'order' => 'ut',
            'sort' => 'et',
            'perPage' => 80,
            'page' => 8,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/culpa/materials/activities/omnis'
payload = {
    "locale": "en",
    "order": "ut",
    "sort": "et",
    "perPage": 80,
    "page": 8
}
params = {
  'supplier_id': '1',
  'activity_id': '10',
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

GET api/v1/suppliers/{supplier_id}/materials/activities/{activity_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

supplier_id   string   

The ID of the supplier. Example: culpa

activity_id   string   

The ID of the activity. Example: omnis

Query Parameters

supplier_id   string   

The supplier ID. Example: 1

activity_id   string   

The activity ID. Example: 10

locale   string  optional  

The locale for translations, 'es' for Spanish, 'en' for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

locale   string  optional  

Example: en

Must be one of:
  • es
  • en
order   string  optional  

Example: ut

sort   string  optional  

This field is required when order is present. Example: et

perPage   integer  optional  

El campo value debe ser al menos 1. Example: 80

page   integer  optional  

This field is required when perPage is present. Example: 8

Update bulk material

requires authentication

This endpoint allow update bulk material

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/suppliers/materials/activities/neque" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"row\": [
        {
            \"translations\": {
                \"es\": {
                    \"name\": \"nihil\",
                    \"description\": \"Corrupti enim hic accusantium pariatur voluptatem inventore reiciendis.\"
                },
                \"en\": {
                    \"name\": \"sed\",
                    \"description\": \"Fuga occaecati veritatis sed corrupti.\"
                }
            },
            \"code\": \"pariatur\",
            \"amount\": 2683795.6,
            \"is_pack\": true,
            \"is_active\": true,
            \"supplier_id\": 12,
            \"activity_id\": 9
        }
    ]
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/materials/activities/neque"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "row": [
        {
            "translations": {
                "es": {
                    "name": "nihil",
                    "description": "Corrupti enim hic accusantium pariatur voluptatem inventore reiciendis."
                },
                "en": {
                    "name": "sed",
                    "description": "Fuga occaecati veritatis sed corrupti."
                }
            },
            "code": "pariatur",
            "amount": 2683795.6,
            "is_pack": true,
            "is_active": true,
            "supplier_id": 12,
            "activity_id": 9
        }
    ]
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/materials/activities/neque';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'row' => [
                [
                    'translations' => [
                        'es' => [
                            'name' => 'nihil',
                            'description' => 'Corrupti enim hic accusantium pariatur voluptatem inventore reiciendis.',
                        ],
                        'en' => [
                            'name' => 'sed',
                            'description' => 'Fuga occaecati veritatis sed corrupti.',
                        ],
                    ],
                    'code' => 'pariatur',
                    'amount' => 2683795.6,
                    'is_pack' => true,
                    'is_active' => true,
                    'supplier_id' => 12,
                    'activity_id' => 9,
                ],
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/materials/activities/neque'
payload = {
    "row": [
        {
            "translations": {
                "es": {
                    "name": "nihil",
                    "description": "Corrupti enim hic accusantium pariatur voluptatem inventore reiciendis."
                },
                "en": {
                    "name": "sed",
                    "description": "Fuga occaecati veritatis sed corrupti."
                }
            },
            "code": "pariatur",
            "amount": 2683795.6,
            "is_pack": true,
            "is_active": true,
            "supplier_id": 12,
            "activity_id": 9
        }
    ]
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

PUT api/v1/suppliers/materials/activities/{activity}

PATCH api/v1/suppliers/materials/activities/{activity}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

activity   string   

The activity. Example: neque

Body Parameters

row   object[]   
translations   object  optional  
es   object  optional  
name   string  optional  

Example: nihil

description   string  optional  

Example: Corrupti enim hic accusantium pariatur voluptatem inventore reiciendis.

en   object  optional  
name   string  optional  

Example: sed

description   string  optional  

Example: Fuga occaecati veritatis sed corrupti.

code   string  optional  

Example: pariatur

amount   number  optional  

Example: 2683795.6

is_pack   boolean  optional  

Example: true

is_active   boolean  optional  

Example: true

supplier_id   integer  optional  

The id of an existing record in the suppliers table. Example: 12

activity_id   integer   

The id of an existing record in the activities table. Example: 9

Delete materials by activity

requires authentication

This endpoint allow delete materials by activity

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/suppliers/materials/activities/tempore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/materials/activities/tempore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/materials/activities/tempore';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/materials/activities/tempore'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

DELETE api/v1/suppliers/materials/activities/{activity}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

activity   string   

The activity. Example: tempore

Suppliers

Endpoints associated with supplier suppliers

Show activities with year, experiences and degrees add to supplier

requires authentication

This endpoint retrieve list activities with year, experiences and degrees add to supplier

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/suppliers/activities?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/activities"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/activities';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/activities'
params = {
  'locale': 'es',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

GET api/v1/suppliers/activities

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Delete a degree to supplier

requires authentication

This endpoint allow delete a degree to supplier

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/suppliers/activities/aut/degrees/ut" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/activities/aut/degrees/ut"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/activities/aut/degrees/ut';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/activities/aut/degrees/ut'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

DELETE api/v1/suppliers/activities/{activity}/degrees/{degree}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

activity   string   

The activity. Example: aut

degree   string   

The degree. Example: ut

Delete a experience to supplier

requires authentication

This endpoint allow delete a experience to supplier

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/suppliers/activities/aliquam/experiences/voluptate" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/activities/aliquam/experiences/voluptate"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/activities/aliquam/experiences/voluptate';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/activities/aliquam/experiences/voluptate'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

DELETE api/v1/suppliers/activities/{activity}/experiences/{experience}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

activity   string   

The activity. Example: aliquam

experience   string   

The experience. Example: voluptate

Delete an activity with degrees, experiences and materials to supplier

requires authentication

This endpoint allow delete an activity with degrees, experiences and materials to supplier

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/suppliers/activities/beatae" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/activities/beatae"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/activities/beatae';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/activities/beatae'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

DELETE api/v1/suppliers/activities/{activity}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

activity   string   

The activity. Example: beatae

WhatsApp Notifications

Endpoints for supplier WhatsApp notification configuration

Get WhatsApp notification settings

requires authentication

This endpoint retrieves the current WhatsApp notification settings for the authenticated supplier

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/suppliers/whatsapp-settings" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/whatsapp-settings"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/whatsapp-settings';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/whatsapp-settings'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/suppliers/whatsapp-settings

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Update WhatsApp notification settings

requires authentication

This endpoint updates the WhatsApp notification settings for the authenticated supplier

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/suppliers/whatsapp-settings" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"whatsapp_notifications_enabled\": true,
    \"whatsapp_phone\": \"+34612345678\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/whatsapp-settings"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "whatsapp_notifications_enabled": true,
    "whatsapp_phone": "+34612345678"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/whatsapp-settings';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'whatsapp_notifications_enabled' => true,
            'whatsapp_phone' => '+34612345678',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/whatsapp-settings'
payload = {
    "whatsapp_notifications_enabled": true,
    "whatsapp_phone": "+34612345678"
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

PUT api/v1/suppliers/whatsapp-settings

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

whatsapp_notifications_enabled   boolean   

Enable or disable WhatsApp notifications. Example: true

whatsapp_phone   string  optional  

The phone number to receive WhatsApp notifications (required if enabled). Example: +34612345678

Update WhatsApp notification settings

requires authentication

This endpoint updates the WhatsApp notification settings for the authenticated supplier

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/suppliers/whatsapp-settings" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"whatsapp_notifications_enabled\": true,
    \"whatsapp_phone\": \"+34612345678\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/whatsapp-settings"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "whatsapp_notifications_enabled": true,
    "whatsapp_phone": "+34612345678"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/whatsapp-settings';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'whatsapp_notifications_enabled' => true,
            'whatsapp_phone' => '+34612345678',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/whatsapp-settings'
payload = {
    "whatsapp_notifications_enabled": true,
    "whatsapp_phone": "+34612345678"
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/suppliers/whatsapp-settings

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

whatsapp_notifications_enabled   boolean   

Enable or disable WhatsApp notifications. Example: true

whatsapp_phone   string  optional  

The phone number to receive WhatsApp notifications (required if enabled). Example: +34612345678

Send a test WhatsApp message

requires authentication

This endpoint sends a test WhatsApp message to the supplier's configured phone number

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/suppliers/whatsapp-test" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"phone\": \"34612345678\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/whatsapp-test"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "phone": "34612345678"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/suppliers/whatsapp-test';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'phone' => '34612345678',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/whatsapp-test'
payload = {
    "phone": "34612345678"
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/suppliers/whatsapp-test

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

phone   string  optional  

The phone number to send the test message to. Example: 34612345678

Support management

APIs for managing resources support

Retrieve check healt application.

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/health" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/health"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/health';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/health'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 10
x-ratelimit-remaining: 8
access-control-allow-origin: *
 


 

Request      

GET api/v1/health

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

User Admin management

APIs for managing resources user admin

Retrieve list users

requires authentication

This endpoint list users

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/admin/users" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"perPage\": 41,
    \"page\": 9,
    \"first_name\": \"julrddutqiewbijlsdpemfamxnwymwpghxvoeawufxkghzcwcarlulxhefrifgtwuhpeqlcorjd\",
    \"last_name\": \"dshilqjbhqwgtdnbspd\",
    \"email\": \"[email protected]\",
    \"username\": \"tjnhnxenfjotmojdwkevcfjvmqntitgqfkagjwmepiwobvzoqdioyktallvwnjxefshmzz\",
    \"active\": false,
    \"roles\": [
        \"quis\"
    ],
    \"verifiedSupplier\": false,
    \"fields\": \"ex\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/users"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "perPage": 41,
    "page": 9,
    "first_name": "julrddutqiewbijlsdpemfamxnwymwpghxvoeawufxkghzcwcarlulxhefrifgtwuhpeqlcorjd",
    "last_name": "dshilqjbhqwgtdnbspd",
    "email": "[email protected]",
    "username": "tjnhnxenfjotmojdwkevcfjvmqntitgqfkagjwmepiwobvzoqdioyktallvwnjxefshmzz",
    "active": false,
    "roles": [
        "quis"
    ],
    "verifiedSupplier": false,
    "fields": "ex"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/admin/users';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'perPage' => 41,
            'page' => 9,
            'first_name' => 'julrddutqiewbijlsdpemfamxnwymwpghxvoeawufxkghzcwcarlulxhefrifgtwuhpeqlcorjd',
            'last_name' => 'dshilqjbhqwgtdnbspd',
            'email' => '[email protected]',
            'username' => 'tjnhnxenfjotmojdwkevcfjvmqntitgqfkagjwmepiwobvzoqdioyktallvwnjxefshmzz',
            'active' => false,
            'roles' => [
                'quis',
            ],
            'verifiedSupplier' => false,
            'fields' => 'ex',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/users'
payload = {
    "perPage": 41,
    "page": 9,
    "first_name": "julrddutqiewbijlsdpemfamxnwymwpghxvoeawufxkghzcwcarlulxhefrifgtwuhpeqlcorjd",
    "last_name": "dshilqjbhqwgtdnbspd",
    "email": "[email protected]",
    "username": "tjnhnxenfjotmojdwkevcfjvmqntitgqfkagjwmepiwobvzoqdioyktallvwnjxefshmzz",
    "active": false,
    "roles": [
        "quis"
    ],
    "verifiedSupplier": false,
    "fields": "ex"
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Request      

GET api/v1/admin/users

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

perPage   integer   

El campo value debe ser al menos 1. Example: 41

page   integer  optional  

This field is required when perPage is present. Example: 9

first_name   string  optional  

El campo value debe contener al menos 2 caracteres. Example: julrddutqiewbijlsdpemfamxnwymwpghxvoeawufxkghzcwcarlulxhefrifgtwuhpeqlcorjd

last_name   string  optional  

El campo value debe contener al menos 2 caracteres. Example: dshilqjbhqwgtdnbspd

email   string  optional  

El campo value debe contener al menos 2 caracteres. Example: [email protected]

username   string  optional  

El campo value debe contener al menos 2 caracteres. Example: tjnhnxenfjotmojdwkevcfjvmqntitgqfkagjwmepiwobvzoqdioyktallvwnjxefshmzz

active   boolean  optional  

Example: false

roles   string[]   

The name of an existing record in the roles table.

verifiedSupplier   boolean  optional  

Example: false

fields   string  optional  

Example: ex

User management

APIs for managing resources user

Register a new user

This endpoint register a new user

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/register" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"first_name\": \"juumwqzcntlgrjjxtvvcxiax\",
    \"last_name\": \"qiochevxraizcyffqwvytpko\",
    \"username\": \"clgislsincbvkmjsrxqyjpzswudezpagowghsuedpmauimlissvhgctuworyc\",
    \"email\": \"[email protected]\",
    \"password\": \"blanditiis\",
    \"role\": \"facere\",
    \"referral_code\": \"eos\",
    \"supplier\": {
        \"is_business\": true
    },
    \"password_confirmation\": \"amet\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/register"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "first_name": "juumwqzcntlgrjjxtvvcxiax",
    "last_name": "qiochevxraizcyffqwvytpko",
    "username": "clgislsincbvkmjsrxqyjpzswudezpagowghsuedpmauimlissvhgctuworyc",
    "email": "[email protected]",
    "password": "blanditiis",
    "role": "facere",
    "referral_code": "eos",
    "supplier": {
        "is_business": true
    },
    "password_confirmation": "amet"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/register';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'first_name' => 'juumwqzcntlgrjjxtvvcxiax',
            'last_name' => 'qiochevxraizcyffqwvytpko',
            'username' => 'clgislsincbvkmjsrxqyjpzswudezpagowghsuedpmauimlissvhgctuworyc',
            'email' => '[email protected]',
            'password' => 'blanditiis',
            'role' => 'facere',
            'referral_code' => 'eos',
            'supplier' => [
                'is_business' => true,
            ],
            'password_confirmation' => 'amet',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/register'
payload = {
    "first_name": "juumwqzcntlgrjjxtvvcxiax",
    "last_name": "qiochevxraizcyffqwvytpko",
    "username": "clgislsincbvkmjsrxqyjpzswudezpagowghsuedpmauimlissvhgctuworyc",
    "email": "[email protected]",
    "password": "blanditiis",
    "role": "facere",
    "referral_code": "eos",
    "supplier": {
        "is_business": true
    },
    "password_confirmation": "amet"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (201):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/register

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

first_name   string   

El campo value debe contener al menos 2 caracteres. Example: juumwqzcntlgrjjxtvvcxiax

last_name   string  optional  

El campo value debe contener al menos 2 caracteres. Example: qiochevxraizcyffqwvytpko

username   string   

El campo value debe contener al menos 2 caracteres. Example: clgislsincbvkmjsrxqyjpzswudezpagowghsuedpmauimlissvhgctuworyc

email   string   

El campo value debe ser una dirección de correo válida. Example: [email protected]

password   string   

Example: blanditiis

role   string  optional  

The name of an existing record in the roles table. Example: facere

referral_code   string  optional  

The referral_code of an existing record in the users table. Example: eos

supplier   object  optional  
is_business   boolean  optional  

Example: true

password_confirmation   required  optional  

The password confirmation. Example: amet

Retrieve data profile user

requires authentication

This endpoint allows get profile authenticate user

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/profile" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/profile"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/profile';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/profile'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Request      

GET api/v1/profile

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Update user

requires authentication

This endpoint allow update user

Field id is optional, without id update data profile user

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/users/voluptatibus" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "first_name=uwfpfqwlcektnofhxusdhogmkszownxbgiskfkoycvnrqfkdfdtvlsrzkdpnoyr"\
    --form "last_name=ezdcikeapkxrcgalqvngebfll"\
    --form "role=excepturi"\
    --form "supplier[dni]=nmkuvqqerbazbmlkdktjhrkbayfgluniuhtzwxld"\
    --form "supplier[is_business]=1"\
    --form "supplier[phone]=092915879002066"\
    --form "supplier[iban]=lemjlna"\
    --form "supplier[provider_type]=autonomo"\
    --form "supplier[company_name]=nimxfdcpiwwaritonzcftm"\
    --form "supplier[cif]=yn"\
    --form "supplier[company_address]=gnhyivtxcgtvrbau"\
    --form "supplier[responsible_declaration]="\
    --form "supplier[documents][bank_certificate][]=esse"\
    --form "supplier[documents][dni][]=ea"\
    --form "supplier[documents][dni_back][]=totam"\
    --form "supplier[documents][legal][]=et"\
    --form "supplier[documents][insurance][]=omnis"\
    --form "supplier[documents][sexual_offense][]=autem"\
    --form "supplier[documents][others][]=dolorum"\
    --form "supplier[languages][]=20"\
    --form "supplier[automatic_approval_classes]="\
    --form "supplier[percentage_platform]=153"\
    --form "supplier[administrative_fee]=11742.07"\
    --form "supplier[work_start_hour]=12"\
    --form "supplier[work_end_hour]=4"\
    --form "supplier[cutoff_hours]=17"\
    --form "supplier[response_hours]=19"\
    --form "supplier[next_reservation_margin_hours]=2"\
    --form "supplier[degrees][][degree_id]=12"\
    --form "supplier[degrees][][document]=et"\
    --form "supplier[experiences][][activity_id]=16"\
    --form "supplier[experiences][][year]=3"\
    --form "password_confirmation=aliquid"\
    --form "image=@/tmp/phpTXfNPf" 
const url = new URL(
    "https://api.wildoow.com/api/v1/users/voluptatibus"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('first_name', 'uwfpfqwlcektnofhxusdhogmkszownxbgiskfkoycvnrqfkdfdtvlsrzkdpnoyr');
body.append('last_name', 'ezdcikeapkxrcgalqvngebfll');
body.append('role', 'excepturi');
body.append('supplier[dni]', 'nmkuvqqerbazbmlkdktjhrkbayfgluniuhtzwxld');
body.append('supplier[is_business]', '1');
body.append('supplier[phone]', '092915879002066');
body.append('supplier[iban]', 'lemjlna');
body.append('supplier[provider_type]', 'autonomo');
body.append('supplier[company_name]', 'nimxfdcpiwwaritonzcftm');
body.append('supplier[cif]', 'yn');
body.append('supplier[company_address]', 'gnhyivtxcgtvrbau');
body.append('supplier[responsible_declaration]', '');
body.append('supplier[documents][bank_certificate][]', 'esse');
body.append('supplier[documents][dni][]', 'ea');
body.append('supplier[documents][dni_back][]', 'totam');
body.append('supplier[documents][legal][]', 'et');
body.append('supplier[documents][insurance][]', 'omnis');
body.append('supplier[documents][sexual_offense][]', 'autem');
body.append('supplier[documents][others][]', 'dolorum');
body.append('supplier[languages][]', '20');
body.append('supplier[automatic_approval_classes]', '');
body.append('supplier[percentage_platform]', '153');
body.append('supplier[administrative_fee]', '11742.07');
body.append('supplier[work_start_hour]', '12');
body.append('supplier[work_end_hour]', '4');
body.append('supplier[cutoff_hours]', '17');
body.append('supplier[response_hours]', '19');
body.append('supplier[next_reservation_margin_hours]', '2');
body.append('supplier[degrees][][degree_id]', '12');
body.append('supplier[degrees][][document]', 'et');
body.append('supplier[experiences][][activity_id]', '16');
body.append('supplier[experiences][][year]', '3');
body.append('password_confirmation', 'aliquid');
body.append('image', document.querySelector('input[name="image"]').files[0]);

fetch(url, {
    method: "PUT",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/users/voluptatibus';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'first_name',
                'contents' => 'uwfpfqwlcektnofhxusdhogmkszownxbgiskfkoycvnrqfkdfdtvlsrzkdpnoyr'
            ],
            [
                'name' => 'last_name',
                'contents' => 'ezdcikeapkxrcgalqvngebfll'
            ],
            [
                'name' => 'role',
                'contents' => 'excepturi'
            ],
            [
                'name' => 'supplier[dni]',
                'contents' => 'nmkuvqqerbazbmlkdktjhrkbayfgluniuhtzwxld'
            ],
            [
                'name' => 'supplier[is_business]',
                'contents' => '1'
            ],
            [
                'name' => 'supplier[phone]',
                'contents' => '092915879002066'
            ],
            [
                'name' => 'supplier[iban]',
                'contents' => 'lemjlna'
            ],
            [
                'name' => 'supplier[provider_type]',
                'contents' => 'autonomo'
            ],
            [
                'name' => 'supplier[company_name]',
                'contents' => 'nimxfdcpiwwaritonzcftm'
            ],
            [
                'name' => 'supplier[cif]',
                'contents' => 'yn'
            ],
            [
                'name' => 'supplier[company_address]',
                'contents' => 'gnhyivtxcgtvrbau'
            ],
            [
                'name' => 'supplier[responsible_declaration]',
                'contents' => ''
            ],
            [
                'name' => 'supplier[documents][bank_certificate][]',
                'contents' => 'esse'
            ],
            [
                'name' => 'supplier[documents][dni][]',
                'contents' => 'ea'
            ],
            [
                'name' => 'supplier[documents][dni_back][]',
                'contents' => 'totam'
            ],
            [
                'name' => 'supplier[documents][legal][]',
                'contents' => 'et'
            ],
            [
                'name' => 'supplier[documents][insurance][]',
                'contents' => 'omnis'
            ],
            [
                'name' => 'supplier[documents][sexual_offense][]',
                'contents' => 'autem'
            ],
            [
                'name' => 'supplier[documents][others][]',
                'contents' => 'dolorum'
            ],
            [
                'name' => 'supplier[languages][]',
                'contents' => '20'
            ],
            [
                'name' => 'supplier[automatic_approval_classes]',
                'contents' => ''
            ],
            [
                'name' => 'supplier[percentage_platform]',
                'contents' => '153'
            ],
            [
                'name' => 'supplier[administrative_fee]',
                'contents' => '11742.07'
            ],
            [
                'name' => 'supplier[work_start_hour]',
                'contents' => '12'
            ],
            [
                'name' => 'supplier[work_end_hour]',
                'contents' => '4'
            ],
            [
                'name' => 'supplier[cutoff_hours]',
                'contents' => '17'
            ],
            [
                'name' => 'supplier[response_hours]',
                'contents' => '19'
            ],
            [
                'name' => 'supplier[next_reservation_margin_hours]',
                'contents' => '2'
            ],
            [
                'name' => 'supplier[degrees][][degree_id]',
                'contents' => '12'
            ],
            [
                'name' => 'supplier[degrees][][document]',
                'contents' => 'et'
            ],
            [
                'name' => 'supplier[experiences][][activity_id]',
                'contents' => '16'
            ],
            [
                'name' => 'supplier[experiences][][year]',
                'contents' => '3'
            ],
            [
                'name' => 'password_confirmation',
                'contents' => 'aliquid'
            ],
            [
                'name' => 'image',
                'contents' => fopen('/tmp/phpTXfNPf', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/users/voluptatibus'
files = {
  'first_name': (None, 'uwfpfqwlcektnofhxusdhogmkszownxbgiskfkoycvnrqfkdfdtvlsrzkdpnoyr'),
  'last_name': (None, 'ezdcikeapkxrcgalqvngebfll'),
  'role': (None, 'excepturi'),
  'supplier[dni]': (None, 'nmkuvqqerbazbmlkdktjhrkbayfgluniuhtzwxld'),
  'supplier[is_business]': (None, '1'),
  'supplier[phone]': (None, '092915879002066'),
  'supplier[iban]': (None, 'lemjlna'),
  'supplier[provider_type]': (None, 'autonomo'),
  'supplier[company_name]': (None, 'nimxfdcpiwwaritonzcftm'),
  'supplier[cif]': (None, 'yn'),
  'supplier[company_address]': (None, 'gnhyivtxcgtvrbau'),
  'supplier[responsible_declaration]': (None, ''),
  'supplier[documents][bank_certificate][]': (None, 'esse'),
  'supplier[documents][dni][]': (None, 'ea'),
  'supplier[documents][dni_back][]': (None, 'totam'),
  'supplier[documents][legal][]': (None, 'et'),
  'supplier[documents][insurance][]': (None, 'omnis'),
  'supplier[documents][sexual_offense][]': (None, 'autem'),
  'supplier[documents][others][]': (None, 'dolorum'),
  'supplier[languages][]': (None, '20'),
  'supplier[automatic_approval_classes]': (None, ''),
  'supplier[percentage_platform]': (None, '153'),
  'supplier[administrative_fee]': (None, '11742.07'),
  'supplier[work_start_hour]': (None, '12'),
  'supplier[work_end_hour]': (None, '4'),
  'supplier[cutoff_hours]': (None, '17'),
  'supplier[response_hours]': (None, '19'),
  'supplier[next_reservation_margin_hours]': (None, '2'),
  'supplier[degrees][][degree_id]': (None, '12'),
  'supplier[degrees][][document]': (None, 'et'),
  'supplier[experiences][][activity_id]': (None, '16'),
  'supplier[experiences][][year]': (None, '3'),
  'password_confirmation': (None, 'aliquid'),
  'image': open('/tmp/phpTXfNPf', 'rb')}
payload = {
    "first_name": "uwfpfqwlcektnofhxusdhogmkszownxbgiskfkoycvnrqfkdfdtvlsrzkdpnoyr",
    "last_name": "ezdcikeapkxrcgalqvngebfll",
    "role": "excepturi",
    "supplier": {
        "dni": "nmkuvqqerbazbmlkdktjhrkbayfgluniuhtzwxld",
        "is_business": true,
        "phone": "092915879002066",
        "iban": "lemjlna",
        "provider_type": "autonomo",
        "company_name": "nimxfdcpiwwaritonzcftm",
        "cif": "yn",
        "company_address": "gnhyivtxcgtvrbau",
        "responsible_declaration": false,
        "documents": {
            "bank_certificate": [
                "esse"
            ],
            "dni": [
                "ea"
            ],
            "dni_back": [
                "totam"
            ],
            "legal": [
                "et"
            ],
            "insurance": [
                "omnis"
            ],
            "sexual_offense": [
                "autem"
            ],
            "others": [
                "dolorum"
            ]
        },
        "languages": [
            20
        ],
        "automatic_approval_classes": false,
        "percentage_platform": 153,
        "administrative_fee": 11742.07,
        "work_start_hour": 12,
        "work_end_hour": 4,
        "cutoff_hours": 17,
        "response_hours": 19,
        "next_reservation_margin_hours": 2,
        "degrees": [
            {
                "degree_id": 12,
                "document": "et"
            }
        ],
        "experiences": [
            {
                "activity_id": 16,
                "year": 3
            }
        ]
    },
    "password_confirmation": "aliquid"
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, files=files)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

PUT api/v1/users/{id?}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

id   string  optional  

The ID of the . Example: voluptatibus

Body Parameters

first_name   string  optional  

El campo value debe contener al menos 3 caracteres. Example: uwfpfqwlcektnofhxusdhogmkszownxbgiskfkoycvnrqfkdfdtvlsrzkdpnoyr

last_name   string  optional  

El campo value debe contener al menos 3 caracteres. Example: ezdcikeapkxrcgalqvngebfll

email   string  optional  
username   string  optional  
password   string  optional  
role   string  optional  

The name of an existing record in the roles table. Example: excepturi

image   file  optional  

El campo value debe ser una imagen. El archivo value no debe pesar más de 2048 kilobytes. Example: /tmp/phpTXfNPf

supplier   object  optional  
dni   string  optional  

El campo value debe contener al menos 5 caracteres. Example: nmkuvqqerbazbmlkdktjhrkbayfgluniuhtzwxld

is_business   boolean  optional  

Example: true

phone   string  optional  

Must match the regex /^+?[0-9]{9,15}$/. Example: 092915879002066

iban   string  optional  

Must match the regex /^[A-Z]{2}[0-9]{2}[A-Z0-9]{4,30}$/i. El campo value no debe contener más de 34 caracteres. Example: lemjlna

provider_type   string  optional  

Example: autonomo

Must be one of:
  • empresa
  • autonomo
company_name   string  optional  

El campo value no debe contener más de 255 caracteres. Example: nimxfdcpiwwaritonzcftm

cif   string  optional  

El campo value no debe contener más de 20 caracteres. Example: yn

company_address   string  optional  

El campo value no debe contener más de 500 caracteres. Example: gnhyivtxcgtvrbau

responsible_declaration   boolean  optional  

Example: false

documents   object  optional  
bank_certificate   string[]  optional  
dni   string[]  optional  
dni_back   string[]  optional  
legal   string[]  optional  
insurance   string[]  optional  
sexual_offense   string[]  optional  
others   string[]  optional  
languages   integer[]   

The id of an existing record in the languages table.

degrees   object[]  optional  
degree_id   integer   

The id of an existing record in the degrees table. Example: 12

document   string  optional  

Example: et

experiences   object[]  optional  
activity_id   integer   

The id of an existing record in the activities table. Example: 16

year   integer   

El campo value debe ser un número de 4 dígitos. El campo value debe ser al menos 1900. El campo value no debe ser mayor a 2027. Example: 3

automatic_approval_classes   boolean  optional  

Example: false

percentage_platform   number  optional  

Example: 153

administrative_fee   number  optional  

Example: 11742.07

work_start_hour   integer  optional  

El campo value debe ser al menos 0. El campo value no debe ser mayor a 23. Example: 12

work_end_hour   integer  optional  

El campo value debe ser al menos 1. El campo value no debe ser mayor a 23. Example: 4

cutoff_hours   integer  optional  

El campo value debe ser al menos 0. El campo value no debe ser mayor a 24. Example: 17

response_hours   integer  optional  

El campo value debe ser al menos 0. El campo value no debe ser mayor a 24. Example: 19

next_reservation_margin_hours   integer  optional  

El campo value debe ser al menos 0. El campo value no debe ser mayor a 168. Example: 2

password_confirmation   string  optional  

The password confirmation. Example: aliquid

List user notifications

This endpoint retrieve list user notifications

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/users/notifications/list?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"perPage\": 68,
    \"page\": 3,
    \"type\": \"unread\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/users/notifications/list"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "perPage": 68,
    "page": 3,
    "type": "unread"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/users/notifications/list';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'perPage' => 68,
            'page' => 3,
            'type' => 'unread',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/users/notifications/list'
payload = {
    "perPage": 68,
    "page": 3,
    "type": "unread"
}
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/users/notifications/list

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Body Parameters

perPage   integer   

El campo value debe ser al menos 1. Example: 68

page   integer  optional  

This field is required when perPage is present. Example: 3

type   string   

Example: unread

Must be one of:
  • all
  • unread

Mark as read user notification

This endpoint mark as read user notification

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/users/notifications/provident/mark-as-read?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/users/notifications/provident/mark-as-read"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/users/notifications/provident/mark-as-read';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/users/notifications/provident/mark-as-read'
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/users/notifications/{id}/mark-as-read

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the notification. Example: provident

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Mark as read all user notification

This endpoint mark as read all user notification

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/users/notifications/mark-all-as-read?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/users/notifications/mark-all-as-read"
);

const params = {
    "locale": "es",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/users/notifications/mark-all-as-read';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/users/notifications/mark-all-as-read'
params = {
  'locale': 'es',
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Request      

GET api/v1/users/notifications/mark-all-as-read

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

locale   string  optional  

The locale translation, es for Spanish, en for English. Example: es

Must be one of:
  • es
  • en

Retrieve list users

requires authentication

This endpoint list users

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/users" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page\": 6,
    \"per_page\": 12,
    \"order_by\": \"desc\",
    \"sort_by\": \"nobis\",
    \"filter\": \"explicabo\",
    \"value\": \"sunt\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/users"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page": 6,
    "per_page": 12,
    "order_by": "desc",
    "sort_by": "nobis",
    "filter": "explicabo",
    "value": "sunt"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/users';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'page' => 6,
            'per_page' => 12,
            'order_by' => 'desc',
            'sort_by' => 'nobis',
            'filter' => 'explicabo',
            'value' => 'sunt',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/users'
payload = {
    "page": 6,
    "per_page": 12,
    "order_by": "desc",
    "sort_by": "nobis",
    "filter": "explicabo",
    "value": "sunt"
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Request      

GET api/v1/users

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page   integer  optional  

Example: 6

per_page   integer  optional  

Example: 12

order_by   string  optional  

Example: desc

Must be one of:
  • asc
  • desc
sort_by   string  optional  

This field is required when order_by is asc or desc. Example: nobis

filter   string  optional  

Example: explicabo

value   string  optional  

This field is required when filter is present. Example: sunt

Store a new user

requires authentication

This endpoint allows create a new user from dashboard

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/users" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "first_name=pkkwoejiqwwovlqsxzlirpvqaztgehzcs"\
    --form "last_name=ecoxlmqpzyrippjmkwsibbnydomcjogwkffccvidyca"\
    --form "username=nvuwrspqdonzbbsucorazclzixtizdvpexjimjpknagfznwxzpgmdenuwpljofggmgersnurdve"\
    --form "[email protected]"\
    --form "role=laborum"\
    --form "supplier[is_business]="\
    --form "validate=1"\
    --form "password=5{h3F|t@JBh"\
    --form "image=@/tmp/php87dkz1" 
const url = new URL(
    "https://api.wildoow.com/api/v1/users"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('first_name', 'pkkwoejiqwwovlqsxzlirpvqaztgehzcs');
body.append('last_name', 'ecoxlmqpzyrippjmkwsibbnydomcjogwkffccvidyca');
body.append('username', 'nvuwrspqdonzbbsucorazclzixtizdvpexjimjpknagfznwxzpgmdenuwpljofggmgersnurdve');
body.append('email', '[email protected]');
body.append('role', 'laborum');
body.append('supplier[is_business]', '');
body.append('validate', '1');
body.append('password', '5{h3F|t@JBh');
body.append('image', document.querySelector('input[name="image"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/users';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'first_name',
                'contents' => 'pkkwoejiqwwovlqsxzlirpvqaztgehzcs'
            ],
            [
                'name' => 'last_name',
                'contents' => 'ecoxlmqpzyrippjmkwsibbnydomcjogwkffccvidyca'
            ],
            [
                'name' => 'username',
                'contents' => 'nvuwrspqdonzbbsucorazclzixtizdvpexjimjpknagfznwxzpgmdenuwpljofggmgersnurdve'
            ],
            [
                'name' => 'email',
                'contents' => '[email protected]'
            ],
            [
                'name' => 'role',
                'contents' => 'laborum'
            ],
            [
                'name' => 'supplier[is_business]',
                'contents' => ''
            ],
            [
                'name' => 'validate',
                'contents' => '1'
            ],
            [
                'name' => 'password',
                'contents' => '5{h3F|t@JBh'
            ],
            [
                'name' => 'image',
                'contents' => fopen('/tmp/php87dkz1', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/users'
files = {
  'first_name': (None, 'pkkwoejiqwwovlqsxzlirpvqaztgehzcs'),
  'last_name': (None, 'ecoxlmqpzyrippjmkwsibbnydomcjogwkffccvidyca'),
  'username': (None, 'nvuwrspqdonzbbsucorazclzixtizdvpexjimjpknagfznwxzpgmdenuwpljofggmgersnurdve'),
  'email': (None, '[email protected]'),
  'role': (None, 'laborum'),
  'supplier[is_business]': (None, ''),
  'validate': (None, '1'),
  'password': (None, '5{h3F|t@JBh'),
  'image': open('/tmp/php87dkz1', 'rb')}
payload = {
    "first_name": "pkkwoejiqwwovlqsxzlirpvqaztgehzcs",
    "last_name": "ecoxlmqpzyrippjmkwsibbnydomcjogwkffccvidyca",
    "username": "nvuwrspqdonzbbsucorazclzixtizdvpexjimjpknagfznwxzpgmdenuwpljofggmgersnurdve",
    "email": "[email protected]",
    "role": "laborum",
    "supplier": {
        "is_business": false
    },
    "validate": true,
    "password": "5{h3F|t@JBh"
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, files=files)
response.json()

Example response (201):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Example response (422):


{
    "message": "Message errors",
    "errors": {
        "field1": [
            "messagge error"
        ],
        "field2": [
            "messagge error"
        ]
    }
}
 

Request      

POST api/v1/users

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

first_name   string   

El campo value debe contener al menos 2 caracteres. Example: pkkwoejiqwwovlqsxzlirpvqaztgehzcs

last_name   string  optional  

El campo value debe contener al menos 2 caracteres. Example: ecoxlmqpzyrippjmkwsibbnydomcjogwkffccvidyca

username   string  optional  

El campo value debe contener al menos 2 caracteres. Example: nvuwrspqdonzbbsucorazclzixtizdvpexjimjpknagfznwxzpgmdenuwpljofggmgersnurdve

email   string   

El campo value debe ser una dirección de correo válida. Example: [email protected]

role   string  optional  

The name of an existing record in the roles table. Example: laborum

image   file  optional  

El campo value debe ser una imagen. El archivo value no debe pesar más de 2048 kilobytes. Example: /tmp/php87dkz1

supplier   object  optional  
is_business   boolean  optional  

Example: false

validate   boolean  optional  

Example: true

password   string   

El campo value debe contener al menos 6 caracteres. Example: 5{h3F|t@JBh

Show user

requires authentication

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/users/rerum" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/users/rerum"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/users/rerum';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/users/rerum'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Request      

GET api/v1/users/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the user. Example: rerum

Delete user

requires authentication

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/users/porro" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/users/porro"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.wildoow.com/api/v1/users/porro';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/users/porro'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Example response (200):


{
    "success": true,
    "message": "Message success",
    "data": "object"
}
 

Example response (401):


{
    "message": "Unauthenticated"
}
 

Request      

DELETE api/v1/users/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the user. Example: porro