みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
こんばんわ。
表題の件について質問させて下さい。
現在FileMaker Cloud (2.19.3.201)の環境で開発を行なっております。
ユーザー数が社内、社外合わせて30名程度を見込んでおり、
Claris Customer Consoleから1人ずつユーザーを招待するのが煩雑なため、FileMakerのソリューションからAdmin APIを使用して招待を行おうとしています。
Claris FileMaker 19 Admin API ガイドの「Invite Users to a Team (ユーザをチームに招待)」
https://help.claris.com/ja/admin-api-gu … nvite-call
を元にPostmanで検証しているのですが、エラーの解決方法が分からず行き詰まっているためアドバイスを頂けないでしょうか。
<cURL>
curl --location --request POST 'https://api-cp-global.ifmcloud.com/publ … ers/invite' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer eyJraWQiOiIya1VScEpva〜'
<レスポンス>
401 Unauthorized
{
"message": "Unauthorized"
}
FileMaker Cloud の認証( https://help.claris.com/ja/admin-api-gu … ation-cac2 )は問題なくレスポンスが返ってくるのですが、
ユーザーをチームに招待の方ではUnauthorizedが返ってきてしまいます。
疑わしい箇所としては、URLのチームIDの部分にClaris Customer Consoleに表示されているチーム名を入れているのですが、
これとは別にチームIDがどこかにあったりしますでしょうか。
よろしくお願い致します。
Offline
肝心のボディ(追加するユーザの情報)がないようですが、そっちのClarisIDが認証されてないって意味ではないですよね?
Cloudの運用経験はなく単にドキュメントを読んでるだけなのですが、
https://help.claris.com/ja/customer-con … -user.html
の「ユーザが Claris ID アカウントを持っていない場合、ユーザの電子メールアドレスを入力します。アカウントにサインアップしてチームに参加するようにユーザを招待することができます。」
をやりたいわけじゃないですよね?
APIの説明では
「email (文字列、必須): チームに招待するユーザの Claris ID または外部 IdP の電子メールアドレス。」
となってるので、招待のうちのその項目(任意の電子メールアドレスに Claris ID を取得するように招待メールを送信する)は、APIではできないように読めます。
himadanee様
ありがとうございます。
ボディの記載抜けておりました。。
以下が現在設定しているcURLになります。
curl --location --request POST 'https://api-cp-global.ifmcloud.com/publ … ers/invite' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer eyJraWQiOiIya1VScEpva〜'
--data-raw '{
"users": [
{
"email": "sample@sample.jp"
}
]
}'
https://help.claris.com/ja/customer-con … -user.html
の「ユーザが Claris ID アカウントを持っていない場合、ユーザの電子メールアドレスを入力します。アカウントにサインアップしてチームに参加するようにユーザを招待することができます。」
をやりたいわけじゃないですよね?
APIの説明では
「email (文字列、必須): チームに招待するユーザの Claris ID または外部 IdP の電子メールアドレス。」
となってるので、招待のうちのその項目(任意の電子メールアドレスに Claris ID を取得するように招待メールを送信する)は、APIではできないように読めます。
Claris IDアカウントを持っていないユーザーの招待を想定していました。
確かに事前にClaris IDを持っていないと招待出来なさそうですね。。
そもそもこのAPIを使用する想定が間違っていたようです。
運用について再検討したいと思います。
ありがとうございました!
Last edited by Morris (2021-12-02 00:16:01)
Offline
レスポンスが内容が薄くて、私の解釈があってるのかわからないですが...
クラウドの運用している人はいないかな~
Authorization: Bearer
だけ失敗している状況だとすると
Authorization FMID Claris_ID_Token
で戻ってきたトークンと合ってないてことはないでしょうね。
「以下が現在設定しているcURLになります。」が、前回と同じトークンを書いてるようですけど、ずっと同じのを使ってませんか?
「トークンは Invalidate Access Token (アクセストークンの無効化) 呼び出しを使用して無効にされるか、またはそのトークンを指定した最後の呼び出しから 15 分経過するまで有効です。」
なので、基本的に15分で有効期限が切れます。
(メールアドレスは明らかに架空のものなのにトークンは実物っぽいので思いつきましたが)
もう少し詳細なエラー返して欲しいですね。
Unauthorizedだけだとどこがだめなのか分かりにくいです。。
トークンに関しては最初に記載したヘッダにボディのみ追記したので同じになっていますが、都度認証して入れ替えしております。
Cloudで運用している方は新規ユーザーへの招待どうしているのか気になりますね。
Offline
Cloudは契約しないと何も実験できないので、私の「任意の電子メールアドレスに Claris ID を取得するように招待メールを送信する」も、他のソフトからの類推に過ぎないんですが、
そういうものは単にメール送信するだけなので、APIを使わないでもFMのスクリプトなどでできませんか?
APIを使うのはユーザがClarisIDを取得するか、外部 IdP の電子メールアドレスを通知してもらうか、の後でいいわけですよね。
Claris ID の管理は Claris Customer Console からの運用で足るのでは?
というのも Claris FileMaker Cloud が多量のユーザを抱える組織向けの価格ではないので(高杉)
Claris Customer Console での管理に難を感じる何かがあるのでしょうかね。
Offline
[ Generated in 0.008 seconds, 7 queries executed - Memory usage: 523.61 KiB (Peak: 528.52 KiB) ]