Laravel 包,用于集成 Stays 外部 API。

1.5.1 2024-09-17 04:50 UTC

This package is auto-updated.

Last update: 2024-09-17 04:52:18 UTC


README

Laravel 包,用于集成 Stays 外部 API。文档:https://stays.net/external-api/

如何安装

composer require jonathanpmartins/staysvel;

将以下代码添加到您的 config\services.php 配置文件中

'stays' => [
    'endpoint' => env('STAYS_ENDPOINT'),
    'client_id' => env('STAYS_CLIENT_ID'),
    'client_secret' => env('STAYS_CLIENT_SECRET'),
],

将以下键添加到您的 .env 文件中,并用您的凭证填充它们。

STAYS_ENDPOINT=
STAYS_CLIENT_ID=
STAYS_CLIENT_SECRET=

用法

导入 Stays

use Staysvel\Stays;

请求和响应

  • 所有输入参数都是类型 arraystring
  • 所有标有星号 (*) 的参数都是必需的。
  • $response 对象是 Illuminate\Http\Client\Response 的实例。它基本上返回 Laravel http-client 返回的内容。

如何处理它

从 Laravel 9 文档

$response->body() : string;
$response->json($key = null) : array|mixed;
$response->object() : object;
$response->collect($key = null) : Illuminate\Support\Collection;
$response->status() : int;
$response->ok() : bool;
$response->successful() : bool;
$response->redirect(): bool;
$response->failed() : bool;
$response->serverError() : bool;
$response->clientError() : bool;
$response->header($header) : string;
$response->headers() : array;

示例

$response = Stays::content()->properties()->create(array $parameters);
if ($response->successful())
{
   $data = $response->json(); // return data from stays
}
if ($response->failed())
{
    $status = $response->status();
    $json = $response->json();
    if (isset($json['message']))
    {
        throw new \Exception($json['message'], $status);    
    }
    else
    {
        throw new \Exception($response->body(), $status);    
    }
}

超时

默认超时时间为 60 秒。要更改它,在链的最后一个函数之前使用 timeout(int $timeoutInSeconds) 函数。示例

$response = Stays::timeout(30)->content()->properties()->create(array $parameters);
$response = Stays::content()->timeout(30)->properties()->create(array $parameters);
$response = Stays::content()->properties()->timeout(30)->create(array $parameters);

目录

预订结账 API
促销代码 API
预订 API
财务 API
列表日历 API
价格 API
内容 API
列表设置 API
翻译 API

预订结账 API

启动结账过程

$response = Stays::bookRequest(array $parameters);
参数

促销代码 API

创建促销代码

$response = Stays::booking()->promoCodes()->create(array $parameters);
参数

获取促销代码

$response = Stays::booking()->promoCodes()->get(string $id);

修改促销代码

$response = Stays::booking()->promoCodes()->update(string $id, array $parameters);
参数

删除促销代码

$response = Stays::booking()->promoCodes()->delete(string $id);

搜索促销代码

$response = Stays::booking()->promoCodes()->search(array $parameters);
参数

预订 API

检索搜索过滤器

$response = Stays::booking()->search()->filter();

搜索列表

$response = Stays::booking()->search()->listings(array $parameters);
参数

计算列表价格

$response = Stays::booking()->listingPrice()->calculate(array $parameters);
参数

创建锁定

$response = Stays::booking()->blocking()->create(array $parameters);
参数

修改锁定

$response = Stays::booking()->blocking()->update(string $reservationId, array $parameters);
参数

删除锁定

$response = Stays::booking()->blocking()->delete(string $reservationId);

创建预订

$response = Stays::booking()->reservations()->create(array $parameters);
参数

检索预订

$response = Stays::booking()->reservations()->get(string $reservationId);

修改预订

$response = Stays::booking()->reservations()->update(string $reservationId, array $parameters);
参数

取消预订

$response = Stays::booking()->reservations()->cancel(string $reservationId, array $parameters);
参数

删除预订

$response = Stays::booking()->reservations()->delete(string $reservationId);

搜索活跃预订

$response = Stays::booking()->reservations()->search(array $parameters);
参数

预订报告 XLSX

$response = Stays::booking()->reservations()->export()->xlsx(array $parameters);
$raw = $response->body();
参数

预订报告 JSON

$response = Stays::booking()->reservations()->export()->json(array $parameters);
参数

客户

$response = Stays::booking()->clients()->search(array $parameters);
参数

客户

$response = Stays::booking()->clients()->get(string $clientId);

财务 API

创建支付提供者

$response = Stays::finance()->paymentProviders()->create(array $parameters);
参数

检索支付提供者

$response = Stays::finance()->paymentProviders()->get(string $providerId);

修改支付提供者

$response = Stays::finance()->paymentProviders()->update(string $providerId, array $parameters);
参数

检索支付提供者

$response = Stays::finance()->paymentProviders()->search(array $parameters);
参数

列表日历 API

检索列表日历

$response = Stays::calendar()->listings()->get(string $listingId, array $parameters);
参数

更新列表日历

$response = Stays::calendar()->listings()->update(string $listingId, array $parameters);
参数

价格 API

检索价格区域

$response = Stays::price()->regions()->search();

创建价格区域

$response = Stays::price()->regions()->create(array $parameters);
参数

修改价格区域

$response = Stays::price()->regions()->update(string $id, array $parameters);
参数

删除价格区域

$response = Stays::price()->regions()->delete(string $id);

检索销售价格规则

$response = Stays::price()->rules()->search(array $parameters);
参数

创建销售价格规则

$response = Stays::price()->rules()->create(array $parameters);
参数

检索销售价格规则

$response = Stays::price()->rules()->get(string $id);

修改销售价格规则

$response = Stays::price()->rules()->update(string $id, array $parameters);
参数

删除销售价格规则

$response = Stays::price()->rules()->delete(string $id);

检索列表销售价格

$response = Stays::price()->sells()->search(array $parameters);
参数

检索列表销售价格

$response = Stays::price()->sells()->get(string $listingId);

修改列表销售价格

$response = Stays::price()->sells()->update(string $seasonId, array $parameters);
参数

内容 API

创建属性

$response = Stays::content()->properties()->create(array $parameters);
参数

检索属性

$response = Stays::content()->properties()->get(string $propertyId);

修改属性

$response = Stays::content()->properties()->update(string $propertyId, array $parameters);
参数

检索属性

$response = Stays::content()->properties()->search(array $parameters);
参数

创建列表

$response = Stays::content()->listings()->create(array $parameters);
参数

检索列表

$response = Stays::content()->listings()->get(string $listingId);

修改列表

$response = Stays::content()->listings()->update(string $listingId, array $parameters);
参数

检索列表

$response = Stays::content()->listings()->search(array $parameters);
参数

创建组

$response = Stays::content()->groups()->create(array $parameters);
参数

检索组

$response = Stays::content()->groups()->get(string $groupId);

修改组

$response = Stays::content()->groups()->update(string $groupId, array $parameters);
参数

删除组

$response = Stays::content()->groups()->delete(string $groupId);

检索组

$response = Stays::content()->groups()->search(array $parameters);
参数

列表设置 API

列表销售价格设置

$response = Stays::setting()->listing()->price(string $listingId);

列表预订设置

$response = Stays::setting()->listing()->booking(string $listingId);

翻译 API

多单元物业类型

$response = Stays::translation()->types()->multiUnitProperty();

单单元物业类型

$response = Stays::translation()->types()->singleUnitProperty();

列表类型

$response = Stays::translation()->types()->listing();

房间类型

$response = Stays::translation()->types()->room();

卧室类型

$response = Stays::translation()->types()->bedroom();

浴室类型

$response = Stays::translation()->types()->bathroom();

其他客厅类型

$response = Stays::translation()->types()->other();

床类型

$response = Stays::translation()->types()->bed();

物业设施

$response = Stays::translation()->amenities()->property();

列表设施

$response = Stays::translation()->amenities()->listing();