Run repeatable read-only IllyVoIP API checks with Postman Collection Runner

Build a read-only IllyVoIP Postman collection, run one bounded local iteration, check response contracts and investigate failures without paid operations.

A collection run can check several IllyVoIP read operations in a repeatable order. Build a small collection for that purpose instead of running every request imported from the API specification. The full specification also contains operations that send messages, place calls and change account resources.

Original explanatory diagram for Postman read checks: choose a tiny collection; review host and scripts; run once locally; inspect safe evidence.
Original explanatory diagram for Postman read checks: choose a tiny collection; review host and scripts; run once locally; inspect safe evidence. Open the image for a larger view.

1. Choose a deliberately small scope

You need an IllyVoIP account permitted to use the relevant API, sufficient balance for paid operations and an API key. In the Portal, open Account settings → Developer tools and follow its verification prompts. Keep the key in your server’s secret configuration as ILLYVOIP_API_KEY, outside source control and shared documents. Read-only catalog and reporting requests are different from paid speech generation or SMS submission.

Start with one request: GET /api/v1/sip/identities. It is enough to verify the selected environment, authentication and the documented response shape. Add another read only when its result answers a specific test question and the current API reference confirms its method and access requirements.

Name the collection “IllyVoIP read-only checks”. Keep it separate from the working collection used for purchases, SMS or contact changes. Record the specification date and the intended environment in its description. A GET label alone is not a review of every inherited script.

2. Inspect requests and inherited scripts

  1. Set the request URL to {{base_url}}/api/v1/sip/identities.
  2. Choose the exact authorized base URL and corresponding credential.
  3. Review collection, folder and request pre-request scripts.
  4. Remove unrelated follow-up requests, pm.sendRequest calls, workflow loops and data-driven URL changes.
  5. Keep only the expected X-Api-Key authentication reference and no literal secrets in saved examples.

Use Postman Local Vault for a supported local run, following the existing Postman guide. Confirm the installed runner supports your chosen secret mechanism. Local Vault behavior must not be assumed to apply to scheduled cloud runs, shared vaults or a CLI invocation.

Do not silently switch a failed Sandbox check to Production. An environment name is only a label; inspect the resolved hostname before starting.

3. Add focused response assertions

In the request’s post-response script, add checks for the contract being exercised. Avoid printing the returned identities in the console.

pm.test("Read returned HTTP 200", function () {
  pm.response.to.have.status(200);
});
pm.test("Identity response has the expected shape", function () {
  const body = pm.response.json();
  pm.expect(body.status).to.eql("success");
  pm.expect(body.identities).to.be.an("array");
});

An empty identity list can be a valid result. Do not assert that an account has a particular number of SIP lines unless that is part of a controlled fixture. Shape checks establish only this read’s result, not that a phone is registered or a call can complete.

4. Run one bounded iteration

Open the collection and choose Run. In the current Collection Runner, select Functional → Local. Select the intended environment, keep the iteration count at one and inspect the selected request list and execution order.

Do not attach a CSV or JSON data file for the first run. Such a file can override variables and repeat requests. Inspect any later test data as carefully as the collection itself. Start the run only after the resolved host and selected requests are correct.

Watch the result rather than immediately scheduling another run. A failed assertion can mean the environment, credential, service or expected schema is wrong; it is not automatically a reason to retry.

5. Interpret failures and keep useful evidence

ItemMeaning or action
401 or 403Check the environment, key reference and account permissions; do not rotate keys blindly.
429Stop repeated runs and follow the actual Retry-After/rate-limit guidance.
Network or TLS failureInvestigate the connection separately from response assertions.
HTTP 200 but shape failedCompare the actual current contract and sanitized response with the assertion.
A script ran unexpected workStop and remove the unintended workflow before any further run.

Export only sanitized results. Collection exports, environments, saved examples and console logs can contain private data independently. Keep the run time, collection revision, environment and failed assertion; remove API keys and account records before sharing.

6. Extend without changing the purpose

When adding a read, define the expected shape and test it with synthetic success and failure examples first. Keep runs small and use a deliberate interval if your team later configures automation. This guide does not install an unattended monitor or authorize a full-collection Production run.

If you need to test failure handling without contacting IllyVoIP, use the separate mock-response guide. A passed mock test and a passed real read answer different questions.

Related guides and reference

Postman Collection Runner. IllyVoIP API reference. Reviewed October 12, 2026. Examples are instructional: local checks do not establish a completed paid request, live third-party integration or production PBX acceptance.