Apidog

All-in-one Collaborative API Development Platform

API Design

API Documentation

API Debugging

API Mocking

API Automated Testing

Mocking APIs with Complexed Data in Minutes

Discover how to effortlessly mock complex APIs in just minutes with Apidog. This guide walks you through importing API definitions, customizing mock rules for enums, arrays, and schema-referenced objects, and generating mock URLs—no coding required.

Ismail Kamil

Ismail Kamil

Updated on November 29, 2024

Many developers have found our previous blog, "Mocking an API in ONE Minute," useful, and you might too. That blog covered a quick way to mock an API, but it only scratched the surface. As I dug deeper into Apidog, I uncovered additional features that make mocking even complex data faster.

API Mocking: Everything You Need to Know
Learn how API Mocking enhances development by simulating services before they’re ready. Apidog offers a no-code, intuitive platform to mock APIs, perfect for early testing, saving costs, and seamless collaboration. From local to cloud mocking, explore Apidog’s versatile features for developers.

Handling APIs with Complex JSON Data

Let’s start with how to import a Swagger API into Apidog to mock JSON data. This way, you can generate mock data without writing any scripts.

However, some fields can be tricky to mock without additional configuration. For instance:

  • Enum fields with multiple possible values, often used for status fields.
  • Fixed-length arrays, like a table where each row has several attributes and a page might display 20 or 50 rows.
  • Objects that reference schemas, as allowed by the OpenAPI spec, where an object or part of an object refers to a schema.

Fortunately, with Apidog, you can mock these complex JSON fields in just two minutes.

How to Mock APIs with Complexed JSON Data Quickly?

Apidog An integrated platform for API design, debugging, development, mock, and testing
REAL API Design-first Development Platform. Design. Debug. Test. Document. Mock. Build APIs Faster & Together.

Here’s a simple three-step process to mock complex APIs using Apidog:

  1. Import API definitions.
  2. Customize API mock rules for specific fields.
  3. Get the mock URL.

It’s that easy. Let’s go through it.

Step 1: Import API Definitions

You only need an OpenAPI JSON or YAML file. Import it into Apidog, and you're ready to go.

Importing openAPI specifications into Apidog

Step 2: Customize API Mock Rules for Specific Fields

Enum values:
In our sample API, the 'status' field has three options: available, pending, and sold. We want our mock data to reflect only one of these values.
Click 'Advanced settings' in the 'Status' field, enable the 'Enum' switch, and add the enum values. Now, this field will only mock one of these values.

Customizing enum values for API mocking at Apidog

Fixed-length arrays:

For the 'PhotoUrls' array field, we need exactly five items.

In the 'Advanced settings' of the 'PhotoUrls' field, adjust the 'Element Limit' settings. Set both 'minItems' and 'maxItems' to 5.

Customizing API mock rules at Apidog

Schema-referenced objects:

Apidog support schemas as per the OpenAPI specification. If an object refers to a schema, Apidog will mock it accordingly. For example, you can reference the schema for the 'Category' field.

Reference other schemas for specific fields for API mocking

Step 3: Get the API Mock URL

Click ‘Save', and switch to the 'Endpoint' tab. Copy the URL under the "Local Mock" section, which starts with "127.0.0.1".

Getting mock API URL configured at Apidog

Paste the URL into your browser, and you're done.

API mock data examples using Apidog

Notable Fields

When you check the mocked data, you’ll notice:

  • PhotoUrls has exactly 5 items, all with valid image URLs.
  • Status is limited to one of the enum values (sold, pending, or available).
  • Category refers to the correct schema.

Other fields, like city and createdAt, are mocked automatically.

And if you refresh the URL, the mock data updates.

Refresh to update the API mock data at Apidog

Apidog Supports Mocking JSON Schema for APIs

Apidog is fully compatible with OpenAPI 3.0, which uses JSON Schema to define the structure of API data. All JSON Schema attributes are supported in Apidog, including:

  • String length range, format, and pattern (regex)
  • Minimum and maximum integer values
  • Read-only/write-only settings

Not just JSON, Apidog also supports mocking XML. You can even customize the XML tag names and prefixes.

Mocking XML data at Apidog

Thanks to JSON Schema, you can generate any complex mock data with just a few clicks using Apidog—no coding required.

button

How to Import/Export Collection Data in PostmanTutorials

How to Import/Export Collection Data in Postman

In this article, we will discuss how to import/export Postman collections and explore alternative method to fix it, which offer more flexibility without any restrictions on the number of runs.

David Demir

December 9, 2024

How to Install Newman and Run Postman Collections in NewmanTutorials

How to Install Newman and Run Postman Collections in Newman

By following this guide, you will learn how to install Newman and execute Postman collections, enabling you to automate your API testing process. A recommend Apidog as a powerful alternative.

David Demir

December 5, 2024

How to Fetch GraphQL with API?Tutorials

How to Fetch GraphQL with API?

Discover how to fetch GraphQL data efficiently using the Fetch API and Apidog. Learn advanced techniques, optimize performance, and secure your API for robust applications. Download Apidog for free to streamline your API workflows.

Ashley Innocent

November 28, 2024