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 Install MCP for IntelliJ IDEsTutorials

How to Install MCP for IntelliJ IDEs

Learn how to integrate the Model Context Protocol (MCP) with IntelliJ IDEs using the official plugin. Enhance your development workflow with AI-powered features, custom tools, and seamless API integration in this technical guide.

Ashley Innocent

April 21, 2025

Mastering Document Conversion with MarkItDown MCPTutorials

Mastering Document Conversion with MarkItDown MCP

Discover MarkItDown MCP, a robust API for converting files to Markdown. This technical guide explores its features, setup, and usage within Microsoft’s MarkItDown ecosystem. Enhance your projects with seamless document conversion and test APIs effortlessly with Apidog, a free API testing tool.

Ashley Innocent

April 21, 2025

LLMs.txt in Apidog: How It Makes API Documentation AI-FriendlyTutorials

LLMs.txt in Apidog: How It Makes API Documentation AI-Friendly

Apidog now supports LLMs.txt and .md endpoints for published docs. Learn how this feature boosts AI compatibility, speeds up LLM interaction, and improves dev efficiency.

Oliver Kingsley

April 16, 2025