Api-blueprint: рдПрдХ рд╣реА рд╕рдВрд╕рд╛рдзрди рдкрд░ рдПрдХ рд╣реА HTTP рдХреНрд░рд┐рдпрд╛ рдХреА рдХрдИ рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рд▓реЗрдХрд┐рди рд╡рд┐рднрд┐рдиреНрди рдЕрдиреБрд░реЛрдз рд╕рд╛рдордЧреНрд░реА-рдкреНрд░рдХрд╛рд░)

рдХреЛ рдирд┐рд░реНрдорд┐рдд 5 рдлрд╝рд░ре░ 2014  ┬╖  10рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: apiaryio/api-blueprint

рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдПрдкреАрдЖрдИ рд╣реИ рдЬреЛ рдПрдХ рд╣реА рдпреВрдЖрд░рдПрд▓ рдХреЗ рд▓рд┐рдП рдкреЛрд╕реНрдЯ рдХреЗ рд▓рд┐рдП рд▓рдЧрднрдЧ рджреЛ рд╕рдордХрдХреНрд╖ рд░реВрдк рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдореБрдЦреНрдп рдЕрдВрддрд░ рд╕рд╛рдордЧреНрд░реА-рдкреНрд░рдХрд╛рд░ рд╣реИ: рдЕрдиреБрд░реЛрдз рдХрд╛: рдпрд╣ рдпрд╛ рддреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди/рдЬреЗрд╕рди рдпрд╛ рдЯреЗрдХреНрд╕реНрдЯ/рдбреАрдПрдирдПрд╕ (рдЖрд░рдПрдлрд╕реА-4207) рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИред рджреЛ рдЕрдиреБрд░реЛрдз рдкреНрд░рдкрддреНрд░ рдирд┐рдХрдЯ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдХрд╣рдирд╛ рдЕрддрд┐рд╢рдпреЛрдХреНрддрд┐ рд╣реЛрдЧреА рдХрд┐ рд╡реЗ рдХреЗрд╡рд▓ рдПрдХ рджреВрд╕рд░реЗ рдХрд╛ рдкреНрд░рддреНрдпрдХреНрд╖ рдЕрдиреБрд╡рд╛рдж рд╣реИрдВред

рд▓реАрдЧреЗрд╕реА рдмреНрд▓реВрдкреНрд░рд┐рдВрдЯ рд╣рдореЗрдВ рдпрд╣ рдХрд╣рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред FORMAT:1A рд╕рдВрдкрд╛рджрдХ рдЗрд╕реЗ рдЕрдирджреЗрдЦрд╛ рдХрд░рддрд╛ рд╣реИ (рдХреЗрд╡рд▓ рджреЛ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ)ред

рдХреНрдпрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реИ рдЬрд┐рд╕рд╕реЗ рдореИрдВ рдЗрд╕реЗ рд╣рд╛рд╕рд┐рд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ?

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рд╣рд╛рд▓рд╛рдВрдХрд┐ рдПрдХ рд╕рдорд╛рдкрди рдмрд┐рдВрджреБ рдореЗрдВ рдХрдИ рд▓реЗрди-рджреЗрди рдХреЗ рдЙрджрд╛рд╣рд░рдг рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреИрд╕рд╛ рдХрд┐ apiaryio/snowcrash#53 рдореЗрдВ рджреЗрдЦрд╛ рдЧрдпрд╛ рд╣реИ, рдпреЗ Apiary рдореЗрдВ рдмрд╣реБрдд рд╕рдлрд╛рдИ рд╕реЗ рдкреНрд░рд╕реНрддреБрдд рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЙрджрд╛рд╣рд░рдг рд▓реЗрдВ ...

рдЖрдкрдХреЗ рдкрд╛рд╕ /oauth2/authorize , рдЬреЛ рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рднрд┐рдиреНрди рд╡рд┐рднрд┐рдиреНрди рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХреЛ рд╕рдВрднрд╛рд▓реЗрдЧрд╛ (рдЬреИрд╕реЗ рд░реАрдлреНрд░реЗрд╢ рд╕реЗ рдПрдХреНрд╕реЗрд╕ рдЯреЛрдХрди рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛, рдпрд╛ рдкрд╛рд╕рд╡рд░реНрдб рд╕реЗ рдЯреЛрдХрди рдЙрддреНрдкрдиреНрди рдХрд░рдирд╛ рдЖрджрд┐)ред рдПрдкреАрдЖрдИ рдбреЙрдХреНрд╕ рдкрд░ рдПрдХ рд╣реА рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдЗрдирдХрд╛ рд╡рд┐рд▓рдп рд╣реЛрдирд╛ рдкрд╛рдардХ рдХреЗ рд▓рд┐рдП рд╕рдордЭрдирд╛ рдмрд╣реБрдд рдХрдард┐рди рд╣реИ, рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рд╕рд╛рдЗрдб рдореЗрдиреНрдпреВ рдореЗрдВ "рд░реАрдлреНрд░реЗрд╢ рдПрдХреНрд╕реЗрд╕ рдЯреЛрдХрди" рдФрд░ "рдСрдереЗрдВрдЯрд┐рдХ рдпреВрдЬрд░" рдЬреИрд╕реЗ рдХрдИ рдПрдВрдбрдкреЙрдЗрдВрдЯ рд╣реЛрдирд╛ рдЖрд╕рд╛рди рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЖрдк рдПрдХ рд╣реА рд╡рд┐рдзрд┐/рдпреВрдЖрд░рдПрд▓ рд╕рдВрдпреЛрдЬрди рдХреЛ рджреЛ рдмрд╛рд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдпрд╣ рдПрдХ рдкреНрд░рдореБрдЦ рдЙрджрд╛рд╣рд░рдг рд╣реИ рдЬрд╣рд╛рдВ рдПрдкреАрдЖрдИ рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛ рдЕрдкрдиреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░ рд░рд╣реА рд╣реИ рдФрд░ рдЙрдкрд░реЛрдХреНрдд рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рд╕рд╛рдорд╛рдиреНрдп рдбрд┐рдЬрд╛рдЗрди рдкреИрдЯрд░реНрди рдХреЗ рд╕рд╛рде рдлрд┐рдЯ рдирд╣реАрдВ рд╣реИред

рд╕рднреА 10 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдЕрджреНрдпрддрди: рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдХреЗрд╡рд▓ рдПрдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдмрддрд╛рдХрд░ рдРрд╕рд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ:

FORMAT: 1A
# multiple posts?
## Try to make two posts [/v1/whatever]
### POST
+ Request JSON (application/json)
        { nil: nil }
+ Request DNS (text/dns)
        whatever
+ Response 204

рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рдПрдореНрдмреЗрдбреЗрдб рдореЛрдб рдореЗрдВ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ (рдХреЗрд╡рд▓ рдПрдХ рдЕрдиреБрд░реЛрдз рдкреНрд░рдХрд╛рд░ рджрд┐рдЦрд╛рддрд╛ рд╣реИ)ред рд╕рдВрдкрд╛рджрдХ рдХреЗ рднреАрддрд░ рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рдФрд░ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рд╡рд┐рдЪрд╛рд░ рдЕрдЪреНрдЫреЗ рд╣реИрдВред

@jrep

рдпрд╣ рд╡рд░реНрддрдорд╛рди рдПрдкреАрд░реА рдПрдВрдмреЗрдб (рдбрд┐рдЬрд╝рд╛рдЗрди) рдореЗрдВ рдПрдХ рдХрдореА рдкреНрд░рддреАрдд рд╣реЛрддреА рд╣реИред рдореИрдВрдиреЗ @apiaryio рдЯреАрдо рдХреЛ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реВрдЪрд┐рдд рдХрд░

@jrep рдПрдХрд╛рдзрд┐рдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдВ рдЕрдиреБрд░реЛрдз рд╣реИ (рдПрдореНрдмреЗрдб рдореЗрдВ рд╕реАрдорд╛ рдХреЗ рдмрдЧрд▓ рдореЗрдВ)?

рдпрджрд┐ рдРрд╕рд╛ рд╣реИ рддреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдорд╛рдиреНрдп рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП:

FORMAT: 1A

## Try to make two posts [/v1/whatever]

### POST

+ Request JSON (application/json)

        JSON

+ Response 200 (application/json)

        JSON       

+ Request DNS (text/dns)

        whatever

+ Response 200 (text/dns)

        whatever

рдЖрдкрдХрд╛ рдЙрджрд╛рд╣рд░рдг рдПрдХрд╛рдзрд┐рдХ рдЕрдиреБрд░реЛрдз рджрд┐рдЦрд╛рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдПрдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджрд┐рдЦрд╛рддрд╛ рд╣реИред рдпрд╣ рдмрд┐рд▓реНрдХреБрд▓ рдореЗрд░реЗ рдЙрджрд╛рд╣рд░рдг рдЬреИрд╕рд╛ рд╣реИред рд╣рд╛рдВ, рдпрд╣ рд╡рд╛рдХреНрдпрд╛рддреНрдордХ рд░реВрдк рд╕реЗ рдорд╛рдиреНрдп рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╡реНрдпрдХреНрдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдХреНрдпрд╛ рд╡реНрдпрдХреНрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рд╣рд╛рдВ: рдпрд╣рд╛рдВ рдкреНрд░рддреНрдпреЗрдХ рдЕрдиреБрд░реЛрдз рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ "рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ 200" рджрд┐рдЦрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕рд╛рдордЧреНрд░реА-рдкреНрд░рдХрд╛рд░ рдЕрдиреБрд░реЛрдз рд╕рд╛рдордЧреНрд░реА-рдкреНрд░рдХрд╛рд░ рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ (рдЗрд╕рд▓рд┐рдП рджреЛ рдЕрдиреБрд░реЛрдз рд╕рд╛рдордЧреНрд░реА-рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЕрд░реНрде рд╣реИ рджреЛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕рд╛рдордЧреНрд░реА-рдкреНрд░рдХрд╛рд░), рд▓реЗрдХрд┐рди рджреЛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рднреА рдмрд┐рд▓реНрдХреБрд▓ рд╕рдорд╛рди рдирд╣реАрдВ рд╣реИред

рд▓реАрдЧреЗрд╕реА рдкреНрд░рд╛рд░реВрдк рдХреЗ рд╕рд╛рде, рд╣рдордиреЗ рдПрдХ рдЕрдиреБрд░реЛрдз рдФрд░ рдЙрд╕рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛, рдлрд┐рд░ рдЕрдЧрд▓рд╛ рдЕрдиреБрд░реЛрдз/рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдЬреЛрдбрд╝реАред рдпрд╣ рдирдП рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдПрдХ рд╕рд┐рдВрдЯреИрдХреНрд╕ рддреНрд░реБрдЯрд┐ рд╣реИ, рдФрд░ рдРрд╕рд╛ рдХрд╣рдиреЗ рдХрд╛ рдХреЛрдИ рдорд╛рдиреНрдп рддрд░реАрдХрд╛ рдкреНрд░рддреАрдд рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред

рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ: рдУрд╣, рдореИрдВрдиреЗ рдХрд╛рдлреА рдХрд░реАрдм рдирд╣реАрдВ рджреЗрдЦрд╛: рдЖрдкрдХрд╛ рдЙрджрд╛рд╣рд░рдг рдХрдо рд╕реЗ рдХрдо рджреЛ рддрд░реАрдХреЛрдВ рд╕реЗ рдореЗрд░реЗ рд╕реЗ рдЕрд▓рдЧ рд╣реИ: рджреЛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдПрдВ, рдФрд░ рдирд╛рдорд┐рдд рдЕрдиреБрд░реЛрдзреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧред рдЕрдм рдпрд╣ рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

@jrep

рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдкрдХрд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИред рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдпрд╣рд╛рдВ рд╡рд┐рд░рд╛рд╕рддреА рдЦрд╛рдХрд╛ рдХрд╛ рдПрдХ рдЕрдВрд╢ рдкреНрд░рд╕реНрддреБрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

рдЬреАрдердм рдЯрд┐рдХрдЯ рдореБрдЭреЗ рдЯреЗрдХреНрд╕реНрдЯ рд╕рдВрд▓рдЧреНрди рдирд╣реАрдВ рдХрд░рдиреЗ рджреЗрдЧрд╛ред рдЖрдк https://dev-staging.akamai.com/api/luna/config-dns/blueprint.apib рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдХрд╛ рдЦрд╛рдХрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

рд╕рдордЭ рдЧрдпрд╛

POST /v1/zones/{zone}
> Content-Type: application/json
... some data ...
< 204
< Location: /v1/zones/example.com

POST /v1/zones/{zone}
> Content-Type: text/dns
... some other data ...
< 204
< Location: /v1/zones/example.com

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╡реНрдпрдХреНрдд рдХрд░рдирд╛ рдореМрд▓рд┐рдХ рд░реВрдк рд╕реЗ рдареАрдХ рд╣реИ:

## Zone [/v1/zones/{zone}]

### Create [POST]

+ Request Create with JSON (application/json)

        { ... json data ... }

+ Request Create with DNS (text/dns)

        ... dns data ...

+ Response 204
    + Headers

            Location: /v1/zones/example.com

http://docs.multirequest.apiary.io

рдпрд╣ рдПрдХ рдХреНрд▓рд╛рд╕рд┐рдХ рд╕рд╛рдордЧреНрд░реА-рдмрд╛рддрдЪреАрдд рдЙрджрд╛рд╣рд░рдг рд╣реИред рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЕрднреНрдпрд╛рд╡реЗрджрди рд╕реЗ рд╕рдВрд╕рд╛рдзрди рдмрдирд╛рдПрдВ, рдЬрдмрдХрд┐ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдХреЛрдИ рдирд┐рдХрд╛рдп рдирд╣реАрдВ рд╣реИ рдФрд░ рдХреЗрд╡рд▓ рдареАрдХ рд╣реИ (рдФрд░ рд╢рд╛рдпрдж рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рд┐рдВрдХ)ред

рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕рд╛рдордЧреНрд░реА рд╡рд╛рд░реНрддрд╛ рд╕рдордХрдХреНрд╖ рд╣реЛрдЧреА:

### Retrieve [GET]

+ Request Rerieve JSON representation
    + Headers

            Accept: application/json

+ Response 200 (application/json)

        { ... json data ... }

+ Request Rerieve DNS representation
    + Headers

            Accept: text/dns

+ Response 200 (text/dns)

        ... dns data ...

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХрдИ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╢рд░реАрд░-рдХрдо рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдЬреЛ рд╕рд╛рдордЧреНрд░реА-рдкреНрд░рдХрд╛рд░ рдореЗрдВ рднрд┐рдиреНрди рд╣реИ рд▓реЗрдХрд┐рди рдПрдХ рд╣реА рдЕрд░реНрде рд╣реИ (рд╕рдВрд╕рд╛рдзрди рдмрдирд╛рдПрдВ) рдЕрдЪреНрдЫрд╛ рдбрд┐рдЬрд╝рд╛рдЗрди рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВ https://github.com/apiaryio/snowcrash/issues/53 рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд╕рд╛рде рдЗрд╕ рдкреНрд░рддрд┐рдмрдВрдз рдХреЛ рд╣рдЯрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ (рдЪреЗрддрд╛рд╡рдиреА рдХреА рдЬрдм рдПрдХ рд╣реА рд╕реНрдерд┐рддрд┐ рдФрд░ рд╕рд╛рдордЧреНрд░реА рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рд╛рде рдХрдИ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдПрдВ рд╣реЛрддреА рд╣реИрдВ)

@jrep рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ https://github.com/apiaryio/snowcrash/issues/53 (рд╕реНрдиреЛ рдХреНрд░реИрд╢ v0.10.0) рдореЗрдВ рд╕рдВрдмреЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЗрд╕реЗ рдмрдВрдж рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдХреГрдкрдпрд╛ рдЯрд┐рдкреНрдкрдгреА рдХрд░реЗрдВ рдФрд░ рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓реЗрдВред

рд╣рд╛рд▓рд╛рдВрдХрд┐ рдПрдХ рд╕рдорд╛рдкрди рдмрд┐рдВрджреБ рдореЗрдВ рдХрдИ рд▓реЗрди-рджреЗрди рдХреЗ рдЙрджрд╛рд╣рд░рдг рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреИрд╕рд╛ рдХрд┐ apiaryio/snowcrash#53 рдореЗрдВ рджреЗрдЦрд╛ рдЧрдпрд╛ рд╣реИ, рдпреЗ Apiary рдореЗрдВ рдмрд╣реБрдд рд╕рдлрд╛рдИ рд╕реЗ рдкреНрд░рд╕реНрддреБрдд рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЙрджрд╛рд╣рд░рдг рд▓реЗрдВ ...

рдЖрдкрдХреЗ рдкрд╛рд╕ /oauth2/authorize , рдЬреЛ рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рднрд┐рдиреНрди рд╡рд┐рднрд┐рдиреНрди рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХреЛ рд╕рдВрднрд╛рд▓реЗрдЧрд╛ (рдЬреИрд╕реЗ рд░реАрдлреНрд░реЗрд╢ рд╕реЗ рдПрдХреНрд╕реЗрд╕ рдЯреЛрдХрди рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛, рдпрд╛ рдкрд╛рд╕рд╡рд░реНрдб рд╕реЗ рдЯреЛрдХрди рдЙрддреНрдкрдиреНрди рдХрд░рдирд╛ рдЖрджрд┐)ред рдПрдкреАрдЖрдИ рдбреЙрдХреНрд╕ рдкрд░ рдПрдХ рд╣реА рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдЗрдирдХрд╛ рд╡рд┐рд▓рдп рд╣реЛрдирд╛ рдкрд╛рдардХ рдХреЗ рд▓рд┐рдП рд╕рдордЭрдирд╛ рдмрд╣реБрдд рдХрдард┐рди рд╣реИ, рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рд╕рд╛рдЗрдб рдореЗрдиреНрдпреВ рдореЗрдВ "рд░реАрдлреНрд░реЗрд╢ рдПрдХреНрд╕реЗрд╕ рдЯреЛрдХрди" рдФрд░ "рдСрдереЗрдВрдЯрд┐рдХ рдпреВрдЬрд░" рдЬреИрд╕реЗ рдХрдИ рдПрдВрдбрдкреЙрдЗрдВрдЯ рд╣реЛрдирд╛ рдЖрд╕рд╛рди рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЖрдк рдПрдХ рд╣реА рд╡рд┐рдзрд┐/рдпреВрдЖрд░рдПрд▓ рд╕рдВрдпреЛрдЬрди рдХреЛ рджреЛ рдмрд╛рд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдпрд╣ рдПрдХ рдкреНрд░рдореБрдЦ рдЙрджрд╛рд╣рд░рдг рд╣реИ рдЬрд╣рд╛рдВ рдПрдкреАрдЖрдИ рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛ рдЕрдкрдиреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░ рд░рд╣реА рд╣реИ рдФрд░ рдЙрдкрд░реЛрдХреНрдд рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рд╕рд╛рдорд╛рдиреНрдп рдбрд┐рдЬрд╛рдЗрди рдкреИрдЯрд░реНрди рдХреЗ рд╕рд╛рде рдлрд┐рдЯ рдирд╣реАрдВ рд╣реИред

рдореБрдЭреЗ рдЧрд▓рдд рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ - Body рдХрд╛ рд░рдВрдЧ рджреЗрдЦреЗрдВ:

screen shot 2017-02-22 at 16 06 36

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

annappropriate picture annappropriate  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

BigBlueHat picture BigBlueHat  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

rodriguise picture rodriguise  ┬╖  11рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

pete001 picture pete001  ┬╖  6рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

jmdacruz picture jmdacruz  ┬╖  6рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ