Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Survey Monkey Api Php Client

Survey Monkey Api Php Client Laravel Package

davidwnek/survey_monkey_api_php_client

PHP client library for the SurveyMonkey API. Install via Composer, regenerate autoload as needed, then use the client in your project to call SurveyMonkey endpoints and work with surveys, collectors, and responses.

View on GitHub
Deep Wiki
Context7

WORK IN PROGRESS! A PHP Client library for accessing Survey Monkey API's https://developer.surveymonkey.com/api/v3/

Frequently asked questions about Survey Monkey Api Php Client
How do I install this SurveyMonkey API client in my Laravel project?
Run `composer require davidwnek/survey_monkey_api_php_client` in your project directory. After installation, regenerate the Composer autoloader with `composer dump-autoload` to ensure the package is properly loaded. The client will then be available for use in your Laravel application.
Does this package support Laravel’s pagination system (e.g., LengthAwarePaginator)?
Yes, the latest version (v1.1.8+) includes pagination support for the `getResponses` endpoint. You can integrate it with Laravel’s `LengthAwarePaginator` by passing the SurveyMonkey response data (including `total`, `page_size`, and `data`) to the paginator constructor. Example usage is provided in the TPM assessment.
What Laravel versions are officially supported by this package?
The package does not explicitly declare Laravel version support, but it requires PHP 7.4+ and uses Guzzle HTTP client. For Laravel 9/10 compatibility, you may need to manually update dependencies (e.g., `guzzlehttp/guzzle` to v7.x) or fork the package. Test thoroughly in your environment.
Can I use this client for real-time survey responses in production?
Yes, but ensure you handle rate limits and implement caching (e.g., Redis) for frequent requests. The package supports basic API calls, but production use may require additional error handling, retries, or async processing (e.g., Laravel queues), which aren’t natively supported.
Are there PHPDoc types or return-type hints for better IDE support?
No, the package lacks PHPDoc types or return-type hints, which may limit IDE autocompletion and static analysis. For type safety, consider extending the client or using a community fork that adds these features, or manually document expected return types in your codebase.
How do I handle pagination for endpoints other than `getResponses`?
Pagination is currently only implemented for `getResponses`. For other endpoints (e.g., surveys, contacts), you’ll need to manually add pagination parameters (`page`, `max_page_size`) to API calls or extend the package. Check SurveyMonkey’s API docs for endpoint-specific pagination requirements.
What’s the maximum recommended `max_page_size` for SurveyMonkey API calls?
SurveyMonkey’s API documentation recommends a maximum of 100 items per page to avoid performance issues or rate limits. The package supports this limit, but test your specific use case to ensure optimal response times and avoid hitting API thresholds.
Are there alternatives to this package for Laravel SurveyMonkey integration?
Yes, consider the official SurveyMonkey SDKs (Node.js/Python) or community forks like `surveymonkey-api-php`. If this package lacks critical features (e.g., Laravel queue integration or modern PHP support), evaluate alternatives or fork the repository to add missing functionality.
How do I test this package in a Laravel application?
Use Laravel’s `HttpTests` trait or PHPUnit to mock API responses. Test pagination edge cases (e.g., empty pages, invalid `page` values) by simulating SurveyMonkey API responses. For integration tests, ensure your test environment mirrors production (e.g., API keys, rate limits).
Will this package break if SurveyMonkey changes its API endpoints or response format?
The package abstracts basic API calls but may break if SurveyMonkey changes endpoint structures or pagination metadata. Monitor SurveyMonkey’s API changelog and update the package or implement fallback logic (e.g., retry with adjusted parameters) to handle breaking changes gracefully.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
coleus/frame
thtg88/journalism
filagora/filagora-ai-forums
rlacerda83/query-parser
socialdept/atp-orm
cboxdk/laravel-assistant-client
socialdept/atp-resolver
socialdept/tenant-domains
tautvydasr/blade-class-names
socialdept/color-scales
maherelgamil/controller
coleus/widgets
coleus/table
coleus/users
coleus/music
coleus/health
coleus/calendar
coleus/notes
coleus/support
coleus/settings