> ## Documentation Index
> Fetch the complete documentation index at: https://docs.apinizer.com/llms.txt
> Use this file to discover all available pages before exploring further.

# API Proxy Design

> You can manage the method/endpoint and data type definitions of the API Proxy. The API Specification File of an API Proxy that is deployed and opened for use is created at runtime using these definitions.

## Design Tab Concept

The Design tab provides tools for API design, documentation, and specification with a spec first approach in API Proxy configuration. In this tab, the method/endpoint and data type definitions of the selected API Proxy are managed. The API Specification File of an API Proxy that is deployed and opened for use is created at runtime using these definitions.

<img src="https://mintcdn.com/apinizer/brWu4H3JyK0OgbJV/images/develop/api-proxy-konfigurasyonu/tasarim-sekmesi.png?fit=max&auto=format&n=brWu4H3JyK0OgbJV&q=85&s=c78bb01a7f6854764e2ab8bc560228dd" alt="Design Tab" width="1000" height="667" data-path="images/develop/api-proxy-konfigurasyonu/tasarim-sekmesi.png" />

<CardGroup cols={2}>
  <Card title="Spec First Approach" icon="file-code">
    API design with OpenAPI/Swagger specification

    API design starts with specification.
  </Card>

  <Card title="Specification Editing" icon="pencil">
    OpenAPI/Swagger specification is edited

    Creating and editing specification in YAML/JSON format.
  </Card>

  <Card title="Automatic Documentation" icon="book">
    Automatic documentation is created from specification

    Documentation is generated from OpenAPI spec.
  </Card>

  <Card title="API Specification File" icon="network-wired">
    API Specification File is created at runtime

    API Specification File is generated using definitions.
  </Card>
</CardGroup>

<Info>
  The content and usage of the Design tab is the same as the [Spec Design Editor](/en/develop/api-design/spec-designer) interface, except that a few detail data are not requested in the Overview section.
</Info>

<Warning>
  The Design tab can only be used for API Proxies of type **Swagger 2.x**, **OpenAPI/Swagger 3.0.x**, and **No-Spec API**.
</Warning>

## Design Tab Features

### OpenAPI/Swagger Specification

Creating and editing OpenAPI/Swagger specification in spec first approach:

<AccordionGroup>
  <Accordion title="OpenAPI Editor">
    * OpenAPI/Swagger editor
    * YAML/JSON editing
    * Validation
    * Syntax checking
  </Accordion>

  <Accordion title="Schema Design">
    * JSON Schema design
    * XML Schema design
    * Data model design
    * Request/Response schemas
  </Accordion>

  <Accordion title="Endpoint Design">
    * Endpoint definition
    * HTTP method determination
    * Path parameters
    * Query parameters
  </Accordion>
</AccordionGroup>

### Method and Data Type Definitions

Managing method/endpoint and data type definitions of the API Proxy:

<CardGroup cols={2}>
  <Card title="Method Definitions" icon="code">
    Definitions of API Proxy methods are managed

    * HTTP methods (GET, POST, PUT, DELETE, etc.)
    * Endpoint paths
    * Parameter definitions
  </Card>

  <Card title="Data Type Definitions" icon="database">
    Definitions of data types are managed

    * Request/Response models
    * Schema definitions
    * Data structures
  </Card>

  <Card title="API Specification File Creation" icon="file-code">
    API Specification File is created at runtime

    * Automatic generation from definitions
    * OpenAPI/Swagger format
    * Portal integration
  </Card>
</CardGroup>

## Design Tab Usage Scenarios

API Proxy configuration scenarios with spec first approach:

<CardGroup cols={2}>
  <Card title="Spec First API Proxy Configuration" icon="file-code">
    1. Creating OpenAPI/Swagger specification in Design tab
    2. Defining endpoints and schemas
    3. Validating specification
    4. Creating API Specification File
    5. Deploying and opening API Proxy for use
  </Card>

  <Card title="Updating Existing API Proxy" icon="pencil">
    1. Editing existing API Proxy's specification
    2. Updating method and data type definitions
    3. Validating specification
    4. Creating updated API Specification File
    5. Saving changes
  </Card>
</CardGroup>

## Design Tab and Spec Design Editor Relationship

The Design tab uses the same interface and features as the Spec Design Editor. The workflow:

```
API Proxy Configuration
   │
   │ Design Tab
   │ (Spec First)
   │
   ▼
Spec Design Editor
   │
   │ OpenAPI/Swagger Spec
   │ Method/Endpoint Definitions
   │ Data Type Definitions
   │
   ▼
API Specification File
   │
   │ Runtime Creation
   │
   ▼
API Proxy Deployment
```

<CardGroup cols={4}>
  <Card title="1. Specification Creation" icon="file-code">
    OpenAPI/Swagger specification is created in Design tab

    API design starts with specification in spec first approach.
  </Card>

  <Card title="2. Specification Validation" icon="check-circle">
    Specification is validated and checked

    Compliance check with OpenAPI standards is performed.
  </Card>

  <Card title="3. Method/Endpoint Definition" icon="code">
    Method and endpoint definitions are made

    HTTP methods and paths are defined.
  </Card>

  <Card title="4. API Specification File Creation" icon="rocket">
    API Specification File is created at runtime

    API Specification File is automatically generated from definitions.
  </Card>
</CardGroup>

<Info>
  This integration between the Design tab and Spec Design Editor provides a seamless process from API design to deployment with spec first approach. The specification is created first, then the API Specification File is automatically generated from this specification.
</Info>

## Design Tab Advantages

Advantages provided by spec first approach:

<CardGroup cols={2}>
  <Card title="Spec First Approach" icon="file-code">
    * API design starts with specification
    * Standard OpenAPI/Swagger format
    * API design without writing code
  </Card>

  <Card title="Automatic Generation" icon="wand-magic-sparkles">
    * Creating API Specification File from definitions
    * Automatic documentation generation
    * Consistent API structure
  </Card>

  <Card title="Standard Compliance" icon="check-circle">
    * Compliance with OpenAPI/Swagger standards
    * Interoperability
    * Tool support
  </Card>

  <Card title="Up-to-Date Documentation" icon="book">
    * Automatic documentation from specification
    * Documentation-specification synchronization
    * Portal integration
  </Card>
</CardGroup>

## Next Steps

<CardGroup cols={2}>
  <Card title="General Information Tab" icon="info-circle" href="/en/develop/api-proxy-configuration/overview">
    API Proxy general information
  </Card>

  <Card title="Settings" icon="gear" href="/en/develop/api-proxy-configuration/settings">
    API Proxy settings
  </Card>

  <Card title="Endpoint Configuration" icon="link" href="/en/develop/api-proxy-configuration/endpoint-configuration">
    REST endpoint configuration
  </Card>

  <Card title="SOAP Method Configuration" icon="code" href="/en/develop/api-proxy-configuration/soap-method-configuration">
    SOAP method configuration
  </Card>

  <Card title="Spec Design Editor" icon="pencil" href="/en/develop/api-design/spec-designer">
    Spec Design Editor details
  </Card>

  <Card title="API Designer" icon="wand-magic-sparkles" href="/en/concepts/core-components/api-designer">
    Learn about API Designer component
  </Card>
</CardGroup>
