# GPTs actions設定を行ってGPTからkintoneのデータにアクセスしたい

**URL:** <https://community.cybozu.dev/t/topic/8620>\
**Category:** kintone 開発相談\
**Created:** [2024 年 1 月 25 日午前 5:12 UTC](https://community.cybozu.dev/t/topic/8620 "2024-01-25T05:12:40Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![xiatian](https://avatars.discourse-cdn.com/v4/letter/x/ac91a4/32.png) [@xiatian](https://community.cybozu.dev/u/xiatian)\
**Post date:** [2024 年 1 月 25 日午前 5:12 UTC](https://community.cybozu.dev/t/topic/8620/1 "2024-01-25T05:12:40Z")

</div>

GPTs actionsの設定を行ってkintoneにアクセスしたい。

GPTs actionsがエラーを出さないのでswaggerとcurlから確認したところlocationの設定の問題な気がしています。

現在試しているコードがこちらです。

```javascript
openapi: 3.1.0
info:
  title: Sample Redirect API
  description: API that includes a redirect operation.
  version: 1.0.0
servers:
  - url: https:/ ***************.cybozu.com/k/v1
    description: Main (production) server
paths:
  /records.json:
    get:
      parameters:
        - name: app
          in: query
          required: true
          description: The ID of the kintone application
          schema:
            type: integer
            example: 137
      operationId: getExample
      summary: Example endpoint that might redirect.
      responses:
        "200":
          description: A normal response
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
        "302":
          description: Temporary redirect
          headers:
            Location:
              description: The URL to redirect to
              schema:
                type: string

```

---

<div class="post-metadata">

**Author:** ![aaa](https://sea1.discourse-cdn.com/flex015/user_avatar/community.cybozu.dev/aaa/32/277_2.png) [@aaa](https://community.cybozu.dev/u/aaa)\
**Post date:** [2024 年 1 月 26 日午前 4:58 UTC](https://community.cybozu.dev/t/topic/8620/2 "2024-01-26T04:58:15Z")

</div>

> [@xiatian](#):
>
> ` url: https:/ ***************.cybozu.com/k/v1`

は、  
`https:/ ***************.cybozu.com/`  
までのように思います。  
pathの方も修正が必要そうです。

---

<div class="post-metadata">

**Author:** ![xiatian](https://avatars.discourse-cdn.com/v4/letter/x/ac91a4/32.png) [@xiatian](https://community.cybozu.dev/u/xiatian)\
**Post date:** [2024 年 2 月 1 日午前 5:47 UTC](https://community.cybozu.dev/t/topic/8620/3 "2024-02-01T05:47:02Z")

</div>

いろいろと試してみましたがうまくいきません。  
接続自体はできてきてリクエストが不正ですというエラーになることがあります。

````javascript
info:
  version: 1.0.0
  title: aaa
  summary: ''
servers:
  - url: https:// ******.cybozu.com
    description: ''
paths:
  /k/v1/records.json:
    get:
      parameters:
        - name: app
          in: query
          required: true
          description: The ID of the kintone application
          schema:
            type: integer
            example: 137
      summary: Your GET endpoint
      operationId: receivedata
      security:
        - ApiKeyAuth: []
      servers:
        - url: 'https://ogura-printing.cybozu.com'
          description: ''
      responses:
        "200":
          description: A normal response
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string```
現在のコードはこちらですが、apikeyのスキーマがうまく動いていない気はします。
尚、以下
```components:
  securitySchemes:
    apikey:
      type: apiKey
      name: X-Cybozu-API-Token
      in: header```
こちらのapiスキーマもいれたのですが、こちらは読まれていないような気がします。

GPTsのスキーマが若干仕様が違うようです。
````

---

<div class="post-metadata">

**Author:** ![aaa](https://sea1.discourse-cdn.com/flex015/user_avatar/community.cybozu.dev/aaa/32/277_2.png) [@aaa](https://community.cybozu.dev/u/aaa)\
**Post date:** [2024 年 2 月 6 日午前 12:54 UTC](https://community.cybozu.dev/t/topic/8620/4 "2024-02-06T00:54:21Z")

</div>

kintoneの REST APIは、外部サイト(GPTs)から呼び出せない設定になっているので  
呼び出せないのだと思います。  
もし、設定するなら GPTs → 中継API → kintoneなどとするようです。  
CORS - MDN Web Docs 用語集: ウェブ関連用語の定義 | MDN

> **[CORS - MDN Web Docs 用語集: ウェブ関連用語の定義 | MDN](https://developer.mozilla.org/ja/docs/Glossary/CORS)**
>
> CORS (オリジン間リソース共有、 Cross-Origin Resource Sharing) は、 HTTP ヘッダーの転送で構成されるシステムであり、ブラウザーがオリジンをまたいだリクエストのレスポンスに、フロントエンドの JavaScript コードがアクセスすることをブロックするかどうかを決めるものです。

GPTsのプレビュー画面でAPIを呼び出しているような画面で接続失敗するときに適当な文言がでますが、適当なことを回答しているようです。(APIトークンで認証しようとしているのにログインIDが違いますと表示されることもあった)

天気やペットのAPIが動く理由は、このCORSの設定が違うAPIだからということになります。

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex015/uploads/cybozu/original/1X/d5c841c3c5a6cb66eed514001c1b45147c9e1f4f.png) [@system](https://community.cybozu.dev/u/system)\
**Post date:** [2024 年 5 月 31 日午前 7:24 UTC](https://community.cybozu.dev/t/topic/8620/5 "2024-05-31T07:24:00Z")

</div>

このトピックはベストアンサーに選ばれた返信から 3 日が経過したので自動的にクローズされました。新たに返信することはできません。
