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\": \"qui\",
    \"password\": \"qui\"
}"
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": "qui",
    "password": "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/reset-password';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'email' => '[email protected]',
            'token' => 'qui',
            'password' => 'qui',
        ],
    ]
);
$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": "qui",
    "password": "qui"
}
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: qui

password   string   

Example: qui

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\": \"totam\",
    \"password\": \"vel\",
    \"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": "totam",
    "password": "vel",
    "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' => 'totam',
            'password' => 'vel',
            '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": "totam",
    "password": "vel",
    "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: totam

password   string   

Example: vel

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/debitis" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"expires\": \"aut\",
    \"hash\": \"at\",
    \"signature\": \"ut\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/email/verify/debitis"
);

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

let body = {
    "expires": "aut",
    "hash": "at",
    "signature": "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/email/verify/debitis';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'expires' => 'aut',
            'hash' => 'at',
            'signature' => 'ut',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/email/verify/debitis'
payload = {
    "expires": "aut",
    "hash": "at",
    "signature": "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"
}
 

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: debitis

Body Parameters

expires   string   

Example: aut

hash   string   

Example: at

signature   string   

Example: ut

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\": 12,
    \"payment_method\": \"stripe\",
    \"payment_method_id\": \"pm_123456789\",
    \"currency\": \"EUR\",
    \"amount\": 253523.39,
    \"wc_to_use\": 52,
    \"class_id\": 2,
    \"item_id\": 15
}"
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": 12,
    "payment_method": "stripe",
    "payment_method_id": "pm_123456789",
    "currency": "EUR",
    "amount": 253523.39,
    "wc_to_use": 52,
    "class_id": 2,
    "item_id": 15
};

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' => 12,
            'payment_method' => 'stripe',
            'payment_method_id' => 'pm_123456789',
            'currency' => 'EUR',
            'amount' => 253523.39,
            'wc_to_use' => 52,
            'class_id' => 2,
            'item_id' => 15,
        ],
    ]
);
$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": 12,
    "payment_method": "stripe",
    "payment_method_id": "pm_123456789",
    "currency": "EUR",
    "amount": 253523.39,
    "wc_to_use": 52,
    "class_id": 2,
    "item_id": 15
}
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: 12

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: 253523.39

wc_to_use   integer  optional  

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

class_id   integer  optional  

Example: 2

item_id   integer  optional  

Example: 15

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\": 18,
    \"payment_intent_id\": \"pi_123456789\",
    \"class_id\": 17,
    \"item_id\": 11,
    \"reservation_intents\": [
        {
            \"reservation_id\": 9,
            \"payment_intent_id\": \"dolor\",
            \"payment_id\": 17
        }
    ]
}"
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": 18,
    "payment_intent_id": "pi_123456789",
    "class_id": 17,
    "item_id": 11,
    "reservation_intents": [
        {
            "reservation_id": 9,
            "payment_intent_id": "dolor",
            "payment_id": 17
        }
    ]
};

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' => 18,
            'payment_intent_id' => 'pi_123456789',
            'class_id' => 17,
            'item_id' => 11,
            'reservation_intents' => [
                [
                    'reservation_id' => 9,
                    'payment_intent_id' => 'dolor',
                    'payment_id' => 17,
                ],
            ],
        ],
    ]
);
$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": 18,
    "payment_intent_id": "pi_123456789",
    "class_id": 17,
    "item_id": 11,
    "reservation_intents": [
        {
            "reservation_id": 9,
            "payment_intent_id": "dolor",
            "payment_id": 17
        }
    ]
}
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: 18

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: 9

payment_intent_id   string  optional  

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

payment_id   integer  optional  

Example: 17

class_id   integer  optional  

Example: 17

item_id   integer  optional  

Example: 11

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\": 13,
    \"class_id\": 15,
    \"requires_invoice\": false,
    \"timezone\": \"America\\/Argentina\\/La_Rioja\",
    \"assistants\": [
        {
            \"full_name\": \"sapiente\",
            \"is_child\": true,
            \"level_id\": 13,
            \"birthday_date_at\": \"2026-02-16T19:16:58\",
            \"email\": \"[email protected]\"
        }
    ],
    \"schedules\": [
        {
            \"start_time\": \"2026-02-16T19:16:58\",
            \"end_time\": \"2088-05-25\"
        }
    ]
}"
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": 13,
    "class_id": 15,
    "requires_invoice": false,
    "timezone": "America\/Argentina\/La_Rioja",
    "assistants": [
        {
            "full_name": "sapiente",
            "is_child": true,
            "level_id": 13,
            "birthday_date_at": "2026-02-16T19:16:58",
            "email": "[email protected]"
        }
    ],
    "schedules": [
        {
            "start_time": "2026-02-16T19:16:58",
            "end_time": "2088-05-25"
        }
    ]
};

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' => 13,
            'class_id' => 15,
            'requires_invoice' => false,
            'timezone' => 'America/Argentina/La_Rioja',
            'assistants' => [
                [
                    'full_name' => 'sapiente',
                    'is_child' => true,
                    'level_id' => 13,
                    'birthday_date_at' => '2026-02-16T19:16:58',
                    'email' => '[email protected]',
                ],
            ],
            'schedules' => [
                [
                    'start_time' => '2026-02-16T19:16:58',
                    'end_time' => '2088-05-25',
                ],
            ],
        ],
    ]
);
$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": 13,
    "class_id": 15,
    "requires_invoice": false,
    "timezone": "America\/Argentina\/La_Rioja",
    "assistants": [
        {
            "full_name": "sapiente",
            "is_child": true,
            "level_id": 13,
            "birthday_date_at": "2026-02-16T19:16:58",
            "email": "[email protected]"
        }
    ],
    "schedules": [
        {
            "start_time": "2026-02-16T19:16:58",
            "end_time": "2088-05-25"
        }
    ]
}
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: 13

class_id   integer   

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

requires_invoice   boolean  optional  

Example: false

timezone   string   

Must be a valid time zone, such as Africa/Accra. Example: America/Argentina/La_Rioja

assistants   object[]   

El campo value debe contener al menos 1 elementos.

full_name   string   

Example: sapiente

is_child   boolean   

Example: true

level_id   integer  optional  

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

birthday_date_at   string   

El campo value no corresponde con una fecha vΓ‘lida. Example: 2026-02-16T19:16:58

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-16T19:16:58

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: 2088-05-25

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/earum" \
    --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/earum"
);

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/earum';
$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/earum'
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: earum

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/molestiae" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user_id\": 18,
    \"requires_invoice\": false,
    \"timezone\": \"America\\/Managua\",
    \"assistants\": [
        {
            \"full_name\": \"qui\",
            \"is_child\": true,
            \"level_id\": 10,
            \"birthday_date_at\": \"2026-02-16T19:16:58\",
            \"email\": \"[email protected]\",
            \"materials\": [
                {
                    \"amount\": 32
                }
            ]
        }
    ],
    \"schedules\": [
        {
            \"start_time\": \"2026-02-16T19:16:58\",
            \"end_time\": \"2040-12-02\"
        }
    ]
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/cart/items/molestiae"
);

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

let body = {
    "user_id": 18,
    "requires_invoice": false,
    "timezone": "America\/Managua",
    "assistants": [
        {
            "full_name": "qui",
            "is_child": true,
            "level_id": 10,
            "birthday_date_at": "2026-02-16T19:16:58",
            "email": "[email protected]",
            "materials": [
                {
                    "amount": 32
                }
            ]
        }
    ],
    "schedules": [
        {
            "start_time": "2026-02-16T19:16:58",
            "end_time": "2040-12-02"
        }
    ]
};

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/molestiae';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'user_id' => 18,
            'requires_invoice' => false,
            'timezone' => 'America/Managua',
            'assistants' => [
                [
                    'full_name' => 'qui',
                    'is_child' => true,
                    'level_id' => 10,
                    'birthday_date_at' => '2026-02-16T19:16:58',
                    'email' => '[email protected]',
                    'materials' => [
                        [
                            'amount' => 32,
                        ],
                    ],
                ],
            ],
            'schedules' => [
                [
                    'start_time' => '2026-02-16T19:16:58',
                    'end_time' => '2040-12-02',
                ],
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/cart/items/molestiae'
payload = {
    "user_id": 18,
    "requires_invoice": false,
    "timezone": "America\/Managua",
    "assistants": [
        {
            "full_name": "qui",
            "is_child": true,
            "level_id": 10,
            "birthday_date_at": "2026-02-16T19:16:58",
            "email": "[email protected]",
            "materials": [
                {
                    "amount": 32
                }
            ]
        }
    ],
    "schedules": [
        {
            "start_time": "2026-02-16T19:16:58",
            "end_time": "2040-12-02"
        }
    ]
}
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: molestiae

Body Parameters

user_id   integer   

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

requires_invoice   boolean  optional  

Example: false

timezone   string  optional  

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

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: qui

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: 10

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-16T19:16:58

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: 32

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-16T19:16:58

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: 2040-12-02

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/ea" \
    --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/ea"
);

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/ea';
$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/ea'
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: ea

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/impedit/status?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"status\": \"approved\",
    \"observation\": \"quasi\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/classes/impedit/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": "approved",
    "observation": "quasi"
};

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/impedit/status';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'status' => 'approved',
            'observation' => 'quasi',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/classes/impedit/status'
payload = {
    "status": "approved",
    "observation": "quasi"
}
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: impedit

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: approved

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

Example: quasi

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\": 41,
    \"page\": 20,
    \"order\": \"est\",
    \"sort\": \"autem\",
    \"sites\": [
        13
    ],
    \"modalities\": [
        6
    ],
    \"min_age\": 8,
    \"max_age\": 4,
    \"levels\": [
        3
    ],
    \"languages\": [
        16
    ],
    \"activities\": [
        3
    ],
    \"activity_types\": [
        15
    ],
    \"subactivities\": [
        14
    ],
    \"schedules\": {
        \"amount_min\": 33497417.97762,
        \"amount_max\": 2240211.18,
        \"date_start\": \"2026-02-16T19:17:04\",
        \"date_end\": \"2026-02-16T19:17:04\"
    },
    \"status\": \"blocked\",
    \"address\": \"a\",
    \"supplier\": \"voluptatem\"
}"
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": 41,
    "page": 20,
    "order": "est",
    "sort": "autem",
    "sites": [
        13
    ],
    "modalities": [
        6
    ],
    "min_age": 8,
    "max_age": 4,
    "levels": [
        3
    ],
    "languages": [
        16
    ],
    "activities": [
        3
    ],
    "activity_types": [
        15
    ],
    "subactivities": [
        14
    ],
    "schedules": {
        "amount_min": 33497417.97762,
        "amount_max": 2240211.18,
        "date_start": "2026-02-16T19:17:04",
        "date_end": "2026-02-16T19:17:04"
    },
    "status": "blocked",
    "address": "a",
    "supplier": "voluptatem"
};

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' => 41,
            'page' => 20,
            'order' => 'est',
            'sort' => 'autem',
            'sites' => [
                13,
            ],
            'modalities' => [
                6,
            ],
            'min_age' => 8,
            'max_age' => 4,
            'levels' => [
                3,
            ],
            'languages' => [
                16,
            ],
            'activities' => [
                3,
            ],
            'activity_types' => [
                15,
            ],
            'subactivities' => [
                14,
            ],
            'schedules' => [
                'amount_min' => 33497417.97762,
                'amount_max' => 2240211.18,
                'date_start' => '2026-02-16T19:17:04',
                'date_end' => '2026-02-16T19:17:04',
            ],
            'status' => 'blocked',
            'address' => 'a',
            'supplier' => 'voluptatem',
        ],
    ]
);
$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": 41,
    "page": 20,
    "order": "est",
    "sort": "autem",
    "sites": [
        13
    ],
    "modalities": [
        6
    ],
    "min_age": 8,
    "max_age": 4,
    "levels": [
        3
    ],
    "languages": [
        16
    ],
    "activities": [
        3
    ],
    "activity_types": [
        15
    ],
    "subactivities": [
        14
    ],
    "schedules": {
        "amount_min": 33497417.97762,
        "amount_max": 2240211.18,
        "date_start": "2026-02-16T19:17:04",
        "date_end": "2026-02-16T19:17:04"
    },
    "status": "blocked",
    "address": "a",
    "supplier": "voluptatem"
}
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: 41

page   integer  optional  

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

order   string  optional  

Example: est

sort   string  optional  

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

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: 4

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: 33497417.97762

amount_max   number  optional  

Example: 2240211.18

date_start   string  optional  

El campo value no corresponde con una fecha vΓ‘lida. Example: 2026-02-16T19:17:04

date_end   string  optional  

El campo value no corresponde con una fecha vΓ‘lida. Example: 2026-02-16T19:17:04

status   string  optional  

Example: blocked

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

Example: a

supplier   string  optional  

Example: voluptatem

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]=accusamus"\
    --form "translations[es][slug]=porro"\
    --form "translations[en][name]=aspernatur"\
    --form "translations[en][slug]=eaque"\
    --form "images[][type]=cover"\
    --form "images[][image]=@/tmp/phpKH1FnV" 
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]', 'accusamus');
body.append('translations[es][slug]', 'porro');
body.append('translations[en][name]', 'aspernatur');
body.append('translations[en][slug]', 'eaque');
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/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' => 'accusamus'
            ],
            [
                'name' => 'translations[es][slug]',
                'contents' => 'porro'
            ],
            [
                'name' => 'translations[en][name]',
                'contents' => 'aspernatur'
            ],
            [
                'name' => 'translations[en][slug]',
                'contents' => 'eaque'
            ],
            [
                'name' => 'images[][type]',
                'contents' => 'cover'
            ],
            [
                'name' => 'images[][image]',
                'contents' => fopen('/tmp/phpKH1FnV', '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, 'accusamus'),
  'translations[es][slug]': (None, 'porro'),
  'translations[en][name]': (None, 'aspernatur'),
  'translations[en][slug]': (None, 'eaque'),
  'images[][type]': (None, 'cover'),
  'images[][image]': open('/tmp/phpKH1FnV', 'rb')}
payload = {
    "translations": {
        "es": {
            "name": "accusamus",
            "slug": "porro"
        },
        "en": {
            "name": "aspernatur",
            "slug": "eaque"
        }
    },
    "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/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: accusamus

slug   string  optional  

Example: porro

en   object  optional  
name   string  optional  

Example: aspernatur

slug   string  optional  

Example: eaque

images   object[]   
image   file   

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

type   string   

Example: cover

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/dolorum?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/dolorum"
);

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/dolorum';
$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/dolorum'
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: dolorum

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/minus" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "translations[es][name]=et"\
    --form "translations[es][slug]=illo"\
    --form "translations[en][name]=voluptas"\
    --form "translations[en][slug]=sunt"\
    --form "is_active=1"\
    --form "images[][type]=profile"\
    --form "images[][image]=@/tmp/phpLy9AiL" 
const url = new URL(
    "https://api.wildoow.com/api/v1/activity-types/minus"
);

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

const body = new FormData();
body.append('translations[es][name]', 'et');
body.append('translations[es][slug]', 'illo');
body.append('translations[en][name]', 'voluptas');
body.append('translations[en][slug]', 'sunt');
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/minus';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'translations[es][name]',
                'contents' => 'et'
            ],
            [
                'name' => 'translations[es][slug]',
                'contents' => 'illo'
            ],
            [
                'name' => 'translations[en][name]',
                'contents' => 'voluptas'
            ],
            [
                'name' => 'translations[en][slug]',
                'contents' => 'sunt'
            ],
            [
                'name' => 'is_active',
                'contents' => '1'
            ],
            [
                'name' => 'images[][type]',
                'contents' => 'profile'
            ],
            [
                'name' => 'images[][image]',
                'contents' => fopen('/tmp/phpLy9AiL', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/activity-types/minus'
files = {
  'translations[es][name]': (None, 'et'),
  'translations[es][slug]': (None, 'illo'),
  'translations[en][name]': (None, 'voluptas'),
  'translations[en][slug]': (None, 'sunt'),
  'is_active': (None, '1'),
  'images[][type]': (None, 'profile'),
  'images[][image]': open('/tmp/phpLy9AiL', 'rb')}
payload = {
    "translations": {
        "es": {
            "name": "et",
            "slug": "illo"
        },
        "en": {
            "name": "voluptas",
            "slug": "sunt"
        }
    },
    "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: minus

Body Parameters

translations   object  optional  
es   object  optional  
name   string  optional  

Example: et

slug   string  optional  

Example: illo

en   object  optional  
name   string  optional  

Example: voluptas

slug   string  optional  

Example: sunt

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/phpLy9AiL

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/praesentium" \
    --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/praesentium"
);

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/praesentium';
$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/praesentium'
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: praesentium

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\": \"consectetur\",
            \"slug\": \"et\"
        },
        \"en\": {
            \"name\": \"consequatur\",
            \"slug\": \"aut\"
        }
    },
    \"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": "consectetur",
            "slug": "et"
        },
        "en": {
            "name": "consequatur",
            "slug": "aut"
        }
    },
    "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' => 'consectetur',
                    'slug' => 'et',
                ],
                'en' => [
                    'name' => 'consequatur',
                    'slug' => 'aut',
                ],
            ],
            '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": "consectetur",
            "slug": "et"
        },
        "en": {
            "name": "consequatur",
            "slug": "aut"
        }
    },
    "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: consectetur

slug   string  optional  

Example: et

en   object  optional  
name   string  optional  

Example: consequatur

slug   string  optional  

Example: aut

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/perspiciatis?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/perspiciatis"
);

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/perspiciatis';
$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/perspiciatis'
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: perspiciatis

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/deserunt" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"translations\": {
        \"es\": {
            \"name\": \"consequatur\",
            \"slug\": \"dolorem\"
        },
        \"en\": {
            \"name\": \"voluptates\",
            \"slug\": \"dolor\"
        }
    },
    \"is_active\": false
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/levels/deserunt"
);

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

let body = {
    "translations": {
        "es": {
            "name": "consequatur",
            "slug": "dolorem"
        },
        "en": {
            "name": "voluptates",
            "slug": "dolor"
        }
    },
    "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/deserunt';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'translations' => [
                'es' => [
                    'name' => 'consequatur',
                    'slug' => 'dolorem',
                ],
                'en' => [
                    'name' => 'voluptates',
                    'slug' => 'dolor',
                ],
            ],
            'is_active' => false,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/levels/deserunt'
payload = {
    "translations": {
        "es": {
            "name": "consequatur",
            "slug": "dolorem"
        },
        "en": {
            "name": "voluptates",
            "slug": "dolor"
        }
    },
    "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: deserunt

Body Parameters

translations   object  optional  
es   object  optional  
name   string  optional  

Example: consequatur

slug   string  optional  

Example: dolorem

en   object  optional  
name   string  optional  

Example: voluptates

slug   string  optional  

Example: dolor

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/ipsam" \
    --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/ipsam"
);

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/ipsam';
$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/ipsam'
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: ipsam

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\": \"et\",
    \"sort\": \"cupiditate\",
    \"name\": \"fugit\"
}"
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": "et",
    "sort": "cupiditate",
    "name": "fugit"
};

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' => 'et',
            'sort' => 'cupiditate',
            'name' => 'fugit',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/subactivities'
payload = {
    "order": "et",
    "sort": "cupiditate",
    "name": "fugit"
}
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: et

sort   string  optional  

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

code   string  optional  

The code of an existing record in the subactivities table.

name   string  optional  

Example: fugit

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\": \"eius\",
            \"slug\": \"et\"
        },
        \"en\": {
            \"name\": \"id\",
            \"slug\": \"et\"
        }
    },
    \"is_active\": true
}"
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": "eius",
            "slug": "et"
        },
        "en": {
            "name": "id",
            "slug": "et"
        }
    },
    "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/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' => 'eius',
                    'slug' => 'et',
                ],
                'en' => [
                    'name' => 'id',
                    'slug' => 'et',
                ],
            ],
            'is_active' => true,
        ],
    ]
);
$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": "eius",
            "slug": "et"
        },
        "en": {
            "name": "id",
            "slug": "et"
        }
    },
    "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/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: eius

slug   string   

Example: et

en   object  optional  
name   string   

Example: id

slug   string   

Example: et

is_active   boolean  optional  

Example: true

Show subactivity

requires authentication

This endpoint retrieve detail subactivity

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/subactivities/maxime?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/maxime"
);

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/maxime';
$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/maxime'
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: maxime

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/soluta" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"translations\": {
        \"es\": {
            \"name\": \"veritatis\",
            \"slug\": \"harum\"
        },
        \"en\": {
            \"name\": \"sint\",
            \"slug\": \"nemo\"
        }
    },
    \"is_active\": true
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/subactivities/soluta"
);

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

let body = {
    "translations": {
        "es": {
            "name": "veritatis",
            "slug": "harum"
        },
        "en": {
            "name": "sint",
            "slug": "nemo"
        }
    },
    "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/soluta';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'translations' => [
                'es' => [
                    'name' => 'veritatis',
                    'slug' => 'harum',
                ],
                'en' => [
                    'name' => 'sint',
                    'slug' => 'nemo',
                ],
            ],
            'is_active' => true,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/subactivities/soluta'
payload = {
    "translations": {
        "es": {
            "name": "veritatis",
            "slug": "harum"
        },
        "en": {
            "name": "sint",
            "slug": "nemo"
        }
    },
    "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: soluta

Body Parameters

translations   object  optional  
es   object  optional  
name   string  optional  

Example: veritatis

slug   string  optional  

Example: harum

en   object  optional  
name   string  optional  

Example: sint

slug   string  optional  

Example: nemo

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/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/subactivities/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/subactivities/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/subactivities/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"
}
 

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: porro

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\": \"expedita\",
    \"sort\": \"molestiae\",
    \"name\": \"neque\",
    \"slug\": \"aut\"
}"
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": "expedita",
    "sort": "molestiae",
    "name": "neque",
    "slug": "aut"
};

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' => 'expedita',
            'sort' => 'molestiae',
            'name' => 'neque',
            'slug' => 'aut',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/activities'
payload = {
    "order": "expedita",
    "sort": "molestiae",
    "name": "neque",
    "slug": "aut"
}
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: expedita

sort   string  optional  

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

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: neque

slug   string  optional  

Example: aut

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\": \"iste\",
            \"slug\": \"explicabo\"
        },
        \"en\": {
            \"name\": \"quis\",
            \"slug\": \"sequi\"
        }
    },
    \"code\": \"tcwdqygmizmppkmxktdxzwrgmfqftuzybysefygcvpmjlmonxopknabjllvzmozcoux\",
    \"activity_type_id\": \"harum\"
}"
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": "iste",
            "slug": "explicabo"
        },
        "en": {
            "name": "quis",
            "slug": "sequi"
        }
    },
    "code": "tcwdqygmizmppkmxktdxzwrgmfqftuzybysefygcvpmjlmonxopknabjllvzmozcoux",
    "activity_type_id": "harum"
};

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' => 'iste',
                    'slug' => 'explicabo',
                ],
                'en' => [
                    'name' => 'quis',
                    'slug' => 'sequi',
                ],
            ],
            'code' => 'tcwdqygmizmppkmxktdxzwrgmfqftuzybysefygcvpmjlmonxopknabjllvzmozcoux',
            'activity_type_id' => 'harum',
        ],
    ]
);
$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": "iste",
            "slug": "explicabo"
        },
        "en": {
            "name": "quis",
            "slug": "sequi"
        }
    },
    "code": "tcwdqygmizmppkmxktdxzwrgmfqftuzybysefygcvpmjlmonxopknabjllvzmozcoux",
    "activity_type_id": "harum"
}
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: iste

slug   string  optional  

Example: explicabo

en   object  optional  
name   string  optional  

Example: quis

slug   string  optional  

Example: sequi

code   string  optional  

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

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: harum

Show activity

requires authentication

This endpoint retrieve detail activity

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/activities/labore?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/labore"
);

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/labore';
$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/labore'
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: labore

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/ea" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"translations\": {
        \"es\": {
            \"name\": \"accusantium\",
            \"slug\": \"sed\"
        },
        \"en\": {
            \"name\": \"delectus\",
            \"slug\": \"est\"
        }
    },
    \"code\": \"ztvxi\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/activities/ea"
);

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

let body = {
    "translations": {
        "es": {
            "name": "accusantium",
            "slug": "sed"
        },
        "en": {
            "name": "delectus",
            "slug": "est"
        }
    },
    "code": "ztvxi"
};

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/ea';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'translations' => [
                'es' => [
                    'name' => 'accusantium',
                    'slug' => 'sed',
                ],
                'en' => [
                    'name' => 'delectus',
                    'slug' => 'est',
                ],
            ],
            'code' => 'ztvxi',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/activities/ea'
payload = {
    "translations": {
        "es": {
            "name": "accusantium",
            "slug": "sed"
        },
        "en": {
            "name": "delectus",
            "slug": "est"
        }
    },
    "code": "ztvxi"
}
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: ea

Body Parameters

translations   object  optional  
es   object  optional  
name   string  optional  

Example: accusantium

slug   string  optional  

Example: sed

en   object  optional  
name   string  optional  

Example: delectus

slug   string  optional  

Example: est

code   string  optional  

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

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/qui" \
    --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/qui"
);

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/qui';
$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/qui'
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: qui

List degrees by activity

This endpoint retrieve list degrees by activity

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/activities/consequuntur/degrees?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/activities/consequuntur/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/consequuntur/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/consequuntur/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: consequuntur

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\": \"cupiditate\",
    \"sort\": \"nobis\",
    \"name\": \"iusto\"
}"
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": "cupiditate",
    "sort": "nobis",
    "name": "iusto"
};

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' => 'cupiditate',
            'sort' => 'nobis',
            'name' => 'iusto',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/modalities'
payload = {
    "order": "cupiditate",
    "sort": "nobis",
    "name": "iusto"
}
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: cupiditate

sort   string  optional  

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

code   string  optional  

The code of an existing record in the seasons table.

name   string  optional  

Example: iusto

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\": \"eligendi\",
            \"slug\": \"ducimus\"
        },
        \"en\": {
            \"name\": \"iste\",
            \"slug\": \"laboriosam\"
        }
    },
    \"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": "eligendi",
            "slug": "ducimus"
        },
        "en": {
            "name": "iste",
            "slug": "laboriosam"
        }
    },
    "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' => 'eligendi',
                    'slug' => 'ducimus',
                ],
                'en' => [
                    'name' => 'iste',
                    'slug' => 'laboriosam',
                ],
            ],
            '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": "eligendi",
            "slug": "ducimus"
        },
        "en": {
            "name": "iste",
            "slug": "laboriosam"
        }
    },
    "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: eligendi

slug   string  optional  

Example: ducimus

en   object  optional  
name   string  optional  

Example: iste

slug   string  optional  

Example: laboriosam

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/numquam?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/numquam"
);

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/numquam';
$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/numquam'
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: numquam

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/eos" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"translations\": {
        \"es\": {
            \"name\": \"optio\",
            \"slug\": \"aspernatur\"
        },
        \"en\": {
            \"name\": \"nam\",
            \"slug\": \"mollitia\"
        }
    },
    \"is_active\": false
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/modalities/eos"
);

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

let body = {
    "translations": {
        "es": {
            "name": "optio",
            "slug": "aspernatur"
        },
        "en": {
            "name": "nam",
            "slug": "mollitia"
        }
    },
    "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/modalities/eos';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'translations' => [
                'es' => [
                    'name' => 'optio',
                    'slug' => 'aspernatur',
                ],
                'en' => [
                    'name' => 'nam',
                    'slug' => 'mollitia',
                ],
            ],
            'is_active' => false,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/modalities/eos'
payload = {
    "translations": {
        "es": {
            "name": "optio",
            "slug": "aspernatur"
        },
        "en": {
            "name": "nam",
            "slug": "mollitia"
        }
    },
    "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/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: eos

Body Parameters

translations   object  optional  
es   object  optional  
name   string  optional  

Example: optio

slug   string  optional  

Example: aspernatur

en   object  optional  
name   string  optional  

Example: nam

slug   string  optional  

Example: mollitia

is_active   boolean  optional  

Example: false

Delete a modality

requires authentication

This endpoint allow delete a modality

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/modalities/aut" \
    --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/aut"
);

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/aut';
$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/aut'
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: aut

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\": \"voluptas\",
    \"sort\": \"voluptatem\",
    \"perPage\": 79,
    \"page\": 18,
    \"country_id\": 14,
    \"province_id\": 20,
    \"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": "voluptas",
    "sort": "voluptatem",
    "perPage": 79,
    "page": 18,
    "country_id": 14,
    "province_id": 20,
    "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' => 'voluptas',
            'sort' => 'voluptatem',
            'perPage' => 79,
            'page' => 18,
            'country_id' => 14,
            'province_id' => 20,
            '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": "voluptas",
    "sort": "voluptatem",
    "perPage": 79,
    "page": 18,
    "country_id": 14,
    "province_id": 20,
    "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: voluptas

sort   string  optional  

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

perPage   integer  optional  

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

page   integer  optional  

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

country_id   integer  optional  

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

province_id   integer  optional  

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

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/aspernatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"search\": \"pixdpqvxwpcfmaijzrwv\",
    \"perPage\": 36,
    \"page\": 1
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/sites/activities/aspernatur"
);

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

let body = {
    "search": "pixdpqvxwpcfmaijzrwv",
    "perPage": 36,
    "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/sites/activities/aspernatur';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'search' => 'pixdpqvxwpcfmaijzrwv',
            'perPage' => 36,
            'page' => 1,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/sites/activities/aspernatur'
payload = {
    "search": "pixdpqvxwpcfmaijzrwv",
    "perPage": 36,
    "page": 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"
}
 

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: aspernatur

Body Parameters

search   string  optional  

El campo value no debe contener mΓ‘s de 255 caracteres. Example: pixdpqvxwpcfmaijzrwv

perPage   integer   

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

page   integer  optional  

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

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]=qui"\
    --form "translations[es][slug]=dolores"\
    --form "translations[en][name]=sit"\
    --form "translations[en][slug]=modi"\
    --form "is_visible="\
    --form "is_active=1"\
    --form "country_id=11"\
    --form "province_id=17"\
    --form "images[][type]=profile"\
    --form "images[][image]=@/tmp/phpjF3INr" 
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]', 'qui');
body.append('translations[es][slug]', 'dolores');
body.append('translations[en][name]', 'sit');
body.append('translations[en][slug]', 'modi');
body.append('is_visible', '');
body.append('is_active', '1');
body.append('country_id', '11');
body.append('province_id', '17');
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/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' => 'qui'
            ],
            [
                'name' => 'translations[es][slug]',
                'contents' => 'dolores'
            ],
            [
                'name' => 'translations[en][name]',
                'contents' => 'sit'
            ],
            [
                'name' => 'translations[en][slug]',
                'contents' => 'modi'
            ],
            [
                'name' => 'is_visible',
                'contents' => ''
            ],
            [
                'name' => 'is_active',
                'contents' => '1'
            ],
            [
                'name' => 'country_id',
                'contents' => '11'
            ],
            [
                'name' => 'province_id',
                'contents' => '17'
            ],
            [
                'name' => 'images[][type]',
                'contents' => 'profile'
            ],
            [
                'name' => 'images[][image]',
                'contents' => fopen('/tmp/phpjF3INr', '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, 'qui'),
  'translations[es][slug]': (None, 'dolores'),
  'translations[en][name]': (None, 'sit'),
  'translations[en][slug]': (None, 'modi'),
  'is_visible': (None, ''),
  'is_active': (None, '1'),
  'country_id': (None, '11'),
  'province_id': (None, '17'),
  'images[][type]': (None, 'profile'),
  'images[][image]': open('/tmp/phpjF3INr', 'rb')}
payload = {
    "translations": {
        "es": {
            "name": "qui",
            "slug": "dolores"
        },
        "en": {
            "name": "sit",
            "slug": "modi"
        }
    },
    "is_visible": false,
    "is_active": true,
    "country_id": 11,
    "province_id": 17,
    "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/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: qui

slug   string  optional  

Example: dolores

en   object  optional  
name   string  optional  

Example: sit

slug   string  optional  

Example: modi

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: 11

province_id   integer   

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

images   object[]   
image   file   

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

type   string   

Example: profile

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/exercitationem?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/exercitationem"
);

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/exercitationem';
$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/exercitationem'
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: exercitationem

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/neque" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "translations[es][name]=consequatur"\
    --form "translations[es][slug]=nemo"\
    --form "translations[en][name]=nisi"\
    --form "translations[en][slug]=ut"\
    --form "is_visible="\
    --form "is_active="\
    --form "country_id=13"\
    --form "province_id=10"\
    --form "images[][type]=cover"\
    --form "images[][image]=@/tmp/phpDkPcfH" 
const url = new URL(
    "https://api.wildoow.com/api/v1/sites/neque"
);

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

const body = new FormData();
body.append('translations[es][name]', 'consequatur');
body.append('translations[es][slug]', 'nemo');
body.append('translations[en][name]', 'nisi');
body.append('translations[en][slug]', 'ut');
body.append('is_visible', '');
body.append('is_active', '');
body.append('country_id', '13');
body.append('province_id', '10');
body.append('images[][type]', 'cover');
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/neque';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'translations[es][name]',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'translations[es][slug]',
                'contents' => 'nemo'
            ],
            [
                'name' => 'translations[en][name]',
                'contents' => 'nisi'
            ],
            [
                'name' => 'translations[en][slug]',
                'contents' => 'ut'
            ],
            [
                'name' => 'is_visible',
                'contents' => ''
            ],
            [
                'name' => 'is_active',
                'contents' => ''
            ],
            [
                'name' => 'country_id',
                'contents' => '13'
            ],
            [
                'name' => 'province_id',
                'contents' => '10'
            ],
            [
                'name' => 'images[][type]',
                'contents' => 'cover'
            ],
            [
                'name' => 'images[][image]',
                'contents' => fopen('/tmp/phpDkPcfH', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/sites/neque'
files = {
  'translations[es][name]': (None, 'consequatur'),
  'translations[es][slug]': (None, 'nemo'),
  'translations[en][name]': (None, 'nisi'),
  'translations[en][slug]': (None, 'ut'),
  'is_visible': (None, ''),
  'is_active': (None, ''),
  'country_id': (None, '13'),
  'province_id': (None, '10'),
  'images[][type]': (None, 'cover'),
  'images[][image]': open('/tmp/phpDkPcfH', 'rb')}
payload = {
    "translations": {
        "es": {
            "name": "consequatur",
            "slug": "nemo"
        },
        "en": {
            "name": "nisi",
            "slug": "ut"
        }
    },
    "is_visible": false,
    "is_active": false,
    "country_id": 13,
    "province_id": 10,
    "images": [
        {
            "type": "cover"
        }
    ]
}
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: neque

Body Parameters

translations   object  optional  
es   object  optional  
name   string  optional  

Example: consequatur

slug   string  optional  

Example: nemo

en   object  optional  
name   string  optional  

Example: nisi

slug   string  optional  

Example: ut

is_visible   boolean  optional  

Example: false

is_active   boolean  optional  

Example: false

country_id   integer  optional  

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

province_id   integer  optional  

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

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/phpDkPcfH

type   string   

Example: cover

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/vero" \
    --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/vero"
);

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/vero';
$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/vero'
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: vero

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\": \"maxime\",
    \"sort\": \"culpa\",
    \"perPage\": 58,
    \"page\": 10
}"
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": "maxime",
    "sort": "culpa",
    "perPage": 58,
    "page": 10
};

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' => 'maxime',
            'sort' => 'culpa',
            'perPage' => 58,
            'page' => 10,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/classes'
payload = {
    "order": "maxime",
    "sort": "culpa",
    "perPage": 58,
    "page": 10
}
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: maxime

sort   string  optional  

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

perPage   integer  optional  

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

page   integer  optional  

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

Show class

requires authentication

This endpoint retrieve detail class

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/classes/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/classes/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/classes/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/classes/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/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: 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 class

requires authentication

This endpoint allow update a class

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/classes/et" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "title=zhgjkvbnuixstuozivcjmynghdeourcgaahyjorzmhmfaurexmfpdilaawejrxpcjimq"\
    --form "detail=dbdsomc"\
    --form "min_participants=45"\
    --form "max_participants=9"\
    --form "concurrent_activities=87"\
    --form "min_age=88"\
    --form "max_age=9"\
    --form "timezone=America/Matamoros"\
    --form "meeting_zone_lat=ut"\
    --form "meeting_zone_lng=nihil"\
    --form "meeting_zone=ycbioltnrewwtljkltfrzeaajtanahpekwmuhobxjd"\
    --form "meeting_zone_description=cxqawopiohnmaavfktv"\
    --form "has_material="\
    --form "address=accusantium"\
    --form "site_id=8"\
    --form "modality_id=7"\
    --form "country_id=14"\
    --form "province_id=2"\
    --form "city_id=7"\
    --form "block_hours=86"\
    --form "activities[][activity_id]=6"\
    --form "levels[][level_id]=1"\
    --form "languages[][language_id]=19"\
    --form "schedules[][amount]=363175.72411816"\
    --form "schedules[][start_date]=2026-02-16T19:17:04"\
    --form "schedules[][end_date]=2117-05-17"\
    --form "licenses[][license_id]=20"\
    --form "images[][type]=point"\
    --form "class_relations[][child_id]=19"\
    --form "images[][image]=@/tmp/phpeOCVWC" 
const url = new URL(
    "https://api.wildoow.com/api/v1/classes/et"
);

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

const body = new FormData();
body.append('title', 'zhgjkvbnuixstuozivcjmynghdeourcgaahyjorzmhmfaurexmfpdilaawejrxpcjimq');
body.append('detail', 'dbdsomc');
body.append('min_participants', '45');
body.append('max_participants', '9');
body.append('concurrent_activities', '87');
body.append('min_age', '88');
body.append('max_age', '9');
body.append('timezone', 'America/Matamoros');
body.append('meeting_zone_lat', 'ut');
body.append('meeting_zone_lng', 'nihil');
body.append('meeting_zone', 'ycbioltnrewwtljkltfrzeaajtanahpekwmuhobxjd');
body.append('meeting_zone_description', 'cxqawopiohnmaavfktv');
body.append('has_material', '');
body.append('address', 'accusantium');
body.append('site_id', '8');
body.append('modality_id', '7');
body.append('country_id', '14');
body.append('province_id', '2');
body.append('city_id', '7');
body.append('block_hours', '86');
body.append('activities[][activity_id]', '6');
body.append('levels[][level_id]', '1');
body.append('languages[][language_id]', '19');
body.append('schedules[][amount]', '363175.72411816');
body.append('schedules[][start_date]', '2026-02-16T19:17:04');
body.append('schedules[][end_date]', '2117-05-17');
body.append('licenses[][license_id]', '20');
body.append('images[][type]', 'point');
body.append('class_relations[][child_id]', '19');
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/et';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'title',
                'contents' => 'zhgjkvbnuixstuozivcjmynghdeourcgaahyjorzmhmfaurexmfpdilaawejrxpcjimq'
            ],
            [
                'name' => 'detail',
                'contents' => 'dbdsomc'
            ],
            [
                'name' => 'min_participants',
                'contents' => '45'
            ],
            [
                'name' => 'max_participants',
                'contents' => '9'
            ],
            [
                'name' => 'concurrent_activities',
                'contents' => '87'
            ],
            [
                'name' => 'min_age',
                'contents' => '88'
            ],
            [
                'name' => 'max_age',
                'contents' => '9'
            ],
            [
                'name' => 'timezone',
                'contents' => 'America/Matamoros'
            ],
            [
                'name' => 'meeting_zone_lat',
                'contents' => 'ut'
            ],
            [
                'name' => 'meeting_zone_lng',
                'contents' => 'nihil'
            ],
            [
                'name' => 'meeting_zone',
                'contents' => 'ycbioltnrewwtljkltfrzeaajtanahpekwmuhobxjd'
            ],
            [
                'name' => 'meeting_zone_description',
                'contents' => 'cxqawopiohnmaavfktv'
            ],
            [
                'name' => 'has_material',
                'contents' => ''
            ],
            [
                'name' => 'address',
                'contents' => 'accusantium'
            ],
            [
                'name' => 'site_id',
                'contents' => '8'
            ],
            [
                'name' => 'modality_id',
                'contents' => '7'
            ],
            [
                'name' => 'country_id',
                'contents' => '14'
            ],
            [
                'name' => 'province_id',
                'contents' => '2'
            ],
            [
                'name' => 'city_id',
                'contents' => '7'
            ],
            [
                'name' => 'block_hours',
                'contents' => '86'
            ],
            [
                'name' => 'activities[][activity_id]',
                'contents' => '6'
            ],
            [
                'name' => 'levels[][level_id]',
                'contents' => '1'
            ],
            [
                'name' => 'languages[][language_id]',
                'contents' => '19'
            ],
            [
                'name' => 'schedules[][amount]',
                'contents' => '363175.72411816'
            ],
            [
                'name' => 'schedules[][start_date]',
                'contents' => '2026-02-16T19:17:04'
            ],
            [
                'name' => 'schedules[][end_date]',
                'contents' => '2117-05-17'
            ],
            [
                'name' => 'licenses[][license_id]',
                'contents' => '20'
            ],
            [
                'name' => 'images[][type]',
                'contents' => 'point'
            ],
            [
                'name' => 'class_relations[][child_id]',
                'contents' => '19'
            ],
            [
                'name' => 'images[][image]',
                'contents' => fopen('/tmp/phpeOCVWC', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/classes/et'
files = {
  'title': (None, 'zhgjkvbnuixstuozivcjmynghdeourcgaahyjorzmhmfaurexmfpdilaawejrxpcjimq'),
  'detail': (None, 'dbdsomc'),
  'min_participants': (None, '45'),
  'max_participants': (None, '9'),
  'concurrent_activities': (None, '87'),
  'min_age': (None, '88'),
  'max_age': (None, '9'),
  'timezone': (None, 'America/Matamoros'),
  'meeting_zone_lat': (None, 'ut'),
  'meeting_zone_lng': (None, 'nihil'),
  'meeting_zone': (None, 'ycbioltnrewwtljkltfrzeaajtanahpekwmuhobxjd'),
  'meeting_zone_description': (None, 'cxqawopiohnmaavfktv'),
  'has_material': (None, ''),
  'address': (None, 'accusantium'),
  'site_id': (None, '8'),
  'modality_id': (None, '7'),
  'country_id': (None, '14'),
  'province_id': (None, '2'),
  'city_id': (None, '7'),
  'block_hours': (None, '86'),
  'activities[][activity_id]': (None, '6'),
  'levels[][level_id]': (None, '1'),
  'languages[][language_id]': (None, '19'),
  'schedules[][amount]': (None, '363175.72411816'),
  'schedules[][start_date]': (None, '2026-02-16T19:17:04'),
  'schedules[][end_date]': (None, '2117-05-17'),
  'licenses[][license_id]': (None, '20'),
  'images[][type]': (None, 'point'),
  'class_relations[][child_id]': (None, '19'),
  'images[][image]': open('/tmp/phpeOCVWC', 'rb')}
payload = {
    "title": "zhgjkvbnuixstuozivcjmynghdeourcgaahyjorzmhmfaurexmfpdilaawejrxpcjimq",
    "detail": "dbdsomc",
    "min_participants": 45,
    "max_participants": 9,
    "concurrent_activities": 87,
    "min_age": 88,
    "max_age": 9,
    "timezone": "America\/Matamoros",
    "meeting_zone_lat": "ut",
    "meeting_zone_lng": "nihil",
    "meeting_zone": "ycbioltnrewwtljkltfrzeaajtanahpekwmuhobxjd",
    "meeting_zone_description": "cxqawopiohnmaavfktv",
    "has_material": false,
    "address": "accusantium",
    "site_id": 8,
    "modality_id": 7,
    "country_id": 14,
    "province_id": 2,
    "city_id": 7,
    "block_hours": 86,
    "activities": [
        {
            "activity_id": 6
        }
    ],
    "levels": [
        {
            "level_id": 1
        }
    ],
    "languages": [
        {
            "language_id": 19
        }
    ],
    "schedules": [
        {
            "amount": 363175.72411816,
            "start_date": "2026-02-16T19:17:04",
            "end_date": "2117-05-17"
        }
    ],
    "licenses": [
        {
            "license_id": 20
        }
    ],
    "images": [
        {
            "type": "point"
        }
    ],
    "class_relations": [
        {
            "child_id": 19
        }
    ]
}
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: et

Body Parameters

title   string  optional  

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

detail   string  optional  

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

min_participants   integer  optional  

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

max_participants   integer  optional  

Example: 9

concurrent_activities   integer  optional  

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

min_age   integer  optional  

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

max_age   integer  optional  

Example: 9

timezone   string  optional  

Example: America/Matamoros

meeting_zone_lat   string  optional  

Example: ut

meeting_zone_lng   string  optional  

Example: nihil

meeting_zone   string  optional  

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

meeting_zone_description   string  optional  

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

has_material   boolean  optional  

Example: false

address   string  optional  

Example: accusantium

site_id   integer  optional  

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

modality_id   integer  optional  

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

country_id   integer  optional  

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

province_id   integer  optional  

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

city_id   integer  optional  

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

block_hours   integer  optional  

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

activities   object[]  optional  
activity_id   integer   

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

levels   object[]  optional  
level_id   integer   

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

languages   object[]  optional  
language_id   integer   

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

schedules   object[]  optional  
amount   number   

Example: 363175.72411816

start_date   string   

El campo value no corresponde con una fecha vΓ‘lida. Example: 2026-02-16T19:17:04

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: 2117-05-17

licenses   object[]  optional  
license_id   integer   

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

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/phpeOCVWC

type   string   

Example: point

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: 19

Delete a class

requires authentication

This endpoint allow delete a class

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/classes/quia" \
    --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/quia"
);

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/quia';
$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/quia'
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: quia

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=lvnrvgnexnuuhgktacyqfdvmlmrmbxsmtbijandrucrixuoffidokulihuycfjdgmzmkyluktd"\
    --form "detail=puyguzrrsbsapqdhgffqmjypogdieggueurczvjtmqmdkrlezuwnjlflmspwtn"\
    --form "min_participants=47"\
    --form "max_participants=15"\
    --form "concurrent_activities=12"\
    --form "min_age=19"\
    --form "max_age=9"\
    --form "timezone=America/Los_Angeles"\
    --form "meeting_zone_lat=alias"\
    --form "meeting_zone_lng=reprehenderit"\
    --form "meeting_zone=axminhotttcqpyokyujmttbvemhnlfthbbrbjoqfwwjvossqadwvhiypzmalaxzpanqzsyupret"\
    --form "meeting_zone_description=yqcyrhcfslnnvivqlfxdacoywlfqkfyaaxwprlafuzhbdvdgaqcnchgljwhrgyojpxhexdfbskdjvxthqzur"\
    --form "has_material=1"\
    --form "address=id"\
    --form "site_id=6"\
    --form "modality_id=5"\
    --form "country_id=16"\
    --form "province_id=4"\
    --form "city_id=20"\
    --form "block_hours=69"\
    --form "activities[][activity_id]=16"\
    --form "schedules[][amount]=35118905.175"\
    --form "schedules[][start_date]=2026-02-16T19:17:04"\
    --form "schedules[][end_date]=2013-07-03"\
    --form "user_id=20"\
    --form "levels[][level_id]=12"\
    --form "languages[][language_id]=2"\
    --form "licenses[][license_id]=16"\
    --form "images[][type]=additional"\
    --form "class_relations[][child_id]=7"\
    --form "images[][image]=@/tmp/php1hJRgV" 
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', 'lvnrvgnexnuuhgktacyqfdvmlmrmbxsmtbijandrucrixuoffidokulihuycfjdgmzmkyluktd');
body.append('detail', 'puyguzrrsbsapqdhgffqmjypogdieggueurczvjtmqmdkrlezuwnjlflmspwtn');
body.append('min_participants', '47');
body.append('max_participants', '15');
body.append('concurrent_activities', '12');
body.append('min_age', '19');
body.append('max_age', '9');
body.append('timezone', 'America/Los_Angeles');
body.append('meeting_zone_lat', 'alias');
body.append('meeting_zone_lng', 'reprehenderit');
body.append('meeting_zone', 'axminhotttcqpyokyujmttbvemhnlfthbbrbjoqfwwjvossqadwvhiypzmalaxzpanqzsyupret');
body.append('meeting_zone_description', 'yqcyrhcfslnnvivqlfxdacoywlfqkfyaaxwprlafuzhbdvdgaqcnchgljwhrgyojpxhexdfbskdjvxthqzur');
body.append('has_material', '1');
body.append('address', 'id');
body.append('site_id', '6');
body.append('modality_id', '5');
body.append('country_id', '16');
body.append('province_id', '4');
body.append('city_id', '20');
body.append('block_hours', '69');
body.append('activities[][activity_id]', '16');
body.append('schedules[][amount]', '35118905.175');
body.append('schedules[][start_date]', '2026-02-16T19:17:04');
body.append('schedules[][end_date]', '2013-07-03');
body.append('user_id', '20');
body.append('levels[][level_id]', '12');
body.append('languages[][language_id]', '2');
body.append('licenses[][license_id]', '16');
body.append('images[][type]', 'additional');
body.append('class_relations[][child_id]', '7');
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' => 'lvnrvgnexnuuhgktacyqfdvmlmrmbxsmtbijandrucrixuoffidokulihuycfjdgmzmkyluktd'
            ],
            [
                'name' => 'detail',
                'contents' => 'puyguzrrsbsapqdhgffqmjypogdieggueurczvjtmqmdkrlezuwnjlflmspwtn'
            ],
            [
                'name' => 'min_participants',
                'contents' => '47'
            ],
            [
                'name' => 'max_participants',
                'contents' => '15'
            ],
            [
                'name' => 'concurrent_activities',
                'contents' => '12'
            ],
            [
                'name' => 'min_age',
                'contents' => '19'
            ],
            [
                'name' => 'max_age',
                'contents' => '9'
            ],
            [
                'name' => 'timezone',
                'contents' => 'America/Los_Angeles'
            ],
            [
                'name' => 'meeting_zone_lat',
                'contents' => 'alias'
            ],
            [
                'name' => 'meeting_zone_lng',
                'contents' => 'reprehenderit'
            ],
            [
                'name' => 'meeting_zone',
                'contents' => 'axminhotttcqpyokyujmttbvemhnlfthbbrbjoqfwwjvossqadwvhiypzmalaxzpanqzsyupret'
            ],
            [
                'name' => 'meeting_zone_description',
                'contents' => 'yqcyrhcfslnnvivqlfxdacoywlfqkfyaaxwprlafuzhbdvdgaqcnchgljwhrgyojpxhexdfbskdjvxthqzur'
            ],
            [
                'name' => 'has_material',
                'contents' => '1'
            ],
            [
                'name' => 'address',
                'contents' => 'id'
            ],
            [
                'name' => 'site_id',
                'contents' => '6'
            ],
            [
                'name' => 'modality_id',
                'contents' => '5'
            ],
            [
                'name' => 'country_id',
                'contents' => '16'
            ],
            [
                'name' => 'province_id',
                'contents' => '4'
            ],
            [
                'name' => 'city_id',
                'contents' => '20'
            ],
            [
                'name' => 'block_hours',
                'contents' => '69'
            ],
            [
                'name' => 'activities[][activity_id]',
                'contents' => '16'
            ],
            [
                'name' => 'schedules[][amount]',
                'contents' => '35118905.175'
            ],
            [
                'name' => 'schedules[][start_date]',
                'contents' => '2026-02-16T19:17:04'
            ],
            [
                'name' => 'schedules[][end_date]',
                'contents' => '2013-07-03'
            ],
            [
                'name' => 'user_id',
                'contents' => '20'
            ],
            [
                'name' => 'levels[][level_id]',
                'contents' => '12'
            ],
            [
                'name' => 'languages[][language_id]',
                'contents' => '2'
            ],
            [
                'name' => 'licenses[][license_id]',
                'contents' => '16'
            ],
            [
                'name' => 'images[][type]',
                'contents' => 'additional'
            ],
            [
                'name' => 'class_relations[][child_id]',
                'contents' => '7'
            ],
            [
                'name' => 'images[][image]',
                'contents' => fopen('/tmp/php1hJRgV', '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, 'lvnrvgnexnuuhgktacyqfdvmlmrmbxsmtbijandrucrixuoffidokulihuycfjdgmzmkyluktd'),
  'detail': (None, 'puyguzrrsbsapqdhgffqmjypogdieggueurczvjtmqmdkrlezuwnjlflmspwtn'),
  'min_participants': (None, '47'),
  'max_participants': (None, '15'),
  'concurrent_activities': (None, '12'),
  'min_age': (None, '19'),
  'max_age': (None, '9'),
  'timezone': (None, 'America/Los_Angeles'),
  'meeting_zone_lat': (None, 'alias'),
  'meeting_zone_lng': (None, 'reprehenderit'),
  'meeting_zone': (None, 'axminhotttcqpyokyujmttbvemhnlfthbbrbjoqfwwjvossqadwvhiypzmalaxzpanqzsyupret'),
  'meeting_zone_description': (None, 'yqcyrhcfslnnvivqlfxdacoywlfqkfyaaxwprlafuzhbdvdgaqcnchgljwhrgyojpxhexdfbskdjvxthqzur'),
  'has_material': (None, '1'),
  'address': (None, 'id'),
  'site_id': (None, '6'),
  'modality_id': (None, '5'),
  'country_id': (None, '16'),
  'province_id': (None, '4'),
  'city_id': (None, '20'),
  'block_hours': (None, '69'),
  'activities[][activity_id]': (None, '16'),
  'schedules[][amount]': (None, '35118905.175'),
  'schedules[][start_date]': (None, '2026-02-16T19:17:04'),
  'schedules[][end_date]': (None, '2013-07-03'),
  'user_id': (None, '20'),
  'levels[][level_id]': (None, '12'),
  'languages[][language_id]': (None, '2'),
  'licenses[][license_id]': (None, '16'),
  'images[][type]': (None, 'additional'),
  'class_relations[][child_id]': (None, '7'),
  'images[][image]': open('/tmp/php1hJRgV', 'rb')}
payload = {
    "title": "lvnrvgnexnuuhgktacyqfdvmlmrmbxsmtbijandrucrixuoffidokulihuycfjdgmzmkyluktd",
    "detail": "puyguzrrsbsapqdhgffqmjypogdieggueurczvjtmqmdkrlezuwnjlflmspwtn",
    "min_participants": 47,
    "max_participants": 15,
    "concurrent_activities": 12,
    "min_age": 19,
    "max_age": 9,
    "timezone": "America\/Los_Angeles",
    "meeting_zone_lat": "alias",
    "meeting_zone_lng": "reprehenderit",
    "meeting_zone": "axminhotttcqpyokyujmttbvemhnlfthbbrbjoqfwwjvossqadwvhiypzmalaxzpanqzsyupret",
    "meeting_zone_description": "yqcyrhcfslnnvivqlfxdacoywlfqkfyaaxwprlafuzhbdvdgaqcnchgljwhrgyojpxhexdfbskdjvxthqzur",
    "has_material": true,
    "address": "id",
    "site_id": 6,
    "modality_id": 5,
    "country_id": 16,
    "province_id": 4,
    "city_id": 20,
    "block_hours": 69,
    "activities": [
        {
            "activity_id": 16
        }
    ],
    "schedules": [
        {
            "amount": 35118905.175,
            "start_date": "2026-02-16T19:17:04",
            "end_date": "2013-07-03"
        }
    ],
    "user_id": 20,
    "levels": [
        {
            "level_id": 12
        }
    ],
    "languages": [
        {
            "language_id": 2
        }
    ],
    "licenses": [
        {
            "license_id": 16
        }
    ],
    "images": [
        {
            "type": "additional"
        }
    ],
    "class_relations": [
        {
            "child_id": 7
        }
    ]
}
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: lvnrvgnexnuuhgktacyqfdvmlmrmbxsmtbijandrucrixuoffidokulihuycfjdgmzmkyluktd

detail   string   

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

min_participants   integer   

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

max_participants   integer   

Example: 15

concurrent_activities   integer   

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

min_age   integer   

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

max_age   integer   

Example: 9

timezone   string   

Example: America/Los_Angeles

meeting_zone_lat   string   

Example: alias

meeting_zone_lng   string   

Example: reprehenderit

meeting_zone   string   

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

meeting_zone_description   string   

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

has_material   boolean  optional  

Example: true

address   string  optional  

Example: id

site_id   integer  optional  

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

modality_id   integer  optional  

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

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: 4

city_id   integer  optional  

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

block_hours   integer  optional  

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

activities   object[]   
activity_id   integer   

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

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: 2

schedules   object[]   
amount   number   

Example: 35118905.175

start_date   string   

El campo value no corresponde con una fecha vΓ‘lida. Example: 2026-02-16T19:17:04

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: 2013-07-03

licenses   object[]  optional  
license_id   integer   

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

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/php1hJRgV

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: 7

user_id   integer  optional  

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

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/qui/price" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"price\": 176.896418037,
    \"update_matching\": false
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/schedules/qui/price"
);

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

let body = {
    "price": 176.896418037,
    "update_matching": false
};

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/qui/price';
$response = $client->patch(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'price' => 176.896418037,
            'update_matching' => false,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/schedules/qui/price'
payload = {
    "price": 176.896418037,
    "update_matching": false
}
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: qui

Body Parameters

price   number   

Example: 176.896418037

update_matching   boolean  optional  

Example: false

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\": 70,
    \"page\": 14,
    \"order\": \"nemo\",
    \"sort\": \"sit\",
    \"sites\": [
        14
    ],
    \"modalities\": [
        20
    ],
    \"min_age\": 10,
    \"max_age\": 1,
    \"levels\": [
        8
    ],
    \"languages\": [
        7
    ],
    \"activities\": [
        6
    ],
    \"activity_types\": [
        16
    ],
    \"subactivities\": [
        15
    ],
    \"schedules\": {
        \"amount_min\": 1,
        \"amount_max\": 353.641528,
        \"date_start\": \"2026-02-16T19:17:04\",
        \"date_end\": \"2026-02-16T19:17:04\"
    },
    \"status\": \"approved\",
    \"address\": \"impedit\",
    \"supplier\": \"praesentium\"
}"
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": 70,
    "page": 14,
    "order": "nemo",
    "sort": "sit",
    "sites": [
        14
    ],
    "modalities": [
        20
    ],
    "min_age": 10,
    "max_age": 1,
    "levels": [
        8
    ],
    "languages": [
        7
    ],
    "activities": [
        6
    ],
    "activity_types": [
        16
    ],
    "subactivities": [
        15
    ],
    "schedules": {
        "amount_min": 1,
        "amount_max": 353.641528,
        "date_start": "2026-02-16T19:17:04",
        "date_end": "2026-02-16T19:17:04"
    },
    "status": "approved",
    "address": "impedit",
    "supplier": "praesentium"
};

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' => 70,
            'page' => 14,
            'order' => 'nemo',
            'sort' => 'sit',
            'sites' => [
                14,
            ],
            'modalities' => [
                20,
            ],
            'min_age' => 10,
            'max_age' => 1,
            'levels' => [
                8,
            ],
            'languages' => [
                7,
            ],
            'activities' => [
                6,
            ],
            'activity_types' => [
                16,
            ],
            'subactivities' => [
                15,
            ],
            'schedules' => [
                'amount_min' => 1.0,
                'amount_max' => 353.641528,
                'date_start' => '2026-02-16T19:17:04',
                'date_end' => '2026-02-16T19:17:04',
            ],
            'status' => 'approved',
            'address' => 'impedit',
            'supplier' => 'praesentium',
        ],
    ]
);
$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": 70,
    "page": 14,
    "order": "nemo",
    "sort": "sit",
    "sites": [
        14
    ],
    "modalities": [
        20
    ],
    "min_age": 10,
    "max_age": 1,
    "levels": [
        8
    ],
    "languages": [
        7
    ],
    "activities": [
        6
    ],
    "activity_types": [
        16
    ],
    "subactivities": [
        15
    ],
    "schedules": {
        "amount_min": 1,
        "amount_max": 353.641528,
        "date_start": "2026-02-16T19:17:04",
        "date_end": "2026-02-16T19:17:04"
    },
    "status": "approved",
    "address": "impedit",
    "supplier": "praesentium"
}
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: 70

page   integer  optional  

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

order   string  optional  

Example: nemo

sort   string  optional  

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

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: 10

max_age   integer  optional  

Example: 1

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

amount_max   number  optional  

Example: 353.641528

date_start   string  optional  

El campo value no corresponde con una fecha vΓ‘lida. Example: 2026-02-16T19:17:04

date_end   string  optional  

El campo value no corresponde con una fecha vΓ‘lida. Example: 2026-02-16T19:17:04

status   string  optional  

Example: approved

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

Example: impedit

supplier   string  optional  

Example: praesentium

Show class detail

requires authentication

This endpoint retrieve detail class

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/classes/show/laborum?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/laborum"
);

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/laborum';
$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/laborum'
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: laborum

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\": \"12m\"
}"
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": "12m"
};

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' => '12m',
        ],
    ]
);
$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": "12m"
}
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: 12m

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\": \"30d\"
}"
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": "30d"
};

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' => '30d',
        ],
    ]
);
$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": "30d"
}
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: 30d

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\": \"30d\"
}"
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": "30d"
};

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' => '30d',
        ],
    ]
);
$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": "30d"
}
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: 30d

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\": \"veniam\",
    \"sort\": \"sit\",
    \"perPage\": 89,
    \"page\": 18,
    \"name\": \"excepturi\"
}"
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": "veniam",
    "sort": "sit",
    "perPage": 89,
    "page": 18,
    "name": "excepturi"
};

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' => 'veniam',
            'sort' => 'sit',
            'perPage' => 89,
            'page' => 18,
            'name' => 'excepturi',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/degrees'
payload = {
    "order": "veniam",
    "sort": "sit",
    "perPage": 89,
    "page": 18,
    "name": "excepturi"
}
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: veniam

sort   string  optional  

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

perPage   integer  optional  

Must be at least 1. Example: 89

page   integer  optional  

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

code   string  optional  

The code of an existing record in the degrees table.

name   string  optional  

Example: excepturi

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\": \"dicta\",
            \"description\": \"Deserunt est ut blanditiis nihil voluptate autem laborum aut.\"
        },
        \"en\": {
            \"name\": \"cum\",
            \"description\": \"Temporibus sunt voluptas aperiam impedit.\"
        }
    },
    \"code\": \"ab\",
    \"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": "dicta",
            "description": "Deserunt est ut blanditiis nihil voluptate autem laborum aut."
        },
        "en": {
            "name": "cum",
            "description": "Temporibus sunt voluptas aperiam impedit."
        }
    },
    "code": "ab",
    "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' => 'dicta',
                    'description' => 'Deserunt est ut blanditiis nihil voluptate autem laborum aut.',
                ],
                'en' => [
                    'name' => 'cum',
                    'description' => 'Temporibus sunt voluptas aperiam impedit.',
                ],
            ],
            'code' => 'ab',
            '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": "dicta",
            "description": "Deserunt est ut blanditiis nihil voluptate autem laborum aut."
        },
        "en": {
            "name": "cum",
            "description": "Temporibus sunt voluptas aperiam impedit."
        }
    },
    "code": "ab",
    "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: dicta

description   string  optional  

Example: Deserunt est ut blanditiis nihil voluptate autem laborum aut.

en   object  optional  
name   string  optional  

Example: cum

description   string  optional  

Example: Temporibus sunt voluptas aperiam impedit.

code   string  optional  

Example: ab

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/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/suppliers/degrees/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/suppliers/degrees/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/suppliers/degrees/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/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: 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 degree

requires authentication

This endpoint allow update a degree

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/suppliers/degrees/alias" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"translations\": {
        \"es\": {
            \"name\": \"similique\",
            \"description\": \"Eaque ut in nulla.\"
        },
        \"en\": {
            \"name\": \"enim\",
            \"description\": \"Deleniti sequi praesentium eos mollitia assumenda molestiae.\"
        }
    },
    \"code\": \"similique\",
    \"is_active\": false
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/degrees/alias"
);

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

let body = {
    "translations": {
        "es": {
            "name": "similique",
            "description": "Eaque ut in nulla."
        },
        "en": {
            "name": "enim",
            "description": "Deleniti sequi praesentium eos mollitia assumenda molestiae."
        }
    },
    "code": "similique",
    "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/alias';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'translations' => [
                'es' => [
                    'name' => 'similique',
                    'description' => 'Eaque ut in nulla.',
                ],
                'en' => [
                    'name' => 'enim',
                    'description' => 'Deleniti sequi praesentium eos mollitia assumenda molestiae.',
                ],
            ],
            'code' => 'similique',
            '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/alias'
payload = {
    "translations": {
        "es": {
            "name": "similique",
            "description": "Eaque ut in nulla."
        },
        "en": {
            "name": "enim",
            "description": "Deleniti sequi praesentium eos mollitia assumenda molestiae."
        }
    },
    "code": "similique",
    "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: alias

Body Parameters

translations   object  optional  
es   object  optional  
name   string  optional  

Example: similique

description   string  optional  

Example: Eaque ut in nulla.

en   object  optional  
name   string  optional  

Example: enim

description   string  optional  

Example: Deleniti sequi praesentium eos mollitia assumenda molestiae.

code   string  optional  

Example: similique

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/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/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/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/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/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: ut

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/voluptatem/suppliers/documents/pending" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/users/voluptatem/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/voluptatem/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/voluptatem/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: voluptatem

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/voluptas/suppliers/documents/verify" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"document_type\": \"dni_back\",
    \"status\": \"rejected\",
    \"observation\": \"e\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/users/voluptas/suppliers/documents/verify"
);

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

let body = {
    "document_type": "dni_back",
    "status": "rejected",
    "observation": "e"
};

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/voluptas/suppliers/documents/verify';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'document_type' => 'dni_back',
            'status' => 'rejected',
            'observation' => 'e',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/users/voluptas/suppliers/documents/verify'
payload = {
    "document_type": "dni_back",
    "status": "rejected",
    "observation": "e"
}
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: voluptas

Body Parameters

document_type   string   

Example: dni_back

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

Example: rejected

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

Must not be greater than 500 characters. Example: e

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\": \"voluptatem\",
    \"refreshToken\": \"et\",
    \"idToken\": \"non\",
    \"expiresIn\": 10,
    \"scope\": \"reiciendis\",
    \"tokenType\": \"ipsum\"
}"
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": "voluptatem",
    "refreshToken": "et",
    "idToken": "non",
    "expiresIn": 10,
    "scope": "reiciendis",
    "tokenType": "ipsum"
};

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' => 'voluptatem',
            'refreshToken' => 'et',
            'idToken' => 'non',
            'expiresIn' => 10,
            'scope' => 'reiciendis',
            'tokenType' => 'ipsum',
        ],
    ]
);
$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": "voluptatem",
    "refreshToken": "et",
    "idToken": "non",
    "expiresIn": 10,
    "scope": "reiciendis",
    "tokenType": "ipsum"
}
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: voluptatem

refreshToken   string  optional  

Example: et

idToken   string  optional  

Example: non

expiresIn   integer  optional  

Example: 10

scope   string  optional  

Example: reiciendis

tokenType   string  optional  

Example: ipsum

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/cumque/disconnect" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/oauth/cumque/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/cumque/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/cumque/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: cumque

Check OAuth provider connection status

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/oauth/id/status" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/oauth/id/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/id/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/id/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: id

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\": \"deserunt\"
}"
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": "deserunt"
};

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' => 'deserunt',
        ],
    ]
);
$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": "deserunt"
}
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: deserunt

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\": \"qui\"
}"
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": "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/checkout/complete';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'payment_intent_id' => 'qui',
        ],
    ]
);
$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": "qui"
}
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: qui

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/vel/availability" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/classes/vel/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/vel/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/vel/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: vel

Display a listing of pending edit requests for a class

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/admin/classes/harum/edit-requests" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/classes/harum/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/harum/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/harum/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: harum

Approve a price change request

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/admin/edit-requests/rem/approve" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/edit-requests/rem/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/rem/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/rem/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: rem

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\": \"wcvxrzaagbu\"
}"
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": "wcvxrzaagbu"
};

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' => 'wcvxrzaagbu',
        ],
    ]
);
$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": "wcvxrzaagbu"
}
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: wcvxrzaagbu

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/at" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/at"
);

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/at';
$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/at'
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: at

Mark an attempt as reviewed

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/dolores/review" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/dolores/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/dolores/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/dolores/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: dolores

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/ut" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/prohibited-keyword-attempts/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/admin/prohibited-keyword-attempts/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/admin/prohibited-keyword-attempts/ut'
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: ut

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\": \"kyzyyqyshkhcfkbjqkf\",
    \"phone_number\": \"pepguhjfbqqqokhgvmoxnwcamzpqyeuihfmfczssogjgdzjoamfhdazivwuiprnsxctfkfgjfvipobrmvon\"
}"
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": "kyzyyqyshkhcfkbjqkf",
    "phone_number": "pepguhjfbqqqokhgvmoxnwcamzpqyeuihfmfczssogjgdzjoamfhdazivwuiprnsxctfkfgjfvipobrmvon"
};

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' => 'kyzyyqyshkhcfkbjqkf',
            'phone_number' => 'pepguhjfbqqqokhgvmoxnwcamzpqyeuihfmfczssogjgdzjoamfhdazivwuiprnsxctfkfgjfvipobrmvon',
        ],
    ]
);
$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": "kyzyyqyshkhcfkbjqkf",
    "phone_number": "pepguhjfbqqqokhgvmoxnwcamzpqyeuihfmfczssogjgdzjoamfhdazivwuiprnsxctfkfgjfvipobrmvon"
}
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: kyzyyqyshkhcfkbjqkf

phone_number   string   

El campo value debe contener al menos 9 caracteres. Example: pepguhjfbqqqokhgvmoxnwcamzpqyeuihfmfczssogjgdzjoamfhdazivwuiprnsxctfkfgjfvipobrmvon

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\": 227
}"
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": 227
};

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' => 227,
        ],
    ]
);
$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": 227
}
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: 227

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/eos/approve" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/reservations/eos/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/eos/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/eos/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: eos

Reject a reservation and cancel the payment

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/reservations/praesentium/reject" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"reason\": \"ygwjhuslkwzt\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/reservations/praesentium/reject"
);

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

let body = {
    "reason": "ygwjhuslkwzt"
};

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/praesentium/reject';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'reason' => 'ygwjhuslkwzt',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reservations/praesentium/reject'
payload = {
    "reason": "ygwjhuslkwzt"
}
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: praesentium

Body Parameters

reason   string   

Must not be greater than 500 characters. Example: ygwjhuslkwzt

Confirmar una reserva y capturar el pago

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/reservations/sunt/confirm-payment" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/reservations/sunt/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/sunt/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/sunt/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: sunt

Rechazar una reserva y cancelar el pago autorizado

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/reservations/delectus/reject-payment" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/reservations/delectus/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/delectus/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/delectus/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: delectus

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/nemo" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/materials-class/nemo"
);

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/nemo';
$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/nemo'
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: nemo

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\": 11,
    \"start_date\": \"2026-02-16T19:17:12\",
    \"end_date\": \"2063-01-21\"
}"
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": 11,
    "start_date": "2026-02-16T19:17:12",
    "end_date": "2063-01-21"
};

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' => 11,
            'start_date' => '2026-02-16T19:17:12',
            'end_date' => '2063-01-21',
        ],
    ]
);
$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": 11,
    "start_date": "2026-02-16T19:17:12",
    "end_date": "2063-01-21"
}
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: 11

start_date   string   

Must be a valid date. Example: 2026-02-16T19:17:12

end_date   string   

Must be a valid date. Must be a date after start_date. Example: 2063-01-21

Get availability for a supplier on a specific date

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/suppliers/et/availability" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"date\": \"2026-02-16\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/et/availability"
);

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

let body = {
    "date": "2026-02-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/suppliers/et/availability';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'date' => '2026-02-16',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/et/availability'
payload = {
    "date": "2026-02-16"
}
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: et

Body Parameters

date   string  optional  

Must be a valid date in the format Y-m-d. Example: 2026-02-16

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/voluptates/availability" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"date\": \"2026-02-16\",
    \"start_time\": \"19:17\",
    \"end_time\": \"2077-04-03\",
    \"class_id\": 8,
    \"price\": 22
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/voluptates/availability"
);

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

let body = {
    "date": "2026-02-16",
    "start_time": "19:17",
    "end_time": "2077-04-03",
    "class_id": 8,
    "price": 22
};

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/voluptates/availability';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'date' => '2026-02-16',
            'start_time' => '19:17',
            'end_time' => '2077-04-03',
            'class_id' => 8,
            'price' => 22,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/voluptates/availability'
payload = {
    "date": "2026-02-16",
    "start_time": "19:17",
    "end_time": "2077-04-03",
    "class_id": 8,
    "price": 22
}
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: voluptates

Body Parameters

date   string   

Must be a valid date in the format Y-m-d. Example: 2026-02-16

start_time   string   

Must be a valid date in the format H:i. Example: 19:17

end_time   string   

Must be a valid date in the format H:i. Must be a date after start_time. Example: 2077-04-03

class_id   integer  optional  

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

price   number  optional  

Must be at least 0. Example: 22

Get availability slots for a supplier on a specific date

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/suppliers/qui/availability/slots" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"date\": \"2026-02-16\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/qui/availability/slots"
);

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

let body = {
    "date": "2026-02-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/suppliers/qui/availability/slots';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'date' => '2026-02-16',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/qui/availability/slots'
payload = {
    "date": "2026-02-16"
}
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: qui

Body Parameters

date   string   

Must be a valid date in the format Y-m-d. Example: 2026-02-16

Get availability slots for a supplier in a date range

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/suppliers/sapiente/availability/slots/range" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"start_date\": \"2026-02-16\",
    \"end_date\": \"2046-01-22\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/sapiente/availability/slots/range"
);

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

let body = {
    "start_date": "2026-02-16",
    "end_date": "2046-01-22"
};

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/sapiente/availability/slots/range';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'start_date' => '2026-02-16',
            'end_date' => '2046-01-22',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/sapiente/availability/slots/range'
payload = {
    "start_date": "2026-02-16",
    "end_date": "2046-01-22"
}
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: sapiente

Body Parameters

start_date   string   

Must be a valid date in the format Y-m-d. Example: 2026-02-16

end_date   string   

Must be a valid date in the format Y-m-d. Must be a date after or equal to start_date. Example: 2046-01-22

POST api/v1/suppliers/{supplierId}/unavailability

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/suppliers/aut/unavailability" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"supplier_id\": 8,
    \"date\": \"2026-02-16\",
    \"start_time\": \"19:17\",
    \"end_time\": \"2092-05-01\",
    \"reason\": \"vsiupgxzppsqkgfuewnmz\",
    \"notes\": \"voluptates\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/aut/unavailability"
);

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

let body = {
    "supplier_id": 8,
    "date": "2026-02-16",
    "start_time": "19:17",
    "end_time": "2092-05-01",
    "reason": "vsiupgxzppsqkgfuewnmz",
    "notes": "voluptates"
};

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/aut/unavailability';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'supplier_id' => 8,
            'date' => '2026-02-16',
            'start_time' => '19:17',
            'end_time' => '2092-05-01',
            'reason' => 'vsiupgxzppsqkgfuewnmz',
            'notes' => 'voluptates',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/aut/unavailability'
payload = {
    "supplier_id": 8,
    "date": "2026-02-16",
    "start_time": "19:17",
    "end_time": "2092-05-01",
    "reason": "vsiupgxzppsqkgfuewnmz",
    "notes": "voluptates"
}
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: aut

Body Parameters

supplier_id   integer   

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

date   string   

Must be a valid date in the format Y-m-d. Example: 2026-02-16

start_time   string   

Must be a valid date in the format H:i. Example: 19:17

end_time   string   

Must be a valid date in the format H:i. Must be a date after start_time. Example: 2092-05-01

reason   string  optional  

Must not be greater than 255 characters. Example: vsiupgxzppsqkgfuewnmz

notes   string  optional  

Example: voluptates

PUT api/v1/suppliers/{supplierId}/unavailability/{id}

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/suppliers/vel/unavailability/dicta" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"supplier_id\": 3,
    \"date\": \"2026-02-16\",
    \"start_time\": \"19:17\",
    \"end_time\": \"2113-04-26\",
    \"reason\": \"acynynhkoircnmnaw\",
    \"notes\": \"et\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/vel/unavailability/dicta"
);

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

let body = {
    "supplier_id": 3,
    "date": "2026-02-16",
    "start_time": "19:17",
    "end_time": "2113-04-26",
    "reason": "acynynhkoircnmnaw",
    "notes": "et"
};

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/vel/unavailability/dicta';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'supplier_id' => 3,
            'date' => '2026-02-16',
            'start_time' => '19:17',
            'end_time' => '2113-04-26',
            'reason' => 'acynynhkoircnmnaw',
            'notes' => 'et',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/vel/unavailability/dicta'
payload = {
    "supplier_id": 3,
    "date": "2026-02-16",
    "start_time": "19:17",
    "end_time": "2113-04-26",
    "reason": "acynynhkoircnmnaw",
    "notes": "et"
}
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: vel

id   string   

The ID of the unavailability. Example: dicta

Body Parameters

supplier_id   integer   

The id of an existing record in the suppliers table. Example: 3

date   string   

Must be a valid date in the format Y-m-d. Example: 2026-02-16

start_time   string   

Must be a valid date in the format H:i. Example: 19:17

end_time   string   

Must be a valid date in the format H:i. Must be a date after start_time. Example: 2113-04-26

reason   string  optional  

Must not be greater than 255 characters. Example: acynynhkoircnmnaw

notes   string  optional  

Example: et

DELETE api/v1/suppliers/{supplierId}/unavailability/{id}

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

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/rerum/unavailability/aliquam';
$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/rerum/unavailability/aliquam'
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: rerum

id   string   

The ID of the unavailability. Example: aliquam

GET api/v1/suppliers/{supplierId}/unavailability/date

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/suppliers/error/unavailability/date" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"date\": \"2026-02-16\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/error/unavailability/date"
);

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

let body = {
    "date": "2026-02-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/suppliers/error/unavailability/date';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'date' => '2026-02-16',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/error/unavailability/date'
payload = {
    "date": "2026-02-16"
}
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: error

Body Parameters

date   string   

Must be a valid date in the format Y-m-d. Example: 2026-02-16

GET api/v1/suppliers/{supplierId}/unavailability/range

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/suppliers/cupiditate/unavailability/range" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"start_date\": \"2026-02-16\",
    \"end_date\": \"2104-10-03\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/cupiditate/unavailability/range"
);

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

let body = {
    "start_date": "2026-02-16",
    "end_date": "2104-10-03"
};

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/cupiditate/unavailability/range';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'start_date' => '2026-02-16',
            'end_date' => '2104-10-03',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/cupiditate/unavailability/range'
payload = {
    "start_date": "2026-02-16",
    "end_date": "2104-10-03"
}
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: cupiditate

Body Parameters

start_date   string   

Must be a valid date in the format Y-m-d. Example: 2026-02-16

end_date   string   

Must be a valid date in the format Y-m-d. Must be a date after or equal to start_date. Example: 2104-10-03

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/deleniti/unavailability/block-full-day" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"date\": \"2095-07-24\",
    \"reason\": \"uovrdzy\",
    \"notes\": \"sed\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/deleniti/unavailability/block-full-day"
);

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

let body = {
    "date": "2095-07-24",
    "reason": "uovrdzy",
    "notes": "sed"
};

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/deleniti/unavailability/block-full-day';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'date' => '2095-07-24',
            'reason' => 'uovrdzy',
            'notes' => 'sed',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/deleniti/unavailability/block-full-day'
payload = {
    "date": "2095-07-24",
    "reason": "uovrdzy",
    "notes": "sed"
}
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: deleniti

Body Parameters

date   string   

Must be a valid date in the format Y-m-d. Must be a date after or equal to today. Example: 2095-07-24

reason   string  optional  

Must not be greater than 255 characters. Example: uovrdzy

notes   string  optional  

Example: sed

Unblock slot (removes the unavailability block)

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/suppliers/doloremque/unavailability/voluptatum/unblock" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/doloremque/unavailability/voluptatum/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/doloremque/unavailability/voluptatum/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/doloremque/unavailability/voluptatum/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: doloremque

id   string   

The ID of the unavailability. Example: voluptatum

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/cumque/unavailability/consequatur/make-available" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/cumque/unavailability/consequatur/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/cumque/unavailability/consequatur/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/cumque/unavailability/consequatur/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: cumque

id   string   

The ID of the unavailability. Example: consequatur

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\": 8,
    \"start_date\": \"2049-06-21\",
    \"end_date\": \"2118-02-23\",
    \"notes\": \"bkvfxatmamgkcbquubw\"
}"
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": 8,
    "start_date": "2049-06-21",
    "end_date": "2118-02-23",
    "notes": "bkvfxatmamgkcbquubw"
};

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' => 8,
            'start_date' => '2049-06-21',
            'end_date' => '2118-02-23',
            'notes' => 'bkvfxatmamgkcbquubw',
        ],
    ]
);
$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": 8,
    "start_date": "2049-06-21",
    "end_date": "2118-02-23",
    "notes": "bkvfxatmamgkcbquubw"
}
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: 8

start_date   string   

Must be a valid date. Must be a date after now. Example: 2049-06-21

end_date   string   

Must be a valid date. Must be a date after start_date. Example: 2118-02-23

notes   string  optional  

Must not be greater than 1000 characters. Example: bkvfxatmamgkcbquubw

metadata   object  optional  

Show a reservation

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

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/illum';
$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/illum'
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: illum

Get detailed reservation information formatted for frontend

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/material-reservations/asperiores/detail" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/material-reservations/asperiores/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/asperiores/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/asperiores/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: asperiores

Update a reservation

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/material-reservations/eos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"start_date\": \"2026-02-16T19:17:14\",
    \"end_date\": \"2117-02-24\",
    \"status\": \"cancelled\",
    \"notes\": \"uehrgxbleqpwuysz\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/material-reservations/eos"
);

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

let body = {
    "start_date": "2026-02-16T19:17:14",
    "end_date": "2117-02-24",
    "status": "cancelled",
    "notes": "uehrgxbleqpwuysz"
};

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/eos';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'start_date' => '2026-02-16T19:17:14',
            'end_date' => '2117-02-24',
            'status' => 'cancelled',
            'notes' => 'uehrgxbleqpwuysz',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/material-reservations/eos'
payload = {
    "start_date": "2026-02-16T19:17:14",
    "end_date": "2117-02-24",
    "status": "cancelled",
    "notes": "uehrgxbleqpwuysz"
}
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: eos

Body Parameters

start_date   string  optional  

Must be a valid date. Example: 2026-02-16T19:17:14

end_date   string  optional  

Must be a valid date. Must be a date after start_date. Example: 2117-02-24

status   string  optional  

Example: cancelled

Must be one of:
  • pending
  • confirmed
  • cancelled
  • completed
notes   string  optional  

Must not be greater than 1000 characters. Example: uehrgxbleqpwuysz

metadata   object  optional  

Cancel a reservation

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/material-reservations/qui/cancel" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/material-reservations/qui/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/qui/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/qui/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: qui

Approve a material reservation

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/material-reservations/tenetur/approve" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/material-reservations/tenetur/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/tenetur/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/tenetur/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: tenetur

Reject a material reservation

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/material-reservations/nihil/reject" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/material-reservations/nihil/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/nihil/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/nihil/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: nihil

Delete a reservation

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

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/excepturi';
$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/excepturi'
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: excepturi

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/voluptate/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/voluptate/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/voluptate/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/voluptate/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: voluptate

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=rpof"\
    --form "description=Aut consequatur velit repellat eius explicabo sit voluptas."\
    --form "price=25"\
    --form "supplier_id=officia"\
    --form "main_image=@/tmp/phpo477Wu" \
    --form "additional_images[]=@/tmp/phptp4kq0" 
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', 'rpof');
body.append('description', 'Aut consequatur velit repellat eius explicabo sit voluptas.');
body.append('price', '25');
body.append('supplier_id', 'officia');
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' => 'rpof'
            ],
            [
                'name' => 'description',
                'contents' => 'Aut consequatur velit repellat eius explicabo sit voluptas.'
            ],
            [
                'name' => 'price',
                'contents' => '25'
            ],
            [
                'name' => 'supplier_id',
                'contents' => 'officia'
            ],
            [
                'name' => 'main_image',
                'contents' => fopen('/tmp/phpo477Wu', 'r')
            ],
            [
                'name' => 'additional_images[]',
                'contents' => fopen('/tmp/phptp4kq0', '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, 'rpof'),
  'description': (None, 'Aut consequatur velit repellat eius explicabo sit voluptas.'),
  'price': (None, '25'),
  'supplier_id': (None, 'officia'),
  'main_image': open('/tmp/phpo477Wu', 'rb'),
  'additional_images[]': open('/tmp/phptp4kq0', 'rb')}
payload = {
    "name": "rpof",
    "description": "Aut consequatur velit repellat eius explicabo sit voluptas.",
    "price": 25,
    "supplier_id": "officia"
}
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   

Must not be greater than 255 characters. Example: rpof

description   string  optional  

Example: Aut consequatur velit repellat eius explicabo sit voluptas.

price   number   

Must be at least 0. Example: 25

supplier_id   string   

The id of an existing record in the suppliers table. Example: officia

activity_ids   string[]  optional  

The id of an existing record in the activities table.

main_image   file  optional  

Must be an image. Must not be greater than 5120 kilobytes. Example: /tmp/phpo477Wu

additional_images   file[]  optional  

Must be an image. Must not be greater than 5120 kilobytes.

Get material by ID

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

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/ab';
$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/ab'
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: ab

Update material (admin)

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/admin/materials-class/et" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "name=bevbstpef"\
    --form "description=Eos beatae fugit nihil deleniti sed."\
    --form "price=2"\
    --form "main_image=@/tmp/phpTOlMhh" \
    --form "additional_images[]=@/tmp/php1eHzgN" 
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/materials-class/et"
);

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

const body = new FormData();
body.append('name', 'bevbstpef');
body.append('description', 'Eos beatae fugit nihil deleniti sed.');
body.append('price', '2');
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/et';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'name',
                'contents' => 'bevbstpef'
            ],
            [
                'name' => 'description',
                'contents' => 'Eos beatae fugit nihil deleniti sed.'
            ],
            [
                'name' => 'price',
                'contents' => '2'
            ],
            [
                'name' => 'main_image',
                'contents' => fopen('/tmp/phpTOlMhh', 'r')
            ],
            [
                'name' => 'additional_images[]',
                'contents' => fopen('/tmp/php1eHzgN', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/materials-class/et'
files = {
  'name': (None, 'bevbstpef'),
  'description': (None, 'Eos beatae fugit nihil deleniti sed.'),
  'price': (None, '2'),
  'main_image': open('/tmp/phpTOlMhh', 'rb'),
  'additional_images[]': open('/tmp/php1eHzgN', 'rb')}
payload = {
    "name": "bevbstpef",
    "description": "Eos beatae fugit nihil deleniti sed.",
    "price": 2
}
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: et

Body Parameters

name   string   

Must not be greater than 255 characters. Example: bevbstpef

description   string  optional  

Example: Eos beatae fugit nihil deleniti sed.

price   number   

Must be at least 0. Example: 2

activity_ids   string[]  optional  

The id of an existing record in the activities table.

main_image   file  optional  

Must be an image. Must not be greater than 5120 kilobytes. Example: /tmp/phpTOlMhh

additional_images   file[]  optional  

Must be an image. Must not be greater than 5120 kilobytes.

Update material status (approve/reject)

Example request:
curl --request PATCH \
    "https://api.wildoow.com/api/v1/admin/materials-class/sapiente/status" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"status\": \"review\",
    \"observation\": \"hic\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/admin/materials-class/sapiente/status"
);

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

let body = {
    "status": "review",
    "observation": "hic"
};

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/sapiente/status';
$response = $client->patch(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'status' => 'review',
            'observation' => 'hic',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/materials-class/sapiente/status'
payload = {
    "status": "review",
    "observation": "hic"
}
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: sapiente

Body Parameters

status   string   

Example: review

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

Example: hic

Delete material (admin only)

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

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/id';
$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/id'
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: id

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\": \"active\",
    \"search\": \"slsnvgsdxqhsshgrqr\",
    \"per_page\": 12,
    \"order_by\": \"code\",
    \"order_direction\": \"desc\"
}"
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": "active",
    "search": "slsnvgsdxqhsshgrqr",
    "per_page": 12,
    "order_by": "code",
    "order_direction": "desc"
};

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' => 'active',
            'search' => 'slsnvgsdxqhsshgrqr',
            'per_page' => 12,
            'order_by' => 'code',
            'order_direction' => 'desc',
        ],
    ]
);
$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": "active",
    "search": "slsnvgsdxqhsshgrqr",
    "per_page": 12,
    "order_by": "code",
    "order_direction": "desc"
}
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: active

Must be one of:
  • active
  • inactive
search   string  optional  

Must not be greater than 255 characters. Example: slsnvgsdxqhsshgrqr

per_page   integer  optional  

Must be at least 1. Must not be greater than 100. Example: 12

order_by   string  optional  

Example: code

Must be one of:
  • name
  • price
  • created_at
  • code
order_direction   string  optional  

Example: desc

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=mfmrbmymtblstyqaqjecabb"\
    --form "name=lfwurfxlu"\
    --form "description=Id dolores dolorem fugiat exercitationem sint suscipit aliquid."\
    --form "price=36"\
    --form "location=ocesthb"\
    --form "location_lat=-89"\
    --form "location_lng=-180"\
    --form "location_address=wfoxdvyhkbgwxaigleyl"\
    --form "meeting_point=lbpukdsnksrpva"\
    --form "activity_ids[]=10"\
    --form "images[][type]=additional"\
    --form "main_image=@/tmp/phpahI9Qw" \
    --form "additional_images[]=@/tmp/phpXL0lZy" \
    --form "images[][image]=@/tmp/php8d8USk" 
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', 'mfmrbmymtblstyqaqjecabb');
body.append('name', 'lfwurfxlu');
body.append('description', 'Id dolores dolorem fugiat exercitationem sint suscipit aliquid.');
body.append('price', '36');
body.append('location', 'ocesthb');
body.append('location_lat', '-89');
body.append('location_lng', '-180');
body.append('location_address', 'wfoxdvyhkbgwxaigleyl');
body.append('meeting_point', 'lbpukdsnksrpva');
body.append('activity_ids[]', '10');
body.append('images[][type]', 'additional');
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' => 'mfmrbmymtblstyqaqjecabb'
            ],
            [
                'name' => 'name',
                'contents' => 'lfwurfxlu'
            ],
            [
                'name' => 'description',
                'contents' => 'Id dolores dolorem fugiat exercitationem sint suscipit aliquid.'
            ],
            [
                'name' => 'price',
                'contents' => '36'
            ],
            [
                'name' => 'location',
                'contents' => 'ocesthb'
            ],
            [
                'name' => 'location_lat',
                'contents' => '-89'
            ],
            [
                'name' => 'location_lng',
                'contents' => '-180'
            ],
            [
                'name' => 'location_address',
                'contents' => 'wfoxdvyhkbgwxaigleyl'
            ],
            [
                'name' => 'meeting_point',
                'contents' => 'lbpukdsnksrpva'
            ],
            [
                'name' => 'activity_ids[]',
                'contents' => '10'
            ],
            [
                'name' => 'images[][type]',
                'contents' => 'additional'
            ],
            [
                'name' => 'main_image',
                'contents' => fopen('/tmp/phpahI9Qw', 'r')
            ],
            [
                'name' => 'additional_images[]',
                'contents' => fopen('/tmp/phpXL0lZy', 'r')
            ],
            [
                'name' => 'images[][image]',
                'contents' => fopen('/tmp/php8d8USk', '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, 'mfmrbmymtblstyqaqjecabb'),
  'name': (None, 'lfwurfxlu'),
  'description': (None, 'Id dolores dolorem fugiat exercitationem sint suscipit aliquid.'),
  'price': (None, '36'),
  'location': (None, 'ocesthb'),
  'location_lat': (None, '-89'),
  'location_lng': (None, '-180'),
  'location_address': (None, 'wfoxdvyhkbgwxaigleyl'),
  'meeting_point': (None, 'lbpukdsnksrpva'),
  'activity_ids[]': (None, '10'),
  'images[][type]': (None, 'additional'),
  'main_image': open('/tmp/phpahI9Qw', 'rb'),
  'additional_images[]': open('/tmp/phpXL0lZy', 'rb'),
  'images[][image]': open('/tmp/php8d8USk', 'rb')}
payload = {
    "code": "mfmrbmymtblstyqaqjecabb",
    "name": "lfwurfxlu",
    "description": "Id dolores dolorem fugiat exercitationem sint suscipit aliquid.",
    "price": 36,
    "location": "ocesthb",
    "location_lat": -89,
    "location_lng": -180,
    "location_address": "wfoxdvyhkbgwxaigleyl",
    "meeting_point": "lbpukdsnksrpva",
    "activity_ids": [
        10
    ],
    "images": [
        {
            "type": "additional"
        }
    ]
}
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  

Must not be greater than 255 characters. Example: mfmrbmymtblstyqaqjecabb

name   string   

Must not be greater than 255 characters. Example: lfwurfxlu

description   string  optional  

Example: Id dolores dolorem fugiat exercitationem sint suscipit aliquid.

price   number   

Must be at least 0. Example: 36

location   string  optional  

Must not be greater than 500 characters. Example: ocesthb

location_lat   number  optional  

Must be between -90 and 90. Example: -89

location_lng   number  optional  

Must be between -180 and 180. Example: -180

location_address   string  optional  

Must not be greater than 500 characters. Example: wfoxdvyhkbgwxaigleyl

meeting_point   string  optional  

Must not be greater than 1000 characters. Example: lbpukdsnksrpva

activity_ids   integer[]  optional  

The id of an existing record in the activities table.

main_image   file  optional  

Must be an image. Must not be greater than 5120 kilobytes. Example: /tmp/phpahI9Qw

additional_images   file[]  optional  

Must be an image. Must not be greater than 5120 kilobytes.

images   object[]  optional  
type   string   

Example: additional

Must be one of:
  • main
  • additional
image   file   

Must be a file. Must be an image. Must not be greater than 5120 kilobytes. Example: /tmp/php8d8USk

Get material by ID

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

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/doloremque';
$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/doloremque'
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: doloremque

Update material

Example request:
curl --request POST \
    "https://api.wildoow.com/api/v1/suppliers/materials-class/ipsum" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "code=ljw"\
    --form "name=rgen"\
    --form "description=Voluptatem illum ex neque quisquam nostrum eos."\
    --form "price=23"\
    --form "location=ngobghjwwtrbmtrqdfqoya"\
    --form "location_lat=-89"\
    --form "location_lng=-179"\
    --form "location_address=l"\
    --form "meeting_point=go"\
    --form "activity_ids[]=7"\
    --form "images[][type]=main"\
    --form "main_image=@/tmp/phpNWYi80" \
    --form "additional_images[]=@/tmp/phpI2POkg" \
    --form "images[][image]=@/tmp/phpy2K46Y" 
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/materials-class/ipsum"
);

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

const body = new FormData();
body.append('code', 'ljw');
body.append('name', 'rgen');
body.append('description', 'Voluptatem illum ex neque quisquam nostrum eos.');
body.append('price', '23');
body.append('location', 'ngobghjwwtrbmtrqdfqoya');
body.append('location_lat', '-89');
body.append('location_lng', '-179');
body.append('location_address', 'l');
body.append('meeting_point', 'go');
body.append('activity_ids[]', '7');
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/ipsum';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'code',
                'contents' => 'ljw'
            ],
            [
                'name' => 'name',
                'contents' => 'rgen'
            ],
            [
                'name' => 'description',
                'contents' => 'Voluptatem illum ex neque quisquam nostrum eos.'
            ],
            [
                'name' => 'price',
                'contents' => '23'
            ],
            [
                'name' => 'location',
                'contents' => 'ngobghjwwtrbmtrqdfqoya'
            ],
            [
                'name' => 'location_lat',
                'contents' => '-89'
            ],
            [
                'name' => 'location_lng',
                'contents' => '-179'
            ],
            [
                'name' => 'location_address',
                'contents' => 'l'
            ],
            [
                'name' => 'meeting_point',
                'contents' => 'go'
            ],
            [
                'name' => 'activity_ids[]',
                'contents' => '7'
            ],
            [
                'name' => 'images[][type]',
                'contents' => 'main'
            ],
            [
                'name' => 'main_image',
                'contents' => fopen('/tmp/phpNWYi80', 'r')
            ],
            [
                'name' => 'additional_images[]',
                'contents' => fopen('/tmp/phpI2POkg', 'r')
            ],
            [
                'name' => 'images[][image]',
                'contents' => fopen('/tmp/phpy2K46Y', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/materials-class/ipsum'
files = {
  'code': (None, 'ljw'),
  'name': (None, 'rgen'),
  'description': (None, 'Voluptatem illum ex neque quisquam nostrum eos.'),
  'price': (None, '23'),
  'location': (None, 'ngobghjwwtrbmtrqdfqoya'),
  'location_lat': (None, '-89'),
  'location_lng': (None, '-179'),
  'location_address': (None, 'l'),
  'meeting_point': (None, 'go'),
  'activity_ids[]': (None, '7'),
  'images[][type]': (None, 'main'),
  'main_image': open('/tmp/phpNWYi80', 'rb'),
  'additional_images[]': open('/tmp/phpI2POkg', 'rb'),
  'images[][image]': open('/tmp/phpy2K46Y', 'rb')}
payload = {
    "code": "ljw",
    "name": "rgen",
    "description": "Voluptatem illum ex neque quisquam nostrum eos.",
    "price": 23,
    "location": "ngobghjwwtrbmtrqdfqoya",
    "location_lat": -89,
    "location_lng": -179,
    "location_address": "l",
    "meeting_point": "go",
    "activity_ids": [
        7
    ],
    "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: ipsum

Body Parameters

code   string  optional  

Must not be greater than 255 characters. Example: ljw

name   string   

Must not be greater than 255 characters. Example: rgen

description   string  optional  

Example: Voluptatem illum ex neque quisquam nostrum eos.

price   number   

Must be at least 0. Example: 23

location   string  optional  

Must not be greater than 500 characters. Example: ngobghjwwtrbmtrqdfqoya

location_lat   number  optional  

Must be between -90 and 90. Example: -89

location_lng   number  optional  

Must be between -180 and 180. Example: -179

location_address   string  optional  

Must not be greater than 500 characters. Example: l

meeting_point   string  optional  

Must not be greater than 1000 characters. Example: go

activity_ids   integer[]  optional  

The id of an existing record in the activities table.

main_image   file  optional  

Must be an image. Must not be greater than 5120 kilobytes. Example: /tmp/phpNWYi80

additional_images   file[]  optional  

Must be an image. Must not be greater than 5120 kilobytes.

images   object[]  optional  
type   string   

Example: main

Must be one of:
  • main
  • additional
image   file   

Must be a file. Must be an image. Must not be greater than 5120 kilobytes. Example: /tmp/phpy2K46Y

Delete material

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

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/dolorem';
$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/dolorem'
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: dolorem

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\": \"iusto\",
    \"sort\": \"libero\",
    \"name\": \"er\",
    \"iso2\": \"tv\",
    \"iso3\": \"jomtcceyqudoqkgihkmxeuggvoudsndlwwxcjnhwoxuymztlbsoqghyhhdbm\",
    \"currency\": \"mdektbmx\",
    \"capital\": \"wpsktnytxlezyvdpycaztot\",
    \"belongsUe\": true,
    \"phonecode\": \"ukbhmqhteswgjsfmxbaosaylovlfypbbfruxhjcheqofbbdmoy\",
    \"region\": \"ipcjoywvndbfgccooedtbdmsnkhjhmixzalaycliqaryctnsuoxqfivgfffesrdwpemlwbvoyvnumqrflkidywdo\",
    \"subregion\": \"fpixmdonsapmkjkxpbyoavpsfg\",
    \"perPage\": 68,
    \"page\": 16
}"
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": "iusto",
    "sort": "libero",
    "name": "er",
    "iso2": "tv",
    "iso3": "jomtcceyqudoqkgihkmxeuggvoudsndlwwxcjnhwoxuymztlbsoqghyhhdbm",
    "currency": "mdektbmx",
    "capital": "wpsktnytxlezyvdpycaztot",
    "belongsUe": true,
    "phonecode": "ukbhmqhteswgjsfmxbaosaylovlfypbbfruxhjcheqofbbdmoy",
    "region": "ipcjoywvndbfgccooedtbdmsnkhjhmixzalaycliqaryctnsuoxqfivgfffesrdwpemlwbvoyvnumqrflkidywdo",
    "subregion": "fpixmdonsapmkjkxpbyoavpsfg",
    "perPage": 68,
    "page": 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/countries';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'order' => 'iusto',
            'sort' => 'libero',
            'name' => 'er',
            'iso2' => 'tv',
            'iso3' => 'jomtcceyqudoqkgihkmxeuggvoudsndlwwxcjnhwoxuymztlbsoqghyhhdbm',
            'currency' => 'mdektbmx',
            'capital' => 'wpsktnytxlezyvdpycaztot',
            'belongsUe' => true,
            'phonecode' => 'ukbhmqhteswgjsfmxbaosaylovlfypbbfruxhjcheqofbbdmoy',
            'region' => 'ipcjoywvndbfgccooedtbdmsnkhjhmixzalaycliqaryctnsuoxqfivgfffesrdwpemlwbvoyvnumqrflkidywdo',
            'subregion' => 'fpixmdonsapmkjkxpbyoavpsfg',
            'perPage' => 68,
            'page' => 16,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/countries'
payload = {
    "order": "iusto",
    "sort": "libero",
    "name": "er",
    "iso2": "tv",
    "iso3": "jomtcceyqudoqkgihkmxeuggvoudsndlwwxcjnhwoxuymztlbsoqghyhhdbm",
    "currency": "mdektbmx",
    "capital": "wpsktnytxlezyvdpycaztot",
    "belongsUe": true,
    "phonecode": "ukbhmqhteswgjsfmxbaosaylovlfypbbfruxhjcheqofbbdmoy",
    "region": "ipcjoywvndbfgccooedtbdmsnkhjhmixzalaycliqaryctnsuoxqfivgfffesrdwpemlwbvoyvnumqrflkidywdo",
    "subregion": "fpixmdonsapmkjkxpbyoavpsfg",
    "perPage": 68,
    "page": 16
}
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: iusto

sort   string  optional  

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

name   string  optional  

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

iso2   string  optional  

El campo value debe contener al menos 1 caracteres. Example: tv

iso3   string  optional  

El campo value debe contener al menos 1 caracteres. Example: jomtcceyqudoqkgihkmxeuggvoudsndlwwxcjnhwoxuymztlbsoqghyhhdbm

currency   string  optional  

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

capital   string  optional  

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

belongsUe   boolean  optional  

Example: true

phonecode   string  optional  

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

region   string  optional  

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

subregion   string  optional  

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

perPage   integer  optional  

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

page   integer  optional  

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

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\": \"sit\",
    \"sort\": \"amet\",
    \"name\": \"npyguckgnnvsydkgwzhdakjjtzfjifeugftmjdzutbcornljgpajlmzfo\",
    \"iso2\": \"kreavsyhezbeusppangmojrval\",
    \"is_active\": false,
    \"perPage\": 79,
    \"page\": 15
}"
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": "sit",
    "sort": "amet",
    "name": "npyguckgnnvsydkgwzhdakjjtzfjifeugftmjdzutbcornljgpajlmzfo",
    "iso2": "kreavsyhezbeusppangmojrval",
    "is_active": false,
    "perPage": 79,
    "page": 15
};

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' => 'sit',
            'sort' => 'amet',
            'name' => 'npyguckgnnvsydkgwzhdakjjtzfjifeugftmjdzutbcornljgpajlmzfo',
            'iso2' => 'kreavsyhezbeusppangmojrval',
            'is_active' => false,
            'perPage' => 79,
            'page' => 15,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/languages'
payload = {
    "order": "sit",
    "sort": "amet",
    "name": "npyguckgnnvsydkgwzhdakjjtzfjifeugftmjdzutbcornljgpajlmzfo",
    "iso2": "kreavsyhezbeusppangmojrval",
    "is_active": false,
    "perPage": 79,
    "page": 15
}
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: sit

sort   string  optional  

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

name   string  optional  

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

iso2   string  optional  

El campo value debe contener al menos 1 caracteres. Example: kreavsyhezbeusppangmojrval

is_active   boolean  optional  

Example: false

perPage   integer  optional  

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

page   integer  optional  

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

Show language

This endpoint show detail a language

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

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/sunt';
$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/sunt'
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: sunt

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\": \"neque\"
        },
        \"en\": {
            \"name\": \"officia\"
        }
    },
    \"is_active\": true,
    \"iso2\": \"wtmhasoefinnpyfvdsyrchjzncmvpcyvfvtyvuavhofwegcphizhgopcriipyqhziuiymwsawxajpy\",
    \"emoji\": \"xszixtdtdu\",
    \"emoji_u\": \"lokzmeefhemexvbqlovzljmibyucicehwptxxqyrose\"
}"
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": "neque"
        },
        "en": {
            "name": "officia"
        }
    },
    "is_active": true,
    "iso2": "wtmhasoefinnpyfvdsyrchjzncmvpcyvfvtyvuavhofwegcphizhgopcriipyqhziuiymwsawxajpy",
    "emoji": "xszixtdtdu",
    "emoji_u": "lokzmeefhemexvbqlovzljmibyucicehwptxxqyrose"
};

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' => 'neque',
                ],
                'en' => [
                    'name' => 'officia',
                ],
            ],
            'is_active' => true,
            'iso2' => 'wtmhasoefinnpyfvdsyrchjzncmvpcyvfvtyvuavhofwegcphizhgopcriipyqhziuiymwsawxajpy',
            'emoji' => 'xszixtdtdu',
            'emoji_u' => 'lokzmeefhemexvbqlovzljmibyucicehwptxxqyrose',
        ],
    ]
);
$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": "neque"
        },
        "en": {
            "name": "officia"
        }
    },
    "is_active": true,
    "iso2": "wtmhasoefinnpyfvdsyrchjzncmvpcyvfvtyvuavhofwegcphizhgopcriipyqhziuiymwsawxajpy",
    "emoji": "xszixtdtdu",
    "emoji_u": "lokzmeefhemexvbqlovzljmibyucicehwptxxqyrose"
}
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: neque

en   object  optional  
name   string  optional  

Example: officia

is_active   boolean  optional  

Example: true

iso2   string   

El campo value debe contener al menos 1 caracteres. Example: wtmhasoefinnpyfvdsyrchjzncmvpcyvfvtyvuavhofwegcphizhgopcriipyqhziuiymwsawxajpy

emoji   string  optional  

El campo value debe contener al menos 1 caracteres. Example: xszixtdtdu

emoji_u   string  optional  

El campo value debe contener al menos 1 caracteres. Example: lokzmeefhemexvbqlovzljmibyucicehwptxxqyrose

Update language

requires authentication

This endpoint update a language

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/languages/repudiandae?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"translations\": {
        \"es\": {
            \"name\": \"adipisci\"
        },
        \"en\": {
            \"name\": \"at\"
        }
    },
    \"is_active\": false,
    \"iso2\": \"xzomarbptiivgdxoohuhhlgm\",
    \"emoji\": \"slznjootzqsyhvynnukmsdasiodapvtoyhmftfjrfdimfysvywdpj\",
    \"emoji_u\": \"jmuhfphqbwtpouonyltwcfzuykxfcmhiyjpdkgvsunkwroazmwfbstt\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/languages/repudiandae"
);

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": "adipisci"
        },
        "en": {
            "name": "at"
        }
    },
    "is_active": false,
    "iso2": "xzomarbptiivgdxoohuhhlgm",
    "emoji": "slznjootzqsyhvynnukmsdasiodapvtoyhmftfjrfdimfysvywdpj",
    "emoji_u": "jmuhfphqbwtpouonyltwcfzuykxfcmhiyjpdkgvsunkwroazmwfbstt"
};

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/repudiandae';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'translations' => [
                'es' => [
                    'name' => 'adipisci',
                ],
                'en' => [
                    'name' => 'at',
                ],
            ],
            'is_active' => false,
            'iso2' => 'xzomarbptiivgdxoohuhhlgm',
            'emoji' => 'slznjootzqsyhvynnukmsdasiodapvtoyhmftfjrfdimfysvywdpj',
            'emoji_u' => 'jmuhfphqbwtpouonyltwcfzuykxfcmhiyjpdkgvsunkwroazmwfbstt',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/languages/repudiandae'
payload = {
    "translations": {
        "es": {
            "name": "adipisci"
        },
        "en": {
            "name": "at"
        }
    },
    "is_active": false,
    "iso2": "xzomarbptiivgdxoohuhhlgm",
    "emoji": "slznjootzqsyhvynnukmsdasiodapvtoyhmftfjrfdimfysvywdpj",
    "emoji_u": "jmuhfphqbwtpouonyltwcfzuykxfcmhiyjpdkgvsunkwroazmwfbstt"
}
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: repudiandae

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: adipisci

en   object  optional  
name   string  optional  

Example: at

is_active   boolean  optional  

Example: false

iso2   string  optional  

El campo value debe contener al menos 1 caracteres. Example: xzomarbptiivgdxoohuhhlgm

emoji   string  optional  

El campo value debe contener al menos 1 caracteres. Example: slznjootzqsyhvynnukmsdasiodapvtoyhmftfjrfdimfysvywdpj

emoji_u   string  optional  

El campo value debe contener al menos 1 caracteres. Example: jmuhfphqbwtpouonyltwcfzuykxfcmhiyjpdkgvsunkwroazmwfbstt

Delete language

requires authentication

This endpoint delete a language

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/languages/vitae?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/vitae"
);

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/vitae';
$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/vitae'
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: vitae

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\": \"distinctio\",
    \"sort\": \"sint\",
    \"timezone\": \"America\\/Yakutat\",
    \"utc\": \"nrcenixjkyphylcwqdbjjuaigufaqmkvcwbypjhxlxlgmiyiljevtqitjmzylckllhefdmjfzn\",
    \"offset\": \"qmddkmvkfpwtplpmrdqvohgxytellnhtyfacrkrfmbjyypgfjmsreecmqmzvtlerndvacfrnrl\",
    \"is_active\": true,
    \"perPage\": 55,
    \"page\": 17
}"
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": "distinctio",
    "sort": "sint",
    "timezone": "America\/Yakutat",
    "utc": "nrcenixjkyphylcwqdbjjuaigufaqmkvcwbypjhxlxlgmiyiljevtqitjmzylckllhefdmjfzn",
    "offset": "qmddkmvkfpwtplpmrdqvohgxytellnhtyfacrkrfmbjyypgfjmsreecmqmzvtlerndvacfrnrl",
    "is_active": true,
    "perPage": 55,
    "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/timezones';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'order' => 'distinctio',
            'sort' => 'sint',
            'timezone' => 'America/Yakutat',
            'utc' => 'nrcenixjkyphylcwqdbjjuaigufaqmkvcwbypjhxlxlgmiyiljevtqitjmzylckllhefdmjfzn',
            'offset' => 'qmddkmvkfpwtplpmrdqvohgxytellnhtyfacrkrfmbjyypgfjmsreecmqmzvtlerndvacfrnrl',
            'is_active' => true,
            'perPage' => 55,
            'page' => 17,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/timezones'
payload = {
    "order": "distinctio",
    "sort": "sint",
    "timezone": "America\/Yakutat",
    "utc": "nrcenixjkyphylcwqdbjjuaigufaqmkvcwbypjhxlxlgmiyiljevtqitjmzylckllhefdmjfzn",
    "offset": "qmddkmvkfpwtplpmrdqvohgxytellnhtyfacrkrfmbjyypgfjmsreecmqmzvtlerndvacfrnrl",
    "is_active": true,
    "perPage": 55,
    "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": "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: distinctio

sort   string  optional  

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

timezone   string  optional  

El campo value debe contener al menos 2 caracteres. Example: America/Yakutat

utc   string  optional  

El campo value debe contener al menos 1 caracteres. Example: nrcenixjkyphylcwqdbjjuaigufaqmkvcwbypjhxlxlgmiyiljevtqitjmzylckllhefdmjfzn

offset   string  optional  

El campo value debe contener al menos 1 caracteres. Example: qmddkmvkfpwtplpmrdqvohgxytellnhtyfacrkrfmbjyypgfjmsreecmqmzvtlerndvacfrnrl

is_active   boolean  optional  

Example: true

perPage   integer  optional  

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

page   integer  optional  

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

Show timezone

This endpoint show detail a timezone

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

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/beatae';
$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/beatae'
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: beatae

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\": true,
    \"timezone\": \"Africa\\/Kigali\",
    \"utc\": \"hyxuddpitgmxjbfanahgkhovnjhgouyrdvpstmvseziqeedqfhcedtnazgtdpimpyqoreqlnkweqwhmryguvvo\",
    \"offset\": \"zleuby\"
}"
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": true,
    "timezone": "Africa\/Kigali",
    "utc": "hyxuddpitgmxjbfanahgkhovnjhgouyrdvpstmvseziqeedqfhcedtnazgtdpimpyqoreqlnkweqwhmryguvvo",
    "offset": "zleuby"
};

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' => true,
            'timezone' => 'Africa/Kigali',
            'utc' => 'hyxuddpitgmxjbfanahgkhovnjhgouyrdvpstmvseziqeedqfhcedtnazgtdpimpyqoreqlnkweqwhmryguvvo',
            'offset' => 'zleuby',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/timezones'
payload = {
    "is_active": true,
    "timezone": "Africa\/Kigali",
    "utc": "hyxuddpitgmxjbfanahgkhovnjhgouyrdvpstmvseziqeedqfhcedtnazgtdpimpyqoreqlnkweqwhmryguvvo",
    "offset": "zleuby"
}
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: true

timezone   string   

El campo value debe contener al menos 5 caracteres. Example: Africa/Kigali

utc   string   

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

offset   string   

El campo value debe contener al menos 1 caracteres. Example: zleuby

Update timezone

requires authentication

This endpoint update a timezone

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/timezones/sapiente?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"is_active\": true,
    \"timezone\": \"America\\/Eirunepe\",
    \"utc\": \"ffukzaumoltijrkdkjdnlxvpjuvcraoys\",
    \"offset\": \"mphqyprnowlznsgauu\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/timezones/sapiente"
);

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": true,
    "timezone": "America\/Eirunepe",
    "utc": "ffukzaumoltijrkdkjdnlxvpjuvcraoys",
    "offset": "mphqyprnowlznsgauu"
};

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/sapiente';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'is_active' => true,
            'timezone' => 'America/Eirunepe',
            'utc' => 'ffukzaumoltijrkdkjdnlxvpjuvcraoys',
            'offset' => 'mphqyprnowlznsgauu',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/timezones/sapiente'
payload = {
    "is_active": true,
    "timezone": "America\/Eirunepe",
    "utc": "ffukzaumoltijrkdkjdnlxvpjuvcraoys",
    "offset": "mphqyprnowlznsgauu"
}
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: sapiente

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: true

timezone   string  optional  

El campo value debe contener al menos 5 caracteres. Example: America/Eirunepe

utc   string  optional  

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

offset   string  optional  

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

Delete timezone

requires authentication

This endpoint delete a timezone

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/timezones/excepturi?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/excepturi"
);

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/excepturi';
$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/excepturi'
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: excepturi

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/quos?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"order\": \"voluptate\",
    \"sort\": \"culpa\",
    \"name\": \"phekawsqhhwpxbxcvbpbkbmsncxbtpuncgojxwqipbyvkauguurvysfnwchczxbmkhijauphcwxyem\",
    \"iso2\": \"jsihqgeclglgrb\",
    \"perPage\": 68,
    \"page\": 14
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/provinces/countries/quos"
);

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": "culpa",
    "name": "phekawsqhhwpxbxcvbpbkbmsncxbtpuncgojxwqipbyvkauguurvysfnwchczxbmkhijauphcwxyem",
    "iso2": "jsihqgeclglgrb",
    "perPage": 68,
    "page": 14
};

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/quos';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'order' => 'voluptate',
            'sort' => 'culpa',
            'name' => 'phekawsqhhwpxbxcvbpbkbmsncxbtpuncgojxwqipbyvkauguurvysfnwchczxbmkhijauphcwxyem',
            'iso2' => 'jsihqgeclglgrb',
            'perPage' => 68,
            'page' => 14,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/provinces/countries/quos'
payload = {
    "order": "voluptate",
    "sort": "culpa",
    "name": "phekawsqhhwpxbxcvbpbkbmsncxbtpuncgojxwqipbyvkauguurvysfnwchczxbmkhijauphcwxyem",
    "iso2": "jsihqgeclglgrb",
    "perPage": 68,
    "page": 14
}
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: quos

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: culpa

name   string  optional  

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

iso2   string  optional  

El campo value debe contener al menos 1 caracteres. Example: jsihqgeclglgrb

perPage   integer  optional  

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

page   integer  optional  

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

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/rem?locale=es" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"order\": \"sed\",
    \"sort\": \"laborum\",
    \"name\": \"fvzwqbyyjcrtyiwuomnnyrghdovftkguoxazzxnjzbagtuvnumjfhyzwreg\",
    \"iso2\": \"akowmqtlkadipcyozm\",
    \"perPage\": 44,
    \"page\": 18
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/cities/provinces/rem"
);

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": "sed",
    "sort": "laborum",
    "name": "fvzwqbyyjcrtyiwuomnnyrghdovftkguoxazzxnjzbagtuvnumjfhyzwreg",
    "iso2": "akowmqtlkadipcyozm",
    "perPage": 44,
    "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/cities/provinces/rem';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'order' => 'sed',
            'sort' => 'laborum',
            'name' => 'fvzwqbyyjcrtyiwuomnnyrghdovftkguoxazzxnjzbagtuvnumjfhyzwreg',
            'iso2' => 'akowmqtlkadipcyozm',
            'perPage' => 44,
            'page' => 18,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/cities/provinces/rem'
payload = {
    "order": "sed",
    "sort": "laborum",
    "name": "fvzwqbyyjcrtyiwuomnnyrghdovftkguoxazzxnjzbagtuvnumjfhyzwreg",
    "iso2": "akowmqtlkadipcyozm",
    "perPage": 44,
    "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": "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: rem

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: sed

sort   string  optional  

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

name   string  optional  

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

iso2   string  optional  

El campo value debe contener al menos 1 caracteres. Example: akowmqtlkadipcyozm

perPage   integer  optional  

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

page   integer  optional  

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

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\": 56,
    \"page\": 14,
    \"order\": \"qui\",
    \"sort\": \"omnis\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/loyalty-tiers"
);

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

let body = {
    "perPage": 56,
    "page": 14,
    "order": "qui",
    "sort": "omnis"
};

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' => 56,
            'page' => 14,
            'order' => 'qui',
            'sort' => 'omnis',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/loyalty-tiers'
payload = {
    "perPage": 56,
    "page": 14,
    "order": "qui",
    "sort": "omnis"
}
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: 56

page   integer  optional  

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

order   string  optional  

Example: qui

sort   string  optional  

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

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/quaerat" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "name=ysxlgkmduoi"\
    --form "min_points=737.58436"\
    --form "max_points=54875362.1"\
    --form "image=@/tmp/phpZa8M7g" 
const url = new URL(
    "https://api.wildoow.com/api/v1/loyalty-tiers/quaerat"
);

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

const body = new FormData();
body.append('name', 'ysxlgkmduoi');
body.append('min_points', '737.58436');
body.append('max_points', '54875362.1');
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/quaerat';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'name',
                'contents' => 'ysxlgkmduoi'
            ],
            [
                'name' => 'min_points',
                'contents' => '737.58436'
            ],
            [
                'name' => 'max_points',
                'contents' => '54875362.1'
            ],
            [
                'name' => 'image',
                'contents' => fopen('/tmp/phpZa8M7g', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/loyalty-tiers/quaerat'
files = {
  'name': (None, 'ysxlgkmduoi'),
  'min_points': (None, '737.58436'),
  'max_points': (None, '54875362.1'),
  'image': open('/tmp/phpZa8M7g', 'rb')}
payload = {
    "name": "ysxlgkmduoi",
    "min_points": 737.58436,
    "max_points": 54875362.1
}
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: quaerat

Body Parameters

name   string  optional  

El campo value no debe contener mΓ‘s de 255 caracteres. Example: ysxlgkmduoi

min_points   number  optional  

Example: 737.58436

max_points   number  optional  

Example: 54875362.1

image   file  optional  

El campo value debe ser una imagen. El archivo value no debe pesar mΓ‘s de 2048 kilobytes. Example: /tmp/phpZa8M7g

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\": 32,
    \"page\": 19,
    \"order\": \"similique\",
    \"sort\": \"molestias\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/loyalty-benefits"
);

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

let body = {
    "perPage": 32,
    "page": 19,
    "order": "similique",
    "sort": "molestias"
};

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' => 32,
            'page' => 19,
            'order' => 'similique',
            'sort' => 'molestias',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/loyalty-benefits'
payload = {
    "perPage": 32,
    "page": 19,
    "order": "similique",
    "sort": "molestias"
}
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: 32

page   integer  optional  

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

order   string  optional  

Example: similique

sort   string  optional  

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

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\": 69,
    \"page\": 8,
    \"order\": \"optio\",
    \"sort\": \"nam\"
}"
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": 69,
    "page": 8,
    "order": "optio",
    "sort": "nam"
};

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' => 69,
            'page' => 8,
            'order' => 'optio',
            'sort' => 'nam',
        ],
    ]
);
$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": 69,
    "page": 8,
    "order": "optio",
    "sort": "nam"
}
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: 69

page   integer  optional  

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

order   string  optional  

Example: optio

sort   string  optional  

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

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/qui" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/loyalty-points/user/qui"
);

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/qui';
$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/qui'
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: qui

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/rerum" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"perPage\": 80,
    \"page\": 9,
    \"order\": \"rem\",
    \"sort\": \"et\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/loyalty-points/transactions/user/rerum"
);

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

let body = {
    "perPage": 80,
    "page": 9,
    "order": "rem",
    "sort": "et"
};

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/rerum';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'perPage' => 80,
            'page' => 9,
            'order' => 'rem',
            'sort' => 'et',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/loyalty-points/transactions/user/rerum'
payload = {
    "perPage": 80,
    "page": 9,
    "order": "rem",
    "sort": "et"
}
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: rerum

Body Parameters

perPage   integer   

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

page   integer  optional  

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

order   string  optional  

Example: rem

sort   string  optional  

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

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/id" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"perPage\": 68,
    \"page\": 8,
    \"name\": \"pqowgffuxweyzbaubdc\",
    \"email\": \"[email protected]\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/referrals/referred-users/id"
);

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

let body = {
    "perPage": 68,
    "page": 8,
    "name": "pqowgffuxweyzbaubdc",
    "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/id';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'perPage' => 68,
            'page' => 8,
            'name' => 'pqowgffuxweyzbaubdc',
            '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/id'
payload = {
    "perPage": 68,
    "page": 8,
    "name": "pqowgffuxweyzbaubdc",
    "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: id

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: 8

name   string  optional  

El campo value no debe contener mΓ‘s de 100 caracteres. Example: pqowgffuxweyzbaubdc

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/temporibus" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/referrals/stats/temporibus"
);

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/temporibus';
$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/temporibus'
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: temporibus

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\": 5,
    \"page\": 17,
    \"order\": \"eum\",
    \"sort\": \"cupiditate\",
    \"user_id\": 4,
    \"search\": \"et\",
    \"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": 5,
    "page": 17,
    "order": "eum",
    "sort": "cupiditate",
    "user_id": 4,
    "search": "et",
    "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' => 5,
            'page' => 17,
            'order' => 'eum',
            'sort' => 'cupiditate',
            'user_id' => 4,
            'search' => 'et',
            '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": 5,
    "page": 17,
    "order": "eum",
    "sort": "cupiditate",
    "user_id": 4,
    "search": "et",
    "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: 5

page   integer  optional  

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

order   string  optional  

Example: eum

sort   string  optional  

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

user_id   integer  optional  

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

search   string  optional  

Example: et

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\": \"u\",
    \"participants\": [
        13
    ]
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/conversations"
);

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

let body = {
    "title": "u",
    "participants": [
        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/conversations';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'title' => 'u',
            'participants' => [
                13,
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/conversations'
payload = {
    "title": "u",
    "participants": [
        13
    ]
}
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: u

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/quia" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/conversations/quia"
);

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/quia';
$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/quia'
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: quia

Delete conversation

This endpoint deletes a conversation and removes all participants

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

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/minima';
$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/minima'
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: minima

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/pariatur/read" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/conversations/pariatur/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/pariatur/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/pariatur/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: pariatur

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/error/messages" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"perPage\": 33,
    \"page\": 2,
    \"order\": \"sed\",
    \"sort\": \"corporis\",
    \"user_id\": 19,
    \"search\": \"omnis\",
    \"status\": \"read\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/conversations/error/messages"
);

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

let body = {
    "perPage": 33,
    "page": 2,
    "order": "sed",
    "sort": "corporis",
    "user_id": 19,
    "search": "omnis",
    "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/error/messages';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'perPage' => 33,
            'page' => 2,
            'order' => 'sed',
            'sort' => 'corporis',
            'user_id' => 19,
            'search' => 'omnis',
            'status' => 'read',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/conversations/error/messages'
payload = {
    "perPage": 33,
    "page": 2,
    "order": "sed",
    "sort": "corporis",
    "user_id": 19,
    "search": "omnis",
    "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: error

Body Parameters

perPage   integer   

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

page   integer  optional  

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

order   string  optional  

Example: sed

sort   string  optional  

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

user_id   integer  optional  

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

search   string  optional  

Example: omnis

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/dolores/messages" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "content=xfdxexnvhcfprwdyxtuwrr"\
    --form "type=file"\
    --form "file=@/tmp/phpSmsuj5" 
const url = new URL(
    "https://api.wildoow.com/api/v1/conversations/dolores/messages"
);

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

const body = new FormData();
body.append('content', 'xfdxexnvhcfprwdyxtuwrr');
body.append('type', 'file');
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/dolores/messages';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'content',
                'contents' => 'xfdxexnvhcfprwdyxtuwrr'
            ],
            [
                'name' => 'type',
                'contents' => 'file'
            ],
            [
                'name' => 'file',
                'contents' => fopen('/tmp/phpSmsuj5', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/conversations/dolores/messages'
files = {
  'content': (None, 'xfdxexnvhcfprwdyxtuwrr'),
  'type': (None, 'file'),
  'file': open('/tmp/phpSmsuj5', 'rb')}
payload = {
    "content": "xfdxexnvhcfprwdyxtuwrr",
    "type": "file"
}
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: dolores

Body Parameters

content   string   

El campo value no debe contener mΓ‘s de 2000 caracteres. Example: xfdxexnvhcfprwdyxtuwrr

type   string   

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/phpSmsuj5

Show message details

This endpoint retrieves details of a specific message

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

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/omnis';
$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/omnis'
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: omnis

Update message

This endpoint updates a message content

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/messages/optio" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "content=gxbluah"\
    --form "type=audio"\
    --form "file=@/tmp/phpFtc1FK" 
const url = new URL(
    "https://api.wildoow.com/api/v1/messages/optio"
);

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

const body = new FormData();
body.append('content', 'gxbluah');
body.append('type', 'audio');
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/optio';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'content',
                'contents' => 'gxbluah'
            ],
            [
                'name' => 'type',
                'contents' => 'audio'
            ],
            [
                'name' => 'file',
                'contents' => fopen('/tmp/phpFtc1FK', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/messages/optio'
files = {
  'content': (None, 'gxbluah'),
  'type': (None, 'audio'),
  'file': open('/tmp/phpFtc1FK', 'rb')}
payload = {
    "content": "gxbluah",
    "type": "audio"
}
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: optio

Body Parameters

content   string   

El campo value no debe contener mΓ‘s de 2000 caracteres. Example: gxbluah

type   string  optional  

Example: audio

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/phpFtc1FK

Delete message

This endpoint deletes a message

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

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/nobis';
$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/nobis'
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: nobis

Mark message as delivered

This endpoint marks a message as delivered

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/messages/ea/delivered" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/messages/ea/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/ea/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/ea/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: ea

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\": \"omnis\",
    \"sort\": \"a\",
    \"perPage\": 46,
    \"page\": 9
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/notification-templates"
);

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

let body = {
    "order": "omnis",
    "sort": "a",
    "perPage": 46,
    "page": 9
};

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' => 'omnis',
            'sort' => 'a',
            'perPage' => 46,
            'page' => 9,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/notification-templates'
payload = {
    "order": "omnis",
    "sort": "a",
    "perPage": 46,
    "page": 9
}
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: omnis

sort   string  optional  

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

perPage   integer   

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

page   integer  optional  

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

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\": \"wfcdnjpplocxbckdencyl\",
    \"code\": \"rkgavbllrejfqdtie\",
    \"subject\": \"nzoacqzbpnkicvgwhwfbhrjs\",
    \"content\": \"nam\",
    \"variables\": [
        \"aut\"
    ],
    \"channels\": [
        \"mail\"
    ],
    \"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": "wfcdnjpplocxbckdencyl",
    "code": "rkgavbllrejfqdtie",
    "subject": "nzoacqzbpnkicvgwhwfbhrjs",
    "content": "nam",
    "variables": [
        "aut"
    ],
    "channels": [
        "mail"
    ],
    "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' => 'wfcdnjpplocxbckdencyl',
            'code' => 'rkgavbllrejfqdtie',
            'subject' => 'nzoacqzbpnkicvgwhwfbhrjs',
            'content' => 'nam',
            'variables' => [
                'aut',
            ],
            'channels' => [
                'mail',
            ],
            '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": "wfcdnjpplocxbckdencyl",
    "code": "rkgavbllrejfqdtie",
    "subject": "nzoacqzbpnkicvgwhwfbhrjs",
    "content": "nam",
    "variables": [
        "aut"
    ],
    "channels": [
        "mail"
    ],
    "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: wfcdnjpplocxbckdencyl

code   string   

El campo value no debe contener mΓ‘s de 255 caracteres. Example: rkgavbllrejfqdtie

subject   string  optional  

El campo value no debe contener mΓ‘s de 255 caracteres. Example: nzoacqzbpnkicvgwhwfbhrjs

content   string   

Example: nam

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/totam" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/notification-templates/totam"
);

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/totam';
$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/totam'
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: totam

template   string   

ID de la plantilla Example: qui

Update a template notification

requires authentication

Update an existing template notification.

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/notification-templates/id" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"wxyy\",
    \"code\": \"bfqumpcbo\",
    \"subject\": \"hvdzjmkjcjurvsbxpoatnpqc\",
    \"content\": \"exercitationem\",
    \"variables\": [
        \"autem\"
    ],
    \"channels\": [
        \"database\"
    ],
    \"is_active\": true
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/notification-templates/id"
);

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

let body = {
    "name": "wxyy",
    "code": "bfqumpcbo",
    "subject": "hvdzjmkjcjurvsbxpoatnpqc",
    "content": "exercitationem",
    "variables": [
        "autem"
    ],
    "channels": [
        "database"
    ],
    "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/id';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'name' => 'wxyy',
            'code' => 'bfqumpcbo',
            'subject' => 'hvdzjmkjcjurvsbxpoatnpqc',
            'content' => 'exercitationem',
            'variables' => [
                'autem',
            ],
            'channels' => [
                'database',
            ],
            '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/id'
payload = {
    "name": "wxyy",
    "code": "bfqumpcbo",
    "subject": "hvdzjmkjcjurvsbxpoatnpqc",
    "content": "exercitationem",
    "variables": [
        "autem"
    ],
    "channels": [
        "database"
    ],
    "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: id

Body Parameters

name   string  optional  

El campo value no debe contener mΓ‘s de 255 caracteres. Example: wxyy

code   string  optional  

El campo value no debe contener mΓ‘s de 255 caracteres. Example: bfqumpcbo

subject   string  optional  

El campo value no debe contener mΓ‘s de 255 caracteres. Example: hvdzjmkjcjurvsbxpoatnpqc

content   string  optional  

Example: exercitationem

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/esse" \
    --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/esse"
);

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/esse';
$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/esse'
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: esse

template   string   

ID de la plantilla Example: eum

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\": \"lrqhuadburrgjacsfpmepnwawwdnqwqpeuwsynpssuioanbzvru\"
}"
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": "lrqhuadburrgjacsfpmepnwawwdnqwqpeuwsynpssuioanbzvru"
};

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' => 'lrqhuadburrgjacsfpmepnwawwdnqwqpeuwsynpssuioanbzvru',
        ],
    ]
);
$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": "lrqhuadburrgjacsfpmepnwawwdnqwqpeuwsynpssuioanbzvru"
}
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: lrqhuadburrgjacsfpmepnwawwdnqwqpeuwsynpssuioanbzvru

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/quia/balance" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/wallet/quia/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/quia/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/quia/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: quia

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/ea/list" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"perPage\": 53,
    \"page\": 24
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/transactions/ea/list"
);

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

let body = {
    "perPage": 53,
    "page": 24
};

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/ea/list';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'perPage' => 53,
            'page' => 24,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/payment/transactions/ea/list'
payload = {
    "perPage": 53,
    "page": 24
}
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: ea

Body Parameters

perPage   integer  optional  

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

page   integer  optional  

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

This endpoint retrieves details of a specific transaction.

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/payment/transactions/ea/detail" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/transactions/ea/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/ea/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/ea/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: ea

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=reprehenderit&perPage=10&page=2" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"perPage\": 29,
    \"page\": 52,
    \"order\": \"veritatis\",
    \"sort\": \"nihil\",
    \"role\": \"supplier\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/payment/history/list"
);

const params = {
    "string": "reprehenderit",
    "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": 29,
    "page": 52,
    "order": "veritatis",
    "sort": "nihil",
    "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' => 'reprehenderit',
            'perPage' => '10',
            'page' => '2',
        ],
        'json' => [
            'perPage' => 29,
            'page' => 52,
            'order' => 'veritatis',
            'sort' => 'nihil',
            '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": 29,
    "page": 52,
    "order": "veritatis",
    "sort": "nihil",
    "role": "supplier"
}
params = {
  'string': 'reprehenderit',
  '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: reprehenderit

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: 29

page   integer  optional  

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

order   string  optional  

Example: veritatis

sort   string  optional  

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

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\": \"eligendi\",
    \"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": "eligendi",
    "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' => 'eligendi',
            '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": "eligendi",
    "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: eligendi

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\": \"voluptatem\",
    \"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": "voluptatem",
    "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' => 'voluptatem',
            '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": "voluptatem",
    "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: voluptatem

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\": 17
}"
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": 17
};

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' => 17,
        ],
    ]
);
$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": 17
}
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: 17

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=optio" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"perPage\": 18,
    \"page\": 10,
    \"order\": \"rerum\",
    \"sort\": \"placeat\",
    \"provider_id\": 18,
    \"client_id\": 4,
    \"status\": \"pending\",
    \"start_date\": \"2026-02-16T19:17:09\",
    \"end_date\": \"2060-06-24\",
    \"role\": \"admin\"
}"
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": "optio",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

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

let body = {
    "perPage": 18,
    "page": 10,
    "order": "rerum",
    "sort": "placeat",
    "provider_id": 18,
    "client_id": 4,
    "status": "pending",
    "start_date": "2026-02-16T19:17:09",
    "end_date": "2060-06-24",
    "role": "admin"
};

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' => 'optio',
        ],
        'json' => [
            'perPage' => 18,
            'page' => 10,
            'order' => 'rerum',
            'sort' => 'placeat',
            'provider_id' => 18,
            'client_id' => 4,
            'status' => 'pending',
            'start_date' => '2026-02-16T19:17:09',
            'end_date' => '2060-06-24',
            'role' => 'admin',
        ],
    ]
);
$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": 18,
    "page": 10,
    "order": "rerum",
    "sort": "placeat",
    "provider_id": 18,
    "client_id": 4,
    "status": "pending",
    "start_date": "2026-02-16T19:17:09",
    "end_date": "2060-06-24",
    "role": "admin"
}
params = {
  'provider_id': '1',
  'client_id': '2',
  'status': 'confirmed',
  'start_date': '2024-02-01',
  'end_date': '2024-02-28',
  'string': 'optio',
}
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: optio

Body Parameters

perPage   integer   

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

page   integer  optional  

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

order   string  optional  

Example: rerum

sort   string  optional  

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

provider_id   integer  optional  

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

client_id   integer  optional  

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

status   string  optional  

Example: pending

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-16T19:17:09

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: 2060-06-24

role   string   

Example: admin

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/enim/detail" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"role\": \"admin\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/reservations/enim/detail"
);

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

let body = {
    "role": "admin"
};

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/enim/detail';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'role' => 'admin',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reservations/enim/detail'
payload = {
    "role": "admin"
}
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: enim

Body Parameters

role   string   

Example: admin

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\": \"en\",
    \"date\": \"2026-02-16T19:17:09\",
    \"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": "en",
    "date": "2026-02-16T19:17:09",
    "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' => 'en',
            'date' => '2026-02-16T19:17:09',
            '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": "en",
    "date": "2026-02-16T19:17:09",
    "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: en

Must be one of:
  • es
  • en
date   string   

El campo value no corresponde con una fecha vΓ‘lida. Example: 2026-02-16T19:17:09

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-16T19:17:11\",
    \"role\": \"admin\"
}"
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-16T19:17:11",
    "role": "admin"
};

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-16T19:17:11',
            'role' => 'admin',
        ],
    ]
);
$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-16T19:17:11",
    "role": "admin"
}
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   

Must be a valid date. Example: 2026-02-16T19:17:11

role   string   

Example: admin

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-16\",
    \"time\": \"19:17\",
    \"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-16",
    "time": "19:17",
    "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-16',
            'time' => '19:17',
            '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-16",
    "time": "19:17",
    "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-16

time   string   

Must be a valid date in the format H:i. Example: 19:17

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: 16

birthday_date_at   string   

The assistant's birthdate in YYYY-MM-DD format. Example: 1993-01-08

email   string  optional  

Must be a valid email address. 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\": [
        \"temporibus\"
    ]
}"
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": [
        "temporibus"
    ]
};

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' => [
                'temporibus',
            ],
        ],
    ]
);
$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": [
        "temporibus"
    ]
}
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-16 19:17:11

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-16 19:17:11

new_start_date_at   string   

Must be a valid date in the format Y-m-d H:i:s. Must be a date after or equal to today. Example: 2048-05-22

new_end_date_at   string   

Must be a valid date in the format Y-m-d H:i:s. Must be a date after or equal to changes.*.new_start_date_at. Example: 2036-02-19

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\": 42,
    \"page\": 12,
    \"status\": \"cancelled\",
    \"start_date\": \"2026-02-16\",
    \"end_date\": \"2101-05-03\",
    \"search\": \"rsffdkyfxqfdxfdftyk\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/reservations/payments"
);

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

let body = {
    "perPage": 42,
    "page": 12,
    "status": "cancelled",
    "start_date": "2026-02-16",
    "end_date": "2101-05-03",
    "search": "rsffdkyfxqfdxfdftyk"
};

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' => 42,
            'page' => 12,
            'status' => 'cancelled',
            'start_date' => '2026-02-16',
            'end_date' => '2101-05-03',
            'search' => 'rsffdkyfxqfdxfdftyk',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reservations/payments'
payload = {
    "perPage": 42,
    "page": 12,
    "status": "cancelled",
    "start_date": "2026-02-16",
    "end_date": "2101-05-03",
    "search": "rsffdkyfxqfdxfdftyk"
}
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   

Must be at least 1. Example: 42

page   integer  optional  

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

status   string  optional  

Example: cancelled

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-16

end_date   string  optional  

Must be a valid date in the format Y-m-d. Must be a date after or equal to start_date. Example: 2101-05-03

search   string  optional  

Must not be greater than 255 characters. Example: rsffdkyfxqfdxfdftyk

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/reprehenderit/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/reprehenderit/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/reprehenderit/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/reprehenderit/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: reprehenderit

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=qui"\
    --form "reservation_id=quaerat"\
    --form "rating=3"\
    --form "comment=oiegkmhoankmosmfgqkgq"\
    --form "images[]=@/tmp/phpOm8ffm" 
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', 'qui');
body.append('reservation_id', 'quaerat');
body.append('rating', '3');
body.append('comment', 'oiegkmhoankmosmfgqkgq');
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' => 'qui'
            ],
            [
                'name' => 'reservation_id',
                'contents' => 'quaerat'
            ],
            [
                'name' => 'rating',
                'contents' => '3'
            ],
            [
                'name' => 'comment',
                'contents' => 'oiegkmhoankmosmfgqkgq'
            ],
            [
                'name' => 'images[]',
                'contents' => fopen('/tmp/phpOm8ffm', '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, 'qui'),
  'reservation_id': (None, 'quaerat'),
  'rating': (None, '3'),
  'comment': (None, 'oiegkmhoankmosmfgqkgq'),
  'images[]': open('/tmp/phpOm8ffm', 'rb')}
payload = {
    "class_id": "qui",
    "reservation_id": "quaerat",
    "rating": 3,
    "comment": "oiegkmhoankmosmfgqkgq"
}
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: qui

reservation_id   string   

The id of an existing record in the reservations table. Example: quaerat

rating   integer   

Must be at least 1. Must not be greater than 5. Example: 3

comment   string  optional  

Must not be greater than 1000 characters. Example: oiegkmhoankmosmfgqkgq

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/est" \
    --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/est"
);

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/est';
$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/est'
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: est

Update a review

requires authentication

This endpoint allow update a review

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/reviews/fuga" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"rating\": 2,
    \"comment\": \"aywqbxp\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/reviews/fuga"
);

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

let body = {
    "rating": 2,
    "comment": "aywqbxp"
};

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/fuga';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'rating' => 2,
            'comment' => 'aywqbxp',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/reviews/fuga'
payload = {
    "rating": 2,
    "comment": "aywqbxp"
}
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: fuga

Body Parameters

rating   integer  optional  

Must be at least 1. Must not be greater than 5. Example: 2

comment   string  optional  

Must not be greater than 1000 characters. Example: aywqbxp

Delete a review

requires authentication

This endpoint allow delete a review

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/reviews/nostrum" \
    --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/nostrum"
);

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/nostrum';
$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/nostrum'
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: nostrum

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\": 70,
    \"page\": 5,
    \"order\": \"possimus\",
    \"sort\": \"esse\",
    \"class_id\": 2,
    \"material_id\": 1,
    \"user_id\": 10,
    \"reservation_id\": 19,
    \"rating\": 3,
    \"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": 70,
    "page": 5,
    "order": "possimus",
    "sort": "esse",
    "class_id": 2,
    "material_id": 1,
    "user_id": 10,
    "reservation_id": 19,
    "rating": 3,
    "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' => 70,
            'page' => 5,
            'order' => 'possimus',
            'sort' => 'esse',
            'class_id' => 2,
            'material_id' => 1,
            'user_id' => 10,
            'reservation_id' => 19,
            'rating' => 3,
            '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": 70,
    "page": 5,
    "order": "possimus",
    "sort": "esse",
    "class_id": 2,
    "material_id": 1,
    "user_id": 10,
    "reservation_id": 19,
    "rating": 3,
    "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   

Must be at least 1. Example: 70

page   integer  optional  

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

order   string  optional  

Example: possimus

sort   string  optional  

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

class_id   integer  optional  

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

material_id   integer  optional  

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

user_id   integer  optional  

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

reservation_id   integer  optional  

The id of an existing record in the reservations table. Example: 19

rating   integer  optional  

Must be at least 1. Must not be greater than 5. Example: 3

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\": 6,
    \"material_id\": 4
}"
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": 6,
    "material_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/reviews/rating-stats/classes';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'class_id' => 6,
            'material_id' => 4,
        ],
    ]
);
$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": 6,
    "material_id": 4
}
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: 6

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: 4

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\": 12,
    \"material_id\": 2
}"
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": 12,
    "material_id": 2
};

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' => 12,
            'material_id' => 2,
        ],
    ]
);
$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": 12,
    "material_id": 2
}
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: 12

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: 2

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\": \"voluptatem\",
    \"permissions\": [
        \"voluptas\"
    ]
}"
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": "voluptatem",
    "permissions": [
        "voluptas"
    ]
};

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' => 'voluptatem',
            'permissions' => [
                'voluptas',
            ],
        ],
    ]
);
$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": "voluptatem",
    "permissions": [
        "voluptas"
    ]
}
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: voluptatem

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\": \"et\",
    \"permissions\": [
        \"tempore\"
    ]
}"
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": "et",
    "permissions": [
        "tempore"
    ]
};

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' => 'et',
            'permissions' => [
                'tempore',
            ],
        ],
    ]
);
$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": "et",
    "permissions": [
        "tempore"
    ]
}
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: et

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\": \"necessitatibus\"
}"
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": "necessitatibus"
};

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' => 'necessitatibus',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/roles'
payload = {
    "name": "necessitatibus"
}
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: necessitatibus

Retrieve data role

requires authentication

This endpoint allows get show role

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/roles/ea" \
    --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/ea"
);

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/ea';
$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/ea'
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: ea

Update role

requires authentication

This endpoint allow update role

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

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

let body = {
    "name": "velit"
};

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/minus';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'name' => 'velit',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/roles/minus'
payload = {
    "name": "velit"
}
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: minus

Body Parameters

name   string   

Example: velit

Delete role

requires authentication

This endpoint allow delete role

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/roles/ipsam" \
    --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/ipsam"
);

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/ipsam';
$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/ipsam'
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: ipsam

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\": \"nbplalxwdeumenmwjokypjyeywjwzcdoijlauqtjlkxuaxl\"
}"
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": "nbplalxwdeumenmwjokypjyeywjwzcdoijlauqtjlkxuaxl"
};

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' => 'nbplalxwdeumenmwjokypjyeywjwzcdoijlauqtjlkxuaxl',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/permissions'
payload = {
    "name": "nbplalxwdeumenmwjokypjyeywjwzcdoijlauqtjlkxuaxl"
}
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   

Must be at least 2 characters. Example: nbplalxwdeumenmwjokypjyeywjwzcdoijlauqtjlkxuaxl

Retrieve data permission

requires authentication

This endpoint allows get show permission

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/permissions/aut" \
    --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/aut"
);

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/aut';
$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/aut'
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: aut

Update permission

requires authentication

This endpoint allow update permission

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

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

let body = {
    "name": "zwhjwnlotkxpcmgtixhvqhsg"
};

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/non';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'name' => 'zwhjwnlotkxpcmgtixhvqhsg',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/permissions/non'
payload = {
    "name": "zwhjwnlotkxpcmgtixhvqhsg"
}
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: non

Body Parameters

name   string   

Must be at least 2 characters. Example: zwhjwnlotkxpcmgtixhvqhsg

Delete permission

requires authentication

This endpoint allow delete permission

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/permissions/vitae" \
    --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/vitae"
);

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/vitae';
$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/vitae'
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: vitae

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\": \"ergtrzqhfcdiaprsvgqrovd\",
    \"site_description\": \"xlibarjiwzjevvesymvnenuedndyf\",
    \"site_keywords\": \"lbkkbjpjodubgaotalsgxnvbasudqiinfqmzaynkexqvlkpysczbgedaaxvlysuyofxzsmvinlacjll\",
    \"site_profile\": \"mhw\",
    \"site_logo\": \"smarbudsohwjnstjamq\",
    \"site_author\": \"vgggpmifnwdqvwqpazxcgtlzslmihufmvjkimfjdfsgkx\",
    \"site_address\": \"iwjanrjbgpomecvjoavfhxtfygpyszimugaascmfbfifcbsm\",
    \"site_email\": \"[email protected]\",
    \"site_phone\": \"mgjozixblojsigjqckizzryypniopgxefhopynfzxalpzjhuiwznkejevcmitzxeyaihetgocsgvrpljvqofxmjg\",
    \"site_phone_code\": \"ajmezxfancfbtqdcpxtgeclvhwhnwawbhdjpdlgyamhkfxzrch\",
    \"site_location\": \"queesufcyayaxzinqinbjybwhcxnnwltaomkdckqbcwvwasynablafpulygsbpbzctbyoychbbgikqaa\",
    \"site_currency\": \"nurbecawqikietuuadfgnsubeovjddtwwxisdmuqhlbptfrpkpscgtgrklvodnokrnyzfcscymicovl\",
    \"site_language\": \"mxlsxagsirnisqgcsisjjnszrlpuwmcjqlfysbqcimoojklloicxqc\"
}"
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": "ergtrzqhfcdiaprsvgqrovd",
    "site_description": "xlibarjiwzjevvesymvnenuedndyf",
    "site_keywords": "lbkkbjpjodubgaotalsgxnvbasudqiinfqmzaynkexqvlkpysczbgedaaxvlysuyofxzsmvinlacjll",
    "site_profile": "mhw",
    "site_logo": "smarbudsohwjnstjamq",
    "site_author": "vgggpmifnwdqvwqpazxcgtlzslmihufmvjkimfjdfsgkx",
    "site_address": "iwjanrjbgpomecvjoavfhxtfygpyszimugaascmfbfifcbsm",
    "site_email": "[email protected]",
    "site_phone": "mgjozixblojsigjqckizzryypniopgxefhopynfzxalpzjhuiwznkejevcmitzxeyaihetgocsgvrpljvqofxmjg",
    "site_phone_code": "ajmezxfancfbtqdcpxtgeclvhwhnwawbhdjpdlgyamhkfxzrch",
    "site_location": "queesufcyayaxzinqinbjybwhcxnnwltaomkdckqbcwvwasynablafpulygsbpbzctbyoychbbgikqaa",
    "site_currency": "nurbecawqikietuuadfgnsubeovjddtwwxisdmuqhlbptfrpkpscgtgrklvodnokrnyzfcscymicovl",
    "site_language": "mxlsxagsirnisqgcsisjjnszrlpuwmcjqlfysbqcimoojklloicxqc"
};

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' => 'ergtrzqhfcdiaprsvgqrovd',
            'site_description' => 'xlibarjiwzjevvesymvnenuedndyf',
            'site_keywords' => 'lbkkbjpjodubgaotalsgxnvbasudqiinfqmzaynkexqvlkpysczbgedaaxvlysuyofxzsmvinlacjll',
            'site_profile' => 'mhw',
            'site_logo' => 'smarbudsohwjnstjamq',
            'site_author' => 'vgggpmifnwdqvwqpazxcgtlzslmihufmvjkimfjdfsgkx',
            'site_address' => 'iwjanrjbgpomecvjoavfhxtfygpyszimugaascmfbfifcbsm',
            'site_email' => '[email protected]',
            'site_phone' => 'mgjozixblojsigjqckizzryypniopgxefhopynfzxalpzjhuiwznkejevcmitzxeyaihetgocsgvrpljvqofxmjg',
            'site_phone_code' => 'ajmezxfancfbtqdcpxtgeclvhwhnwawbhdjpdlgyamhkfxzrch',
            'site_location' => 'queesufcyayaxzinqinbjybwhcxnnwltaomkdckqbcwvwasynablafpulygsbpbzctbyoychbbgikqaa',
            'site_currency' => 'nurbecawqikietuuadfgnsubeovjddtwwxisdmuqhlbptfrpkpscgtgrklvodnokrnyzfcscymicovl',
            'site_language' => 'mxlsxagsirnisqgcsisjjnszrlpuwmcjqlfysbqcimoojklloicxqc',
        ],
    ]
);
$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": "ergtrzqhfcdiaprsvgqrovd",
    "site_description": "xlibarjiwzjevvesymvnenuedndyf",
    "site_keywords": "lbkkbjpjodubgaotalsgxnvbasudqiinfqmzaynkexqvlkpysczbgedaaxvlysuyofxzsmvinlacjll",
    "site_profile": "mhw",
    "site_logo": "smarbudsohwjnstjamq",
    "site_author": "vgggpmifnwdqvwqpazxcgtlzslmihufmvjkimfjdfsgkx",
    "site_address": "iwjanrjbgpomecvjoavfhxtfygpyszimugaascmfbfifcbsm",
    "site_email": "[email protected]",
    "site_phone": "mgjozixblojsigjqckizzryypniopgxefhopynfzxalpzjhuiwznkejevcmitzxeyaihetgocsgvrpljvqofxmjg",
    "site_phone_code": "ajmezxfancfbtqdcpxtgeclvhwhnwawbhdjpdlgyamhkfxzrch",
    "site_location": "queesufcyayaxzinqinbjybwhcxnnwltaomkdckqbcwvwasynablafpulygsbpbzctbyoychbbgikqaa",
    "site_currency": "nurbecawqikietuuadfgnsubeovjddtwwxisdmuqhlbptfrpkpscgtgrklvodnokrnyzfcscymicovl",
    "site_language": "mxlsxagsirnisqgcsisjjnszrlpuwmcjqlfysbqcimoojklloicxqc"
}
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: ergtrzqhfcdiaprsvgqrovd

site_description   string  optional  

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

site_keywords   string  optional  

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

site_profile   string  optional  

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

site_logo   string  optional  

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

site_author   string  optional  

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

site_address   string  optional  

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

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: mgjozixblojsigjqckizzryypniopgxefhopynfzxalpzjhuiwznkejevcmitzxeyaihetgocsgvrpljvqofxmjg

site_phone_code   string  optional  

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

site_location   string  optional  

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

site_currency   string  optional  

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

site_language   string  optional  

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

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\": \"ezefhomhtuynonrgthcxzuqqrlijlvvvastddlbqjmainxyttxzywlaxqmavvyrtcqlbfzymifbqgms\",
    \"google_client_secret\": \"grkjwxnbtytrvmzczwttuxoynjoxrsnhypekkepfuknspttmhogmftgglbrdkxmi\",
    \"google_redirect\": \"obkiijtyzhpzteyttjgxaiukmzjcwdfelwxbgokeiwvtvsqtmobbasxlbbacwugblnzq\"
}"
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": "ezefhomhtuynonrgthcxzuqqrlijlvvvastddlbqjmainxyttxzywlaxqmavvyrtcqlbfzymifbqgms",
    "google_client_secret": "grkjwxnbtytrvmzczwttuxoynjoxrsnhypekkepfuknspttmhogmftgglbrdkxmi",
    "google_redirect": "obkiijtyzhpzteyttjgxaiukmzjcwdfelwxbgokeiwvtvsqtmobbasxlbbacwugblnzq"
};

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' => 'ezefhomhtuynonrgthcxzuqqrlijlvvvastddlbqjmainxyttxzywlaxqmavvyrtcqlbfzymifbqgms',
            'google_client_secret' => 'grkjwxnbtytrvmzczwttuxoynjoxrsnhypekkepfuknspttmhogmftgglbrdkxmi',
            'google_redirect' => 'obkiijtyzhpzteyttjgxaiukmzjcwdfelwxbgokeiwvtvsqtmobbasxlbbacwugblnzq',
        ],
    ]
);
$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": "ezefhomhtuynonrgthcxzuqqrlijlvvvastddlbqjmainxyttxzywlaxqmavvyrtcqlbfzymifbqgms",
    "google_client_secret": "grkjwxnbtytrvmzczwttuxoynjoxrsnhypekkepfuknspttmhogmftgglbrdkxmi",
    "google_redirect": "obkiijtyzhpzteyttjgxaiukmzjcwdfelwxbgokeiwvtvsqtmobbasxlbbacwugblnzq"
}
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: ezefhomhtuynonrgthcxzuqqrlijlvvvastddlbqjmainxyttxzywlaxqmavvyrtcqlbfzymifbqgms

google_client_secret   string  optional  

El campo value debe contener al menos 6 caracteres. Example: grkjwxnbtytrvmzczwttuxoynjoxrsnhypekkepfuknspttmhogmftgglbrdkxmi

google_redirect   string  optional  

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

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\": \"consequatur\",
            \"policies\": [
                {
                    \"refund_percentage\": 2,
                    \"days_before\": 26,
                    \"description\": \"Ipsa quis earum et deleniti sint temporibus autem.\"
                }
            ]
        },
        \"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": "consequatur",
            "policies": [
                {
                    "refund_percentage": 2,
                    "days_before": 26,
                    "description": "Ipsa quis earum et deleniti sint temporibus autem."
                }
            ]
        },
        "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' => 'consequatur',
                    'policies' => [
                        [
                            'refund_percentage' => 2,
                            'days_before' => 26,
                            'description' => 'Ipsa quis earum et deleniti sint temporibus autem.',
                        ],
                    ],
                ],
                '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": "consequatur",
            "policies": [
                {
                    "refund_percentage": 2,
                    "days_before": 26,
                    "description": "Ipsa quis earum et deleniti sint temporibus autem."
                }
            ]
        },
        "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: consequatur

policies   object[]   
refund_percentage   integer   

Must be at least 0. Must not be greater than 100. Example: 2

days_before   integer   

Must be at least 0. Example: 26

description   string   

Example: Ipsa quis earum et deleniti sint temporibus autem.

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\": 1,
    \"service_fee_percentage\": 3,
    \"administrative_fee\": 49
}"
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": 1,
    "service_fee_percentage": 3,
    "administrative_fee": 49
};

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' => 1,
            'service_fee_percentage' => 3,
            'administrative_fee' => 49,
        ],
    ]
);
$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": 1,
    "service_fee_percentage": 3,
    "administrative_fee": 49
}
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  

Must be at least 0. Must not be greater than 100. Example: 1

service_fee_percentage   number  optional  

Must be at least 0. Must not be greater than 100. Example: 3

administrative_fee   number  optional  

Must be at least 0. Example: 49

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\": 43,
    \"commission_value\": 25
}"
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": 43,
    "commission_value": 25
};

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' => 43,
            'commission_value' => 25,
        ],
    ]
);
$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": 43,
    "commission_value": 25
}
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  

Must be at least 1. Example: 43

commission_value   number  optional  

Must be at least 0. Example: 25

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.labadie.org\\/optio-eveniet-aut-laborum-ipsum-consequuntur\",
    \"text\": \"sbthrxchjmvfecnhidyohylgenquvlfzvvzeinnlwobdv\"
}"
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.labadie.org\/optio-eveniet-aut-laborum-ipsum-consequuntur",
    "text": "sbthrxchjmvfecnhidyohylgenquvlfzvvzeinnlwobdv"
};

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.labadie.org/optio-eveniet-aut-laborum-ipsum-consequuntur',
            'text' => 'sbthrxchjmvfecnhidyohylgenquvlfzvvzeinnlwobdv',
        ],
    ]
);
$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.labadie.org\/optio-eveniet-aut-laborum-ipsum-consequuntur",
    "text": "sbthrxchjmvfecnhidyohylgenquvlfzvvzeinnlwobdv"
}
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.labadie.org/optio-eveniet-aut-laborum-ipsum-consequuntur

text   string  optional  

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

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\": \"eligendi\",
    \"sort\": \"qui\",
    \"name\": \"gpgrqddc\",
    \"is_active\": true,
    \"perPage\": 3,
    \"page\": 12
}"
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": "eligendi",
    "sort": "qui",
    "name": "gpgrqddc",
    "is_active": true,
    "perPage": 3,
    "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/social-networks';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'order' => 'eligendi',
            'sort' => 'qui',
            'name' => 'gpgrqddc',
            'is_active' => true,
            'perPage' => 3,
            'page' => 12,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/social-networks'
payload = {
    "order": "eligendi",
    "sort": "qui",
    "name": "gpgrqddc",
    "is_active": true,
    "perPage": 3,
    "page": 12
}
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: eligendi

sort   string  optional  

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

name   string  optional  

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

is_active   boolean  optional  

Example: true

perPage   integer  optional  

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

page   integer  optional  

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

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/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/social-networks/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/social-networks/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/social-networks/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": "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: 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 social network

requires authentication

This endpoint allow update a social network

Example request:
curl --request PUT \
    "https://api.wildoow.com/api/v1/social-networks/dolores?locale=es" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"translations\": {
        \"es\": {
            \"name\": \"voluptates\"
        },
        \"en\": {
            \"name\": \"enim\"
        }
    },
    \"is_active\": false,
    \"url_logo\": \"gdpiwhdkrpappdeqlimneiqzjbymlrxpsuxnyjgiixfkdwblolvogvdlseqfhilysy\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/social-networks/dolores"
);

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": "voluptates"
        },
        "en": {
            "name": "enim"
        }
    },
    "is_active": false,
    "url_logo": "gdpiwhdkrpappdeqlimneiqzjbymlrxpsuxnyjgiixfkdwblolvogvdlseqfhilysy"
};

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/dolores';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'translations' => [
                'es' => [
                    'name' => 'voluptates',
                ],
                'en' => [
                    'name' => 'enim',
                ],
            ],
            'is_active' => false,
            'url_logo' => 'gdpiwhdkrpappdeqlimneiqzjbymlrxpsuxnyjgiixfkdwblolvogvdlseqfhilysy',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/social-networks/dolores'
payload = {
    "translations": {
        "es": {
            "name": "voluptates"
        },
        "en": {
            "name": "enim"
        }
    },
    "is_active": false,
    "url_logo": "gdpiwhdkrpappdeqlimneiqzjbymlrxpsuxnyjgiixfkdwblolvogvdlseqfhilysy"
}
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: dolores

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: voluptates

en   object  optional  
name   string  optional  

Example: enim

is_active   boolean  optional  

Example: false

url_logo   string  optional  

El campo value debe contener al menos 1 caracteres. Example: gdpiwhdkrpappdeqlimneiqzjbymlrxpsuxnyjgiixfkdwblolvogvdlseqfhilysy

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\": \"distinctio\",
    \"sort\": \"error\",
    \"perPage\": 59,
    \"page\": 14,
    \"activity_id\": 5
}"
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": "distinctio",
    "sort": "error",
    "perPage": 59,
    "page": 14,
    "activity_id": 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/suppliers/materials';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'locale' => 'es',
        ],
        'json' => [
            'order' => 'distinctio',
            'sort' => 'error',
            'perPage' => 59,
            'page' => 14,
            'activity_id' => 5,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/materials'
payload = {
    "order": "distinctio",
    "sort": "error",
    "perPage": 59,
    "page": 14,
    "activity_id": 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": "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: distinctio

sort   string  optional  

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

perPage   integer  optional  

Must be at least 1. Example: 59

page   integer  optional  

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

activity_id   integer  optional  

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

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\": \"corrupti\",
                    \"description\": \"Est reiciendis nobis consequuntur eum rem quia qui.\"
                },
                \"en\": {
                    \"name\": \"qui\",
                    \"description\": \"Est in sit quisquam reiciendis alias ut fugiat.\"
                }
            },
            \"code\": \"nostrum\",
            \"amount\": 2484683.3571841256,
            \"is_pack\": false,
            \"is_active\": true,
            \"supplier_id\": 12,
            \"activity_id\": 1
        }
    ]
}"
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": "corrupti",
                    "description": "Est reiciendis nobis consequuntur eum rem quia qui."
                },
                "en": {
                    "name": "qui",
                    "description": "Est in sit quisquam reiciendis alias ut fugiat."
                }
            },
            "code": "nostrum",
            "amount": 2484683.3571841256,
            "is_pack": false,
            "is_active": true,
            "supplier_id": 12,
            "activity_id": 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/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' => 'corrupti',
                            'description' => 'Est reiciendis nobis consequuntur eum rem quia qui.',
                        ],
                        'en' => [
                            'name' => 'qui',
                            'description' => 'Est in sit quisquam reiciendis alias ut fugiat.',
                        ],
                    ],
                    'code' => 'nostrum',
                    'amount' => 2484683.3571841256,
                    'is_pack' => false,
                    'is_active' => true,
                    'supplier_id' => 12,
                    'activity_id' => 1,
                ],
            ],
        ],
    ]
);
$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": "corrupti",
                    "description": "Est reiciendis nobis consequuntur eum rem quia qui."
                },
                "en": {
                    "name": "qui",
                    "description": "Est in sit quisquam reiciendis alias ut fugiat."
                }
            },
            "code": "nostrum",
            "amount": 2484683.3571841256,
            "is_pack": false,
            "is_active": true,
            "supplier_id": 12,
            "activity_id": 1
        }
    ]
}
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: corrupti

description   string  optional  

Example: Est reiciendis nobis consequuntur eum rem quia qui.

en   object  optional  
name   string  optional  

Example: qui

description   string  optional  

Example: Est in sit quisquam reiciendis alias ut fugiat.

code   string  optional  

Example: nostrum

amount   number  optional  

Example: 2484683.3571841

is_pack   boolean  optional  

Example: false

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: 1

Show material

requires authentication

This endpoint retrieve detail material

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/suppliers/materials/illum?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/illum"
);

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/illum';
$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/illum'
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: illum

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/voluptatum" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"row\": [
        {
            \"translations\": {
                \"es\": {
                    \"name\": \"voluptatem\",
                    \"description\": \"Assumenda voluptatibus delectus eos dolorum.\"
                },
                \"en\": {
                    \"name\": \"non\",
                    \"description\": \"Eligendi officia dolorem pariatur et qui sint.\"
                }
            },
            \"code\": \"dolorum\",
            \"amount\": 14.6309016,
            \"is_pack\": true,
            \"is_active\": true,
            \"supplier_id\": 15,
            \"activity_id\": 1
        }
    ]
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/materials/voluptatum"
);

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

let body = {
    "row": [
        {
            "translations": {
                "es": {
                    "name": "voluptatem",
                    "description": "Assumenda voluptatibus delectus eos dolorum."
                },
                "en": {
                    "name": "non",
                    "description": "Eligendi officia dolorem pariatur et qui sint."
                }
            },
            "code": "dolorum",
            "amount": 14.6309016,
            "is_pack": true,
            "is_active": true,
            "supplier_id": 15,
            "activity_id": 1
        }
    ]
};

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/voluptatum';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'row' => [
                [
                    'translations' => [
                        'es' => [
                            'name' => 'voluptatem',
                            'description' => 'Assumenda voluptatibus delectus eos dolorum.',
                        ],
                        'en' => [
                            'name' => 'non',
                            'description' => 'Eligendi officia dolorem pariatur et qui sint.',
                        ],
                    ],
                    'code' => 'dolorum',
                    'amount' => 14.6309016,
                    'is_pack' => true,
                    'is_active' => true,
                    'supplier_id' => 15,
                    'activity_id' => 1,
                ],
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/materials/voluptatum'
payload = {
    "row": [
        {
            "translations": {
                "es": {
                    "name": "voluptatem",
                    "description": "Assumenda voluptatibus delectus eos dolorum."
                },
                "en": {
                    "name": "non",
                    "description": "Eligendi officia dolorem pariatur et qui sint."
                }
            },
            "code": "dolorum",
            "amount": 14.6309016,
            "is_pack": true,
            "is_active": true,
            "supplier_id": 15,
            "activity_id": 1
        }
    ]
}
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: voluptatum

Body Parameters

row   object[]   
translations   object  optional  
es   object  optional  
name   string  optional  

Example: voluptatem

description   string  optional  

Example: Assumenda voluptatibus delectus eos dolorum.

en   object  optional  
name   string  optional  

Example: non

description   string  optional  

Example: Eligendi officia dolorem pariatur et qui sint.

code   string  optional  

Example: dolorum

amount   number  optional  

Example: 14.6309016

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: 15

activity_id   integer   

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

Delete a material

requires authentication

This endpoint allow delete a material

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/suppliers/materials/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/suppliers/materials/vel"
);

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/vel';
$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/vel'
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: vel

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/ut/materials/activities/enim?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\": \"qui\",
    \"sort\": \"qui\",
    \"perPage\": 35,
    \"page\": 2
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/ut/materials/activities/enim"
);

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": "qui",
    "sort": "qui",
    "perPage": 35,
    "page": 2
};

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/ut/materials/activities/enim';
$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' => 'qui',
            'sort' => 'qui',
            'perPage' => 35,
            'page' => 2,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/ut/materials/activities/enim'
payload = {
    "locale": "en",
    "order": "qui",
    "sort": "qui",
    "perPage": 35,
    "page": 2
}
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: ut

activity_id   string   

The ID of the activity. Example: enim

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: qui

sort   string  optional  

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

perPage   integer  optional  

Must be at least 1. Example: 35

page   integer  optional  

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

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/molestiae" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"row\": [
        {
            \"translations\": {
                \"es\": {
                    \"name\": \"voluptas\",
                    \"description\": \"Velit qui omnis temporibus pariatur sed ex eos et.\"
                },
                \"en\": {
                    \"name\": \"a\",
                    \"description\": \"Nisi qui quae natus perspiciatis rerum.\"
                }
            },
            \"code\": \"ex\",
            \"amount\": 3556.3521024,
            \"is_pack\": false,
            \"is_active\": false,
            \"supplier_id\": 14,
            \"activity_id\": 11
        }
    ]
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/suppliers/materials/activities/molestiae"
);

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

let body = {
    "row": [
        {
            "translations": {
                "es": {
                    "name": "voluptas",
                    "description": "Velit qui omnis temporibus pariatur sed ex eos et."
                },
                "en": {
                    "name": "a",
                    "description": "Nisi qui quae natus perspiciatis rerum."
                }
            },
            "code": "ex",
            "amount": 3556.3521024,
            "is_pack": false,
            "is_active": false,
            "supplier_id": 14,
            "activity_id": 11
        }
    ]
};

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/molestiae';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'row' => [
                [
                    'translations' => [
                        'es' => [
                            'name' => 'voluptas',
                            'description' => 'Velit qui omnis temporibus pariatur sed ex eos et.',
                        ],
                        'en' => [
                            'name' => 'a',
                            'description' => 'Nisi qui quae natus perspiciatis rerum.',
                        ],
                    ],
                    'code' => 'ex',
                    'amount' => 3556.3521024,
                    'is_pack' => false,
                    'is_active' => false,
                    'supplier_id' => 14,
                    'activity_id' => 11,
                ],
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/suppliers/materials/activities/molestiae'
payload = {
    "row": [
        {
            "translations": {
                "es": {
                    "name": "voluptas",
                    "description": "Velit qui omnis temporibus pariatur sed ex eos et."
                },
                "en": {
                    "name": "a",
                    "description": "Nisi qui quae natus perspiciatis rerum."
                }
            },
            "code": "ex",
            "amount": 3556.3521024,
            "is_pack": false,
            "is_active": false,
            "supplier_id": 14,
            "activity_id": 11
        }
    ]
}
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: molestiae

Body Parameters

row   object[]   
translations   object  optional  
es   object  optional  
name   string  optional  

Example: voluptas

description   string  optional  

Example: Velit qui omnis temporibus pariatur sed ex eos et.

en   object  optional  
name   string  optional  

Example: a

description   string  optional  

Example: Nisi qui quae natus perspiciatis rerum.

code   string  optional  

Example: ex

amount   number  optional  

Example: 3556.3521024

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: 14

activity_id   integer   

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

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/aut" \
    --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/aut"
);

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/aut';
$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/aut'
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: aut

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/eum/degrees/dolorum" \
    --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/eum/degrees/dolorum"
);

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/eum/degrees/dolorum';
$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/eum/degrees/dolorum'
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: eum

degree   string   

The degree. Example: dolorum

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/magnam/experiences/iure" \
    --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/magnam/experiences/iure"
);

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/magnam/experiences/iure';
$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/magnam/experiences/iure'
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: magnam

experience   string   

The experience. Example: iure

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/fugit" \
    --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/fugit"
);

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/fugit';
$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/fugit'
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: fugit

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\": 67,
    \"page\": 19,
    \"first_name\": \"hwjnwfjepqcnxzdtilhadsgtjslfrckuqeoimlrpo\",
    \"last_name\": \"iopovskwjaualjxwxmplvcsdydddpjmjhtpqigkopfkudbdwks\",
    \"email\": \"[email protected]\",
    \"username\": \"hirqzftnlyniibp\",
    \"active\": false,
    \"roles\": [
        \"libero\"
    ],
    \"verifiedSupplier\": false,
    \"fields\": \"soluta\"
}"
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": 67,
    "page": 19,
    "first_name": "hwjnwfjepqcnxzdtilhadsgtjslfrckuqeoimlrpo",
    "last_name": "iopovskwjaualjxwxmplvcsdydddpjmjhtpqigkopfkudbdwks",
    "email": "[email protected]",
    "username": "hirqzftnlyniibp",
    "active": false,
    "roles": [
        "libero"
    ],
    "verifiedSupplier": false,
    "fields": "soluta"
};

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' => 67,
            'page' => 19,
            'first_name' => 'hwjnwfjepqcnxzdtilhadsgtjslfrckuqeoimlrpo',
            'last_name' => 'iopovskwjaualjxwxmplvcsdydddpjmjhtpqigkopfkudbdwks',
            'email' => '[email protected]',
            'username' => 'hirqzftnlyniibp',
            'active' => false,
            'roles' => [
                'libero',
            ],
            'verifiedSupplier' => false,
            'fields' => 'soluta',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/admin/users'
payload = {
    "perPage": 67,
    "page": 19,
    "first_name": "hwjnwfjepqcnxzdtilhadsgtjslfrckuqeoimlrpo",
    "last_name": "iopovskwjaualjxwxmplvcsdydddpjmjhtpqigkopfkudbdwks",
    "email": "[email protected]",
    "username": "hirqzftnlyniibp",
    "active": false,
    "roles": [
        "libero"
    ],
    "verifiedSupplier": false,
    "fields": "soluta"
}
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   

Must be at least 1. Example: 67

page   integer  optional  

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

first_name   string  optional  

Must be at least 2 characters. Example: hwjnwfjepqcnxzdtilhadsgtjslfrckuqeoimlrpo

last_name   string  optional  

Must be at least 2 characters. Example: iopovskwjaualjxwxmplvcsdydddpjmjhtpqigkopfkudbdwks

email   string  optional  

Must be at least 2 characters. Example: [email protected]

username   string  optional  

Must be at least 2 characters. Example: hirqzftnlyniibp

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: soluta

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\": \"acjxclncogfhpy\",
    \"last_name\": \"vbpqvkifiuappbcannjguvyrbruzipp\",
    \"username\": \"zvxoanbzekklwnsswxaofyfwbcsqcbrhrawhnrnbrwfnr\",
    \"email\": \"[email protected]\",
    \"password\": \"libero\",
    \"role\": \"quis\",
    \"referral_code\": \"molestias\",
    \"supplier\": {
        \"is_business\": true
    },
    \"password_confirmation\": \"non\"
}"
const url = new URL(
    "https://api.wildoow.com/api/v1/register"
);

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

let body = {
    "first_name": "acjxclncogfhpy",
    "last_name": "vbpqvkifiuappbcannjguvyrbruzipp",
    "username": "zvxoanbzekklwnsswxaofyfwbcsqcbrhrawhnrnbrwfnr",
    "email": "[email protected]",
    "password": "libero",
    "role": "quis",
    "referral_code": "molestias",
    "supplier": {
        "is_business": true
    },
    "password_confirmation": "non"
};

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' => 'acjxclncogfhpy',
            'last_name' => 'vbpqvkifiuappbcannjguvyrbruzipp',
            'username' => 'zvxoanbzekklwnsswxaofyfwbcsqcbrhrawhnrnbrwfnr',
            'email' => '[email protected]',
            'password' => 'libero',
            'role' => 'quis',
            'referral_code' => 'molestias',
            'supplier' => [
                'is_business' => true,
            ],
            'password_confirmation' => 'non',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/register'
payload = {
    "first_name": "acjxclncogfhpy",
    "last_name": "vbpqvkifiuappbcannjguvyrbruzipp",
    "username": "zvxoanbzekklwnsswxaofyfwbcsqcbrhrawhnrnbrwfnr",
    "email": "[email protected]",
    "password": "libero",
    "role": "quis",
    "referral_code": "molestias",
    "supplier": {
        "is_business": true
    },
    "password_confirmation": "non"
}
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: acjxclncogfhpy

last_name   string  optional  

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

username   string   

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

email   string   

El campo value debe ser una direcciΓ³n de correo vΓ‘lida. Example: [email protected]

password   string   

Example: libero

role   string  optional  

The name of an existing record in the roles table. Example: quis

referral_code   string  optional  

The referral_code of an existing record in the users table. Example: molestias

supplier   object  optional  
is_business   boolean  optional  

Example: true

password_confirmation   required  optional  

The password confirmation. Example: non

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/est" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "first_name=fvbhkhyjxdtkzhftnlgclhumwbodlbryrqdhbjpdlxx"\
    --form "last_name=skahgssjbzduqwguzlkgleobcbianvdepdeyuqxyboh"\
    --form "role=perspiciatis"\
    --form "supplier[dni]=nytpixlhdntuqtzdngwbkzxjmspzbeujvbicubyttjtsndmjksepeljqvsuefskxmkqyghkfmiezojszf"\
    --form "supplier[is_business]=1"\
    --form "supplier[phone]=+0402163522"\
    --form "supplier[iban]=fprjawuoyhaojykslx"\
    --form "supplier[provider_type]=autonomo"\
    --form "supplier[company_name]=oift"\
    --form "supplier[cif]=jjwskc"\
    --form "supplier[company_address]=yotjtprjjvnbmvp"\
    --form "supplier[responsible_declaration]="\
    --form "supplier[documents][bank_certificate][]=architecto"\
    --form "supplier[documents][dni][]=et"\
    --form "supplier[documents][dni_back][]=sit"\
    --form "supplier[documents][legal][]=quisquam"\
    --form "supplier[documents][insurance][]=dicta"\
    --form "supplier[documents][sexual_offense][]=vero"\
    --form "supplier[documents][others][]=vero"\
    --form "supplier[languages][]=6"\
    --form "supplier[automatic_approval_classes]="\
    --form "supplier[percentage_platform]=42426"\
    --form "supplier[administrative_fee]=6.4"\
    --form "supplier[work_start_hour]=12"\
    --form "supplier[work_end_hour]=12"\
    --form "supplier[cutoff_hours]=10"\
    --form "supplier[response_hours]=24"\
    --form "supplier[next_reservation_margin_hours]=12"\
    --form "supplier[degrees][][degree_id]=10"\
    --form "supplier[degrees][][document]=id"\
    --form "supplier[experiences][][activity_id]=18"\
    --form "supplier[experiences][][year]=7"\
    --form "password_confirmation=maxime"\
    --form "image=@/tmp/phpkhUhJx" 
const url = new URL(
    "https://api.wildoow.com/api/v1/users/est"
);

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

const body = new FormData();
body.append('first_name', 'fvbhkhyjxdtkzhftnlgclhumwbodlbryrqdhbjpdlxx');
body.append('last_name', 'skahgssjbzduqwguzlkgleobcbianvdepdeyuqxyboh');
body.append('role', 'perspiciatis');
body.append('supplier[dni]', 'nytpixlhdntuqtzdngwbkzxjmspzbeujvbicubyttjtsndmjksepeljqvsuefskxmkqyghkfmiezojszf');
body.append('supplier[is_business]', '1');
body.append('supplier[phone]', '+0402163522');
body.append('supplier[iban]', 'fprjawuoyhaojykslx');
body.append('supplier[provider_type]', 'autonomo');
body.append('supplier[company_name]', 'oift');
body.append('supplier[cif]', 'jjwskc');
body.append('supplier[company_address]', 'yotjtprjjvnbmvp');
body.append('supplier[responsible_declaration]', '');
body.append('supplier[documents][bank_certificate][]', 'architecto');
body.append('supplier[documents][dni][]', 'et');
body.append('supplier[documents][dni_back][]', 'sit');
body.append('supplier[documents][legal][]', 'quisquam');
body.append('supplier[documents][insurance][]', 'dicta');
body.append('supplier[documents][sexual_offense][]', 'vero');
body.append('supplier[documents][others][]', 'vero');
body.append('supplier[languages][]', '6');
body.append('supplier[automatic_approval_classes]', '');
body.append('supplier[percentage_platform]', '42426');
body.append('supplier[administrative_fee]', '6.4');
body.append('supplier[work_start_hour]', '12');
body.append('supplier[work_end_hour]', '12');
body.append('supplier[cutoff_hours]', '10');
body.append('supplier[response_hours]', '24');
body.append('supplier[next_reservation_margin_hours]', '12');
body.append('supplier[degrees][][degree_id]', '10');
body.append('supplier[degrees][][document]', 'id');
body.append('supplier[experiences][][activity_id]', '18');
body.append('supplier[experiences][][year]', '7');
body.append('password_confirmation', 'maxime');
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/est';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'first_name',
                'contents' => 'fvbhkhyjxdtkzhftnlgclhumwbodlbryrqdhbjpdlxx'
            ],
            [
                'name' => 'last_name',
                'contents' => 'skahgssjbzduqwguzlkgleobcbianvdepdeyuqxyboh'
            ],
            [
                'name' => 'role',
                'contents' => 'perspiciatis'
            ],
            [
                'name' => 'supplier[dni]',
                'contents' => 'nytpixlhdntuqtzdngwbkzxjmspzbeujvbicubyttjtsndmjksepeljqvsuefskxmkqyghkfmiezojszf'
            ],
            [
                'name' => 'supplier[is_business]',
                'contents' => '1'
            ],
            [
                'name' => 'supplier[phone]',
                'contents' => '+0402163522'
            ],
            [
                'name' => 'supplier[iban]',
                'contents' => 'fprjawuoyhaojykslx'
            ],
            [
                'name' => 'supplier[provider_type]',
                'contents' => 'autonomo'
            ],
            [
                'name' => 'supplier[company_name]',
                'contents' => 'oift'
            ],
            [
                'name' => 'supplier[cif]',
                'contents' => 'jjwskc'
            ],
            [
                'name' => 'supplier[company_address]',
                'contents' => 'yotjtprjjvnbmvp'
            ],
            [
                'name' => 'supplier[responsible_declaration]',
                'contents' => ''
            ],
            [
                'name' => 'supplier[documents][bank_certificate][]',
                'contents' => 'architecto'
            ],
            [
                'name' => 'supplier[documents][dni][]',
                'contents' => 'et'
            ],
            [
                'name' => 'supplier[documents][dni_back][]',
                'contents' => 'sit'
            ],
            [
                'name' => 'supplier[documents][legal][]',
                'contents' => 'quisquam'
            ],
            [
                'name' => 'supplier[documents][insurance][]',
                'contents' => 'dicta'
            ],
            [
                'name' => 'supplier[documents][sexual_offense][]',
                'contents' => 'vero'
            ],
            [
                'name' => 'supplier[documents][others][]',
                'contents' => 'vero'
            ],
            [
                'name' => 'supplier[languages][]',
                'contents' => '6'
            ],
            [
                'name' => 'supplier[automatic_approval_classes]',
                'contents' => ''
            ],
            [
                'name' => 'supplier[percentage_platform]',
                'contents' => '42426'
            ],
            [
                'name' => 'supplier[administrative_fee]',
                'contents' => '6.4'
            ],
            [
                'name' => 'supplier[work_start_hour]',
                'contents' => '12'
            ],
            [
                'name' => 'supplier[work_end_hour]',
                'contents' => '12'
            ],
            [
                'name' => 'supplier[cutoff_hours]',
                'contents' => '10'
            ],
            [
                'name' => 'supplier[response_hours]',
                'contents' => '24'
            ],
            [
                'name' => 'supplier[next_reservation_margin_hours]',
                'contents' => '12'
            ],
            [
                'name' => 'supplier[degrees][][degree_id]',
                'contents' => '10'
            ],
            [
                'name' => 'supplier[degrees][][document]',
                'contents' => 'id'
            ],
            [
                'name' => 'supplier[experiences][][activity_id]',
                'contents' => '18'
            ],
            [
                'name' => 'supplier[experiences][][year]',
                'contents' => '7'
            ],
            [
                'name' => 'password_confirmation',
                'contents' => 'maxime'
            ],
            [
                'name' => 'image',
                'contents' => fopen('/tmp/phpkhUhJx', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/users/est'
files = {
  'first_name': (None, 'fvbhkhyjxdtkzhftnlgclhumwbodlbryrqdhbjpdlxx'),
  'last_name': (None, 'skahgssjbzduqwguzlkgleobcbianvdepdeyuqxyboh'),
  'role': (None, 'perspiciatis'),
  'supplier[dni]': (None, 'nytpixlhdntuqtzdngwbkzxjmspzbeujvbicubyttjtsndmjksepeljqvsuefskxmkqyghkfmiezojszf'),
  'supplier[is_business]': (None, '1'),
  'supplier[phone]': (None, '+0402163522'),
  'supplier[iban]': (None, 'fprjawuoyhaojykslx'),
  'supplier[provider_type]': (None, 'autonomo'),
  'supplier[company_name]': (None, 'oift'),
  'supplier[cif]': (None, 'jjwskc'),
  'supplier[company_address]': (None, 'yotjtprjjvnbmvp'),
  'supplier[responsible_declaration]': (None, ''),
  'supplier[documents][bank_certificate][]': (None, 'architecto'),
  'supplier[documents][dni][]': (None, 'et'),
  'supplier[documents][dni_back][]': (None, 'sit'),
  'supplier[documents][legal][]': (None, 'quisquam'),
  'supplier[documents][insurance][]': (None, 'dicta'),
  'supplier[documents][sexual_offense][]': (None, 'vero'),
  'supplier[documents][others][]': (None, 'vero'),
  'supplier[languages][]': (None, '6'),
  'supplier[automatic_approval_classes]': (None, ''),
  'supplier[percentage_platform]': (None, '42426'),
  'supplier[administrative_fee]': (None, '6.4'),
  'supplier[work_start_hour]': (None, '12'),
  'supplier[work_end_hour]': (None, '12'),
  'supplier[cutoff_hours]': (None, '10'),
  'supplier[response_hours]': (None, '24'),
  'supplier[next_reservation_margin_hours]': (None, '12'),
  'supplier[degrees][][degree_id]': (None, '10'),
  'supplier[degrees][][document]': (None, 'id'),
  'supplier[experiences][][activity_id]': (None, '18'),
  'supplier[experiences][][year]': (None, '7'),
  'password_confirmation': (None, 'maxime'),
  'image': open('/tmp/phpkhUhJx', 'rb')}
payload = {
    "first_name": "fvbhkhyjxdtkzhftnlgclhumwbodlbryrqdhbjpdlxx",
    "last_name": "skahgssjbzduqwguzlkgleobcbianvdepdeyuqxyboh",
    "role": "perspiciatis",
    "supplier": {
        "dni": "nytpixlhdntuqtzdngwbkzxjmspzbeujvbicubyttjtsndmjksepeljqvsuefskxmkqyghkfmiezojszf",
        "is_business": true,
        "phone": "+0402163522",
        "iban": "fprjawuoyhaojykslx",
        "provider_type": "autonomo",
        "company_name": "oift",
        "cif": "jjwskc",
        "company_address": "yotjtprjjvnbmvp",
        "responsible_declaration": false,
        "documents": {
            "bank_certificate": [
                "architecto"
            ],
            "dni": [
                "et"
            ],
            "dni_back": [
                "sit"
            ],
            "legal": [
                "quisquam"
            ],
            "insurance": [
                "dicta"
            ],
            "sexual_offense": [
                "vero"
            ],
            "others": [
                "vero"
            ]
        },
        "languages": [
            6
        ],
        "automatic_approval_classes": false,
        "percentage_platform": 42426,
        "administrative_fee": 6.4,
        "work_start_hour": 12,
        "work_end_hour": 12,
        "cutoff_hours": 10,
        "response_hours": 24,
        "next_reservation_margin_hours": 12,
        "degrees": [
            {
                "degree_id": 10,
                "document": "id"
            }
        ],
        "experiences": [
            {
                "activity_id": 18,
                "year": 7
            }
        ]
    },
    "password_confirmation": "maxime"
}
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: est

Body Parameters

first_name   string  optional  

Must be at least 3 characters. Example: fvbhkhyjxdtkzhftnlgclhumwbodlbryrqdhbjpdlxx

last_name   string  optional  

Must be at least 3 characters. Example: skahgssjbzduqwguzlkgleobcbianvdepdeyuqxyboh

email   string  optional  
username   string  optional  
password   string  optional  
role   string  optional  

The name of an existing record in the roles table. Example: perspiciatis

image   file  optional  

Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpkhUhJx

supplier   object  optional  
dni   string  optional  

Must be at least 5 characters. Example: nytpixlhdntuqtzdngwbkzxjmspzbeujvbicubyttjtsndmjksepeljqvsuefskxmkqyghkfmiezojszf

is_business   boolean  optional  

Example: true

phone   string  optional  

Must match the regex /^+?[0-9]{9,15}$/. Example: +0402163522

iban   string  optional  

Must match the regex /^[A-Z]{2}[0-9]{2}[A-Z0-9]{4,30}$/i. Must not be greater than 34 characters. Example: fprjawuoyhaojykslx

provider_type   string  optional  

Example: autonomo

Must be one of:
  • empresa
  • autonomo
company_name   string  optional  

Must not be greater than 255 characters. Example: oift

cif   string  optional  

Must not be greater than 20 characters. Example: jjwskc

company_address   string  optional  

Must not be greater than 500 characters. Example: yotjtprjjvnbmvp

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: 10

document   string  optional  

Example: id

experiences   object[]  optional  
activity_id   integer   

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

year   integer   

Must be 4 digits. Must be at least 1900. Must not be greater than 2027. Example: 7

automatic_approval_classes   boolean  optional  

Example: false

percentage_platform   number  optional  

Example: 42426

administrative_fee   number  optional  

Example: 6.4

work_start_hour   integer  optional  

Must be at least 0. Must not be greater than 23. Example: 12

work_end_hour   integer  optional  

Must be at least 1. Must not be greater than 23. Example: 12

cutoff_hours   integer  optional  

Must be at least 0. Must not be greater than 24. Example: 10

response_hours   integer  optional  

Must be at least 0. Must not be greater than 24. Example: 24

next_reservation_margin_hours   integer  optional  

Must be at least 0. Must not be greater than 168. Example: 12

password_confirmation   string  optional  

The password confirmation. Example: maxime

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\": 25,
    \"page\": 13,
    \"type\": \"all\"
}"
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": 25,
    "page": 13,
    "type": "all"
};

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' => 25,
            'page' => 13,
            'type' => 'all',
        ],
    ]
);
$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": 25,
    "page": 13,
    "type": "all"
}
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   

Must be at least 1. Example: 25

page   integer  optional  

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

type   string   

Example: all

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/commodi/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/commodi/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/commodi/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/commodi/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: commodi

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\": 2,
    \"per_page\": 15,
    \"order_by\": \"asc\",
    \"sort_by\": \"excepturi\",
    \"filter\": \"eius\",
    \"value\": \"et\"
}"
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": 2,
    "per_page": 15,
    "order_by": "asc",
    "sort_by": "excepturi",
    "filter": "eius",
    "value": "et"
};

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' => 2,
            'per_page' => 15,
            'order_by' => 'asc',
            'sort_by' => 'excepturi',
            'filter' => 'eius',
            'value' => 'et',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://api.wildoow.com/api/v1/users'
payload = {
    "page": 2,
    "per_page": 15,
    "order_by": "asc",
    "sort_by": "excepturi",
    "filter": "eius",
    "value": "et"
}
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: 2

per_page   integer  optional  

Example: 15

order_by   string  optional  

Example: asc

Must be one of:
  • asc
  • desc
sort_by   string  optional  

This field is required when order_by is asc or desc. Example: excepturi

filter   string  optional  

Example: eius

value   string  optional  

This field is required when filter is present. Example: et

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=oonygdurxvrdamyxzdbnbtblhmqynvxacocctroydcwmukjrfgpajxkrvucjrlxcugndioti"\
    --form "last_name=oiylakszpohkbkwnnhfteghxdyeezfivfxtgtabglxvfkbbepyiz"\
    --form "username=mkybkiqvntmfwvtzrmxxsswaghyiduzfaotwszpebaswwhoffpcklwtbjxxqaeljgtgdjcuxtediofiaqwsb"\
    --form "[email protected]"\
    --form "role=quod"\
    --form "supplier[is_business]=1"\
    --form "validate=1"\
    --form "password=1,[dzYI9x2%<Vs"\
    --form "image=@/tmp/php5aYCDD" 
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', 'oonygdurxvrdamyxzdbnbtblhmqynvxacocctroydcwmukjrfgpajxkrvucjrlxcugndioti');
body.append('last_name', 'oiylakszpohkbkwnnhfteghxdyeezfivfxtgtabglxvfkbbepyiz');
body.append('username', 'mkybkiqvntmfwvtzrmxxsswaghyiduzfaotwszpebaswwhoffpcklwtbjxxqaeljgtgdjcuxtediofiaqwsb');
body.append('email', '[email protected]');
body.append('role', 'quod');
body.append('supplier[is_business]', '1');
body.append('validate', '1');
body.append('password', '1,[dzYI9x2%<Vs');
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' => 'oonygdurxvrdamyxzdbnbtblhmqynvxacocctroydcwmukjrfgpajxkrvucjrlxcugndioti'
            ],
            [
                'name' => 'last_name',
                'contents' => 'oiylakszpohkbkwnnhfteghxdyeezfivfxtgtabglxvfkbbepyiz'
            ],
            [
                'name' => 'username',
                'contents' => 'mkybkiqvntmfwvtzrmxxsswaghyiduzfaotwszpebaswwhoffpcklwtbjxxqaeljgtgdjcuxtediofiaqwsb'
            ],
            [
                'name' => 'email',
                'contents' => '[email protected]'
            ],
            [
                'name' => 'role',
                'contents' => 'quod'
            ],
            [
                'name' => 'supplier[is_business]',
                'contents' => '1'
            ],
            [
                'name' => 'validate',
                'contents' => '1'
            ],
            [
                'name' => 'password',
                'contents' => '1,[dzYI9x2%<Vs'
            ],
            [
                'name' => 'image',
                'contents' => fopen('/tmp/php5aYCDD', '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, 'oonygdurxvrdamyxzdbnbtblhmqynvxacocctroydcwmukjrfgpajxkrvucjrlxcugndioti'),
  'last_name': (None, 'oiylakszpohkbkwnnhfteghxdyeezfivfxtgtabglxvfkbbepyiz'),
  'username': (None, 'mkybkiqvntmfwvtzrmxxsswaghyiduzfaotwszpebaswwhoffpcklwtbjxxqaeljgtgdjcuxtediofiaqwsb'),
  'email': (None, '[email protected]'),
  'role': (None, 'quod'),
  'supplier[is_business]': (None, '1'),
  'validate': (None, '1'),
  'password': (None, '1,[dzYI9x2%<Vs'),
  'image': open('/tmp/php5aYCDD', 'rb')}
payload = {
    "first_name": "oonygdurxvrdamyxzdbnbtblhmqynvxacocctroydcwmukjrfgpajxkrvucjrlxcugndioti",
    "last_name": "oiylakszpohkbkwnnhfteghxdyeezfivfxtgtabglxvfkbbepyiz",
    "username": "mkybkiqvntmfwvtzrmxxsswaghyiduzfaotwszpebaswwhoffpcklwtbjxxqaeljgtgdjcuxtediofiaqwsb",
    "email": "[email protected]",
    "role": "quod",
    "supplier": {
        "is_business": true
    },
    "validate": true,
    "password": "1,[dzYI9x2%<Vs"
}
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   

Must be at least 2 characters. Example: oonygdurxvrdamyxzdbnbtblhmqynvxacocctroydcwmukjrfgpajxkrvucjrlxcugndioti

last_name   string  optional  

Must be at least 2 characters. Example: oiylakszpohkbkwnnhfteghxdyeezfivfxtgtabglxvfkbbepyiz

username   string  optional  

Must be at least 2 characters. Example: mkybkiqvntmfwvtzrmxxsswaghyiduzfaotwszpebaswwhoffpcklwtbjxxqaeljgtgdjcuxtediofiaqwsb

email   string   

Must be a valid email address. Example: [email protected]

role   string  optional  

The name of an existing record in the roles table. Example: quod

image   file  optional  

Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/php5aYCDD

supplier   object  optional  
is_business   boolean  optional  

Example: true

validate   boolean  optional  

Example: true

password   string   

Must be at least 6 characters. Example: 1,[dzYI9x2%<Vs

Show user

requires authentication

Example request:
curl --request GET \
    --get "https://api.wildoow.com/api/v1/users/sed" \
    --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/sed"
);

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/sed';
$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/sed'
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: sed

Delete user

requires authentication

Example request:
curl --request DELETE \
    "https://api.wildoow.com/api/v1/users/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/users/et"
);

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/et';
$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/et'
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: et