78 lines
2.7 KiB
PHP
78 lines
2.7 KiB
PHP
<?php
|
|
|
|
return [
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Third Party Services
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| This file is for storing the credentials for third party services such
|
|
| as Mailgun, Postmark, AWS and more. This file provides the de facto
|
|
| location for this type of information, allowing packages to have
|
|
| a conventional file to locate the various service credentials.
|
|
|
|
|
*/
|
|
|
|
'postmark' => [
|
|
'key' => env('POSTMARK_API_KEY'),
|
|
],
|
|
|
|
'resend' => [
|
|
'key' => env('RESEND_API_KEY'),
|
|
],
|
|
|
|
'ses' => [
|
|
'key' => env('AWS_ACCESS_KEY_ID'),
|
|
'secret' => env('AWS_SECRET_ACCESS_KEY'),
|
|
'region' => env('AWS_DEFAULT_REGION', 'us-east-1'),
|
|
],
|
|
|
|
'slack' => [
|
|
'notifications' => [
|
|
'bot_user_oauth_token' => env('SLACK_BOT_USER_OAUTH_TOKEN'),
|
|
'channel' => env('SLACK_BOT_USER_DEFAULT_CHANNEL'),
|
|
],
|
|
],
|
|
|
|
'stripe' => [
|
|
'webhook_secret' => env('STRIPE_WEBHOOK_SECRET'),
|
|
// Secret key for the REST API. Blank means "not connected": the
|
|
// catalogue sync says so and does nothing, rather than half-creating
|
|
// products against an account that is not there.
|
|
'secret' => env('STRIPE_SECRET'),
|
|
'api_base' => env('STRIPE_API_BASE', 'https://api.stripe.com/v1'),
|
|
],
|
|
|
|
/*
|
|
* The mailbox customer replies land in.
|
|
*
|
|
* IMAP, not an API token: mailcow's API administers domains and mailboxes —
|
|
* it does not read mail. Reading a mailbox is IMAP whoever runs the server,
|
|
* and that is what this is.
|
|
*
|
|
* The password belongs in the vault (SecretVault 'inbound_mail.password'),
|
|
* like every other credential that opens something.
|
|
*/
|
|
'inbound_mail' => [
|
|
'enabled' => env('INBOUND_MAIL_ENABLED', false),
|
|
'host' => env('INBOUND_MAIL_HOST'),
|
|
// 993 is IMAPS. Plain 143 is deliberately not the default: this
|
|
// connection carries a password and the customers' own words.
|
|
'port' => (int) env('INBOUND_MAIL_PORT', 993),
|
|
'username' => env('INBOUND_MAIL_USERNAME'),
|
|
'password' => env('INBOUND_MAIL_PASSWORD'),
|
|
'folder' => env('INBOUND_MAIL_FOLDER', 'INBOX'),
|
|
// How much of one message we are willing to read. A mail with a 40 MB
|
|
// attachment must not become 40 MB of memory in a queue worker; the
|
|
// body we want is in the first few hundred kilobytes.
|
|
'max_bytes' => (int) env('INBOUND_MAIL_MAX_BYTES', 262144),
|
|
],
|
|
|
|
'monitoring' => [
|
|
'url' => env('MONITORING_API_URL'),
|
|
'token' => env('MONITORING_API_TOKEN'),
|
|
],
|
|
|
|
];
|